一、操作系统的概念
1.定义
操作系统是一个大型的程序系统,它负责计算机的全部软、硬件资源的分配、调度工作,控制并协调多个任务的活动,实现信息的存取和保护。它提供用户接口,使用户获得良好的工作环境。
操作系统的计算机系统的核心软件,按照功能特性的不同,可把操作系统分为多道批处理系统,个人机系统,网络操作系统,分布式操作系统
(系统调用的目的是请求系统服务)
- 多道批处理系统:提高系统的吞吐量和效率(缺点:失去了交互性)
- 实时操作系统:实时的对系统资源进行调度(追求的目标是快速响应)
- 网络操作系统:
- 分布式操作系统:
- 分时操作系统:特性(及时性,独占性,交互性)
Unix为分时操作系统:
在分时操作系统中,时间片一定,用户数越多,响应时间就越长。
DOS没有多道批处理的特点
2、目标
方便性:配置OS后计算机系统更容易使用
有效性:改善资源利用率;提高系统 吞吐量
可扩充性:OSde结构(如层次化的结构:无结构发展->模快化结构->层次化结构->微内核结构)
开放性:OS遵循世界标准范围。
3、作用
- OS作为用户与计算机硬件系统之间的 接口(API/CUI/GUI)
- OS是计算机系统资源的管理者(处理机、存储器、I/O设备、文件)
- OS实现了对计算机资源的抽象(OS是扩充机/虚拟机)
4、操作系统的特征:
程序的并发执行,资源共享、 独立性、异步性
5、发展
随着VLSL的发展,计算机硬件得到了迅速的发展,对操作系统提出了更高的要求,操作系统负责管理计算机系统的资源包括处理机,存储器,设备和文件
处理机管理是用于分配和控制处理机
存储器管理是负责内存的分配与回收
I/O设备管理是负责I/O设备的分配(回收)与操纵
文件管理是用于实现文件的存取、共享和保护
6、现代操作系统的基本特征 : 程序的并发执行 资源共享,和操作的异步性
7、操作系统的生活实例
计算机订票系统应该安装 网络操作系统
计算机语言系统学习应该安装 分时操作系统
8、操作系统的实现必须具备的硬件支持是 :地址转换机构 , 中断转置 存储保护机构
9、分时系统需要使用 多道程序设计技术 中断处理 终端命令解释程序 系统调用
10、支持CPU与外设并行工作的硬件支持有通道, 中断, 缓冲
11、特权指令 关中断 改运行为管态 重启动
12、操作系统的核心 文件系统 设备管理 内存管理 CPU管理
13、设计操作系统时的目标:
可扩充性,开放性,方便性,有效性
14、用户可以通过 命令方式 系统调用方式 图形窗口方式
接口 : 用户接口 ,程序接口 脱机用户接口 图形用户接口(GUI)
15、操作系统是一组控制和管理计算机 硬件和软件资源 合理地对各类作业进行调度 以及方便用户使用的程序的程序的集合
16、资源共享的两种方式 互斥共享方式 同时访问方式
17、在一段时间内只允许一个进程访问的资源称为 临界资源
18、在操作系统中利用了两种方式 实现虚拟技术,时分复用 , 空分复用
二、操作系统的发展过程
1、无操作系统的计算机系统(40年代 手工操作阶段)
- 人工操作方式:用户独占全机,资源空闲浪费。
手工装卸、人工判断、手工修改与调试内存指令等造成CPU空闲;提前完成造成剩余预约时间内的CPU完全空闲;
I/O设备的慢速与CPU的速度不匹配造成的CPU空闲等待时间 - 脱机输入输出(Off-Line I/O)方式。减少了CPU的空闲时间
提高了I/O速度
2、单道批处理系统(50年代)
- 解决问题:
单道批处理系统是在解决人机矛盾和CPU与I/O设备速度不匹配矛盾的过程中形成的。批处理系统旨在提高系统资源的利用率和系统的吞吐量。(但单道批处理系统仍不能充分利用资源,故现在已很少用)
单道批处理分为:联机批处理、脱机批处理
联机批处理:CPU直接控制作业输入输出
脱机批处理:由外围机控制作业输入输出
- 缺点:
系统资源利用率低(因为内存中只存在一道程序,I/O请求成功前CPU都处于空闲状态)
- 特征
- 自动性。正常情况下,一批作业能自动依次运行,无需人工预
- 顺序性。各道作业是顺序进入内存,
- FCFS 单道性。内存中任何时候只能有一道作业。
3、多道批处理系统(60年代初)
目的:为了进一步提高资源利用率和系统吞吐量
该系统中,用户提交的作业都先存在外存中,在作业A在执行I/O请求时,CPU空闲,此时调用作业B,防止CPU空闲。同理按一定的算法调用作业,防止CPU空闲 : 注
优点:
资源 利用率高
系统吞吐量 大
缺点:
平均周转时间长(作业的周转时间是指从作业进入系统开始,直至其完成并退出系统为止所经历的时间。)无交互能力
总结:
- 多道:内存同时存在多个作业
- 宏观上并行:同时有多道程序在内存运行,某一时间段上,各道程序不同程度地向前推进。
- 微观上串行:任一时刻最多只有一道作业占用CPU,多道程序交替使用CPU
4、还需解决的问题:
处理机管理问题 | 内存管理问题(内存分配和保护) |
---|---|
I/O设备管理问题 | 文件管理问题(文件的组织和管理) |
作业管理问题 | 用户与系统的接口(OS还应提供用户与OS的接口,方便用户操作) |
5、分时系统(60年代中)
分时系统 是指在一台主机上连接多个带有显示器和键盘的终端,同时允许多个用户通过自己的键盘,以交互的方式使用计算机,共享主机中的资源。
关键问题:
及时接收(多路卡和缓冲区) | 作业直接进入内存、不允许一个作业长期占用处理机 |
---|---|
即时处理(划分时间片) | 多个用户分时使用主机,每一用户分得一个时间片,用完这个时间片后操作系统将处理机分给另一用户,如此循环,每一用户可以周期性地获得CPU使用权,这样每一用户都有一种独占CPU的感觉。 |
特征:
多路性 | 允许同一主机联接多台终端 |
---|---|
独立性 | 每一用户独占一个终端;每个用户感觉不到其他用户的存在。 |
及时性 | 用户请求能及时响应 |
交互性 | 可进行广泛的人机对话 |
6、实时操作系统(60年代中)
-
概念:系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。
-
特征:
多路性
- 对实时处理系统,系统按分时原则为多个终端服务;
- 对实时控制系统,系统经常对多路现场信息进行采集;以及对多个对象或多个执行机构进行控制。
独立性
- 实时处理系统,每个终端用户向实时系统提出服务请求时,彼此独立;
- 实时控制系统,对信息的采集和对对象的控制彼此不干扰。
及时性(开始截止时间/完成截止时间)
交互性(仅限于访问专用服务程序)
可靠性(多级容错措施保障系统和数据安全)
7、微机操作系统
单用户单任务操作系统:CP/M(75年)、MS-DOS(81年)。
单用户多任务操作系统:OS/2(87年)、MS WINDOWS(90年windows 3.0)。
多用户多任务操作系统:UNIX(70年)
8、多处理机操作系统
9、网络操作系统
三、操作系统的基本特性
1、并发
- 是指两个或多个事件在同一时间间隔内发生。
- 在一个时间段上,每一道作业都能不同程度地向前推进。但在任何一个时间点上只能有一道占用CPU。
- 串行:在内存中每次只能放一道作业,只有它完 全执行完后别的作业才能进入内存执行。
- 并行: 存在于有多个CPU的环境中, 在内存中放多道作业,在任一时间点上都可能有多道作业在不同的CPU上同时执行。
2、共享
系统中的资源(硬件资源和信息资源)可以被多个并发执行的程序共同使用,而不是被其中一个独占。资源共享有两种方式:互斥共享 (临界/独占资源)访问和同时访问。
3、虚拟
虚拟性是一种管理技术,把物理上的一个实体变成逻辑上的多个对应物,或把物理上的多个实体变成逻辑上的一个对应物的技术。采用虚拟技术的目的是为用户提供易于使用、方便高效的操作环境。
CPU | 多道程序设计技术/每个用户(进程)的“虚拟处理机" |
---|---|
存储器 | 每个进程都占有的地址空间(指令+数据+堆栈) |
I/O设备 | 打印机、多窗口或虚拟终端 |
4、异步
在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底。而是走走停停,以 不可预知 的速度向前推进,这就是进程的异步性。
四、操作系统的主要功能
1、处理机管理功能:进程控制、进程同步、进程通信、调度(作业调度、进程调度)
2、存储器管理功能:内存分配、内存保护、存储扩充、地址映射
3、设备管理功能:缓冲管理、设备分配、设备处理
4、文件管理功能:文件存储空间的管理、目录管理、文件的读 /写管理和保护
5、操作系统与用户之间的接口:命令接口、程序接口、图形接口
6、现代OS的新功能:
系统安全:为保障数据的保密性、完整性和可用性,常使用的技术:认证技术、密码技术、访问控制技术、反病毒技术
网络功能和服务:网络通信、资源管理、应用互操作
支持多媒体
五、操作系统的结构设计
传统的操作系统结构
无结构OS
模块化OS结构
分层式OS结构
现代OS结构——微内核结构