《操作系统概论》由会员分享,可在线阅读,更多相关《操作系统概论(104页珍藏版)》请在金锄头文库上搜索。
1、操作系统原理参考书计算机操作系统 (汤子赢等 编著)西安电子科技大学出版社 计算机操作系统 (何炎祥 李飞 李宁 编著)清华大学出版社 操作系统教程(第二版)(徐甲同 方 敏 编著) 西安电子科 技大学出版社 操作系统教程-原理和实例分析(孟静 编著) 高等教育出版 社 计算机操作系统教程(第二版)(左万历 周长林)高等教育 出版社 操作系统(孟庆昌编著)电子工业出版社 操作系统(罗宇 邹鹏 吴刚 等编著)电子工业出版社 操作系统原理教程(张丽芬 刘美华 编著)电子工业出版社 操作系统-内核与设计原理(美)William Stallings 著)电 子工业出版社 操作系统 现代观点(Opera
2、ting Systems A Modern Perspective Second Edition,Lab Update)(美)Gary Nutt 著 孟祥山 晏益慧 译 机 械工业出版社 Linux操作系统结构分析 (郭玉东 主编)西安电子科技大学 出版社 课程目的不是如何使用操作系统,而是理解操作系统如何工作 OS工作方式 OS内部算法和数据结构 设计OS 过程中的问题、解决方案和 折中权衡课程特点 实践性强(从实践总结出原理) 涉及面广(并行程序,性能问题,结构 问题,程序方法论,软件工程,等等) 错综复杂:纵横交叉 如何学好操作系统?Learn OS concepts by coding
3、 them!操作系统做什么?#include int main(int argc, char *argv ) puts(“hello world“);return 0; 用户告诉操作系统执行hello程序 操作系统找到该程序,检查其类型 检查程序首部,找出正文和数据的地址 文件系统找到第一个磁盘块 父进程需要创建一个新的子进程,执行hello程序 操作系统需要将执行文件映射到进程结构 操作系统设置CPU上下文环境,并跳到程序开始处 程序的第一条指令执行,失败,缺页中断发生 操作系统分配一页内存,并将代码从磁盘读入,继续执行 更多的缺页中断,读入更多的页面操作系统做什么? 程序执行系统调用,在文
4、件描述符中写一字符串 操作系统检查字符串的位置是否正确 操作系统找到字符串被送往的设备 设备是一个伪终端,由一个进程控制 操作系统将字符串送给该进程 该进程告诉窗口系统它要显示字符串 窗口系统确定这是一个合法的操作,然后将字符串转换成像素 窗口系统将像素写入存储映像区 视频硬件将像素表示转换成一组模拟信号控制显示器(重画屏幕) 显示器发射电子束 在屏幕上看到 hello world为什么学习操作系统? 设计操作系统或者修改现有的系统存在人们意识不到的大量“操作系统”嵌入式系统(Embedded OS) 加深对使用的OS的理解,有利于深入编程用户为了开发应用程序必须与操作系统打交道 编程时借鉴操
5、作系统的设计思想和算法操作系统中所用的许多概念和技巧可以推广应用到其他 领域 选择购买操作系统 我们并不总使用Win95/NT/2000/XP为什么学习操作系统? 涉及到计算机科学的很多领域计算机体系结构/硬件软件设计程序设计语言数据结构算法网络学技术并能在其他地方应用之操作系统的工作(1)程序的执行负责启动每个程序,以及结束程序的工作 (2)完成与硬件有关的工作 (3)完成与应用无关的工作易于使用,基本服务,统一性 (4)计算机系统的效率与安全问题硬件相关应用程序 - 虚机器界面操作系统 - 物理机器界面硬件假如没有操作系统?怎样将目标代码送给硬件?怎样输出 打印结果? 人们将对二进制程序操
6、作从二极发光管读答案硬件相关 指实现代码中包含存储器的物理地址, 包含对设备接口寄存器和设备接口缓冲区的读写等等 实现该工作的过程代码和硬件因素密切相关,即需要设 置与测试、使用物理地址、设备接口寄存器等等 硬件相关必然复杂繁琐、代码量大 硬件相关的工作,其实现代码不通用由于操作系统承担了上述工作,在其之上的各类程序就 没有必要直接同硬件打交道了。硬件改变时,操作系统 相应变化即可,其他的程序不用作出改变硬件相关还表 现在有关硬件的状态必定带来对应代码的变化应用软件与现实硬件之间的软件 硬件抽象,可移植性 有限变为无限(接近) 提供保护一台等价的扩展机器(虚拟机),比底层 硬件更容易编程与应用
7、无关任何一个程序都需要的、最基本的工作 它们具有共性、工作过程相同、与具 体应用无直接关系(即与用户所关心的 应用目标无直接关系)教学内容讲课讲课 内容学 时时 1操作系统概论4 2用户与操作系统的接口4 3进程管理10 4存储管理8 5文件系统6 6输入/输出系统6 7Linux操作系统简介4 上机实验12 合 计54第一章 操作系统概论 第一章 操作系统概论 1.1 操作系统的基本概念 1.2 操作系统的形成和发展1.3 操作系统的分类1.4 操作系统的功能和主要特征 1.5 操作系统的结构 第一章 操作系统概论 1. 定义学科的观点 操作系统是控制和管理计算机系统的硬件和软件资源,合理地
8、组织计算机工作流程及方便用户使用的程序和数据的集合。 功能的观点 操作系统是一个计算机资源管理系统,它负责计 算机系统的全部资源的分配、控制、调度和回收。 用户的观点 操作系统是计算机与用户之间的接口,用户通过 这种接口使用计算机。 软件的观点 操作系统是程序和数据结构的集合。 管理的观点 操作系统是计算机硬件和软件资源的合理而协调 的管理者。1.1 操作系统的基本概念第一章 操作系统概论 2. 目标 (1)方便性 用户可通过良好的用户界面来操作/使用计算机(DOS命令 ,WINDOWS图标)。 机器只识别0/1代码,如未配置OS,用户只能用机器语言书 写程序。PASCAL语言编写程序编译调用
9、OS命令运行 。 驱动(I/O 驱动) (2)有效性 系统效率(如CPU用的充足与否)。 资源利用率(如内存、I/O设备是否忙碌、OS可标示某设 备情况异常,统一管理。磁盘整理。)第一章 操作系统概论 (3)可扩充性IT技术迅速发展,OS应采用模块化结构,象积木一样, 可增加修改。 (4)开放性使用不同厂家的计算机,设备拿有效地协同工作,实现应 用程序的可移植性和互操作性。例如:UNIX对于C语言编制的程序可以直接使用,可移 植性好。几十万条指令的程序改动千条左右即可。 3. 作用 (1)系统资源的管理者。 (2)提供资源共享,并对资源使用进行合理调度。 (3)提供I/O接口,简化用户的I/O
10、工作。 (4)验错。第一章 操作系统概论 4 . 对待OS的几种观点 操作系统作为最基本的系统软件 计算机系统资源一个计算机系统由两部分构成:系统硬件和系统软件。 系统硬件是指构成计算机系统所必须配置的全部设备。现代计算机系统一般都包含一个或多个处理器、内存、磁盘、光盘、 打印机、时钟、鼠标、键盘、显示器、网络接口以及其它输入输出设备。计算机系统硬件构成了计算机本身和用户作业赖以活动的物质基础。通常,我们把计算机系统中所配置的硬件称为硬件资源。 第一章 操作系统概论 只有系统硬件而无系统软件的计算机称为裸机。用户直接使用裸机不仅不方便,而且将严重降低系统效率。系统软件是一个计算机系统必须配置的
11、程序和数据的集合。它们是专门为计算机系统所配置的,例如操作系统、各种语言处理程序(汇编程序、编译程序等)、编辑程序、连接装配程序、系统实用程序以及系统维护程序等,这些都可算是系统软件,但是最为重要、最为基本的系统软件便是我们所要讲的操作系统了。 操作系统本身是计算机系统软件中的重要组成部分, 而其物质基础是系统硬件。系统硬件和系统软件统称为计算机系统资源。 第一章 操作系统概论 计算机系统的层次结构由四层构成,每层代表一组功能并提供相应的接口。 接口:掩盖该层内部功能的实现细节,向外部提供一 些使用的约定。图 1.1 计算机系统的层次结构 第一章 操作系统概论 操作系统作为资源管理器(1) 跟
12、踪资源状态。 (2) 分配资源。 (3) 回收资源。 (4) 保护资源。 第一章 操作系统概论 操作系统作为虚拟机软件:语言处理程序 虚拟机2软件:操作系统 虚拟机1 硬件(裸机) 虚拟机:二者结合变成了功能更强大使用更方便的机器。为了让用户和程序员在使用计算机时不涉及硬件细 节,使硬件细节和程序员隔离开来,需要建立一种简单的 高度抽象。这种抽象就是为用户提供一台等价的扩展计算 机,这样的计算机称为虚拟计算机,简称虚拟机。第一章 操作系统概论 进程的观点从操作系统运行的角度动态的观察操作系统。操作系统是由一些可同时独立运行的进程和一个对这些进程进行协调的核心组成。服务提供者的观点从用户角度来看
13、:操作系统为用户提供一组功能强大的、方便易用的命令或系统调用。 操作系统作为标准服务提供者 提供每个用户需要的标准工具(程序创建和执行、存取I/O设备、 控制对文件的存取、系统存取、错误检测和回应统计) 如标准库、窗口系统第一章 操作系统概论 5. 多道程序设计的概念 (1)通道:用于专门完成I/O操作的处理机。优势:CPU和通道并行工作;通道和通道并行。(2)单道系统一次只加载一个任务处理。不足:CPU利用率低,外设利用率低;吞吐量小,作业执行时间长。 第一章 操作系统概论 (3)多道程序设计u多道程序设计的硬件支持中断系统从系统操作的观点来看,中断的定义如下: 对异步或例外事件的一种响应;
14、 这一响应自动地保存CPU状态以便将来重新启动; 自动转入中断处理程序。 第一章 操作系统概论 在计算机系统中, 一般将中断分为如下几种类型: (1) I/O中断。 这是外部设备完成了预定I/O操作或在I/O操作中出错所引起的中断。(强迫性中断)(2) 程序中断。 这是由程序中的错误引起的中断。(强迫性中断) (3) 硬件故障中断, 或称机器检验中断。(强迫性中断) (4) 外中断。 外中断来自外部信号, 这些信号可能来自其它机器。 外中断还包括时钟中断, 以及来自键盘的中断。(强迫性中断)(5) 访管中断。 由机器中的访管指令引起的中断。(自愿性中断)第一章 操作系统概论 图 1.2 中断的
15、处理过程 第一章 操作系统概论 通道技术 四级连接;三级控制。图 1.3 单通路I/O系统 第一章 操作系统概论 CPU和通道的通信CPU与通道之间的关系是主从关系。CPU是主设备,通道是从设备。采用通道方式实现数据传输的过程如下: (1) 当运行的程序要求数据传输时,CPU向通道发I/O指令,命令通道工作;(2) 通道接收到CPU的I/O指令后,从内存中取出相应的通道程序,通过执行通道程序完成I/O操作;(3) 当I/O操作完成(或出错)时,通道以中断方式中断CPU正在执行的程序,请求CPU的处理。 第一章 操作系统概论 u 多道程序设计原理 图 1.4 多道程序运行概念图第一章 操作系统概论 图 1.5 多道程序执行过程的时间图 第一章 操作系统概论 u多道程序设计的实现 为实现多道程序设计, 必须妥善解决以下三个问题(1) 存储保护和地址重定位。 (2) 处理机管理和调度。 (1) (3) 资源的管理和分配。 第一章 操作系统概论 图 1.6 多道程序设计环境下各程序的执行和状态的转换 第一章 操作系统概论 综上所述,可归纳多道程序设计的特点如下: (1) 多道,