系统分析师刷题系列--操作系统(二)

线程 共享 vs 不共享
共享:代码、数据、文件、堆、地址空间
不共享:程序计数器(PC)、寄存器、栈

堆是大家共用的阳台、栈是每个人自己的房间

1.如果页面的访问顺序为(0,0,1,1,3,1,2),有2个页帧可供程序使用,按照先进先出页面置换算法,共产生()缺页中断

A.3次

B.2次

C.4次

D.5次

正确答案]:B

试题解析:

页面的访问顺序为(0,0,1,1,3,1,2),由于只有2个页帧,

(1)当执行到(0,0,1,1)时,2个页帧分配给了0和1两个页面,完全可以不需要产生缺页中断。

(2)访问下一个页号为3时,页帧不足以分配,需要置换一个页帧,因此产生1次缺页中断,按照先进先出置换算法,应该把0号页置换出去,页帧中是(1,3)。

(3)访问下一个页号为1时,1号页面在页帧中,可以直接访问不需要置换。

(4)访问页号2时,2号页面此时不在页帧中,需要置换一个页帧,因此产生1次缺页中断,按照先进先出置换算法,应该把1号页置换出去,页帧中是(3,2)。

综上所述,需要产生2次缺页中断。
2.文件的逻辑结构(逻辑文件)是指用户概念中的文件,逻辑文件有()两种形式。

A.流式文件与索引文件B.记录式文件与物理文件C.流式文件与记录式文件 D.记录式文件与索引文件

