操作系统学习笔记(一)-- 引论

操作系统学习笔记(二)-- 引论
操作系统学习笔记(三)-- 处理机调度与死锁
​ 操作系统(OS),是配置在计算机硬件的笫 一层软件,其主要作用是管理这些设备,提高它们的利用率和系统的吞吐量,并为用户和应用程序提供一个简单的接口便于用户使用。

1. 操作系统的目标和作用

  1. 目标

    • 方便性
    • 有效性
    • 可扩充性
    • 开放性
  2. 作用

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

      tRbpSU.png
    • OS 作为计算机系统资源的管理者

    • OS 实现了对计算机资源的抽象

2. 操作系统的发展过程

  1. 未配置操作系统的计算机系统

    • 人工操作方式:手工操作、速度慢、CPU浪费严重。

    • 脱机输入/输出方式((Off-Line I/O):该技术是事先将有用户程序和数据的纸袋装入纸袋输入机,在一台外围机的控制下,把纸带上的数据(程序)输入到磁带上。减少了 CPU 的空闲时间;提高了 I/O 速度。

      tRqP9f.png
  2. 单道批处理系统:为实现对作业的连续处理,先把一批作业输入到磁带上,一个接一个的连续处理。注意在内存中始终只有一道作业

    • 特征: 自动性、顺序性、单道性。

    • 缺点:系统中的资源得不到充分的利用。

      tRqcVA.png
  3. 多道批处理系统:用户提交的作业先放在外存上,排成“后备队列”。由作业调度程序选择作业进入内存。

    • 特征:多道性、无序性、调度性。

    • 优缺点:提高CPU利用率、提高内存和IO利用率、增加系统吞吐量;平均周转时间长、无交互能力。

      tRqq5q.png
  4. 分时系统:在一台主机上链接了多个配有显示器和键盘的终端并由此所组成的系统,该系统允许多个用户同时通过自己的终端,以交互方式使用计算机,共享主机中的资源。

    • 关键问题:及时接受、及时处理(时间片轮转)。
    • 特征:多路性、独占性、及时性、交互性。
  5. 实时系统:系统能及时响应外部事件的请求,在规定时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。

    • 分类:硬实时任务(对截止时间的要求十分严格)、软实时任务(对截止时间没那么严格)
    • 特征:多路性、独占性、及时性、交互性、可靠性。
  6. 微机操作系统:主要动力来源有不断提高计算机资源的利用率、方便用户、器件的不断更新换代、计算机体系结构的不断发展。每一代计算机几乎都是为了改进上一代计算机的缺点进而产生的,也促进了操作系统的不断发展。
    分类可以根据发展历程进行分类。

    • 单用户单任务:MS-DOS
    • 单用户多任务:windows95
    • 多用户多任务:UNIX OS

3. 操作系统的基本特性

  1. 并发性
    • 并行性是指多个时间在同一时刻发生。
    • 并发性是指多个事件在同一时间间隔内发生。
      并发性是指一段时间内,宏观上有多个程序在同时运行,但在单处理机系统中,每个时刻只有一个程序在执行,微观上也是分时交替执行。若有多个处理机,则可以实现并行执行。
    • 并发性是四大特征中,最基础的。
  2. 共享性
    • 共享是指系统中的资源可供内存中多个并发执行的进程共同使用。
    • 互斥共享:指一段时间内只允许一个进程访问某种资源,也成为临界资源或独占资源。如打印机、磁带机。
    • 同步共享:宏观上允许一段时间内多个进程同时对某资源进行访问。
  3. 虚拟性
    虚拟是指利用某种技术,把一个物理实体变为若干个逻辑上的对应物。前者物理实体是实际存在的,而后者是用户感觉上的东西。如虚拟内存、虚拟处理机大等。
    • 时分复用技术
    • 空分复用技术
  4. 异步性
    进程是以人们不可预知的速度向前推进的。

4. 操作系统的主要功能

  1. 处理机管理功能

    • 进程控制
    • 进程同步
    • 进程通信
    • 调度(作业调度、进程调度)
  2. 存储器管理功能

    • 内存分配(静态分配方式,动态分配方式)
    • 内存保护
    • 地址映射
    • 内存扩充(请求调入、置换)
  3. 设备管理功能

    设备管理的主要任务如下: (1) 完成用户进程提出的 I/O 请求,为用户进程分配所需的 I/O 设备,并完成指定的 I/O 操作

    (2) 提高 CPU I/O 设备的利用率 提高 I/O 速度,方便用户使用 I/O 设备

    • 缓冲管理
    • 设备分配
    • 设备处理
  4. 文件管理功能

    • 文件存储空间的管理
    • 目录管理
    • 文件的读 写管理和保护
  5. 操作系统与用户之间的接口

    • 用户接口
    • 程序接口

5. OS 结构设计

  1. 传统操作系统结构

    • 无结构操作系统
    • 模块化结构 OS
    • 分层式结构 OS
  2. 现代操作系统的结构

    • 微内核结构:足够小的内核、基于客户-服务器模式、应用机制与策略分离原理、采用面向对象技术