定义·:操作系统(Operating,OS)是指控制和管理整个计算机系统的硬件和软件资源(1.操作系统是系统资源的管理者),并合理地组织调度计算机的工作和资源的分配;以提供用户和其他软件方便的接口和环境(2.向上层提供方便易用的服务);它是计算机系统重最基本的系统软件(3.是最接近硬件的一层软件)。
作为系统资源的管理者
过程(实际的例子)
本书的核心就是如此,以操作系统提供的功能为出发点:第二章讲处理机管理、第三章讲存储器管理、第四章讲文件管理、第五章讲设备管理。
根据定义—向上层提供方便易用的服务
->封装思想:操作系统把一些丑陋的硬件功能封装成简单易用的服务,使用户能更方便地使用计算机,用户无需关心底层硬件的原理,只需要对操作系统发出命令即可。
->GUI(图形化用户接口):用户可以使用形象的图形界面进行操作,而不再需要记忆复杂的命令、参数。
->联机命令接口=交互式命令接口(用户说一句,系统跟着做一句)
->脱机命令接口=批处理命令接口(用户说一堆,系统跟着做一堆)
->程序接口:可以在程序中进行系统调用来使用程序接口。普通用户不能直接使用程序接口,只能通过程序代码间接使用。
系统调用=广义指令
系统调用(后面会专门讲到):类似于函数调用,是应用程序请求操作系统服务的唯一方式。
针对作为最接近硬件的层次
需要对硬件机器的扩展,把覆盖了软件的机器成为扩充机器,又称为虚拟机。
也可以说是通过接口来连接知识。
并发和共享式操作系统的最基本特征,二者互为存在条件
并发:两个或多个事件在同一时间间隔发生。这些事件宏观上是同时发生的,但微观上是交替发生的。
并行:两个或多个事件在同一时刻发生。
操作系统的并发行是指计算机系统中同时存在多个运行的程序。因此它具有处理和调度多个程序同时执行的能力。单处理机环境下操作系统的并发性是通过分时得以实现的。
并行性需要有相关硬件的支持,如多发射技术或多处理机硬件环境。
区别:
共享
①共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
互斥共享方式。一段时间内只允许一个进程访问,如打印机、磁带机。此外还有变量、数据(如:公用队列)把一段时间内只允许一个进程访问的资源称为临界资源。
同时共享方式。典型的是磁盘设备。宏观上可以同时共享,微观上交替共享,即分时共享。
②有些私有数据仅供一个进程使用。
③共享程序段,是可重入代码,也称纯代码,可以被多个程序同时访问。
虚拟
虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。
一个程序放入系统,必须分配CPU才能执行。
异步
异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。
显然,没有并发性就谈不上虚拟性和异步性。
重点关注和理解各类操作系统主要想解决的是什么问题,各自的优缺点。
->手工操作阶段
用户在计算机上算题的所有工作都要人工干预,如程序的装入、运行、结果的输出等。
缺点:
->批处理阶段—单道批处理系统。
批处理系统是为了解决手工操作的问题:人机矛盾及CPU和I/O设备之间速度不匹配的矛盾。
引入脱机输入/输出技术(用外围机+磁带完成),并由监督程序负责控制作业的输入、输出。
主要特征:
优点:一定程度上缓解了人机速度矛盾,资源利用率有所提升。
缺点:内存中仅能有一道程序运行,只有该程序运行结束后才能调入下一道程序。CPU有大量的时间是在空闲I/O完成。资源利用率依然很低。
->多道批处理系统
为解决内存只有一道程序进行,并且资源利用率,CPU的大量空闲时间。
特点:多道、宏观上并行、微观上串行。
主要优点:多道程序并发进行,共享计算机资源。资源利用率大幅提升,CPU和其他资源更能保持“忙碌”状态,系统吞吐量增大。
主要缺点:用户响应时间长,没有人机交互功能(用户提交自己作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行)。
->分时操作系统
为解决人机交互问题。
分时操作系统:计算机以时间片为单位轮流为各个用户/作业服务,各个用户可以通过终端与计算机进行交互。
特点 :
缺点:不能优先处理一些紧急任务。操作系统对各个用户/作业完全公平的,循环地为每个用户/作业服务一个时间片,不区分任务的紧急性。
->实时操作系统
解决了区分任务的紧急性。
主要优点:能够优先响应一些紧急任务,某些紧急任务不需时间片排队。
概念:在实时操作系统的控制下,计算机系统接受到外部信号后及时进行处理,并严格在规定的时刻完成。
特点:
分类:
->其他操作系统