[正确答案】:C

[试题解析】:

文件的逻辑结构(逻辑文件)是指用户概念中的文件,逻辑文件有两种形式,分别是无结构的流式文件和有结构的记录式文件。
3.为了解决批处理系统无法进行人机交互的问题()把CPU的时间划分成很短的时间片,
A.分时操作系统

B.网络操作系统

C.分布式操作系统

D.嵌入式操作系统

分时:电脑用的(Windows/Linux)

网络:服务器用的(Windows Server/Linux 服务器版)

分布式:一堆机器一起用(Google Bigtable、Spanner)

嵌入式:设备里用的(RT-ThreadFree/RTOS/VxWorks)

页式、段式、段页式 存储管理对比表(操作系统里内存管理方式)

对比项目 页式管理 段式管理 段页式管理
划分依据 固定大小分页 逻辑意义分段(代码段、数据段等) 分段 ,段内再分页
地址结构 页号 + 页内偏移 段号 + 段内偏移 段号 + 页号 + 页内偏移
是否连续 程序不连续,页内连续 段内必须连续,段间不连续 段内不连续,页内连续
碎片情况 有内部碎片 无外部碎片 有外部碎片 无内部碎片 只有内部碎片 无外部碎片
共享与保护 不方便 很方便(按逻辑段共享) 方便(继承段的优点)
地址变换 一次查页表 一次查段表 先查段表,再查页表
优点 内存利用率高,无外碎 符合逻辑、便于共享保护 结合前两者优点
缺点 无逻辑意义,共享不便 有外部碎片,需要连续空间 结构复杂,开销大
  1. 页式:固定大小 → 有内碎,无外碎
  2. 段式:逻辑分段 → 有外碎,无内碎,好共享
  3. 段页式:先段后页 → 只有内碎,最好用

页式:内存切成固定大小小页 空的小页也能被用掉 → 没有外部碎片
段式:段长度不固定,必须连续分配 用完后留下一堆小缝 → 有外部碎片

Cache 三种映射方式 对比表(cache和内存映射)

对比项 直接映射 全相联映射 组相联映射
核心规则 主存块 → 只能映射到 Cache 唯一一行 主存块 → 可映射到 Cache 任意一行 主存块 → 先映射到 固定组 ,组内任意行
查找方式 只查固定位置,速度最快 全表并行查找,速度最慢 先找组,再在组内查找,折中
冲突率 高(容易冲突) 最低 较低(折中)
硬件成本 最低 最高 中等
实际使用 极少 最常用(多级Cache都用这个)

超简一句话记忆

  • 直接映射: 只能去一个位置,简单但容易撞车
  • 全相联: 哪里有空去哪里,舒服但贵
  • 组相联: 先分组,组内随便放,性价比最高

4.

页面失效的是没有装入的2、3、5、7

页内偏移量=虚地址-(虚页号 * 页面大小)

实存地址=实页号*页面大小+页内偏移地址
5
6.
7.
8.()是系统进行资源分配和调度的基本单位,通过其物理实体被操作系统所感知。物理实体分为(此空不作答)三部分。
A.进程
B.线程
C.纤程
D.管程

答案:A. 进程

解析(考试必背)

进程:操作系统资源分配和调度的基本单位,是程序的一次执行过程,有独立的资源(内存、打开文件等)。

线程:是调度和执行的基本单位,共享进程资源,不独立分配资源。

纤程、管程都不是资源分配的基本单位。

进程:资源分配的基本单位

→ 有自己独立的内存,独立家当

线程:调度执行的基本单位

→ 不分配资源,共享进程的内存
进程的三个物理实体(组成部分)是:

代码段:要执行的指令

数据段:运行时用到的数据

PCB:操作系统管理进程的 "身份证"

一句话考点

PCB 是进程存在的唯一标志。
进程三态(运行、就绪、阻塞)

就绪 → 运行

被调度程序选中,分配到 CPU。

运行 → 就绪

时间片用完,或被更高优先级进程抢占。

运行 → 阻塞

等待 I/O、等待信号、等待资源。

阻塞 → 就绪

等待的事件完成(I/O 结束),回到就绪队列。

⚠️ 重点:不能从阻塞直接到运行!

位示图(BitMap)核心结论

位示图 = 操作系统放在内存里的一张表,CPU 读它,用来管理磁盘空间。
因为 CPU 按字长存取数据,位示图按字长组织,可以让 CPU 一次操作多位,提高磁盘管理效率。

  1. 位示图就是用 1 个 bit 表示 1 个物理块

    • 0 = 空闲
    • 1 = 已分配
  2. 位示图的"字",确实跟操作系统位数对应

    • 32 位系统:1 字 = 32 bit
    • 64 位系统:1 字 = 64 bit
  3. 考试常考公式(直接背)

    • 总位数 = 物理块数
    • 所需字数 = 物理块数 / 每字位数
    • 第 n 块(从0开始)
      • 字号 = n / 每字位数
      • 位号 = n % 每字位数

9.

直接除以字长得到的商和余数就是答案,不用任何转化

10.

相关推荐
LONGZETECH7 小时前
架构师实战拆解|无人机智慧实训SaaS中台:断电续考、AI组卷、多端同步核心设计
大数据·人工智能·架构·系统架构·无人机
wanhengidc7 小时前
双线服务器有哪些优点?
运维·服务器
jscxy52068 小时前
ospf综合实验
运维·服务器·网络
KaMeidebaby8 小时前
卡梅德生物技术快报|酵母双杂交 cDNA 文库构建与蛋白互作筛选流程
服务器·前端·数据库·人工智能·算法
csdn_aspnet8 小时前
Modbus TCP C# 客户端程序
服务器·网络·tcp/ip·c#
沐风___8 小时前
App 上架之后:如何看数据、获取用户与持续迭代产品
服务器·前端·数据库
小灰灰搞电子8 小时前
Rust 实现异步ModbusTCP主机源码分享
服务器·网络·modbustcp·rust
apcipot_rain8 小时前
计科八股20260529——连接协议连接线程池、模块拆解模块通信、WebSocket
运维·服务器·网络·八股
AAA大运重卡何师傅(专跑国道)9 小时前
力扣hot100
服务器·前端·数据库
qq3621967059 小时前
facebook是什么意思?新手从零到精通完全指南
运维·服务器·facebook