一、 什么是操作系统
1. 计算机系统
存储器
- 主存(内存):可被CPU直接访问
- 辅存(磁盘、光盘、优盘等):主要用于长期存放数据信息。
软件
是计算机系统中的程序、数据和相关的文档。计算机的所有工作都必须在软件的控制下才能进行。
- 系统软件是计算机系统中最靠近硬件的一层软件。
-
操作系统是紧挨着硬件的第一层软件,是对硬件功能的首次扩充,其它软件只有在操作系统的支持下,才能发挥作用。
2. 操作系统概念
-
用户观点:OS是用户与计算机硬件之间的接口
用户使用计算机的三种方式
- 键盘命令、shell命令语言
- 图形界面
- 系统调用接口
- 管理观点:OS是计算机资源的管理者。
负责对计算机的软、硬件资源进行控制、调度、分配和回收,协调系统中各程序对资源请求的冲突,保证各程序都能顺利运行完成。
计算机资源 | 操作系统功能 |
---|---|
处理器 | 处理器管理 |
存储器 | 存储器管理 |
I/O设备 | I/O设备管理 |
文件信息 | 文件管理 |
- 虚拟机观点:一个完全无软件的计算机系统叫做裸机,它向用户提供的是物理硬件接口,难以使用。在裸机上覆盖I/O设备管理软件、文件管理软件、面向用户的窗口软件等等,由他们实现对硬件的操作,用户则可以通过一些命令实现对计算机硬件的操作,无需考虑具体实现细节。
- 总结:是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
二、 操作系统的发展和分类
1.无操作系统的计算机系统
- 手工操作阶段
过程:纸带--输入机--计算机--打印结果--取走纸带
问题:CPU提速时出现人机矛盾;串行性;用户独占全机 - 脱机输入输出技术
过程:纸带机上的输入信息通过外围机存到磁带中,主机对磁带进行操作,操作结果放在磁带中,最终由外围机输出到打印机中。
优点:主机CPU空闲时间减少;I/O速度提高
2.单道批处理系统
- 作业 = 程序 + 数据 + 作业说明书
用户定义、计算机完成 - 监督程序:完成作业的自动转换,调入内存。
- 过程:多个作业脱机输入到磁盘中,再由主机逐个处理,并将结果放入磁盘中,最终磁盘有了全部作业的运行结果
- 关键技术:脱机+作业自动过渡
- 特点:单道(CPU和I/O设备串行工作)、顺序、自动
3.多道批处理系统
- 多道程序设计技术:从磁盘里同时装入多个作业到内存中,它们在操作系统的控制下共享资源,相互穿插运行。
- 过程:作业1占用输入设备时,作业B可占用CPU,以此类推,交替执行。存在等待时间。
- 优点:提高CPU、I/O、内存利用率;增加系统吞吐量
- 缺点:作业平均周转时间长(有等待时间)、无交互能力(都脱机了)
- 特点:多道(宏观并行、微观串行)、无序、调度
4.分时系统
- 概念:在一台主机上连接多个带有显示器和键盘的终端,同时允许多个用户通过主机的终端,以交互方式使用计算机,共享主机中的资源。
- 时间片:每个终端用户的作业能连续使用CPU的最长时间。操作系统以时间片为单位,轮流为每个终端用户服务。
- 特点:
性质 | 解释 |
---|---|
多路性 | 同时有多个用户使用一台计算机。宏观上看是多个人同时使用一个CPU,微观上是多个人在不同时刻轮流使用CPU |
独立性 | 每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在 |
及时性 | CPU处理速度快、作业运行轮转快、系统对用户的响应时间快(作业提交时直接进内存) |
交互性 | 用户根据系统响应结果进一步提出新请求(用户直接干预每一步),两者在”对话“ |
- 例子:Linux 、Unix、学生机房
5.实时系统
- 概念:指系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致的运行。
- 关键点:开始截止时间、完成截止时间(敌军导弹拦截)
- 特点:多路独立、及时性高、可靠性高
- 应用需求:实时控制(生产过程)、实时信息处理(订票系统)
6.微机操作系统的发展
微机操作系统:配置在微型计算机上的操作系统
- 单用户单任务:DOS
- 单用户多任务:Windows
- 多用户多任务:Linux、Unix
7.网络操作系统
- 计算机网络定义:由线路将一些独立自治的计算机相互连接形成的一个集合体。
- 计算机网络特点:多个独立计算机、无公共内存、具备消息通信机制
- 网络操作系统:一般操作系统+网络通信模块。只有计算机要进行相互间通信、使用网络中的共享资源时才会用到网络操作系统。
- 计算机网络的局限性:
- 不支持透明的资源存取:要通过一些自己设计的协议完成相互之间的数据通讯
- 不能对网络资源进行有效统一的管理
- 不能支持合作运算
8.分布式系统
-
定义:
一个系统管理多个计算机,可以动态扩充
特点:可拓展、增加性能、高可靠性
-
与网络系统的区别:
网络系统 | 分布式系统 |
---|---|
一个网络里有多台计算机,每个用户操作 一台 | 用户操作计算机集群,集群根据调度把资源分配给任务去运行。跑一个任务时,可能分配给集群中的几台计算机同时运行 |
9. 嵌入式操作系统
- 概念:是把应用程序、OS、计算机硬件集成在一起的系统。
三、操作系统的特征和功能
1. 特征
- 并发:宏观上同一时段内同时运行,微观交替执行(大多数)
- 加载到内存中的程序叫进程,用于被计算机标识管理调度
- 共享: 系统中的资源可供内存中多个同时并发的进程共同使用
- 互斥共享:打印机一段时间内只能打印一个进程
- 同时访问
- 虚拟:通过技术把物理实体变为若干逻辑对应物
-
打印机假脱机技术:让每个进程有独占一个打印机的感觉
- 异步-不确定性
- 由于多个进程并发执行,因为竞争资源,执行过程中可能会出现等待,因此进程的执行时间不确定。
2. 功能
计算机资源管理角度
- 处理机管理
规定进程调度策略及相应算法,确定CPU先分给哪个应用程序,它占用多长时间,下一个程序是什么,从而进行处理机的分派。 - 存储器管理
- 存储分配
- 存储保护
- 存储扩充
- 设备管理
- 设备无关性
- 设备分配:独享、共享和虚拟技术
- 设备传输控制:启动设备、终端处理、结束处理
- 信息管理(文件系统)
对象:以文件形式存放在外存储器中的程序和数据
主要任务:把设备上存储的信息以文件的方式进行管理
用户角度
- 提供用户接口
- 命令接口
- 程序接口
- 图形接口