Monthly Archives: November 2009

Linux内核

  arch: 和体系结构相关的内核代码。子目录代表Linux支持的体系结构,如x86表示IntelCPU及其相兼容的体系结构。(所支持的各CPU) drivers: 系统设备驱动程序。子目录下进一步分出各种类型的设备,如显卡驱动位于drivers\video fs: 存放Linux支持文件系统的代码。不同文件系统对应于不同子目录,如nfs文件系统就是nfs子目录 include: 包括编译内核所需的大部分头文件。(与平台无关的头文件在include/linux子目录下) init: 包含内核的初始化代码(不是系统引导代码)。看这里的代码是研究内核如何工作的好起点。 ipc: 包含了进程间通信的内核代码 kernel: 内核管理的代码。与硬件相关的代码在arch\*\kernel下 lib: 库代码。 与处理器结构相关的库代码被放在arch\*\lib\下。 net: 实现网络的代码。 mm: 包含了内存管理的相关代码。与硬件体系相关的内存管理代码位于arch\*\mm下,如arch\x86\mm\ modules: 包含现有的、可动态加载的系统模块 scripts: 包含配置内核的脚本文件。 documentation: 文档,对每个目录作用的具体说明。 CONFIG和MAKEFILE文件里有相关文件的引用和关联的配置。 书: Professional Linux Kernel Architecture 查看源代码:LXR(http://lxr.linux.no/)能对指定的源码文件建立索引数据库,利用Perl脚本动态生成包含源码的Web页面。在此Web页中,所有的变量、常量和函数都以超连接的形式给出 LXR还提供标识符搜索和文件搜索,结合程序Glimpse(http://webglimpse.net/)还可以对所有的源码文件进行全文检索,甚至包括注释。Windows下用SourceInsight(http://sourceinsight.com/)  

Posted in Computers and Internet | 6 Comments