linux内核源码目录结构及精彩技术文章

时间:2021-12-20 02:25:45

 

2012-01-11 08:56:22|  分类: 【Linux】 |  标签: |字号订阅

代码目录结构
在阅读源码之前,还应知道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目录下是一些文件,是对每个目录作用的具体说明。
一般在每个目录下都有一个.depend文件和一个Makefile文件。这两个文件都是编译时使用的辅助文件。仔细阅读这两个文件对弄清各个文件之间的联系和依托关系非常有帮助。另外有的目录下更有Readme文件,他是对该目录下文件的一些说明,同样有利于对内核源码的理解。 

构建小型Linux跟文件系统镜像(Ext2 或 Ext3

简述 Linux 文件系统的目录结构

Linux目录结构及解释

Linux 内核源代码的结构

linux文件系统的目录结构


Linux部分精彩推荐

Linux系统初学者的常见问题解决集结

Linux挂载U盘

linux 下的挂载

redhat和ubuntu系统下挂载ntfs文件系统的方法(转载)

疯狂挂载:Linux连接常用外部设备的方法

ubuntu 重装系统备份数据   ubuntu安装kde桌面

ubuntu全局配置文件

ubuntu安装rpm的方法

ubuntu设置全攻略

Linux 常用C函数说明-文件权限控制篇

rpm deb命令集合

rc.local自启动学习

init.d,rc.d详解 Linux运行时详解

linux下tar gz bz2 tgz z等众多压缩文件的解压方法

tar命令用法详述

使用tar进行磁带备份的命令汇总

LINUX:解压问题tar: Child returned status 1

Linux系统服务自启动设置_Tomcat

Linux操作系统下SSH默认22端口修改方法

Linux启动级别:init 0,1,2,3,4,5,6

linux服务开机启动和运行级别

linux服务自动启动功能

新手学堂:Linux操作系统的启动步骤说明

xinit启动X Window System过程初探

构建小型Linux跟文件系统镜像(Ext2 或 Ext3

linux内核源码目录结构

简述 Linux 文件系统的目录结构

Linux目录结构及解释

Linux 内核源代码的结构

linux文件系统的目录结构

linux 端口 操作

Linux操作系统下软件的安装与卸载

vim 实用的经验

网络管理:超级详细Tcpdump 的用法

Linux系统下网卡网络配置基础

vsFTPd自架Linux网络安装服务器,以及Redhat局域网安装的解决办法

网络管理:超级详细Tcpdump的用法

[]tcpdump教程用法使用

Linuxtelnet配置

linux 任务计划 cron

YUM 库的安装

Linux环境变量的设置和查看方法

Linux命令速查手册

关于linux系统中命令的使用详解

简单而常用的shell 命令

rpm常用命令集合

[常用命令]diff

vi指令大全

LINUX/UNIX vi全屏幕编辑器

Linux操作系统Ifconfig命令详细解析

linux top命令详解

chmod命令使用详解

Linux主要shell命令详解

linux ps命令使用详解

Linux下设置和修改IP

Linux中find用法整理

Fedora 中的 Yum 命令详解

rpm常用命令集合

Linux cat 命令用法

chmod命令详细用法

linux redhat命令大全

Linux操作系统下/etc/hosts文件

LINUX PATH环境变量

如何安装无签名认证的rpm

LINUX关于休眠、待机和睡眠的问题

initrd.img处理

Linux字符集的修改方法

Awk学习笔记

shell取得文件行数6法

正则表达式

shell中单引号、双引号、反引号、反斜杠的使用

Linux开机过程(转)

LINUX中注销其他已登陆帐户

学习 Linux LVM

shell 中的参数替换

mkswap把一个分区格式化成为swap交换区

rsh的配置

修复GRUB

Linux自动注销登录的帐户

linux下的/dev/shm/  以及与swap目录的区别

Redhat Linux配置远程桌面

Linux截图工具import使用说明

Linux、UNIX下磁带机的管理和使用

Linux 磁带机备份完全攻略

gnome桌面环境 kde桌面环境的区别

linux i18n修改,中文版英文版体现

linux命令-locale字符显示

linux命令-locale字符显示

RedHat 8.0软件包组--桌面类

让英文版的LINUX 支持中文显示

Linux  shell内核使用

RedHat Enterprise Linux 上Oracle 9i的安装配置与调优

Linux下安装mysql后无法启动的解决方法

百度最全的LINUX和Redhat学习教程下载帖大全

Redhat linux 安装 gcc编译器,Gcc源码包,rpm包安装方法!

RHCE题库

Redhat Enterprise Linux 6 正式版已经发布!

VMWare虚拟机安装RedHat Linux全过程