操作系统知识总结(一)

AI总结:本文是我备考软考系统架构设计师过程中整理的操作系统模块核心知识,涵盖概念、分类、进程管理、同步机制等内容,适合用于复习和笔记归档。


一、操作系统的基础概念

操作系统是什么?

操作系统(Operating System)是管理计算机硬件与软件资源的系统程序,是用户和硬件之间的桥梁。

操作系统的主要功能:

  • 资源管理:CPU、内存、I/O、文件系统

  • 任务调度:多任务并发控制

  • 用户接口:命令行、图形界面

  • 安全与保护:控制权限、隔离进程

  • 系统抽象:为上层软件提供统一接口


二、操作系统的类型与特点

类型

特点

应用场景

批处理系统

无交互,作业排队处理

数据统计、早期科研

分时系统

多用户共享时间片,快速切换,表现为“宏观并行,微观串行”

多用户系统(如 Unix)

实时系统

严格响应时间,任务可预测

工控系统、飞控、医疗

网络操作系统

提供远程登录和资源共享

文件服务器、局域网环境

分布式系统

多主机协同,资源统一管理

云平台、集群计算

嵌入式系统

功能定制、资源受限

智能家电、IoT 设备


三、分布式操作系统的三大特性

  1. 透明性
    用户感知不到资源实际所在节点,访问体验就像单一系统。

  2. 可靠性
    部分节点故障不会影响整体运行,系统具备容错和故障恢复能力。

  3. 高性能
    多个节点并行处理任务,提升系统整体吞吐能力。


四、嵌入式操作系统核心组件

  • HAL(Hardware Abstraction Layer)
    对硬件接口进行统一抽象,使上层软件不用关心具体设备差异。

  • BSP(Board Support Package)
    针对具体硬件板级提供的驱动和启动代码,保证系统能运行在特定平台上。


五、进程管理与调度

什么是进程?

进程是程序的一次执行,是操作系统进行资源调度和管理的基本单位。

进程的三种基本状态

状态

说明

运行(Running)

占用 CPU 正在执行

就绪(Ready)

等待 CPU 的分配

阻塞(Blocked)

等待某事件完成(如 I/O)

状态转换图简述:

  • 运行 → 阻塞:等待 I/O 等

  • 阻塞 → 就绪:事件完成

  • 运行 → 就绪:时间片用尽或被抢占

  • 就绪 → 运行:获得 CPU


常见调度算法

名称

是否抢占

特点

FCFS(先来先服务)

非抢占

简单易实现,可能饿死短作业

SJF(短作业优先)

非抢占

优先执行短任务,平均等待时间短

RR(时间片轮转)

抢占

每个进程分配固定时间片,适用于交互系统

优先级调度

可抢占或非抢占

根据优先级调度,可能造成饥饿

HRRN(高响应比优先)

非抢占

兼顾等待时间与服务时间,较公平

多级反馈队列

抢占

动态调整优先级,适应不同类型进程需求


六、进程同步与互斥

互斥(Mutual Exclusion)

定义:

互斥是指同一时间只允许一个线程或进程访问临界资源或临界区,防止多个任务同时操作同一共享资源而造成数据冲突或错误。

举例说明:

假设有两个线程同时对一个银行账户余额进行修改,如果没有互斥机制:

  1. 线程 A 读取余额为 1000;

  2. 线程 B 也读取余额为 1000;

  3. A 执行“减去 200”并写入结果 800;

  4. B 执行“减去 300”也写入结果 700;

结果应该是 500,却因为并发覆盖变成了 700,这就是竞态条件

使用互斥锁(Mutex)或信号量就可以让 A 和 B 分别排队访问,避免冲突。


同步(Synchronization)

定义:

同步是指多个进程或线程之间在执行上的协作与配合,确保它们按照某种预定顺序执行。

举例说明:

假设有一个“生产者 - 消费者”模型:

  • 生产者线程负责往缓冲区写入数据;

  • 消费者线程负责从缓冲区读取数据。

如果消费者在生产者还没放入任何数据前就去读取,就会出错。所以需要同步机制来让消费者等待生产者先完成操作。

同步机制可以通过条件变量(Condition Variable)、信号量(Semaphore)等实现。


操作系统知识总结(一)
http://localhost:8080/archives/cao-zuo-xi-tong-zhi-shi-zong-jie
作者
Sumireeee
发布于
2025年06月22日
许可协议