一、操作系统概论

概念

  1. 操作系统 操作系统是计算机系统中的系统软件,由若干程序模块组成。这些模块能有效地组织和管理计算机系统中的硬件及软件资源,合理组织计算机工作流程,控制程序执行,并向用户提供各种服务功能,使用户能够灵活、方便、有效地使用计算机,并使整个计算机系统高效运行。
  2. 操作系统特征
    1. 并发性 并发性是指在计算机系统中同时运行的程序,宏观上这些程序同时向前推进。计算机的并发性体现在:
      • 用户程序与用户程序之间的并发执行。
      • 用户程序与操作系统程序之间的并发执行。
    2. 共享性 共享性是指操作系统程序与多个用户程序共享系统资源。资源共享主要针对以下几项重要资源:中央处理器、内存、外存储器、外部设备。资源共享有两种形式:互斥共享和同时共享。
    3. 虚拟性 虚拟性是指通过技术手段将一个物理实体转化为若干个逻辑上的对应物。
    4. 异步性 异步性即不确定性,表现为:
      • 同一程序和数据的多次运行可能得到不同结果。
      • 程序的运行时间、顺序具有不确定性。
      • 外部输入请求和运行故障发生时间难以预测。
  3. 研究操作系统的观点
    1. 软件的观点。
    2. 资源管理的观点。
    3. 进程的观点。
    4. 虚拟机的观点。
    5. 服务提供者的观点。
  4. 操作系统的功能
    1. 进程管理 包括进程控制、进程同步、进程间通信和调度等内容。
    2. 存储管理 包括内存分配与回收、存储保护和内存扩充。
    3. 文件管理 支持文件存储、检索、修改,解决文件共享、保密和保护问题。
    4. 设备管理 完成用户的I/O请求,为用户分配I/O设备,具有以下功能:
      • 缓冲管理
      • 设备分配
      • 设备处理
      • 设备独立性和虚拟设备
    5. 提供用户接口 具备中断处理、错误处理等功能。操作系统的各功能之间相互依赖。

操作系统的体系结构

  1. 体系结构
    1. Windows操作系统 Windows体系结构为分层模块系统,主要层次包括硬件抽象层(HAL)、内核、执行体和大量子系统集合。
    2. UNIX操作系统 包括硬件、内核、系统调用接口和应用程序。
    3. Linux操作系统 包括内核、Shell、文件系统和用户应用程序。内核、Shell和文件系统形成基本操作系统结构。
    4. Android操作系统 分为四层,从高层到低层分别是应用程序层、应用框架层、系统运行库层和Linux内核层。
  2. 操作系统的发展 包括手工操作、监控程序(早期批处理)、多道批处理、分时与实时系统、UNIX通用操作系统、个人计算机操作系统和Android操作系统。
  3. 操作系统分类 根据用户界面和功能特征分为批处理系统、分时系统和实时系统。此外,还有个人操作系统、网络操作系统、分布式操作系统和嵌入式操作系统。
  4. 操作系统设计
    1. 主要困难 设计复杂度高、正确性难以保证、研制周期长等问题。
    2. 设计过程
      • 功能设计:确定操作系统应具备的功能及类型。
      • 算法设计:选择和设计满足功能的算法和策略。
      • 结构设计:选择合适的结构,确保系统结构清晰、易用、适应性强。
    3. 设计目标 可靠性(正确性和健壮性)、高效性、易维护性(易读性、易扩充性、易修改性)、可移植性、安全性、简明性。
    4. 结构研究目标
      • 系统模块化
      • 模块标准化
      • 通信规范化
    5. 操作系统的结构
      1. 整体式结构 模块组合结构,优点是结构紧密、接口简单直接,效率较高。缺点包括模块间关联强、数据处理方式全局性、并发性差。
      2. 层次式结构 将功能模块按功能流图排列成若干层,层间模块单向依赖或调用。
      3. 微内核(客户/服务器)结构 将系统分为若干小的服务进程,优点是模块化强,缺点是效率问题。

二、操作系统运行环境

  1. 处理器 由运算器、控制器、一系列寄存器及高速缓存组成。运算器实现算术和逻辑运算,是计算机计算核心。
  2. 处理器内寄存器
    1. 用户可见寄存器 包括数据寄存器(Data Register)、地址寄存器(Address Register)和条件码寄存器。
    2. 控制和状态寄存器
  3. 指令
    1. 指令执行的基本过程 处理器从存储器中读取指令,更新程序计数器,解释并执行指令。
    2. 指令的五类
      • 访问存储器指令
      • I/O指令
      • 算术逻辑指令
      • 控制转移指令
      • 处理器控制指令
    3. 特权指令和非特权指令
      • 特权指令:操作系统使用,具有特殊权限。
      • 非特权指令:用户态下使用,不能使用特权指令。
  4. 管态和目态
    1. 管态 操作系统管理状态,具有较高特权级别,又称内核态、特权态。
    2. 目态 用户程序运行状态,具有较低特权级别,又称用户态、普通态。
  5. 处理器工作状态的转换
    1. 目态到管态的转换 通过中断响应实现。
    2. 管态到目态的转换 通过设置PSW指令实现。
  6. 计算机系统硬件部件
    1. 存储器的类型
      • 读写型存储器
      • 只读型存储器
    2. 存储器的层次结构 由寄存器、高速缓存、内存、硬盘、磁带和光盘存储器等装置构成。
    3. I/O结构 每台外部设备配有I/O设备控制器,通道专门负责数据传输工作。
    4. DMA技术 通过DMA控制器自动控制内存与I/O单元之间的数据传送。
    5. 缓冲技术 在外部设备与其他硬件部件之间设置数据存储区域,称为缓冲区。
    6. 时钟部件的原理 使用晶体振荡器产生固定脉冲频率,时钟电路对时钟寄存器进行加1操作。分为绝对时钟和相对时钟。