【操作系统复习】Unit1:操作系统概述

操作系统是管理计算机硬件资源的软件,提供用户与硬件间的接口。文章介绍了操作系统的特征,如并发和虚拟,并详细阐述了从批处理到多道程序、分时系统以及实时系统的发展历程。此外,还讨论了计算机硬件、用户态与内核态、中断和异常的概念,以及操作系统在处理机、存储器、设备和文件管理等方面的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【操作系统复习】Unit1:操作系统概述

1.1 操作系统的基本概念

操作系统是一组管理计算机硬件资源的软件集合,它向计算机程序提供共性的服务。

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

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

  • 控制计算机资源;
  • 给用户提供接口或虚拟机

操作系统的特征:

  • 并发:多个事件在同一时间间隔内发送
  • 共享(两种资源共享方式)
    • 互斥共享(一段时间内只允许一个进程访问该资源)
    • 同时访问(一段时间内有多个进程“同时”访问)
  • 虚拟:处理器的分时共享、虚拟存储器、SPOOLING
  • 异步
    • 由于资源等因素的限制,程序的执行通常都不可能“一气呵成”,而是以“停停走走”的方式运行。

操作系统的作用

  • 提供用户与计算机硬件系统之间的接口(API/GUI)
  • 是系统资源的管理者(处理机、存储器、文件、I/O设备等)
    • 分配和控制处理机
    • 分配和回收内存
    • 负责I/O设备的分配(回收)与操纵
    • 实现文件的存取、共享、保护
  • 实现对计算机资源的扩充
    • 没有任何软件支持的计算机称为裸机,覆盖了软件的及其称为虚拟机/扩充及其

1.2 操作系统发展历程

批处理(联机、脱机)

作业成批送入计算机,计算机能够自动地、成批地处理一个或多个用户的作业

在没有人工参与的情况下,顺序执行一系列的程序

特点:

  • 无需人参与,节约人员排队时间
  • 程序和数据保存在卡片上,自动化作业初始化过程
  • 同一时刻只有一个软件执行
  • 软件运行时,可以以独占的方式使用全部硬件资源
  • 不支持多用户、多程序同时运行

分类:联机批处理系统:即作业的输入输出由CPU处理。 脱机批处理系统:即输入/输出脱离主机控制

联机批处理系统:
在这里插入图片描述

在主机与输入机之间增加一个存储设备——磁带。成批地把输入机上的用户作业读入磁带,再把磁带上的作业读入主机内存并执行,然后把结果向输出机输出。

优点:

  • 监督程序不停地处理各个作业,从而实现了作业到作业的自动转接,减少了作业建立时间和手工操作时间,有效克服了人机矛盾,提高了计算机的利用率。

不足:

  • 在作业输入和结果输出时,主机的高速CPU仍处于空闲状态,即等待慢速的输入/输出设备完成工作:此时主机处于“忙等”状态。

脱机批处理系统

在这里插入图片描述

增加一台不与主机直接相连而专门用于与输入/输出设备打交道的卫星机。

其功能:

  • 从输入机读取用户作业并放到输入磁带上
  • 从输出磁带上读取执行结果并传给输出机

优势:

  • 主机不直接与慢速的输入/输出设备打交道,而是与速度相对较快的磁带机发生关系,有效缓解了主机与设备的矛盾。主机与卫星机可并行工作,二者分工明确,可以发挥主机的高速计算能力。

不足:

  • 每次主机内存中仅存放一道作业,每当它运行期间发出输入/输出(I/O)请求后,高速的CPU便处于等待低速的I/O完成状态,致使CPU空闲。

单道批处理:内存中同时仅有一个作业

多道批处理:内存中同时可以有多个作业

多道程序系统

多个程序在CPU中交替运行,共享系统中的各种硬、软件资源。

优点:

  • 充分利用CPU,改善I/O设备和内存的利用率,从而提高了整个系统的资源利用率资源吞吐量,最终提高了整个系统的效率

