linux内核源码的目录结构

1、前言

首先linux内核源码在官网更新迭代:https://www.kernel.org/;一般情况下,soc厂商会将内核源码进行初次裁剪适配自己的产品;实际开发中我们会使用soc厂商提供的内核代码进一步裁剪来适配自己的产品。

以三星的S3C2410为例,三星会从官网获取内核源码进行裁剪,裁剪后的内核源码适配于S3C2410,国内许多学习用的开发板使用的S3C2410,开发板厂家会使用三星提供的内核再根据自己产品的实际需要对内核进一步裁剪来适配自己的开发板。

当然,你也可以直接从官网下载源码自己玩转直指产品,只要你足够牛~

2、目录结构

不管从何种途径获取到的内核源码,其大致结构如下:

文件/文件夹

名称

描述
arch 架构相关,子目录下包含arm、x86等
block 块设备相关
crypto 加密算法相关
Documentation 文档相关
drivers 驱动相关,子目录下包含char(字符设备驱动),block(块设备驱动)等
firmware 固件相关
fs 支持的文件系统相关
include 各种架构cpu通用头文件
init 初始化内核代码
ipc 进程间通信相关代码
kernel 内核相关代码
lib 一些内核编程使用的库函数代码
mm 内存管理相关代码
net 网络相关代码
scripts 配置编译内核相关脚本
security 安全相关
sound 音频相关
tools 常用工具
usr linux启动使用
virt 内核虚拟相关
Kbuild 内核编译文件
Makefile 顶层Makefile文件

猜你喜欢

转载自blog.csdn.net/cesheng3410/article/details/128736007