• (二) 内核源码目录结构


    arch:包含和硬件体系结构相关的代码,每种平台占一个相应的目录。 和32位PC相关的代码存放在i386目录下,其中比较重要的包括kernel(内核核心部分)mm(内存管理)、math-emu(浮点单元仿真)、lib(硬件相关工具函数)、 boot(引导程序)、pci(PCI总线)和power(CPU相关状态)。block:部分块设备驱动程序。

    crypto:常用加密和散列算法(如AES、SHA等),还有一些压缩和CRC校验算法。

    Documentation:关于内核各部分的通用解释和注释。

    drivers:设备驱动程序,每个不同的驱动占用一个子目录。

    fs:各种支持的文件系统,如ext、fat、ntfs等。

    include:头文件。其中,和系统相关的头文件被放置在linux子目录下。

    init:内核初始化代码(注意不是系统引导代码)。

    ipc:进程间通信的代码。

    kernel:内核的最核心部分,包括进程调度、定时器等, 和平台相关的一部分代码放在arch//kernel目录下。

    lib:库文件代码。

    mm:内存管理代码,和平台相关的一部分代码放在arch//mm目录下。

    net:网络相关代码,实现了各种常见的网络协议。

    scripts:用于配置内核文件的脚本文件。

    security:主要是一个SELinux的模块。

    sound:常用音频设备的驱动程序等。

    usr:实现了一个cpio。

    tree命令 查看目录结构 tree -L 1

    i386体系下,系统引导将从arch/i386/kernel/head.s开始执行, 并进而转移到init/main.c中的main()函数初始化内核。

  • 相关阅读:
    Next Permutation
    Substring with Concatenation of All Words
    Divide Two Integers
    Remove Duplicates from Sorted Array
    3sum closest
    ThreadPoolExecutor参数与拒绝策略
    多线程情况下ArrayList 如何解决线性安全问题
    ArrayList扩容机制jdk1.8
    SpringCloud--工作流程(好文)
    Java面试——TCP与HTTP
  • 原文地址:https://www.cnblogs.com/wolfrickwang/p/3259075.html
Copyright © 2020-2023  润新知