缺点:

  • 平均周转时间长,用户相应的时间较长
  • 不能提供交互能力

单处理器系统中多道程序运行时的特点

  • 多道:计算机内存中同时存放几道相互独立的程序;
  • 宏观上并行:同时进入系统的几道程序都处于运行过程中,即它们先后开始了各自的运行,但都未运行完毕;
  • 微观上串行:实际上,各道程序轮流地用CPU,并交替运行。

多道程序系统需要解决的问题

  • 在一个连续的内存空间,同时驻留多道程序;处理机的争夺;I/O设备的分配;有效的组织不同程序的运行;系统对各种存储介质的管理
分时操作系统

多个用户分享使用同一台计算机。多个程序分时共享硬件和软件资源

将CPU处理时间分割为多个时间片,将时间片分给不同程序,达到多个程序“同时”运行的效果

特点:

  • 多路性:多路连接;宏观上用户共享,微观上分时;
  • 独立性:用户相互不干扰;
  • 及时性:用户请求可以在很短时间内获得响应
  • 交互性:人机对话。

缺点:不能优先处理一些紧急任务

实时操作系统

分为硬实时系统(某个动作必须在规定时间内完成)、软实时系统(能够接受一些无伤大雅的违反时间规定操作)

主要特点:及时响应、高可靠性和安全性

1.3 计算机硬件简介

主要的计算机硬件:CPU、Memory、Video controller、Keybo controller、USB controller、Hard disk controller

处理器

  • 主要硬件单元
    • CPU:运算器、控制器
    • 通用寄存器
    • 专用寄存器:程序计数器、堆栈指针、程序状态字
    • 缓存:cache
  • 每种CPU的指令集几乎都是不同的
  • 主要过程:取指令→解码→执行
  • TRAP指令:目态→管态

I/O设备

  • 设备控制器
  • 设备驱动程序(一般在内核态运行),通过设备寄存器与设备控制器通信
  • CPU处理速度快,访问I/O设备慢,如何协调
    • 忙等待;中断;DMA

1.4 用户态和内核态

计算机系统中,通常有两种程序:操作系统内核程序、用户应用程序

特权指令:不允许用户直接使用的指令,eg:I/O指令、置中断指令、存取用于内存保护的寄存器、送程序状态字到程序状态寄存器等的指令

非特权指令:允许用户直接使用的指令,它不能直接访问系统中的软硬件资源,仅限于访问用户的地址空间

CPU的运行模式划分为用户态(目态)、核心态(管态、内核态)

内核态 → \rightarrow 用户态:执行特权指令,置PSW(程序状态字寄存器)=1

用户态 → \rightarrow 内核态:由“中断”引发、硬件自动完成

OS的内核包括以下方面的内容

  • 时钟管理:计时、实现进程的切换
  • 中断机制:
    • 中断是让操作系统内核夺回CPU使用权的唯一途径
    • 没有中断就没有并发
    • 中断机制中,只有一小部分功能属于内核,它们负责保护和恢复中断现场的信息,转移控制权到相关的处理程序。这样可以减少中断的处理时间,提高系统的并行处理能力。
  • 原语
    • 操作一气呵成;位于OS的最低层 最接近硬件;运行时间较短且调用频繁
  • 系统控制的数据结构及处理
    • PCB、设备控制块、各类链表、缓冲区、内存分配表等

1.5 中断和异常

在这里插入图片描述

软件和硬件都可以产生异常和中断
中断(interruption)也称外中断,指来自CPU执行指令外部的事件,通常用于信息输入/输出。主要由I/O设备、处理器时钟或定时器等硬件产生,可以被启用或禁用

  • 可屏蔽中断:可通过改变屏蔽字从而实现多重中断
  • 不可屏蔽中断:紧急的硬件故障,如电源掉电等

