系统架构设计师 - 操作系统(2)


大家好呀!我是小笙,本章我主要分享系统架构设计师 - 操作系统(2)知识,希望内容对你有所帮助!!

操作系统(5-6分)

文件管理

绝对路径与相对路径 ★

  • 绝对路径:是从盘符开始的路径
  • 相对路径:是从当前目录开始的路径
  • 若当前目录为:D1 ,要求F2路径,则绝对路径:/D1/W2/F2 , 相对路径:W2/F2

image-20240613124757116


索引文件 ★★★

文件在逻辑上一定是连续的,在物理上可以是分散的

索引文件结构

image-20240604214642616

例题

假设文件系统采用索引节点管理,且索引节点有8个地址项 iaddr[O] ~ iaddr[7],每个地址项大小为4字节,iaddr[0] ~ iaddr[4] 采用直接地址索引,iaddr[5] 和iaddr[6] 采用一级间接地址索引,iaddr[7] 采用二级间接地址索引。假设磁盘索引块和磁盘数据块大小均为lKB字节,文件File1的索引节点如下图所示。若用户访问文件Filel中逻辑块号为5和261的信息,则对应的物理块号分别为 58和187;101号物理块存放的是 二级地址索引表

  • A 89和90 B 89和136 C 58和187 D 90和136
  • A File1的信息 B 直接地址索引表 C 一级地址索引表 D 二级地址索引表

位示图 ★

要将文件保存到外部存储器(外存或辅存),首先得知道存储空间的使用情况,用0和1分别表示空闲和占用,(0表示空闲,1表示占用)

image-20240611185550160

例题

某字长为32位的计算机的文件管理系统采用位示图(bitmap)记录磁盘的使用情况。若磁盘的容量为300GB,物理块的大小1MB,那么位示图的大小为 9600 个字

  • A 1200 B 3200 C 6400 D 9600

计算方式:300GB / 1 MB / 32 位= 9600 个字

image-20240613124445230

存储管理

段页式存储 ★★★

页式存储

将程序与内存划分为相等大小得块,以页为单位将程序调入内存

  • 逻辑地址 = 页号 + 页内地址
  • 物理地址 = 块号 + 页内地址

优点:利用率高,碎片小,分配及管理简单

缺点:增加了系统开销;可能产生抖动现象

例题

1、页内存储系统,每个页的大小为 8KB = 13位

  • 逻辑地址: 10 1101 1100 1110 (后13位页内地址,与物理地址相同)
  • 物理地址:110 1101 1100 1110 (查询如下页表,发现页号 1 对应 块号 3,二进制表示就是 11)
image-20240603205005590
段式存储

按用户作业中的自然段来划分逻辑空间,然后调入内存,段的长度可以不一样

image-20240603205142286 4af97de7e2d73c1c321da08c62cd8b4

优点:多道程序共享内存,各段程序修改互不影响

缺点:内存利用率低,内存碎片浪费大

例题

1、假设系统采用段式存储管理方法,进程P的段表如下所示。逻辑地址 (0,810)和(4,120) 不能转换为对应的物理地址;不能转换为对应的物理地址的原因是进行 逻辑地址到物理地址转换时地址越界

image-20240603205710800
段页式存储(了解)

段式与页式的综合体。先分段,再分页。1个程序有若干个段,每个段中可以有若干页,每个页的大小相同,但每个段的大小不同

可以根据段表始址、段号、段表大小以及页表大小可以算出页号以及页内地址

image-20240604213740562

优点:空间浪费小、存储共享容易、存储保护容易、能动态连接

缺点:由于管理软件的增加,复杂性和开销也随之增加,需要的硬件以及占用的内容也有所增加,使得执行速度大大下降


页面置换算法 ★

页面还有三种标记用来决定淘汰出内存的顺序:状态位、访问位、修改位

  • 状态位:在不在内存中 1 在内存中 0 不在内存中
  • 访问位:最近有无被访问 1 最近被访问 0 最近未访问
  • 修改位:内容是否被修改 1 内存被修改 0 未修改

例题

1、进程P有8个页面,页号分别为0 - 7,页面大小为4K,假设系统给进程P分配了4个存储块,进程P的页面变换表如下所示。表中状态位等于1和0分别表示页面在内存和不在内存。若进程P要访问的逻辑地址为十六进制5148H,则该地址经过变换后,其物理地址应为十六进制3148H ;如果进程P要访问的页面6不在内存,那么应该淘汰页号为 2 的页面

image-20240603205100882

微内核操作系统

现代操作系统大多拥有两种工作状态,:分别是核心态和用户态。一般应用程序工作在用户态,而内核模块和最基本的操作系统核心工作在核心态

操作系统的内核服务:异常和中断、计时器、I/O管理等

image-20240613125825493

单体内核 VS 微内核

实质优点缺点
单体内核将图形、设备驱动及文件系统等功能全部在内核中实现,运行在内核状态和同一地址空间减少进程间通信和状态切换的系统开销,获得较高的运行效率内核庞大,占用资源较多且不易剪裁。系统的稳定性和安全性不好
微内核只实现基本功能,将图形系统、·文件系统、设备驱动及通信功能放在内核之外内核精练,便于剪裁和移植。系统服务程序运行在用户地址空间,系统的可靠性、稳定性和安全性较高。可用于分布式系统用户状态和内核状态需要频繁切换,从而导致系统效率不如单体内核

例题

采用微内核结构的操作系统提高了系统的灵活性和可扩展性 并增强了系统的可靠性和可移植性,可运行于分布式系统中

  • 并增强了系统的可靠性和可移植性,可运行于分布式系统中
  • 并增强了系统的可靠性和可移植性,但不适用于分布式系统
  • 但降低了系统的可靠性和可移植性,可运行于分布式系统中
  • 但降低了系统的可靠性和可移植性,不适用于分布式系统

嵌入式操作系统 ★★★

嵌入式系统主要由嵌入式硬件平台、相关支撑硬件、嵌入式操作系统、支撑软件和应用软件组成。其中,嵌入性、专用性和计算机系统是嵌入式系统的三个核心要素

嵌入式操作系统特点

  • 微型化
  • 代码质量高
  • 专业化
  • 实时性强
  • 可裁减、可配置

低功耗设计

  • 基于硬件的低功耗设计

    板级电路低功耗设计;选择低功耗处理器;总线的低功耗设计;接口驱动电路的设计;分区分时供电技术

  • 基于软件的低功耗设计

    编译优化技术(指令开销);软件与硬件的协同设计(硬件功能交由软件完成);算法优化(低时间复杂度)

例题

1、以下关于嵌入式系统开发的叙述正确的是 在宿主机上必须采用交叉编译器来生成目标机的可执行代码

  • 宿主机与目标机之间只需要建立逻辑连接
  • 宿主机与目标机之间只能采用串口通信方式
  • 在宿主机上必须采用交叉编译器来生成目标机的可执行代码
  • 调试器与被调试程序必须安装在同一台机器上

2、以下关于嵌入式系统硬件抽象层的叙述错误的是 硬件抽象层应包括设备驱动程序和任务调度

  • 硬件抽象层与硬件密切相关,可对操作系统隐藏硬件的多样性
  • 硬件抽象层将操作系统与硬件平台隔开
  • 硬件抽象层使软硬件的设计与调试可以并行
  • 硬件抽象层应包括设备驱动程序和任务调度(操作系统的工作)
  • 28
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Al_tair

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值