- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Linux 内核体系结构 主讲:韩洁琼 内核是什么? 内核实际上仅仅是一个资源管理器。不管被管理的资源是进程、内存还是硬件设备,内核负责管理并裁定多个竞争用户对资源的访问(既包括内核空间也包括用户空间) Linux内核主要由5个模块构成: 进程调度模块 内存管理模块 虚拟文件系统模块 进程间通信模块 网络接口模块 Linux内核体系结构: Linux内核体系结构: 最上面是用户(或应用程序)空间。这是用户应用程序执行的地方。 用户空间之下是内核空间,Linux 内核正是位于这里。 GNU C Library (glibc)也在这里。它提供了连接内核的系统调用接口,还提供了在用户空间应用程序和内核之间进行转换的机制。这点非常重要,因为内核和用户空间的应用程序使用的是不同的保护地址空间。每个用户空间的进程都使用自己的虚拟地址空间,而内核则占用单独的地址空间。 Linux 内核可以进一步划分成 3 层。最上面是系统调用接口,它实现了一些基本的功能,例如 read 和 write。系统调用接口之下是内核代码,可以更精确地定义为独立于体系结构的内核代码。这些代码是 Linux 所支持的所有处理器体系结构所通用的。在这些代码之下是依赖于体系结构的代码,构成了通常称为 BSP(Board Support Package)的部分。这些代码用作给定体系结构的处理器和特定于平台的代码。 内核各个模块的作用: 进程调度模块 进程调度程序是内核的重要组成部分,它选择下一个要运行的进程并负责控制进程对CPU资源的使用。 调度程序采用一种策略使各个进程能够公平合理地访问CPU,同时保证内核能够实时地执行必要的硬件操作。 内核各个模块的作用: 内存管理模块 内存管理模块负责管理系统,用于确保所有进程能够安全地共享计算机的内存。同时,内存管理模块还支持虚拟内存,使得Linux能够支持进程使用比实际内存空间更大的内存地址空间。 内核所管理的另外一个重要资源是内存。为了提高效率,如果由硬件管理虚拟内存,内存是按照所谓的内存页 方式进行管理的(对于大部分体系结构来说都是 4KB)。Linux 包括了管理可用内存的方式,以及物理和虚拟映射所使用的硬件机制。 内核各个模块的作用: 虚拟文件系统模块: 虚拟文件系统(VFS)模块通过向所有的外部存储设备提供一个通用的文件接口,隐藏了各种硬件的不同细节,从而提供并支持与其他操作系统兼容的多种文件系统。Linux最好的特征之一就是它支持多种文件系统,用户不仅可以从自己的文件系统如ext2,ext3,ReiserFS等查看文件,而且还可以从与其他操作系统相关的文件系统柳查看文件。对于用户来说,从一种文件系统到另一种文件系统没有任何差异,只要是Linux支持的文件系统类型,用户就可以很方便地将它安装到Linux系统中使用。 文件系统 计算机的文件系统是一种存储和组织计算机文件和资料的方法,它使得对其访问和查找变得容易。 内核各个模块的作用: 进程间通信模块: 进程间通信模块主要负责进程之间如何进行信息交换或共享信息等工作。Linux提供了多种进程之间的通信机制,其中信号与管道是最基本的两种。此外, Linux还提供了System V特有的进程间通信机制,包括消息队列、信号量、共享内存等。为了支持网络通信, Linux还引入了套接字(socket)机制。 内核各个模块的作用: 网络接口模块: 网络接口模块提供对多种网络通信标准的访问并支持许多网络硬件。网络接口分为网络协议和网络驱动程序两种。其中网络协议部分负责实现网络传输协议,网络驱动程序部分负责与硬件设备的通信。 内核各个模块的作用: 设备驱动程序 Linux 内核中有大量代码都在设备驱动程序中,它们能够运转特定的硬件设备。Linux 源码树提供了一个驱动程序子目录,这个目录又进一步划分为各种支持设备,例如 Bluetooth、I2C、serial 等。设备驱动程序的代码可以在 ./linux/drivers 中找到。 各个子系统之间的依赖关系: 进程调度与内存管理之间的关系: 这两个子系统互相依赖。在多道程序环境下,程序要运行必须为之创建进程,而创建进程的第一件事情,就是将程序和数据装入内存。 各个子系统之间的依赖关系: 进程间通信与内存管理的关系: 进程间通信子系统要依赖内存管理支持共享内存通信机制,这种机制允许两个进程除了拥有自己的私有空间外,还可以存取共同的内存区域。 各个子系统之间的依赖关系: 虚拟文件系统与网络接口之间的关系: 虚拟文件
文档评论(0)