【lLinux驱动】linux内核源码目录结构
发布日期:2021-06-29 20:56:40
浏览次数:2
分类:技术文章
本文共 891 字,大约阅读时间需要 2 分钟。
代码目录结构 在阅读源码之前,还应知道Linux内核源码的整体分布情况。现代的操作系统一般由进程管理、内存管理、文件系统、驱动程序和网络等组成。Linux内核源码的各个目录大致与此相对应,其组成如下(假设相对于Linux-2.4.23目录): arch目录包括了所有和体系结构相关的核心代码。它下面的每一个子目录都代表一种Linux支持的体系结构,例如i386就是Intel CPU及与之相兼容体系结构的子目录。PC机一般都基于此目录。 include目录包括编译核心所需要的大部分头文件,例如与平台无关的头文件在include/linux子目录下。 init目录包含核心的初始化代码(不是系统的引导代码),有main.c和Version.c两个文件。这是研究核心如何工作的好起点。 mm目录包含了所有的内存管理代码。与具体硬件体系结构相关的内存管理代码位于arch/*/mm目录下。 drivers目录中是系统中所有的设备驱动程序。它又进一步划分成几类设备驱动,每一种有对应的子目录,如声卡的驱动对应于drivers/sound。 ipc目录包含了核心进程间的通信代码。 modules目录存放了已建好的、可动态加载的模块。 fs目录存放Linux支持的文件系统代码。不同的文件系统有不同的子目录对应,如ext3文件系统对应的就是ext3子目录。 Kernel内核管理的核心代码放在这里。同时与处理器结构相关代码都放在arch/*/kernel目录下。 net目录里是核心的网络部分代码,其每个子目录对应于网络的一个方面。 lib目录包含了核心的库代码,不过与处理器结构相关的库代码被放在arch/*/lib/目录下。 scripts目录包含用于配置核心的脚本文件。 documentation目录下是一些文档,是对每个目录作用的具体说明。 一般在每个目录下都有一个Makefile文件。这两个文件都是编译时使用的辅助文件。仔细阅读这两个文件对弄清各个文件之间的联系和依托关系很有帮助。另外有的目录下还有Readme文件,它是对该目录下文件的一些说明,同样有利于对内核源码的理解。
转载地址:https://dengjin.blog.csdn.net/article/details/50981056 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年04月05日 20时16分48秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
微信小程序canvas绘制圆角矩形
2019-04-30
微信小程序canvas裁剪图片中间部分
2019-04-30
my docker tutorial
2019-04-30
gdb debug summary
2019-04-30
python learning
2019-04-30
collections
2019-04-30
shallow copy & deep copy
2019-04-30
unit test & mock
2019-04-30
exception
2019-04-30
GIL & coroutine & performance
2019-04-30
parameter passing
2019-04-30
sort & search algorithm
2019-04-30
design pattern
2019-04-30
算法-动态规划2
2019-04-30
算法-动态规划3
2019-04-30
算法-计算1的个数及python sort函数的多层排序
2019-04-30
regular expression examples
2019-04-30
subsets : zero left padding : leetcode 78
2019-04-30