异常也称内中断,来自CPU执行指令内部的事件,异常也是不可屏蔽的。

  • 故障Fault:指令执行引起的异常,eg:非法操作码、缺页故障、除数为0、运算溢出
  • 自陷trap:用于在用户态下调用操作系统内核系统。陷阱(trap)帧:完整的线程描述表的子集,用于现场保护
  • 终止Abort:出现了使得CPU无法继续执行的硬件故障,eg:控制器出错、存储器校验错等

系统调用 System call

在这里插入图片描述

系统调用是应用程序请求操作系统服务的唯一方式,系统调用也视作同步异常,或trap

trap指令/访管指令

系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(如存储分配、进行I/O传输及管理文件等),都必须通过系统调用方式向操作系统突出服务请求,并由操作系统代为完成。

这些系统调用主要有:设备管理(设备请求释放启动)、文件管理(读写创建删除)、进程控制(进程创建撤销阻塞唤醒)、进程通信、内存管理(内存分配回收、获取作业占用内存区大小及始址)

1.5 操作系统的功能

处理机管理

核心任务:如何分配CPU时间

  • 进程管理
    • 进程的调度:创建、挂起、激活
    • 进程间的通信:同步、互斥、死锁
  • 线程管理

主要功能:公平分配;保证非阻塞;按优先级分配

存储器(内存)管理

  • 核心任务:管理缓存、主存、磁盘等所形成的多级存储架构,为多道程序的并发提供良好的环境
  • 主要功能:
    • 内存分配和存储无关性:方便用户
    • 内存保护:互不干扰
    • 内存扩充:虚拟存储器

设备管理

  • 核心任务:管理输入/输出设备,屏蔽差异性,提供并发访问
  • 主要功能:
    • 设备无关性:逻辑设备->物理设备
    • 设备分配:独享、共享和虚拟
    • 设备的传输控制:中断通道

文件系统管理

  • 核心任务:将磁盘变成一个很容易使用的存储媒介提供给用户使用
  • 主要功能:文件存储空间的管理、目录管理、文件读写管理、文件保护、向用户提供接口

作业控制

  • 作业调度
  • 作业控制:分为批量型作业和终端型作业

操作系统应解决的基本问题

1 提供解决各种冲突(资源竞争引起)的策略

  • 处理机调度、进程调度、内存分配、设备分配等

2 协调并发活动的关系(提供流程控制和避免运行结果不确定性)

  • 进程之间的通信,同步与互斥

3 保证数据的一致性

  • 读写数据时,数据结构中的内容是否真实地记录了数据的实际情况
  • 在分布式处理时的共享数据的不同副本是否一致

4 实现数据的存取控制

  • 共享程度、隐私程度、安全程度的控制

1.6 操作系统结构

模块接口化、宏内核

  • 内聚性、耦合性
  • 优点:加速了操作系统的研制过程、增加了操作系统的灵活性、便于修改和维护。
  • 缺点:接口定义困难,无序性

有序分层法

  • 便于系统的调试和验证,易扩充和维护
  • 合理定义隔层比较困难。依赖关系确定后不够灵活;效率较差

宏内核/单内核/大内核

  • 系统的主要功能模块都作为一个紧密联系的整体运行在核心态
  • 高性能、内核代码庞大、结构混乱难以维护

微内核结构

  • 将内核中最基本的功能保留在内核,将不需要再核心态执行的功能移到用户态执行,从而降低内核的设计复杂度
  • 内核中只包括中断处理、进程通信(IPC)、基本调度等
  • 文件系统、网络功能、内存管理、设备管理等作为服务在微内核上运行
  • 优点:
    • 内核易于实现、可靠性高、可移植性好、配置灵活、适应分布式环境(本地内核与远程内核对服务同样的支持)
  • 缺点:速度较慢,频繁在核心态和用户态之间切换
  • “机制与策略分开”原理

虚拟机【王道P30】

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值