QEQuantumEinsteinSearchCtrl/⌘K

第一章 操作系统引论

5 分钟阅读2,03721 个小节
返回目录

第一章 操作系统引论

1.1 操作系统的目标和作用

操作系统的四个目标

目标说明
方便性提供良好用户接口,使计算机更易使用
有效性提高系统资源利用率和系统吞吐量
可扩充性能方便地增加新功能模块,适应硬件和应用发展
开放性遵循国际标准,通过兼容层实现软件互操作

操作系统的作用

  1. OS是用户与计算机硬件之间的接口
  2. OS是计算机系统资源的管理者(处理机、存储器、I/O设备、文件)
  3. OS实现了对计算机资源的抽象(隐藏硬件细节,提供虚拟机)

推动OS发展的主要动力

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

1.2 操作系统的发展过程

阶段特点优缺点
人工操作用户独占全机CPU利用率极低,人机矛盾
脱机I/O引入磁带,外围机处理I/O减少CPU空闲时间
单道批处理监督程序控制作业自动处理自动性,顺序性,内存始终一道作业
多道批处理内存中同时驻留多道程序多道性、无序性、调度性;缺乏交互能力
分时系统多用户同时联机交互多路性、独立性、及时性、交互性;不能满足实时需求
实时系统在规定时间内完成处理并给出响应及时性、可靠性
微机操作系统单用户单任务(MS-DOS)→单用户多任务(Windows)→多用户多任务(UNIX/Linux)广泛普及
嵌入式操作系统微型化、可定制、实时性、可靠性资源受限环境
网络操作系统提供网络服务(文件/打印/通信)C/S模式
分布式操作系统多台计算机协同工作,统一管理透明性、模块化

⚠️ 关键辨析

  • 多道批处理 vs 分时系统:多道批处理追求吞吐量,分时系统追求响应时间
  • 硬实时 vs 软实时:硬实时必须在截止时间内完成(如武器控制),否则灾难性后果;软实时偶尔超时可接受(如视频播放)

1.3 操作系统的基本特性(重点⭐)

四大基本特性

特性定义关键点
并发宏观上多个事件在同一时间段发生≠并行(并行是同一时刻,需多CPU);并发是OS最基本特征
共享系统资源可供多个并发进程共同使用互斥共享(临界资源一个时刻只一个进程用)/ 同时共享(宏观同时微观交替)
虚拟通过某种技术变一个物理设备为多个逻辑设备时分复用(虚拟处理机/虚拟设备)/ 空分复用(虚拟存储器)
异步进程以不可预知的速度走走停停地推进并发执行导致;OS须保证运行结果可再现

⚠️ 关系并发和共享是OS两个最基本特征,互为存在条件。虚拟以并发为前提,异步以并发为前提。没有并发和共享就谈不上虚拟和异步。


1.4 操作系统的运行环境

处理器的双重工作模式

  • 用户态(目态):普通用户程序运行的状态,不能执行特权指令
  • 核心态(管态/内核态):OS内核运行的状态,可执行全部指令

特权指令与非特权指令

  • 特权指令:仅在核心态可执行(如I/O指令、置中断指令、存取特殊寄存器指令等)
  • 非特权指令:在用户态和核心态均可执行

中断与异常

  • 中断(外中断):由CPU外部I/O设备引起(如I/O完成中断、时钟中断)
  • 异常(内中断/陷入/陷阱):由CPU内部事件引起(如除零、缺页、系统调用trap指令)

⚠️ 用户态→核心态唯一途径是中断或异常(也包括系统调用,实质是通过trap指令触发中断) 核心态→用户态:通过设置程序状态字PSW即可


1.5 操作系统的主要功能

功能子功能说明
处理机管理进程控制、进程同步、进程通信、调度最核心的管理功能
存储器管理内存分配与回收、地址映射、内存保护、内存扩充逻辑→物理地址变换
设备管理缓冲管理、设备分配、设备处理隐藏设备细节
文件管理文件存储空间管理、目录管理、读写管理、保护方便用户使用
接口管理命令接口(CLI)、程序接口(系统调用)、图形接口(GUI)面向用户和程序

现代OS的新功能

  • 安全保障:认证技术、密码技术、访问控制技术、反病毒技术
  • 联网和服务功能
  • 多媒体支持

1.6 操作系统的结构(重点⭐)

结构优点缺点典型代表
简单结构简单,执行效率高无模块划分,难维护MS-DOS
模块化结构模块-接口法,模块间以接口通信模块划分标准不统一,接口不清晰
分层式结构自底向上逐层构建,正确性易保证,维护性好效率较低(每层都有额外开销)THE系统
微内核结构足够小的内核+客户-服务器模式,可扩展/可靠/可移植/支持分布式/面向对象上下文切换开销大(原需4次切换,微内核需8次)Mach, Windows NT
外核结构物理资源直接隔离与复用,减少映射层,库OS实现抽象兼容性差Exokernel(MIT)

微内核结构

  • 微内核功能仅包含:①进程(线程)管理 ②低级存储器管理 ③中断和陷入处理
  • 基本概念:足够小的内核 + 客户-服务器模式 + 策略与机制分离 + 面向对象
  • 应用机制与策略分离:内核中只有机制(如进程调度机制),策略在用户进程中

1.7 系统调用

系统调用:OS提供给应用程序使用OS服务的接口(唯一接口)。

系统调用与一般过程调用的4个主要区别

方面系统调用一般过程调用
运行状态用户态→核心态→用户态保持在用户态
状态转换通过中断机构进入核心态(INT 80H或trap)无状态转换
返回问题可能不返回调用进程(如被更高优先级抢占)总是返回调用者
嵌套嵌套深度有限可任意嵌套/递归

系统调用的类型

  1. 进程控制类:创建/终止进程、加载/执行程序
  2. 文件操纵类:创建/删除/打开/关闭/读/写文件
  3. 进程通信类:发送/接收消息
  4. 设备管理类:请求/释放设备
  5. 信息维护类:获取/设置时间日期、系统数据

Linux系统调用补充:早期x86可通过 INT 0x80,现代x86-64主要使用 syscall 指令进入内核。

🎯 本章真题锚点与最短模板

  • 高频题号(2009-2025):2012Q23、2015Q24、2019Q25、2023Q23/Q24/Q26、2024Q23、2025Q23/Q24
  • 优质例题:给定事件“除零、DMA完成、系统调用、缺页”,判断其属于中断/异常及是否会导致用户态→核心态。
  • 最短解题模板
    1. 先判来源:外设=外中断;CPU内部=异常。
    2. 再判态切换:发生中断/异常→必入核心态处理。
    3. 最后排除干扰:普通算术/逻辑指令通常不触发态切换。

⚡ 秒杀版口令卡(10秒回忆)

  • 口令:外设中断、内部异常、trap入核。
  • 口令:用户态禁特权,系统调用走内核。
  • 口令:判题三步:来源→态切换→干扰项。