计算机操作系统-核心知识

本文整理了计算机操作系统核心知识点,涵盖软件基础、操作系统分类、进程管理、死锁、存储管理、文件管理、作业管理及设备管理与SPOOLing技术等高频考点,内容精简、条理清晰,可用于学习复习与考前快速记忆。

📚 计算机软件与操作系统核心知识点总结


一、计算机软件基础

1. 定义与组成

  • 定义:能指挥计算机完成特定任务、以电子格式存储的程序、数据和相关文档,功能依赖硬件实现。
  • 组成:程序(主体)+ 相关数据 + 相关文档(设计报告、维护手册、用户指南等)。
  • 特性:依附性、不可见性、脆弱性、易复制性、无磨损性。

2. 软件版权

  • 版权归属:作者享有拷贝、发布、修改等权利,用户仅拥有使用权。
  • 盗版定义:未获得版权所有者许可就复制和散发商品软件的行为。
  • 相关法规:知识产权保护法、著作权法、专利法、计算机软件保护条例等。

3. 著作权法保护期限

  • 永久保护:署名权、修改权、保护作品完整权。
  • 公民作品:发表权、使用权和获得报酬权保护期为作者终生及其死亡后50年(截止于作者死亡后第50年的12月31日)。
  • 合作作品:截止于最后死亡的作者死亡后第50年的12月31日。
  • 法人/组织作品:发表权、使用权和获得报酬权保护期为50年(截止于作品首次发表后第50年的12月31日)。

4. 软件分类

按应用角度分

  • 系统软件:管理系统资源、提供基本操作,包括:
    • 操作系统(Windows、Unix、Linux等)
    • 程序设计语言处理系统(编译器,如Java、C++)
    • 数据库管理系统(DBMS,如SQL Server、Oracle)
    • 实用程序(磁盘清理、碎片整理等)
    • BIOS:最接近计算机硬件的系统软件。
  • 应用软件:为用户完成特定任务,如超市销售管理系统、教务管理系统、PowerPoint等,以系统软件为基础运行。

按权益处置分

  • 商品软件:可买卖的商业软件。
  • 共享软件:“买前免费试用”的有版权软件。
  • 自由软件:考试中简化为开源软件

二、操作系统核心

1. 地位与作用

  • 地位:计算机运行配置必不可少的底层系统软件。
  • 作用
    1. 管理分配系统软硬件资源。
    2. 提供人机界面(命令行/图形界面)。
    3. 为应用程序开发与运行提供高效平台。
  • 关键概念
    • 裸机:只有硬件、没有软件的计算机。
    • 虚计算机:操作系统屏蔽了大部分物理设备技术细节。
    • 存储位置:操作系统驻留在硬盘,运行在内存。

2. 操作系统分类

按计算机系统分

  • 单用户操作系统:一个用户独占全部资源(如PC DOS)。
  • 多用户操作系统:多个用户共享软硬件资源(如UNIX、Linux)。

按工作过程分

  • 批处理系统:用户提交任务后,系统按顺序自动运行(单道/多道)。
  • 分时操作系统:多终端用户按时间片共享资源,特征:多路性、交互性、独立性、及时性
  • 实时操作系统:时间性强、反应快速,核心特点:及时响应、高可靠性

三、处理器管理(进程管理)

1. 基础概念

  • 多任务处理:操作系统支持同时运行多个程序,Windows采用“并发多任务”,调度策略为时间片轮转
  • 前台/后台任务:前台任务是活动窗口对应的任务,后台任务是其他所有任务。

2. 进程

  • 定义:程序关于某个数据执行一次的过程,是系统分配资源和调度的独立单位。
  • 结构:进程控制块(PCB,进程存在的唯一标志)+ 程序 + 数据 = 进程实体。
  • 特性
    1. 动态性(最基本特征)
    2. 并发性
    3. 独立性
    4. 异步性
  • 状态转换
    • 就绪态:已获得除CPU外的所有资源,等待CPU。
    • 运行态:正在CPU上执行。
    • 阻塞态:因等待事件暂停执行,事件完成后回到就绪态。
    • 转换关系:运行态 → 时间片到 → 就绪态;运行态 → 等待事件 → 阻塞态;阻塞态 → 事件发生 → 就绪态。

