电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

计算机操作系统第2章

33页
  • 卖家[上传人]:luoxia****01803
  • 文档编号:75334905
  • 上传时间:2019-01-30
  • 文档格式:PPT
  • 文档大小:722.50KB
  • / 33 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、操作系统的结构和硬件支持,操作系统的结构和硬件支持,操作系统虚拟机 操作系统的组织结构 处理机的状态 中断技术 Linux系统的内核结构 Linux系统的特权级和中断处理,1,操作系统的结构和硬件支持主要内容,2,1. 什么是操作系统虚拟机 在裸机上配置了操作系统程序后就构了操作系统虚拟机。 操作系统的核心在裸机上运行; 用户程序在扩充后的机器上运行。,操作系统的结构和硬件支持操作系统虚拟机,3,操作系统的结构和硬件支持操作系统虚拟机,操作系统虚拟机的指令系统 操作命令 (又称命令接口) 作业控制语言 键盘命令 图形化用户界面 系统功能调用(又称程序接口),2. 作系统虚拟机的指令系统 裸机的指令系统是什么? 机器指令,4,1. 操作系统的结构 操作系统的设计方法 单体结构 模块化结构 可扩展内核结构 层次结构,操作系统的结构和硬件支持操作系统的结构,单体结构,模块化结构,5,操作系统的结构和硬件支持操作系统的结构,可扩展内核结构,内核,层次结构,6,操作系统的结构和硬件支持操作系统的结构,2. 操作系统的层次结构,7,操作系统的结构和硬件支持操作系统的结构,3. 实例操作系统的结构

      2、UNIX操作系统的结构 UNIX核心层 处理机管理 存储管理 设备管理 文件系统 UNIX实用层 实用程序 编辑程序、调试程序、系统状态监控、文件管理等的实用程序 软件工具 源代码控制程序SCCS、文档准备程序包等,8,Linux系统的核心结构,操作系统的结构和硬件支持操作系统的结构,9,Windows操作系统的结构,操作系统的结构和硬件支持操作系统的结构,10,1. 为什么要区分处理机的状态 系统中有两类程序 管理程序 用户程序 管理系统资源 使用资源,提出申请 控制程序运行 被控制 区分处理机状态的目的:保护操作系统 2. 什么是处理机的状态 中央处理机的工作状态,当前它正在执行哪类程序,决定 处理机的态。,操作系统的结构和硬件支持处理机的状态,11,3. 处理机状态的分类 管态 (Supervisor mode) 操作系统的管理程序执行时机器所处的状态。使用全部指 令(包括一组特权指令);使用全部系统资源(包括整个存储 区域)。 用户态(User mode) 用户程序执行时机器所处的状态。在此状态下禁止使用特 权指令,不能直接取用资源与改变机器状态,并且只允许 用户程序访问自己的

      3、存储区域。,操作系统的结构和硬件支持处理机的状态,管态 用户态 操作系统的程序执行 用户程序执行 使用全部指令 禁止使用特权指令 使用全部系统资源 只允许用户程序 (包括整个存储区域) 访问自己的存储区域,4. 特权指令集 涉及外部设备的输入/输出指令 修改特殊寄存器的指令 改变机器状态的指令,12,操作系统的结构和硬件支持处理机的状态,13,5. 实例操作系统处理机的状态 DOS系统 不分态 Windows 系统 3环 用户态 0环 系统态 还有1、2环预留 UNIX系统 (Linux)系统 00 核态 01 管态 11 用户态,操作系统的结构和硬件支持处理机的状态,14,1. 中断概念,操作系统的结构和硬件支持中断技术,所谓中断是指某个事件 (例如 电源掉电、定点加法溢出或 I/O传输结束等) 发生时,系 统中止现行程序的运行、引 出处理事件程序对该事件进 行处理,处理完毕后返回断 点,继续执行。,15,2. 中断类型 按中断功能分类 输入输出中断 I/O传输结束或出错中断 外中断 时钟中断、操作员控制台中断、通信中断等 机器故障中断 电源故障、主存取指令错等 程序性中断 定点溢出

      4、、用户态下用核态指令、非法操作等 访管中断 对操作系统提出某种需求时所发出的中断 按中断方式分类 强迫性中断 不是正在运行的程序所期待的中断 如:输入输出中断、外中断、机器故障中断、程序性中断 自愿中断 是运行程序所期待的事件 如:访管中断,操作系统的结构和硬件支持中断技术,16,按中断来源分类 中断 由处理机外部事件引起的中断 俘获 由处理机内部事件引起的中断 中断与俘获的例,操作系统的结构和硬件支持中断技术,17,3. 中断响应 (中断进入),操作系统的结构和硬件支持中断技术,18,保护现场和恢复现场 现场 在中断的那一时刻能确保程序继续运行的有关信息。 后继指令所在主存的单元号 程序运行所处的状态 指令执行情况 程序执行的中间结果等,操作系统的结构和硬件支持中断技术,19,保护现场 当中断发生时,必须立即把现场信息保存在主存中, 这一工作称之为保护现场。 恢复现场 程序重新运行之前,把保留的该程序现场信息从主存 中送至相应的指令计数器、通用寄存器或一些特殊的 寄存器中。完成这些工作称为恢复现场。,操作系统的结构和硬件支持中断技术,20,程序状态字 (psw) 定义 反映程序执行时

      5、机器所处的现行状态的代码。 内容 指令地址、指令执行情况、处理机状态、应屏蔽的中断等。,操作系统的结构和硬件支持中断技术,程序状态字的例 IBM 370 机 程序状态字内容 PSW寄存器 IBM PC 机 程序状态字内容 CS IP 指令地址 flag 标志寄存器 PDP 11系列机 程序状态字内容 PC 指令计数器 PS 处理器状态寄存器寄存器,21,什么是中断响应 中断响应是当中央处理机发现已有中断请求时,中止 现行程序执行,并自动引出中断处理程序的过程。 中断响应所需的硬件支持,操作系统的结构和硬件支持中断技术,22,中断响应过程 保留程序断点及处理机 有关信息 自动转入相应的中断处 理程序执行,操作系统的结构和硬件支持中断技术,中断响应的实质 交换指令地址及处理机 的状态信息,23,4. 软件中断处理 当硬件完成了中断进入过程后,由相应的中断处理程序得到控制权,进入了软件的中断处理过程。 软件的中断处理过程如图所示。,操作系统的结构和硬件支持中断技术,24,1. Linux系统中断处理的上半部和下半部 为什么要区分上半部和下半部 中断处理程序的执行必须快速、简洁 为提高中断处理

      6、的效率,Linux系统将中断处理程序 分为两部分。 将中断响应后必须立即处理的工作即刻执行,这就是 中断处理程序的上半部 (tophalf) 将更多的处理工作向后推迟执行,这就是中断处理程 序的下半部(bottom half)。,操作系统的结构和硬件支持Linux系统的中断处理,25,中断处理程序的上半部 是中断处理中有严格时间限制的工作,是关键而紧迫的 部分; 上半部的工作是不可被打断的,即在屏蔽所有中断的情 况下进行的。例:与硬件设备应答或使硬件复位的工作。,操作系统的结构和硬件支持Linux系统的中断处理,中断处理程序的下半部 处理那些可以稍后完成的工作; 下半部的执行是可以打断的,即是在开中断的情况下 执行。,26,2. 中断处理下半部的实现机制 Linux系统中,用于实现实现将工作推后执行的内核机制称为“下半部机制”,下半部机制主要有tasklet和工作队列。 tasklet tasklet通过软中断实现 一个软中断被标记后才能执行,称为触发软中断。 待处理的软中断会在以下时机被检查和执行: 从一个硬件中断返回时; 在ksoftirqd内核线程中; 在显示检查和执行待处理的软

      7、中断的代码中。,操作系统的结构和硬件支持Linux系统的中断处理,27,Tasklet软中断 tasklet的软中断表示是TASKLET_SOFTIRQ; Taskle由结构体tasklet_struct结构表示,操作系统的结构和硬件支持Linux系统的中断处理,struct tasklet_struct struct tasklet_struct *next; /* 链表中的下一个taskle */ unsignet long state; /* taskle的状态 */ atomic_t count; /* 引用计数器 */ void (*func) (unsigned long); /* taskle的处理函数 */ unsigned long data; /* 给taskle处理函数的参数 */ tasklet由tasklet_schedule()函数调度,28,工作队列 工作队列机制将中断处理程序的下半部交给一个内核 线程去执行。 下半部是在进程上下文(用户地址空间)执行,可以睡 眠和被重新调度。 注:这一点与上述的tasklet不同。如果下半部工作需要 睡眠(如需要执行阻塞

      8、式I/O操作时,或要等待信号灯)时 应选择工作队列机制;否则可选择tasklet机制。,操作系统的结构和硬件支持Linux系统的中断处理,29,工作者线程 该线程接收由各内核中断处理程序交给它的下半部。 该线程由内核线程实现的。执行的函数是 work_thread(),对应的数据结构是工作队列链表。 工作队列链表 由若干个work_struct结构组成。,操作系统的结构和硬件支持Linux系统的中断处理,30,操作系统的结构和硬件支持Linux系统的中断处理,work_struct结构 每个work_struct结构描述如下 struct work_struct unsigned long pending; /* 该工作正在等待处理?*/ struct list_head entry; /* 勾链字 */ void (*func) (void *); /* 该工作的处理函数 */ void *data; /* 传递该该处理函数的参数 */ void *wq_data; /* 内部使用 */ struct timer_list timer; /* 延迟的工作队列所用的定时器 */ ,31,操作系统的结构和硬件支持Linux系统的中断处理,执行函数work_thread() 执行一个死循环; 若工作队列链表不空时,执行链表上的所有工作。 工作被执行完毕,它就将相应的work_struct对象 从链表上移走; 当链表为空时,它进入睡眠状态; 当有下半部插入到队列时,函数是work_thread() 被唤醒,将继续处理新加入的下半部 。,32,什么是操作系统虚拟机 操作系统的结构 区分处理机的态的目的 管态、用户态,二者的区别 中断的定义、类型 中断响应的定义、实质、所需的硬件支持 软件中断处理过程 Linux系统中断处理区分上半部和下半部的目的 上半部、下半部的主要工作和特点,操作系统的结构和硬件支持小结,

      《计算机操作系统第2章》由会员luoxia****01803分享,可在线阅读,更多相关《计算机操作系统第2章》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.