分享
分销 收藏 举报 申诉 / 92
播放页_导航下方通栏广告

类型2022年操作系统专升本电子教案2.ppt

  • 上传人:二***
  • 文档编号:12676390
  • 上传时间:2025-11-23
  • 格式:PPT
  • 页数:92
  • 大小:524.04KB
  • 下载积分:5 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    2022 操作系统 电子 教案
    资源描述:
    ,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第8章 实例分析:,Linux,操作 系统,8.1 Linux的处理机管理,8.2 Linux的存储管理,8.3 Linux的文件管理,8.4 Linux的设备管理,Linux操作系统实质上是UNIX的变种,它继承了多任务、多用户等这样的一些特性。,本章主要从Linux管理的角度出发,着重讲述以下4个方面的内容。,(1)Linux的三种进程调度策略及消息队列;,(2)Linux的多级页表地址转换机制;,(3)Linux的文件系统Ext2和虚拟文件系统VFS;,(4)Linux对字符设备和块设备的管理。,8.1 Linux的处理机管理,.1 Linux的进程,1Linux进程的两种运行模式,在Linux里,一个进程既可以运行用户程序,又可以运行操作系统程序。,当进程运行用户程序时,称其为处于“用户模式”;当进程运行时出现了系统调用或中断事件,转而去执行操作系统内核的程序时,称其为处于“核心模式”。,在Linux里处理机就具有两种运行状态:核心态和用户态。,在Linux里,把进程定义为“程序运行的一个实例”。,进程一方面竞争并占用系统资源(比如设备和内存),向系统提出各种请求服务;进程另一方面是基本的调度单位,任何时刻只有一个进程在CPU上运行。,2Linux进程实体的组成,Linux中,每个进程就是一个任务(task),一般具有以下四个部分:,进程控制块(在Linux里,也称为进程描述符。下面统一采用“进程描述符”这个称谓)。,进程专用的系统堆栈空间;,供进程执行的程序段(在Linux里,称为正文段);,进程专用的数据段和用户堆栈空间。,图8-2 Linux对进程描述符的管理,3Linux的进程控制块进程描述符,在Linux中,进程的进程描述符是一个结构类型的数据结构:task_struct。,进程标识(pid)。,进程状态(state)。,进程调度信息,包括调度策略(policy)、优先级别(priority和rt_priority)、时间片(counter)等。,接收的信号(*sig)。,进程家族关系。,进程队列指针。,CPU的现场保护区。,与文件系统有关的信息。,4Linux的进程状态,Linux的进程可以有五种不同的状态,图8-3给出了Linux的进程状态,以及状态间的变迁原因。,图8-3 Linux的进程状态及其变迁,可运行状态,可中断状态,不可中断状态,暂停状态,僵死状态,5进程的创建与撤销,Linux中的每个进程,都有一个创建、调度运行、撤销死亡的生命期。Linux系统中的各个进程,相互之间构成了一个树型的进程族系。,8.1.2 Linux的进程调度,1Linux的进程调度类型,在Linux中,进程调度被分为实时进程调度和非实时进程调度两种。,2Linux进程描述符中与调度有关的字段,Linux进程描述符中,有四个字段与进程调度有关,它们是:policy、priority、rt_priority和counter。,3Linux的三种进程调度策略,Linux进程描述符中的policy字段,可以取三个值:SCHED_FIFO、SCHED_RR以及SCHED_OTHER。,(1)SCHED_FIFO实时进程的先进先出调度策略,(2)SCHED_RR实时进程的轮转调度,(3)SCHED_OTHER非实时进程的轮转调度,图8-4 Linux实时调度的例子,4Linux的等待队列,图8-5 Linux中的等待队列,8.1.3 Linux进程间的通信消息队列,消息队列是进程间的一种异步通信方法。所谓“异步”,即发送消息的进程在消息发出之后,不必等待接收进程做出反应,就可以去做其他的事情了。,1“消息”的数据结构,Linux中的每个消息,由两个部分组成:消息头和消息缓冲区。,图8-6 Linux的消息及消息队列结构,2“消息队列”的数据结构,Linux消息队列是struct msqid_ds型的数据结构。,3“消息队列表”的数据结构,进程间借助消息队列来传递数据,因此系统中可以建立多个消息队列。Linux是通过“消息队列表”来管理所有消息队列的。,图8-7 消息管理诸数据结构间的逻辑关系,4有关消息队列的系统调用,创建一个新的消息队列:newque(),删除一个消息队列:freeque(),向一个消息队列发送一条消息:msgsnd(),从一个消息队列中接收一条消息:msgrcv(),8.2 Linux的存储管理,8.2.1 Linux的虚拟存储空间,1Linux的虚拟存储空间,在Linux中,虚拟地址用32个二进制位表示。这意味系统向每个进程提供的虚存空间,最多可以高达232 字节=4GB。,图8-8 Linux的虚拟地址空间结构,2多级页表的地址转换,Linux在对虚拟地址空间进行分页时,采用两级页表的机制:先是对虚拟地址空间进行分页,形成页表;再对页表进行分页,形成页表的页表。,这样一来,不仅虚拟地址空间里的页,可以存放在内存的不连续块中;页表中的页,也能够存放在不连续的内存块里,这就是所谓的多级页表结构。这种“页表的页表”,被称为页表索引。,图8-9 Linux虚拟地址的划分,图8-10 Linux的二级页表式地址转换,当虚拟地址用64位表示时,虚拟地址空间的页面更多,用二级索引后的页表仍然很大。因此,Linux还可以提供三级页表式的分页式结构。,.2 管理虚拟存储空间的数据结构,Linux进程的各个分区可以是不连续的,因此形成了若干个离散的虚拟区间。为了对它们加以管理,定义了vm_area_struct型及mm_struct型数据结构。,图8-11 Linux虚存管理的数据结构,1管理分区虚拟区间的数据结构vm_area_struct(VMA),一个进程虚拟存储空间中的每一个虚拟区间,都对应着一个vm_area_struct,通常被缩写为VMA。,进程的每个VMA,都代表着它的虚拟地址空间中的一个连续区间。一个进程的两个VMA绝对不会重叠。,2管理VMA的数据结构mm_struct,一个进程所有的VMA,都由mm_struct来管理。,.3 管理内存空间的数据结构,在Linux存储管理中,系统设置了一张存储分块表mem_map,它的每一个表项对应着一个内存块,记录着该块的有关信息。,为了记录内存各块的使用情况,Linux设置了位示图bitmap,但是,Linux并不是用bitmap来进行存储分配和释放的,而是通过所谓的“空闲区队列表”:free_area。,图8-12 Linux的空闲区队列表,.4 内存区的分配和页面淘汰策略,进程提出存储请求或释放时,都要与空闲区队列表free_area进行交往。Linux是采用所谓的“伙伴(Buddy)”算法,来进行内存区的分配和释放的。,当进程提出存储请求时,Linux将大于、等于这个数目的最小2,n,个内存块分配出去。,图8-13 “伙伴”算法的实施过程,8.3 Linux的文件管理,.1 Linux文件系统的构成,所谓虚拟文件系统,就是基于多种不同的文件系统,Linux通过软件的方法,隐去它们各自的实现细节,抽象出一组标准的有关文件操作的系统调用。,把这样的系统调用提供给用户后,他们就可以使用统一的界面,去完成对各种不同文件系统中文件的操作了。,有了虚拟文件系统之后,Linux就可以支持多种不同的文件系统了。这时的文件系统,可以看作是由两级构成:上面是用户面对的虚拟文件系统VFS,内核里面则是各个不同的文件系统。,图8-14 Linux的VFS与各文件系统之间的关系,.2 Ext2对磁盘的组织,1Ext2的文件类型,按照文件所含的内容,Ext2把文件分成以下3类。,(1)普通文件,(2)目录文件,(3)特别文件,图8-15 Ext2文件目录项的格式,2Ext2对磁盘的组织,Ext2把磁盘的分区或软盘视为一个文件卷,把其上相邻磁道的物理块称为所谓的“块组”。,一个文件卷上可能有多个块组。在一个块组上,可以存放普通文件的信息,存放目录文件的信息,存放文件的inode节点,当然还应该存放对块组的管理信息。,图8-16 Ext2块组的组织结构,(1)数据区,(2)索引节点表,(3)索引节点位图,(4)盘块位图,(5)组描述符,(6)超级块,图8-17 Ext2索引节点位图与索引节点表的关系,4有关消息队列的系统调用,CPU的现场保护区。,图8-19 Ext2的大型文件索引结构,这样一来,不仅虚拟地址空间里的页,可以存放在内存的不连续块中;,一个进程虚拟存储空间中的每一个虚拟区间,都对应着一个vm_area_struct,通常被缩写为VMA。,在Linux里处理机就具有两种运行状态:核心态和用户态。,当一个文件的长度在112个磁盘块之间时,在Ext2里就称为小型文件。,(2)Linux的多级页表地址转换机制;,图8-17 Ext2索引节点位图与索引节点表的关系,1 Linux文件系统的构成,(2)SCHED_RR实时进程的轮转调度,与文件系统有关的信息。,图8-7 消息管理诸数据结构间的逻辑关系,图8-4 Linux实时调度的例子,2索引节点(inode),.3 Ext2文件的物理结构,在把文件存储到磁盘上时,Ext2采用的是索引式结构,即通过该文件inode节点里的数组i_block,建立起文件的逻辑块号与相应物理块号之间的对应关系,形成文件存储的索引表。,1小型文件的索引结构,当一个文件的长度在112个磁盘块之间时,在Ext2里就称为小型文件。,2中型文件的索引结构,当一个文件的长度超过12个磁盘块时,在Ext2里就称为中型文件。,这时,除了需要用到文件inode节点里数组i_block 的前12个元素,直接给出12个磁盘块外,还需要使用它的第13个元素i_block12,形成一次间接索引。,图8-18 Ext2小型、中型文件的索引结构,3大型和巨型文件的索引结构,当一个文件所需磁盘块数超过b/4+12时,就成为一个Ext2的大型文件。,图8-19 Ext2的大型文件索引结构,当一个文件所需的磁盘块数大于(b/4)*(b/4)+(b/4)+12个时,就成为Ext2的巨型文件了。,这时除了用到i_block0i_block11外,要用到i_block12,要用到i_block13,还要用到i_block14,以形成三次间接索引。,.4 虚拟文件系统VFS的数据结构,Linux的VFS既然是虚拟的,因此它不是一个实际的文件系统,磁盘上并没有一个VFS存在。Linux的VFS随系统的初启而建立,随系统的关闭而消逝。,为了管理所有安装的文件系统,VFS通过使用描述整个VFS的一组数据结构,以及描述实际安装的文件系统的数据结构,来处理实际文件系统之间的各种差别,达到管理的目的。,1超级块(super_block),2索引节点(inode),3file结构,4flies_struct结构,5vfsmount结构,图8-20 task_struct、files_struct、file、file_operations之间的关系,图8-21 vfsmount单链表的结构,8.4 Linux的设备管理,在Linux里,把I/O设备都当作文件来处理,称它们为特别文件或设备文件。,8,.4.1 Linux设备管理概述,图8-22 Linux设备驱动的分层结构示意,1字符设备(character device),2块设备(block device),3网络设备(net device),8,.4.2 Linux对字符设备的管理,Linux为了对字符设备进行管理,设置了如下的一些数据结构。,1device_struct结构,2chrdevs结构数组,图8-23 字符设备数据结构间的关系示意,8,.4.3 Linux对块设备的管理,1块设备管理的数据结构,(1)device_struct结构,(2)blkdevs结构数组,2对块设备输入/输出请求管理的数据结构,(1)缓冲区与buffer_head结构,(2)request结构,(3)blk_dev_struct结构和blk_dev数组,图8-24 request结构与buffer_head结构的关系示意,图8-25 块设备I/O诸数据结构间的关系示意,
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:2022年操作系统专升本电子教案2.ppt
    链接地址:https://www.zixin.com.cn/doc/12676390.html
    页脚通栏广告

    Copyright ©2010-2025   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork