- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 Linux操作系统 8.1 Linux的处理机管理 8.2 Linux的存储管理 8.3 Linux的文件管理 8.4 Linux的设备管理 Linux 操作系统特点 Linux操作系统实质上是UNIX的变种,它继承了多任务、多用户等这样的一些特性。 本章主要内容 1、Linux的三种进程调度策略及消息队列; 2、Linux的多级页表地址转换机制; 3、Linux的文件系统Ext2和虚拟文件系统VFS; 4、Linux对字符设备和块设备的管理。 8.1 Linux的处理机管理 8.1.1 Linux的进程 1.Linux进程的两种运行模式 在Linux里,一个进程既可以运行用户程序,又可以运行操作系统程序。 当进程运行用户程序时,称其为处于“用户模式”;当进程运行时出现了系统调用或中断事件,转而去执行操作系统内核的程序时,称其为处于“核心模式”。 2、处理机状态类型 在Linux里处理机就具有两种运行状态:核心态和用户态。 3、进程概念及特征 (1)、在Linux里,把进程定义为“程序运行的一个实例” (2)、进程一方面竞争并占用系统资源(比如设备和内存),向系统提出各种请求服务;进程另一方面是基本的调度单位,任何时刻只有一个进程在CPU上运行。 4、Linux进程实体的组成 Linux中,每个进程就是一个任务(task),一般具有以下四个部分: (1)进程控制块(在Linux里,也称为进程描述符。下面统一采用“进程描述符”这个称谓)。 (2)进程专用的系统堆栈空间; (3)供进程执行的程序段(在Linux里,称为正文段); (4) 进程专用的数据段和用户堆栈空间 5、Linux的进程控制块——进程描述符 在Linux中,进程的进程描述符是一个结构类型的数据结构:task_struct。 (1)、进程描述符组成内容 进程标识(pid); 进程状态(state); 进程调度信息,包括调度策略(policy)、优先级别(priority和rt_priority)、时间片(counter)等; 接收的信号(*sig); 进程家族关系; 进程队列指针; CPU的现场保护区; 与文件系统有关的信息。 6、Linux的进程状态 Linux的进程可以有五种不同的状态,图8-3给出了Linux的进程状态,以及状态间的变迁原因。 7、Linux的进程状态 ? 可运行状态 ? 可中断状态 ? 不可中断状态 ? 暂停状态 ? 僵死状态 8、进程的创建与撤销 Linux中的每个进程,都有一个创建、调度运行、撤销死亡的生命期。 Linux系统中的各个进程,相互之间构成了一个树型的进程族系。 8.1.2 Linux的进程调度 1.Linux的进程调度类型 在Linux中,进程调度被分为实时进程调度和非实时进程调度两种。 2.Linux进程描述符中与调度有关的字段 Linux进程描述符中,有四个字段与进程调度有关,它们是:policy、priority、rt_priority和counter。 3.Linux的三种进程调度策略 Linux进程描述符中的policy字段,可以取三个值:SCHED_FIFO、SCHED_RR以及SCHED_OTHER。 3.Linux的三种进程调度策略 (1)SCHED_FIFO——实时进程的先进先出调度策略 (2)SCHED_RR——实时进程的轮转调度 (3)SCHED_OTHER——非实时进程的轮转调度 4.Linux的等待队列 8.1.3 Linux进程间的通信 —消息队列 消息队列是进程间的一种异步通信方法。所谓“异步”,即发送消息的进程在消息发出之后,不必等待接收进程做出反应,就可以去做其他的事情了。 1.“消息”的数据结构 Linux中的每个消息,由两个部分组成:消息头和消息缓冲区。 2.“消息队列”的数据结构 Linux消息队列是struct msqid_ds型的数据结构。 3.“消息队列表”的数据结构 进程间借助消息队列来传递数据,因此系统中可以建立多个消息队列。Linux是通过“消息队列表”来管理所有消息队列的。 4.有关消息队列的系统调用 ? 创建一个新的消息队列:newque() ? 删除一个消息队列:freeque() ? 向一个消息队列发送一条消息:msgsnd() ? 从一个消息队列中接收一条消息:msgrcv() 8.2 Linux的存储管理 8.2.1 Linux的虚拟存储空间 1.Linux的虚拟存储空间 在Linux中,虚拟地址用32个二进制位表
您可能关注的文档
最近下载
- 《新时代职业英语》教学资源_传媒英语_Unit_6_.pptx VIP
- 中医临床执业医师考试题及答案2025版.docx VIP
- 超声中信号处理.ppt VIP
- 《新时代职业英语》教学资源_传媒英语_Unit_7_.pptx VIP
- 部编人教版道德与法治五年级上册《全册课件》.pptx
- 《新时代职业英语》教学资源_传媒英语_Unit_9.pptx VIP
- 宝钢质量管理经验.doc VIP
- 勿忘历史,珍爱和平——抗战胜利80周年主题班会-2025-2026学年初中主题班会优质课件.pptx VIP
- Kuka控制系统 KR C5安装指南.pdf VIP
- 学习2025年《初中初三开学第一课》.pptx VIP
文档评论(0)