InkSoul/content/408/《操作系统》操作系统的基本概念.md

6.1 KiB
Raw Blame History

title date
《操作系统》操作系统的基本概念 2022-08-18T15:53:40+08:00

知识框架

  • 概论
    • 特征
      • 并发(最基本)
      • 共享(最基本)
      • 虚拟
      • 异步
    • 目标和功能
      • 计算机系统资源管理者
      • 扩充机器
      • 用户与计算机系统之间的接口
        • 命令接口
        • 程序接口
        • GUI
    • 发展
      • 批处理操作系统\rightarrow分时操作系统\rightarrow实时操作系统\rightarrow网络和分布式操作系统
    • 运行机制
      • 中断和异常
      • 系统调用
    • 体系结构
      • 大内核
      • 微内核

操作系统的基本概念

操作系统的概念

操作系统是只控制和管理整个计算机系统的硬件与软件资源,合理地组织、调度计算机的工作与资源的分配,进而为用户和其他软件提供方便接口与环境的程序集合。

操作系统是计算机系统中最基本的系统软件

操作系统的特征

基本特征包括并发、共享、虚拟和异步

并发

并发指两个或多个事件在同一时间间隔内发生

操作系统的并发性指计算机系统中同时存在多个运行的程序,因而具有处理和调度多个程序同时执行的能力。

同一时间间隔(并发)和同一时刻(并行)的区别:

  1. 宏观上有多道程序同时进行,微观上这些程序依旧是分时交替执行的,操作系统的并发性正是分时得以实现的
  2. 并行性则是具有同时进行运算或操作的特性,同一时刻能完成两种或两种以上的工作,需要硬件的支持

共享

共享通常指系统中的资源可供内存中多个并发执行的进程共同使用,拥有两种资源共享方式

  • 互斥共享方式

互斥式共享:

当进程A访问某个资源时必须先提出请求若此时该资源空闲则系统将其分配给进程A使用此后有其他进程也要访问该资源时就必须等待。仅当进程A访问完并释放该资源后才允许另一个进程对该资源进行访问。

临界资源(独占资源)

一段时间内只允许一个进程访问的资源

互斥共享要求一种资源在一段时间内(哪怕是很小的时间)只能满足一个请求,否则就会出现严重的问题

  • 同时访问方式

宏观上存在一些资源允许多个进程同时访问,微观上这些进程是交替地对该资源进行访问,即分时共享


并发和共享是操作系统两个最基本的特征,两者互为存在的条件:

  1. 资源共享是以程序的并发为条件的,若系统不允许程序并发执行,则自然不存在资源共享问题
  2. 若系统不能对资源共享实施有效的管理,则必将影响到程序的并发执行,甚至根本无法并发执行

虚拟

虚拟是指把一个物理上的实体变为若干逻辑上的对应物。

操作系统中采用了多种虚拟技术来实现虚拟处理器、虚拟内存和虚拟外部设备等

虚拟技术可归纳为:

  1. 时分复用技术,如处理器的分时共享
  2. 空分复用技术,如虚拟存储器

异步

程序的异步性:

多道程序环境允许多个程序并发执行,但由于资源有限,进程执行并非一贯到底,而是走走停停,以不可预知的速度向前推进

异步性导致的问题:

异步性会使操作系统运行在一种随机的环境下,可能导致进程产生与时间有关的错误。然而在运行环境相同的情况下,操作系统就需要保证多次运行进程后得到的结果相同

操作系统的目标和功能

操作系统应具有以下功能来给多道程序提供良好的运行环境

  1. 处理机管理、存储器管理、设备管理和文件管理
  2. 需向用户提供接口以方便用户使用
  3. 可用于扩充机器来提供更方便的服务、更高的资源利用率

操作系统作为计算机系统资源的管理者

  • 处理机管理

在多道程序环境下,处理机的分配和运行都以进程(线程)为主要单位

处理机的管理可归结为对进程的管理,因此进程创建、撤销、管理、避免冲突、合理共享就是进程管理的主要任务

进程管理的主要功能:

  1. 进程控制
  2. 进程同步
  3. 进程通信
  4. 死锁处理
  5. 处理机调度
  • 存储器管理

存储器管理用于给多道程序的运行提供良好环境,便于用户使用及提高内存利用率

主要功能:

  1. 内存分配与回收
  2. 地址映射
  3. 内存保护与共享
  4. 内存扩充
  • 文件管理

负责文件管理的部分称为文件系统

主要功能:

  1. 文件存储空间的管理
  2. 目录管理
  3. 文件读写管理和保护
  • 设备管理

主要任务是完成用户I/O请求方便用户使用设备提高设备利用率

主要功能:

  1. 缓冲管理
  2. 设备分配
  3. 设备处理
  4. 虚拟设备

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

命令接口
  • 联机命令接口

联机命令接口又称为交互式命令接口,适用于分时或实时系统的接口

可由用户在控制台或终端输入命令,经命令解释程序解释并执行后,控制权再转交回控制台或终端,这一过程往往强调交互性

常见为 命令提示符中输入单条指令

  • 脱机命令接口

脱机命令接口又称为批处理命令接口,适用于批处理系统

脱机用户不能干预作业运行,事先使用作业控制命令编写"命令清单",系统调度到该作业时,命令解释程序逐条解释并执行,从而间接控制作业的进行

常见为 使用命令编写脚本后运行

程序接口

该接口由一组系统调用组成,用户通过在程序中使用这些系统调用来请求操作系统为其提供服务

常见为用户图形界面(GUI)如linux的KDE桌面

操作系统用作扩充机器

没有任何软件支持的计算称为裸机,它仅是计算机系统的物质基础。操作系统提供的资源管理功能和方便用户的各种服务功能,将裸机改造成功能更强,使用更方便的机器

通常将覆盖了软件的机器称为扩充机器或虚拟机