您的位置:首页 > 运维架构 > Linux

Linux 0.11 kernel(目录结构)

2010-07-08 17:11 363 查看
1.目录结构

boot/ 目录下包括三个汇编程序,其中包括磁盘引导程序 bootsects.s、获取BIOS中参数的
setup.s汇编程序和32位运行启动代码head.s汇编程序。这三个汇编程序完成了把内
核从快射别上引导加载到内存的工作,并对系统配置参数进行探测,完成了进入32为 保护模式运行之前的所有工作,为内核系统执行进一步初始化做准备工作。

fs/ 文件系统 。

include/ 头文件信息,定义常量和数据结构。

init/ 内核系统的初始化程序 main.c。它是内核完成所有初始化工作进入正常运行的关键。
在完成系统所有的初始化工作后,创建了用于shell的进程。

kernel/ 最重要的部分是进程调度函数 schedule(),sleep_on()函数和有关系统调用的程序。

kernel/dev_blk/
对快设备程序进行了注释说明。含有硬盘,软盘等快设备的驱动程序,主要用来与文件系统和高速缓冲区打交道,含有较都的与硬件相关的内容。

kernel/dev_chr/ 字符设备驱动做说明。主要涉及串行设备驱动,键盘驱动,显示器驱动等。

kernel/math/ 数学协处理器的方针程序。

lib/ 库函数文件,主要向编译系统提供接口。

mm/ 内存管理,主要介绍Intel 80X86 为处理的内存的保护模式的运行方式。

tools/ build.c 程序,用于将内核的磁盘引导程序块与其他主要内核模块连接成一个完整的内核映像(kernel image)文件。

Makefile 依赖关系文件。

2.Linux内核体系

1.Linux 内核的编制模式和体系结构

2.Linux内核源代码目录中组织形式以及子目录中各个代码文件的主要功能以及基本调用的层次关系。

3.介绍makefile

操作系统的组成: 硬件,操作系统驱动,操作系统服务器,用户应用程序。4部分组成。

内核的主要作用:与硬件进行交互,实现对硬件部分的编程控制和接口操作,调度对硬件资源的访问,并为计算机上的用户程序提供一个高级的执行环境和硬件的虚
拟接口。

Linux 内核模式

操作系统的内核模式,目前可以划分为整体式的单内核模式和层次式的微内核模式,linux采用的是单内核模式。单内核模式的优点是,代码结构紧凑,执行速
度快,不足之处是,层次结构不强。

单内核模式的系统中,操作系统所提供的服务的流程为:用用主程序使用指定的三处值执行系统调用指令(int x80),使cpu从用户态(user
mode)切换到核心态(kernel
mode),然后操作系统根据具体的参数值调用特定的系统调用服务程序,而这些服务程序怎根据需要在底层的一些支持函数以完成特定的功能。在完成了应用程
序所要求的服务后,操作系统又从核心态切换回用户态。返回到应用程序中继续执行后面的指令。因此概要的讲,单内核模式的内核也可以粗略的份为三个层次:调
用服务的主程序层,执行系统调用的服务层和支持系统调用的底层函数。

Linux 内核系统体系结构

linux 内核主要由5个模块构成,他们分别是:进程调度模块,内存管理模块,文件系统模块,进程间通讯模块,网络接口模块。

进程调度模块,负责控制进程与CPU资源的使用,所采取的调度策略是各进程能够公平合理地访问CPU,同时保证内核能够及时地执行硬件操作。

内存管理模块,用于确保所有进程能够安全的共享机器主内存区,同时,内存管理模块还支持虚拟内存管理方式,使Linux支持进程使用比实际内存空间更多的
内存容量。并且可以把暂时不用的内存数据,通过文件系统交互到外部存储设备上去,当需要时在交换回来。

文件系统模块,用于支持外部设备的驱动和存储,虚拟文件系统模块通过向所有的外部存储设备提供一个通用的文件接口,隐藏了各种硬件设备的不同细节。从而提
供并支持与其它操作系统兼容的多种文件系统格式。

进程间通讯模块,用于支持多种进程间的信息交换方式。

网络接口模块,提供对多种网络通信标准的访问并支持许多网络硬件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: