操作系统笔记 第一章 操作系统引论

第一章 操作系统引论

操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。

1.1 操作系统的目标和作用

主要目标是:方便性、有效性、可扩充性和开放性。

有效性的两层含义:提高系统资源的利用率;提高系统的吞吐量。

作用:

  • OS作为用户与计算机硬件系统之间的接口

    • 用户可以通过命令方式、系统调用方式和图标—窗口方式来实现与OS的通信
  • OS作为计算机系统资源的管理者

    • OS的主要功能是对处理机、存储器、I/O设备以及文件(数据和程序)四类资源进行有效的管理。
    • 处理机管理适用于分配和控制处理机;存储器管理主要负责内存的分配与回收;I/O设备管理是负责I/O设备的分配(回收)与操纵;文件管理是用于实现对文件的存取、共享和保护。
  • OS实现了对计算机资源的抽象

    • 裸机:完全无软件的计算机系统

    • 在裸机上铺设的I/O软件隐藏了I/O设备的具体细节,向上提供了一组抽象的I/O设备,把覆盖了上述软件的机器称为扩充机器或虚拟机。

推动操作系统发展的主要动力

  • 不断提高计算机资源利用率
  • 方便用户
  • 器件的不断更新换代
  • 计算机体系结构的不断发展
  • 不断提出新的应用要求

1.2 操作系统的发展过程

1.2.1 未配置操作系统的计算机系统

1. 人工操作方式

​ 早期的操作方式是由程序员将事先已穿孔的纸带,装入纸带输入机,在启动它们将纸带上的程序和数据输入计算机,然后启动计算机运行。

​ 人工操作方式严重降低了计算机资源的利用率,此即所谓的人机矛盾。

2.脱机输入/输出(Off-Line I/O)方式

​ 该技术是事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带(卡片)上的数据(程序)输入到磁带上。当CPU需要这些程序和数据时,再从磁带上高速地调入内存。

​ 由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,故称为脱机输入/输出方式。反之,把在主机的直接控制下进行输入/输出的方式称为联机输入/输出(On-Line I/O)方式。

​ 优点:减少了CPU的空闲时间;提高了I/O速度。

1.2.2 单道批处理系统

1. 单道批处理系统(Simple Batch Processing System)的处理过程

​ 首先由监督程序将磁带上的第一个作业装入内存,并把运行控制权交还给作业;当该作业处理完成时,又把运行控制权交还给监督程序,再由监督程序把磁带上的第二个作业调入内存。计算机系统就这样自动地一个作业紧接一个作业地进行处理,直至磁带上的所有作业全部完成。

​ 该系统是在解决人机矛盾和CPU与I/O设备速度不匹配矛盾的过程中形成的。换言之,批处理系统旨在提高系统资源的利用率和系统吞吐量,但这种单道批处理系统仍不能充分地利用系统资源。

2.缺点

​ 系统中的资源得不到充分的利用。这是因为在内存中仅有一道程序,每逢该程序在运行中发出I/O请求后,CPU便处于等待状态,必须在其I/O完成后才继续运行。

1.2.3 多道批处理系统(Multiprogrammed Batch Processing System)

1.多道程序设计的基本概念

​ 为了进一步提高资源利用率和系统吞吐量,引入了多道程序设计技术,由此形成了多道批处理系统。用户所提交的作业先存放在外存上,并排成一个队列,称为”后备队列“。由作业调度程序按一定的算法,从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。这样可以利用因I/O操作时的CPU空档时间,再调度另一道程序执行。

2.优缺点

  • 资源利用率高
  • 系统吞吐量大(系统吞吐量是指系统在单位时间所完成的总工作量)
  • 平均周转时间长(平均周转时间是指从作业进入系统开始,直至其完成并退出系统为止所经历的时间)
  • 无交互能力

3.需要解决的问题

  • 处理机争用问题
  • 内存分配和保护问题
  • I/O设备分配问题

​ 操作系统是一组能有效地组织和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。

1.2.4 分时系统(Time Sharing System)

1.分时系统的引入

为了满足人—机交互的需求

2.分时系统实现中的关键问题

​ 在多道批处理系统中,用户无法与自己的作业进行交互的主要原因是:作业都先驻留在外存上,即使以后被调入内存,也要经过较长时间的等待后方能运行,用户无法与自己的作业进行交互。

​ 为了解决交互问题,首先系统必须能提供多个终端,同时给多个用户使用;其次,当用户在自己的终端上键入命令时,系统应能即使接受,并即使处理该命令,再将结果返回给用户。此后,用户可根据系统返回的响应情况,再继续键入下一条命令,此即人—机交互。亦即,允许有多个用户同时通过自己的键盘键入命令,系统也应能全部及时接受并处理。

3.分时系统的特征

  • 多路性
  • 独立性
  • 及时性
  • 交互性

1.2.5 实时系统(Real Time System)

1.实时系统的类型

  • 工业(武器)控制系统
  • 信息查询系统
  • 多媒体系统
  • 嵌入式系统

2.实时任务的类型

  • 周期性实时任务和非周期性实时任务
  • 硬实时任务和软实时任务,硬实时任务是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的后果。

1.2.6 微机操作系统的发展

  • 单用户单任务操作系统——DOS
  • 单用户多任务操作系统——WIN
  • 多用户多任务操作系统——UINX

1.3 操作系统的基本特性

并发、共享、虚拟和异步四个基本特征

1.3.1 并发(Concurrence)

  • 并行与并发

    • 并行是指两个或多个事件在同一时刻发生
    • 并发是指两个或多个事件在同一时间间隔内发生
  • 引入进程(进程是指在系统中能独立运行并作为资源分配的基本单位)

1.3.2 共享(Sharing)

  • 互斥共享方式
    • 临界资源:一段时间内只允许一个进程访问的资源
  • 同时访问方式

1.3.3 虚拟(Virtual)

  • 时分复用技术
  • 空分复用技术

1.3.4 异步(Asynchronism)

进程以仁恩不可预知的速度向前推进,此即进程的异步性。

1.4 操作系统的主要功能

1.4.1 处理机管理功能

  • 进程控制
  • 进程同步
  • 进程通信
  • 调度

1.4.2 存储器管理功能

  • 内存分配
  • 内存保护
  • 地址映射
  • 内存扩充

1.4.3 设备管理功能

  • 缓冲管理
  • 设备分配
  • 设备处理

1.4.4 文件管理功能

  • 文件存储空间的管理
  • 目录管理
  • 文件的读/写管理和保护

1.4.5 操作系统与用户之间的接口

  • 用户接口
    • 联机用户接口
    • 脱机用户接口
    • 图形用户接口
  • 程序接口

1.5 OS结构设计

微内核OS结构:能有效地支持多处理机运行,故非常适用于分布式系统环境。


版权声明:本文为weixin_44483769原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。