Linux kernel 文件夹说明
2024-10-18 22:32:20
Linux 内核代码的目录结构
arch: 包含和硬件体系相关的的代码,每种硬件平台占一个相应的目录,如i386,arm, arm64, powerpc,mips等。
block: 块设备驱动程序I/O调度。
crypto: 常用的加密和散列算法,还有一些压缩和CRC校验算法。
documentation:内核各部分的通用解释和注释。
drivers:设备驱动程序,各个不同的驱动占用一个子目录。
fs: 所支持的各种文件系统。
include:头文件,与系统相关的头文件位置放在include/linux子目录下。
init:内核初始化代码,著名的start_kernel()就位于init/main.c文件中。
ipc: 进程间通信的代码。
kernel:内核最核心的部分,包括进程调度,定时器等,和平台相关的一部分代码放在arch/*/kernel 下。
lib: 库文件代码。
mm: 内存管理代码,和平台相关的一部分代码放在arch/*/mm目录下。
net:网络相关的代码,实现各种常见的网络协议。
scripts:用于配置内核的脚本文件。
security: 主要是一个SELLinux模块。
sound: ALSA.OSS 音频设备的驱动核心代码和常用驱动设备。
usr: 实现用于打包和压缩的cpio等。
include: 内核API级别头文件。
内核一般要做到drivers和arch的软件架构分离,驱动中不包含扳级信息,让驱动跨平台,同时kernel中通用的部分(如kernel,fs,net,ipc等)则与具体的硬件(arch和drivers)剥离。
最新文章
- Web Api 与 Andriod 接口对接开发经验
- 2.jenkins配置邮件提醒
- 『给它加个壳』纯MarkDown博客阅读体验优化
- Css Study - Top Menu in Header 横向间隔的菜单
- Handler.dispatchMessage handleMessage
- Codeforces Round #261 (Div. 2) B
- POJ 3461 Oulipo(字符串匹配,KMP算法)
- android结束进程、退出application的方法
- UNITY使用高通Vuforia导出XCode包编译出错
- [LeetCode129]Sum Root to Leaf Numbers
- greatest common divisor
- c++ 字符串去重
- 微信小程序picker组件关于objectArray数据类型绑定
- java中的int与byte的转化
- Android 架构:Android Jetpack 架构组件的学习和分析
- canvas里设置width和css里设置width和js里设置width的区别
- OpenStack平台上,linux云主机可以使用xshell连接,但是无法xftp连接
- [转]ASP.NET MVC学习系列(二)-WebAPI请求 传参
- android:theme
- vscode用法