2019独角兽企业重金招聘Python工程师标准>>>
操作系统的发展过程
- 无操作系统的计算机系统
- 单道批处理系统(50年代,系统资源利用率低)
- 多道批处理系统(60年代)
- 分时系统(70年代)
- 实时系统(80年代)
单道批处理系统
- 过程:一批作业以脱机方式输入到磁带上,在监督程序的控制下连续处理。
- 特征
(1)自动性 无人工干预
(2)顺序性 按进入内存的先后顺序执行
(3)单道性 内存中只保存一道作业
单道批处理系统的系统资源利用率太低,为了解决这个问题,出现了多道批处理系统。
多道批处理系统
- 多道:内存中同时存放多个相互独立的程序
- 多道技术是共享的基础
多道批处理特征
- 多道性 内存中有多道程序,可以并发执行
- 无序性 完成时间与进入内存先后无关
- 调度性 作业从提交(提交指的是送到系统的外存)到完成经两次调度
(1)作业调度 内存->外存(选多个),选多个作业,分配处理机
(2)进程调度 分配处理机(选一个,处理机其实就是CPU)
计算机中最重要的两个资源就是CPU和内存
多道批处理的优缺点
- 资源的利用率高(资源主要指的是内存,CPU,外存,文件等)
- 系统吞吐量大
吞吐量:单位时间内完成的总工作量
原因:
(1)资源忙
(2)完成或运行不下去时才切换
- 平均周转时间长
- 无交互能力
- 平均周转时间长
作业周转时间:
从业从进入系统(进入外存就叫进入系统了)开始到完成并退出系统经历的时间。通常几小时,甚至几天。
- 无交互能力
修改和调试极不方便
作业进行的过程中不能进行调试,人为干预。
分时操作系统
定义:
一台主机上连接了多个终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。
- 生产动力
(1)人机交互 (边运行,边调试)
(2)共享主机(设备昂贵)
(3)便于用户上机(在终端上输入,控制)
分时系统特征
- 多路性 即同时性,宏观上同时,微观上轮流
- 独立性 每个用户感觉自己独占主机
- 及时性 较短时间内响应(2-3秒)
- 交互性
实时系统
- 实时性 及时响应外部事件请求
- 应用需求 :
(1)实时控制:
工业生产、武器控制、飞机的自动驾驶
(2)实时信息处理
订票系统
操作系统的基本特征
- 并发性(最重要特征,其他三个特征均基于并发性)
- 共享性
- 虚拟性
- 异步性
并发性
- 并行性 多个事件在同一时刻发生
- 并发性 多个事件在同一时间间隔内发生
单处理机系统:宏观并发,微观串行
多处理机系统:可能有并行
两种资源共享方式
- (1)互斥共享方式 对临界资源(一次只运行一个进程访问)的访问,如:
打印机等硬件;栈,变量,表格等软件。
- (2)同时访问方式 多个进程同时访问的资源,如:磁盘,重入码写的文件。
操作系统两个最基本的特种:并发和共享。
- 虚拟:通过某种技术把一个物理实体变为若干个逻辑上的对应物。
如,虚拟存储器,虚拟内存等。目前虚拟技术都是通过分时来实现的。
- 异步性:进程以不可预知的速度向前推进。
操作系统的五大功能
- 资源管理
(1)处理机管理(硬件)
(2)存储器管理(硬件)
(3)设备管理(硬件)
(4)文件管理(软件)
- (5)用户接口
1)命令接口(联机用户接口,脱机用户接口)
2)程序接口
3)图形接口
联机用户接口
- 适用:几乎所有计算机的操作系统中
- 组成:命令+终端处理程序+命令解释程序
- 过程:
用户在键盘上输入命令;
终端处理程序接收命令并显示在屏幕上
命令解释程序解释并执行该命令
联机命令举例:
- UNIX:login;longout
- DOS:copy;format
命令解释程序:操作系统的最高层,如:
MS-DOS:COMMAND.COM(一种命令解释程序)
UNIX:shell.
脱机用户接口
- 适用:批处理系统。又称批处理用户接口
- 组成:JCL+作业说明书+命令解释程序
- JCL:作业控制语言(job control language)
- 过程:用户把对作业的控制用JCL写在作业说明书上,命令解释程序按照作业说明书解释并执行
程序接口
- 目的:为用户程序访问系统资源而设置
- 组成:一组系统调用
- 系统调用:一个系统调用是一个能完成特定功能的子程序。
操作系统的结构设计
- 操作系统的发展阶段
第一代:无结构OS
第二代:模块化OS结构
第三代:分层式OS结构
第四代:为内核OS结构(20世纪90年代)
前三代为传统OS结构