3. 进程调度

调度方式

  • 非抢占式:进程一直运行到结束或阻塞,实现简单但不适用于实时系统。
  • 抢占式:可暂停正在执行的进程,分配给其他进程,原则包括:
    1. 时间片原则
    2. 短作业优先原则
    3. 优先权原则

调度算法

算法 核心思想 优缺点
FCFS(先来先服务) 按到达顺序调度 利于长作业,不利于短作业
SJF(短作业优先) 优先调度估计运行时间最短的作业 降低平均等待时间,提高吞吐量,但不考虑紧急程度,主观因素大
高优先权优先 按作业紧迫程度确定优先级 照顾紧急作业,用于批处理/实时系统
时间片轮转 每个进程分配固定时间片 最公平、使用最广,时间片到则重新排队
HRN(高响应比优先) 响应比=(执行时间+等待时间)/执行时间 避免饥饿,适用于批处理系统
多级反馈队列 结合时间片轮转与优先级 兼顾长短作业,响应时间好,适用性广

四、死锁

1. 产生原因

  • 竞争资源:多个进程共享不可剥夺资源(如打印机)且资源不足。
  • 推进顺序非法:进程请求和释放资源的顺序不当。
  • 关键:只有不可剥夺资源才会产生死锁。

2. 必要条件(缺一不可)

  1. 互斥条件:临界资源一段时间内只被一个进程占用。
  2. 请求和保持条件:进程请求新资源时,保持已分配资源。
  3. 不剥夺条件:已分配资源在使用完前不能被剥夺。
  4. 环路等待条件:死锁时必然存在进程-资源环形链。

3. 处理方法

  • 预防死锁:破坏一个或多个必要条件。
  • 避免死锁:动态分配资源时防止进入不安全状态。
  • 检测死锁:允许死锁发生,通过检测机构及时发现。
  • 解除死锁:检测到死锁后,采取措施解除。

4. 典型例题

3个并发进程竞争资源R,每个进程需要5个R,至少需要多少个R才能保证不死锁?
解:最坏情况是每个进程已分配4个R,共3×4=12个,再增加1个即可满足任一进程完成,故至少13个


五、存储管理

1. 核心功能

对内存空间进行分配、回收、共享、保护和扩充

2. 虚拟存储器

  • 组成:Windows中由物理内存(RAM)+ 硬盘虚拟内存(pagefile.sys页面文件)联合组成。
  • 大小限制:受外存空间和CPU地址表示范围限制,一般为物理内存的1~2.5倍。
  • 用户操作:可设置硬盘逻辑盘上虚拟内存的容量。

六、文件管理

1. 文件与文件系统

  • 文件:具有文件名的若干相关元素的集合。
  • 文件系统:由管理文件的系统软件(记录)和被管理的对象(文件,即数据/程序)组成。

2. 文件属性与类型

  • 属性:类型、长度、物理位置、创建/修改时间、系统/隐藏/存档/只读等。
  • 命名规则:文件名+扩展名(如.txt.exe),Windows文件名最长255字符,不能使用* \ / < > : " | ?等特殊字符。
  • 常见扩展名
    | 扩展名 | 含义 | 扩展名 | 含义 |
    |————|———|————|———|
    | .bak | 备份文件 | .c | C源程序 |
    | .txt | 文本文件 | .doc | 文档文件 |
    | .exe | 可执行文件 | .dll | 动态链接库 |

3. 文件路径

  • 绝对路径:从盘符开始(如C:\windows\system32\ou.exe)。
  • 相对路径:从当前路径开始(如当前路径为C:\windows,可写为.\system32\cmd.exe.可省略)。

4. 文件目录功能

  • 实现“按名存取”(最基本功能)。
  • 提高检索速度。
  • 允许文件同名(通过不同目录区分)。
  • 允许文件共享并控制权限。

七、作业管理

