Linux内核剖析 之 Linux源代码组成

简介:

Linux内核剖析 之 Linux源代码组成

 

++++Linux:

          ++COPYING:有关公共许可证制度GPL的具体说明。

          ++READMELinux内核安装和使用的简要说明。

          ++Makefile:重构Linux内核可执行代码的make文件。用来组织内核的各模块,记录了个模块间的联系和依托关系,编译时使用;仔细阅读各子目录下的Makefile文件对弄清各个文件这间的联系和依托关系很有帮助。

          ++CREDITS:光荣榜,对Linux做出过很大贡献的一些人的信息。

          ++MAINTAINERS::维护人员列表,对当前版本的内核各部分都由谁负责。

          ++REPORTING-BUGS:有关报告Bug的一些内容。

          ++Documentation:有关Linux内核的文档。

          ++ArchArchArchitecture的缩写,内核中与具体CPU和系统相关的代码放在下一层的目录中,而.h文件分别放在include/asm中。

                     +AlphaDEC 64CPU

                    +i386:包括x86系列中自80386后的所有32CPU,也包括AMD K6等兼容系列。

                    +m68k:由Motorola开发的68000系列。

                    +MIPSRISC CPU芯片。

                    +SparcRISC CPU芯片(sun)。

                    +S390IBM生产的人工计算机。

                    +ia64Intel IA-64结构64CPU

                    ......

          说明:每个CPU子目录又进一步分解为bootmmkernel等子目录,分别包含与系统引导、内存管理、系统调用等底层代码。

          ++Drivers:设备驱动程序,包括各类块设备和字符设备的驱动程序。

          ++Fs:文件系统,每个子目录分别对应一个特定的文件系统(VFS等)。

          ++Include:包含了所有.h文件,如Arch子树一样,在include中也是为各种CPU都专设一个子目录,还有通用目录Linuxnet等。

          ++InitLinux内核的main()和系统初始化过程,包含main.c等文件。

          ++IpcLinux内核的进程间通信,包括msg.c等文件。

          ++Kernel:进程管理和调度,包括sched.cfork.c等文件。

          ++Lib:通用的工具性子程序,如对出错信息的处理等等。

          ++Mm:这个目录包括所有独立于CPU体系结构的内存管理代码,如页式存储管理内存的分配和释放等;而和体系结构相关的内存管理代码则位于arch/*/mm/,例如arch/i386/mm/fault.c

          ++Net:核心与网络相关的代码。包含各种不同的网卡和网络规程的驱动程序。

          ++Scripts:用于系统配置的命令文件。

 

目录
相关文章
|
9天前
|
Linux C语言
Linux内核队列queue.h
Linux内核队列queue.h
|
28天前
|
存储 Shell Linux
【Shell 命令集合 系统设置 】Linux 生成并更新内核模块的依赖 depmod命令 使用指南
【Shell 命令集合 系统设置 】Linux 生成并更新内核模块的依赖 depmod命令 使用指南
30 0
|
28天前
|
Shell Linux C语言
【Shell 命令集合 系统设置 】⭐Linux 卸载已加载的内核模块rmmod命令 使用指南
【Shell 命令集合 系统设置 】⭐Linux 卸载已加载的内核模块rmmod命令 使用指南
29 1
|
2天前
|
算法 Linux 调度
深入理解Linux内核的进程调度机制
【4月更文挑战第17天】在多任务操作系统中,进程调度是核心功能之一,它决定了处理机资源的分配。本文旨在剖析Linux操作系统内核的进程调度机制,详细讨论其调度策略、调度算法及实现原理,并探讨了其对系统性能的影响。通过分析CFS(完全公平调度器)和实时调度策略,揭示了Linux如何在保证响应速度与公平性之间取得平衡。文章还将评估最新的调度技术趋势,如容器化和云计算环境下的调度优化。
|
7天前
|
算法 Linux 调度
深度解析:Linux内核的进程调度机制
【4月更文挑战第12天】 在多任务操作系统如Linux中,进程调度机制是系统的核心组成部分之一,它决定了处理器资源如何分配给多个竞争的进程。本文深入探讨了Linux内核中的进程调度策略和相关算法,包括其设计哲学、实现原理及对系统性能的影响。通过分析进程调度器的工作原理,我们能够理解操作系统如何平衡效率、公平性和响应性,进而优化系统表现和用户体验。
18 3
|
14天前
|
负载均衡 算法 Linux
深度解析:Linux内核调度器的演变与优化策略
【4月更文挑战第5天】 在本文中,我们将深入探讨Linux操作系统的核心组成部分——内核调度器。文章将首先回顾Linux内核调度器的发展历程,从早期的简单轮转调度(Round Robin)到现代的完全公平调度器(Completely Fair Scheduler, CFS)。接着,分析当前CFS面临的挑战以及社区提出的各种优化方案,最后提出未来可能的发展趋势和研究方向。通过本文,读者将对Linux调度器的原理、实现及其优化有一个全面的认识。
|
14天前
|
Ubuntu Linux
Linux查看内核版本
在Linux系统中查看内核版本有多种方法:1) 使用`uname -r`命令直接显示版本号;2) 通过`cat /proc/version`查看内核详细信息;3) 利用`dmesg | grep Linux`显示内核版本行;4) 如果支持,使用`lsb_release -a`查看发行版及内核版本。
36 6
|
17天前
|
Linux 内存技术
Linux内核读取spi-nor flash sn
Linux内核读取spi-nor flash sn
14 1
|
24天前
|
存储 网络协议 Linux
【Linux 解惑 】谈谈你对linux内核的理解
【Linux 解惑 】谈谈你对linux内核的理解
23 0
|
28天前
|
存储 Linux Shell
【Shell 命令集合 系统设置 】Linux 显示Linux内核模块的详细信息 modinfo命令 使用指南
【Shell 命令集合 系统设置 】Linux 显示Linux内核模块的详细信息 modinfo命令 使用指南
24 0