1 / 28

Ch2 操作系统的运行环境

Ch2 操作系统的运行环境. 硬件环境 软件环境 OS 与人的接口 微程序设计 . 中央处理机 CPU 指令系统 处理机状态字 程序状态字 主存储器 存储器类型 存储保护. 缓冲技术 中断技术 时钟和时钟队列. 2.1 硬件环境. 中央处理机( CPU ) . 单机系统 : 计算机系统中只有一个处理机 多机系统 : 有多个处理机(不包括通道)

kristy
Download Presentation

Ch2 操作系统的运行环境

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ch2 操作系统的运行环境 • 硬件环境 • 软件环境 • OS与人的接口 • 微程序设计

  2. 中央处理机CPU 指令系统 处理机状态字 程序状态字 主存储器 存储器类型 存储保护 缓冲技术 中断技术 时钟和时钟队列 2.1 硬件环境

  3. 中央处理机(CPU) • 单机系统:计算机系统中只有一个处理机 多机系统:有多个处理机(不包括通道) • 指令系统: 单用户单任务:用户可用全部指令;多用户或多任务:多道程序设计技术,分为特权指令,非特权指令。用户只能使用非特权指令,只有OS可使用所有的指令(包括特权指令)。

  4. CPU 工作状态 • 处理机工作状态: • 核心状态,管理状态,用户程序状态; • 管态:OS管理程序运行时CPU的状态。此时CPU可以执行全部指令,使用所有资源,并具有改变处理机状态的能力。 • 目态:用户程序运行时CPU的状态。此时CPU只能执行非特权指令。 • 处理机工作状态寄存器: 程序记数器PC;程序状态字PSW

  5. 主存储器-使用及类型 • 作业的程序和数据必须放在主存中才能运行!OS也要在主存中存放并运行! • 存储器的类型: RAM:读写型,存放随机存取的用户程序 和数据 ROM:只读型(PROM,EPROM),程序固 化 ex: IBM-PC基本系统:48KB ROM= 40KB(BIOS+CBASIC)+8KB(用户) • 存储器组织:bit, byte, word, block

  6. 主存储器-存储保护-界地址寄存器 • 目的:保证OS及其它程序不被错误的操作所破坏。 • 方法:界地址寄存器,存储键 • CPU中设置一对界限地址寄存器,存放该用户作业在主存中的上限和下限地址---上限寄存器,下限寄存器。 访问主存-->硬件比较地址-->判断越界--> 越界中断/存储保护中断 界地址寄存器

  7. 主存储器-存储保护-存储键 • 主存分块->存储块->每块一个存储保护键(4bits存储键+1bit取保护位)。 0--万能键,系统用; 1. . .15--用户用 • 例如:IBM370

  8. 缓冲技术 • 在主存中划出一块空间,暂存来往于I/O设备和处理机间的数据。 • 缓解I/O设备传输数据与处理机处理数据速度间的矛盾! (1)避免工作区因传输数据而长期被占用;(2)缓冲区与设备联系而不与用户直接联系;(3)减少I/O次数。Buffer信息可供多个用户共同使用和反复使用。 • 多缓冲区技术:提高设备利用率(PDP-11的UNIX系统)

  9. 中断技术-概念 • OS由“中断驱动”! • 概念:中断,异步事件,中断事件(中断源),中断处理程序。 • 作用: • 能充分发挥处理机的使用效率; • 提高系统的实时处理能力:及时响应中断请求。

  10. 中断逻辑: 中断寄存器寄存中断信号,中断扫描机构检测有否中断信号,有则中断码送PSW中断逻辑: 中断寄存器寄存中断信号,中断扫描机构检测有否中断信号,有则中断码送PSW 微型机中断类型: (IBM-PC) 可屏蔽中断INTR, 不可屏蔽中断NMI, 程序错误中断, 软件中断(Trap, INTn指令)。 大型机中断类型: (IBM-370,43) 机器故障中断 I/O中断 外部中断 程序中断 访管中断/陷阱中断: 大型机的访管指令SVC; 小/微型机的陷阱指令Trap; Z-8000的SC指令; 中断技术-中断逻辑和中断类型

  11. 多级中断系统: 有多根中断请求线从不同设备连接到中断逻辑。 具有相同特性和优先级的设备连在同一中断级(线)上。 中断优先级:决定CPU响应中断请求的优先次序,优先级高的先得到响应。 如大型机: 机器故障中断 程序中断,访管程序中断 外部中断 输入输出中断 中断判别:同级中断 固定优先数, 轮转法 中断响应: 何时:CPU在指令周期内最后时刻询问有无中断请求(扫描中断寄存器)并响应。 如何: 软件查询:费时,经济 中断向量:硬件 中断屏蔽:PSW中的中断禁止位 中断技术-中断响应和中断屏蔽

  12. 中断技术-中断处理 • 硬件过程: (隐操作) (IBM-PC为例) • 保护现场(PSW,IP ,CS入栈); • 中断向量-> IP,刷新PSW,CS; • 转入中断处理程序; • 恢复中断程序现场( PSW,IP ,CS出栈)。 • 硬件,软件配合实现。

  13. 时钟的作用 多道程序:为系统发现陷入死循环的作业; 分时系统:实现用户作业间按时间片轮转; 实时系统:定时输出控制信号给实时控制设备; 定时唤醒; 波特率发生器; 记录时间; 提供绝对时间:年月日 类型: 绝对时钟, 间隔 时钟/相对时钟, 软时钟/虚拟时钟 硬件实现:时钟寄存器按时钟电路所产生的脉冲加1或减1。 绝对时钟:年月日时分秒 操作员置时间初值,定时自动加1(如每uS ,64位寄存器可记148年) 间隔 时钟/相对时钟: 操作员置时间间隔初值,定时自动减1(如每1/300s),负值触发时钟中断。 时钟

  14. 时钟队列:间隔时钟的软件实现 • 便于实现进程自己的间隔时钟 • 时钟队列实现作业的定时唤醒: • A要求50毫秒后运行, • B要求60毫秒后运行, • C和D要求65毫秒后运行, • A要求开始运行50毫秒后再运行。

  15. 2.2 OS与其他系统软件的关系 • 关系: • OS控制管理其他系统软件,并与其共同支持用户程序的运行——运行环境; • OS的功能设计也受到这些系统软件的功能强弱和完备与否的影响。 • OS常用的软件技术: • 重定位技术 • 装入程序:绝对装入,相对装入 • OS与人的接口:脱机控制,联机控制 • *微程序设计

  16. OS常用软件技术之一:重定位 • 概念 (1) 用户,作业,作业步,进程; (2) 绝对地址:主存单元的实际地址。 (存储控制部件用来识别单元在主存中的实际位置) (3)相对地址:相对于某个基准地址的位置,程序员编程时使用,用于安排指令和数据。 (用于程序编写和编译 中的地址系统) (4) 逻辑地址空间:相对地址的全体/集合。指一个被汇编、编译和连接装配后的的目标程序所限定的地址的集合。 [5] 物理地址空间:绝对地址的集合,即实际的主存地址空间。

  17. 作业A的逻辑地址空间 0000h 0000h 1000h 作业B的物理地址空间 0FFFh 2FFFh 作业B的逻辑地址空间 5000h 0000h 作业A的物理地址空间 5FFFh 1FFFh FFFFh

  18. 0 LOAD 1,6 2 SUB 1,8 4 STORE 1,10 6 A 8 B 10 400 402 404 406 408 LOAD 1,6 (406) SUB 1,8 (408) STORE 1,10(410) A B LOAD 1,adr1 SUB 1,adr2 STORE 1,adr3 adr1: A adr2: B adr3: 主存 源程序 目标程序 装入主存的程序 名空间 逻辑地址空间 实际地址空间

  19. 重定位 • 重定位:把程序中的相对地址变换成绝对地址,使程序装入主存中后能正确执行。 • 静态重定位:程序装入主存时,运行前,由连接装入程序进行重定位。 • 动态重定位:处理机每次访问主存时,由动态地址变换机构(硬件)自动进行重定位,把相对地址转换成绝对地址。 • 重定位寄存器RR:硬件支持自动完成 • 映象:虚存管理,页表实现虚页到实页的映象 • 重定位的对象:程序中与地址有关的项,即指令,数据,地址指针。

  20. 重定位的实现——装入程序 • 一般地:程序->编译,汇编(可浮动的相对地址空间)->连接装入(绝对地址空间) • 装入程序:(连接程序,连接编辑程序) 把非同一次编译的过程、子程序(目标程序)同主程序装配起来装入主存运行。 • 绝对装入程序:已知用户能用的主存起始地址。程序->编译汇编(绝对地址空间)!无需重定位!如:Paradigm(Locate, Debug, PDRemote) 相对装入程序:多道程序系统 把作业所用到的各个子程序和过程同主程序装配起来(连接);把已按相对地址装配好的目标程序装入主存运行(装入)-连接装入程序

  21. 地址缓冲器 M1 • 程序员预先了解地址空间分配: 用C软件开发系统Paradigm 实现 Embedded System 2000h~2FFFh Intel 186 数据缓冲器 M2 3000h~3FFFh 译码器 1000h~1FFFh IO

  22. 连接装入程序 • 准备工作: 程序经编译汇编生成可重定位目标模块(提供全部用于重定位的信息) • 内部定义符号表:本程序被其它程序调用时的名字及其在本程序中的相对地址。 • 外部调用符号表:本程序所调用的其它程序段名表。 • 指示字:对程序中各数据项附加指示字,说明是否需要重定位。或重定位表/重定位词典:给出需重定位的数据项。     • 代码和数据区 • 连接装入:

  23. 符号名 地址 P e CALL SUB ADD TIME d 内部定义符号表 符号名 地址 P e d 外部调用符号表 SUB1 TIME P e CALL* ADD* SUB1 SUB1 程序段P P e d 代码 与 数据区 内部定义符号: P,e,d 外部调用符号: SUB1 TIME TIME d 重定位词典 全程符号表 程序------->编译汇编------->可重定位目标模块 主存

  24. 2.3OS与人的接口 • OS与用户的接口: 用户程序,作业控制说明(JCB) • 作业控制方式: • 脱机作业控制:自动控制方式,为批处理的脱机用户提供的,如作业控制语言 • 联机作业控制:直接控制方式,为联机或终端用户提供的,如终端命令,图形用户接口GUI.

  25. 脱机控制方式 • 作业控制卡方式:作业控制语言穿卡 • 作业控制卡 • 源语句或目标语句卡 • 数据卡 • 作业说明书方式:如IBM370的作业控制语言,英国ICL1900系列的George语言。 • 作业标识命令 • 执行命令 • 数据定义命令 • 定界命令

  26. 终端命令:OS根据自己的设计形成一套命令 系统访问 程序运行 程序开发 文件操作 资源分配 前后台作业转换 系统管理 图形用户接口GUI: 窗口 菜单 列表盒 表目盒 对话盒 按纽 滚动杆 联机控制方式

  27. 2.4*固件-微程序设计概念 • 固件:软件通过微程序设计转化为硬件 • 计算机线路: • 数据流线路:导线、存储元件,传输电信号(数据),包含大量分支。 • 控制线路:译出计算机指令,并确定使用哪条数据通路。 • 计算机动作:由一系列基本动作组成——微操作,微指令 ——微程序(控制器完成)。 • 将主存储器的缓冲寄存器中一个字节送累加器 • 清除加法器 • 将指令地址寄存器增加一个固定值 • 将加法器中内容送累加器

  28. 微操作/微指令:计算机硬件中最基本操作。机器指令->若干控制器基本操作->微程序微操作/微指令:计算机硬件中最基本操作。机器指令->若干控制器基本操作->微程序 • 微程序设计:把计算机控制器的操作用微指令编成程序(微程序或微代码)来实现。 • 优点: • 控制线路设计标准化; • 便于修改维护检查; • 指令系统适应性强-实现兼容; • 多组指令系统共存于一台计算机,程序可移植。 • 微程序在高速控制存储器中运行(控存-CPU中的ROM,不同于主存)。 • OS的部分功能用微程序实现:速度快,改善系统性能,降低程序开发成本…...

More Related