1. 调度层次

  • 高级调度(作业调度):从外存后备队列选作业建立进程,仅批处理系统需要,分时/实时系统不需要。
  • 中级调度(内存调度):将暂时不能运行的进程调至外存,提高内存利用率。
  • 低级调度(进程/短程调度):决定哪个就绪进程获得CPU,最基本,所有OS都必须有。

八、设备管理与SPOOLing技术

1. 设备管理核心功能

  • 设备分配
  • 设备映射
  • 设备驱动
  • 引入缓冲的主要目的
    1. ⚡ 缓和处理机和I/O设备间速度不匹配的矛盾(如高速CPU与慢速打印机)。
    2. 🛡️ 减少对CPU的中断次数,降低CPU被频繁打断的开销。
    3. 🔗 提高CPU和I/O设备之间的并行性,让CPU与设备可同时工作,提升系统效率。

2. SPOOLing系统三大部分详解

SPOOLing(假脱机)是模拟脱机I/O的技术,将独占设备改造为共享设备,由三部分组成:

  1. 输入井/输出井
    • 磁盘上开辟的大存储空间,模拟脱机I/O的磁盘设备。
    • 输入井:暂存输入设备送来的数据。
    • 输出井:暂存用户程序的输出数据。
  2. 输入缓冲区/输出缓冲区
    • 内存中开辟的缓冲区,用于缓和CPU与磁盘速度不匹配的矛盾
    • 输入缓冲区:暂存输入设备数据,再传送到输入井。
    • 输出缓冲区:暂存输出井数据,再传送到输出设备。
  3. 输入进程SPi / 输出进程SPo
    • 模拟脱机I/O的外围控制机:
      • SPi:将输入设备数据经缓冲区送入输入井,CPU需要时直接从输入井读入内存。
      • SPo:将用户输出数据从内存送到输出井,待设备空闲时,再从输出井经缓冲区送到输出设备。

3. 共享打印机原理(SPOOLing典型应用)

  • 设备类型:打印机是独占设备(同一时间只能被一个进程使用),通过SPOOLing技术可改造为共享设备(宏观上多用户同时使用,微观上交替使用)。
  • 处理流程
    1. 用户进程请求打印时,系统在磁盘输出井中为其申请空闲缓冲区,将打印数据存入。
    2. 为用户进程申请空白打印请求表,填写打印信息并挂到假脱机文件队列。
    3. 打印机空闲时,输出进程从队列头取出请求表,按要求将数据从输出井经输出缓冲区送到打印机打印。
  • 核心效果:多个用户的打印任务被排队缓存,CPU无需等待慢速打印机,实现“同时打印”的效果。

4. SPOOLing系统核心特点

  1. ✅ 提高I/O速度:将对慢速设备的操作转化为对高速磁盘的操作。
  2. ✅ 将独占设备改造为共享设备:允许多个进程同时访问独占设备。
  3. ✅ 实现虚拟设备功能:用户感觉独占了设备,实际是共享使用。

5. 关键总结

  • SPOOLing技术是对脱机输入/输出系统的模拟,必须建立在多道程序环境高速随机外存(磁盘)基础上。
  • 它是操作系统将独占设备虚拟化为共享设备的核心手段,典型场景就是共享打印机。

九、核心考点速记

  1. 软件 = 程序 + 数据 + 文档。
  2. 最接近硬件的系统软件是BIOS
  3. 进程的最基本特征是动态性,PCB是进程存在的唯一标志。
  4. 死锁的4个必要条件:互斥、请求和保持、不剥夺、环路等待。
  5. 虚拟存储器 = 物理内存 + 硬盘页面文件。
  6. 相对路径.代表当前目录,可省略。
  7. 进程调度是最基本的调度,所有OS都必须实现。
  8. 引入缓冲的目的:缓和 CPU 与 I/O 设备速度不匹配、减少中断、提高并行性。
  9. SPOOLing(假脱机)技术:将独占设备虚拟为共享设备,典型应用:共享打印机。
  10. 操作系统分类:批处理、分时、实时;分时特征:多路性、交互性、独立性、及时性。
  11. 进程三态:就绪 → 运行 → 阻塞(等待事件),阻塞结束回到就绪。
  12. 文件系统最基本功能:按名存取。