当前位置: 首页 > news >正文

【软考-架构】2.1、操作系统概述-进程管理-同步互斥

✨资料&文章更新✨
GitHub地址:https://github.com/tyronczt/system_architect

操作系统知识

重点:

  • 分页存储管理
  • I/O 软件

操作系统概述

操作系统的4个特征是并发性、共享性、虚拟性和不确定性(异步性)。

嵌入式系统初始化过程按照自底向上、从硬件到软件的次序依次为:片级初始化→板级初始化→系统初始化。

进程组成和状态

运行、阻塞、就绪三态图会考,五态图不考,了解

💯考试真题

选项分析

  • 选项 A(时间片到) 是唯一与状态选项 C(就绪、运行、等待和等待)匹配的组合。虽然 FCFS 传统上无时间片,但题目提供此选项,可能是假设某种抢占式变体。
  • 选项 B 和 C 需要假设 P1 持有特定资源,但题目未说明,且结果状态无匹配。
  • 选项 D 因 P1 终止后状态定义问题,无法直接匹配。

因此,最合理的解释是:P1 的时间片到期,被抢占,进入就绪队列;P2 开始运行;P3 和 P4 状态不变。

若 P1 时间片到,则 P1、P2、P3 和 P4 的状态应分别为 就绪、运行、等待和等待。即选择 A 和 C

前趋图

进程资源图

阻塞节点:某进程所请求的资源已经全部分配完毕。无法获取所需资源,该进程被阻塞了无法继续。

非阻塞节点:某进程所请求的资源还有剩余可以分配给该进程继续运行。

当一个进程资源图中所有进程都是阻塞节点时,即陷入死锁状态。

💯考试真题

问题1

判断进程的阻塞状态

P1 申请了R1和R2资源。若R1或R2已被其他进程占用(例如P3可能持有R1,或R2被其他未提及的进程占用),则P1会被阻塞。

P2 申请了R3资源。若R3不可用,则P2会被阻塞。

P3 申请了R1资源。若R1未被占用(假设当前R1空闲),则P3可以立即运行,是非阻塞节点。

结论:

C. P1、P2是阻塞节点,P3是非阻塞节点

问题2

判断进程资源图是否可以化简及化简顺序

化简可行性分析

P3是非阻塞节点,可以立即执行,执行后会释放R1资源。

P1因等待R1和R2被阻塞,但P3释放R1后,若R2可用(假设初始状态R2空闲),则P1可以运行。

P1运行后释放R2,使P2可以申请R3并执行。

因此,系统可以通过逐步释放资源完成所有进程,不存在死锁,可以化简。

化简顺序

根据资源释放的依赖关系:

P3(释放R1)→ P1(释放R2)→ P2(释放R3)

结论

B. 可以化简的,其化简顺序为P3→P1→P2

最终答案

阻塞状态判断:C

化简顺序判断:B

注: 假设初始资源分配中R1未被占用(允许P3直接运行),且R2/R3初始可用。若资源初始状态不同,结论可能变化,需结合图中具体资源持有关系确认。

✨【重点】进程同步与互斥✨

临界资源:各进程间需要以互斥方式对其进行访问的资源。

临界区:指进程中对临界资源实施操作的那段程序。本质是一段程序代码。

互斥:某资源(即临界资源)在同一时间内只能由一个任务单独使用,使用时需要加锁,使用完后解锁才能被其他任务使用:如打印机。

同步:多个任务可以并发执行,只不过有速度上的差异,在一定情况下停下等待,不存在资源是否单独或共享的问题;如自行车和汽车。

互斥信号量:对临界资源采用互斥访问,使用互斥信号量后其他进程无法访问,初值为1

同步信号量:对共享资源的访问控制,初值一般是共享资源的数量。

P操作申请资源,S=S-1,若S>=0,则执行P操作的进程继续执行;若S<0,则置该进程为阻塞状态因为无可用资源),并将其插入阻塞队列。

V操作释放资源,S=S+1,若S>0,则执行V操作的进程继续执行;若S<=0,则从阻塞状态唤醒一个进程,并将其插入就绪队列(此时因为缺少资源被P操作阻塞的进程可以继续执行),然后执行V操作的进程继续。

💯考试真题

问题1

a和b处的操作(P1和P2)

P1 是起始进程,执行后需触发 P2 和 P3,因此需要释放两个信号量:

  • V(S1):通知P2可以运行。
  • V(S2):通知P3可以运行。

a处应填写 V(S1)V(S2)。

P2 结束后需触发 P4,因此释放信号量:V(S3):通知P4可以运行。

b处应填写 V(S3)。

答案:C. V(S1)V(S2) 和 V(S3)

问题2

c和d处的操作(P3)

P3 需要等待 P1 的信号量 S2(通过 P(S2)),执行后释放 S4 以触发 P5:

c处应填写 P(S2)。

P3 结束后需触发 P4,因此释放信号量:V(S4):通知P5可以运行。

根据选项设计,P3的操作对应 P(S2) 和 V(S4)。

答案:B. P(S2) 和 V(S4)

问题3

e和f处的操作(P4和P5)

P4 执行后需触发 P5,因此需要释放信号量:V(S5)

e处应填写 V(S5);

P5 需要等待 P3和P4都完成,即需两个信号量操作:

P(S4):等待P3完成。

P(S5):等待P4完成。

f处应填写 P(S4)P(S5)。

答案:B. V(S5) 和 P(S4)P(S5)

答案:C B D,如下图

相关文章:

  • gradle libs.versions.toml文件
  • 【NLP 30、文本匹配任务 —— 传统机器学习算法】
  • android12 屏幕亮度控制修改为线性变化
  • Apache Shiro 反序列化漏洞全解析(Shiro-550 Shiro-721)
  • SQL 全面指南:从基础语法到高级查询与权限控制
  • C++运算符重载的学习笔记
  • 初阶数据结构习题【6】(3顺序表和链表)—— 206. 反转链表
  • 大模型——基于 DIFY 的自动化数据分析实战
  • 文件魔数与其他特征:揭开文件识别的神秘面纱
  • 深入理解指针与回调函数:从基础到实践
  • 【华为】查看防火墙会话表命令
  • 服务器时间同步
  • 覆盖率记录, 非cross bin
  • Kafka底层结构
  • 使用winlogbeat采集windows日志
  • 《 C++ 点滴漫谈: 二十九 》风格 vs. C++ 风格:类型转换的对决与取舍
  • 解锁智能变革密码:浙江大学2025年DeepSeek行业应用案例集深度解析
  • x 的平方根
  • Qt开发⑪Qt网络+Qt音视频_使用实操
  • HTTP超文本传输协议
  • 讲座预告|全球贸易不确定情况下企业创新生态构建
  • 异域拾异|大脚怪的形状:一项神秘社会学研究
  • 七大交响乐团“神仙斗法”,时代交响在上海奏出时代新声
  • 青岛双星名人集团管理权之争:公司迁址,管理层更迭
  • 44岁街舞运动推广者、浙江省街舞运动协会常务理事钟永玮离世
  • 国家主席习近平抵达莫斯科