操作系统
大家好呀!我是小笙,本章我主要分享系统架构设计师 - 操作系统(2)知识,希望内容对你有所帮助!!
操作系统(5-6分)
文件管理
绝对路径与相对路径 ★
- 绝对路径:是从盘符开始的路径
- 相对路径:是从当前目录开始的路径
- 若当前目录为:D1 ,要求F2路径,则绝对路径:/D1/W2/F2 , 相对路径:W2/F2
索引文件 ★★★
文件在逻辑上一定是连续的,在物理上可以是分散的
索引文件结构
例题
假设文件系统采用索引节点管理,且索引节点有8个地址项 iaddr[O] ~ iaddr[7],每个地址项大小为4字节,iaddr[0] ~ iaddr[4] 采用直接地址索引,iaddr[5] 和iaddr[6] 采用一级间接地址索引,iaddr[7] 采用二级间接地址索引。假设磁盘索引块和磁盘数据块大小均为lKB字节,文件File1的索引节点如下图所示。若用户访问文件Filel中逻辑块号为5和261的信息,则对应的物理块号分别为 58和187;101号物理块存放的是 二级地址索引表
![](https://img-blog.csdnimg.cn/img_convert/519bbc3ce37443c26aefa6d7156fdffc.png)
- A 89和90 B 89和136 C 58和187 D 90和136
- A File1的信息 B 直接地址索引表 C 一级地址索引表 D 二级地址索引表
位示图 ★
要将文件保存到外部存储器(外存或辅存),首先得知道存储空间的使用情况,用0和1分别表示空闲和占用,(0表示空闲,1表示占用)
例题
某字长为32位的计算机的文件管理系统采用位示图(bitmap)记录磁盘的使用情况。若磁盘的容量为300GB,物理块的大小1MB,那么位示图的大小为 9600 个字
- A 1200 B 3200 C 6400 D 9600
计算方式:300GB / 1 MB / 32 位= 9600 个字
存储管理
段页式存储 ★★★
页式存储
将程序与内存划分为相等大小得块,以页为单位将程序调入内存
- 逻辑地址 = 页号 + 页内地址
- 物理地址 = 块号 + 页内地址
优点:利用率高,碎片小,分配及管理简单
缺点:增加了系统开销;可能产生抖动现象
例题
1、页内存储系统,每个页的大小为 8KB = 13位
- 逻辑地址: 10 1101 1100 1110 (后13位页内地址,与物理地址相同)
- 物理地址:110 1101 1100 1110 (查询如下页表,发现页号 1 对应 块号 3,二进制表示就是 11)
![image-20240603205005590](https://img-blog.csdnimg.cn/img_convert/f8210428ae6176b83dad6adfd1483e2b.png)
段式存储
按用户作业中的自然段来划分逻辑空间,然后调入内存,段的长度可以不一样
优点:多道程序共享内存,各段程序修改互不影响
缺点:内存利用率低,内存碎片浪费大
例题
1、假设系统采用段式存储管理方法,进程P的段表如下所示。逻辑地址 (0,810)和(4,120) 不能转换为对应的物理地址;不能转换为对应的物理地址的原因是进行 逻辑地址到物理地址转换时地址越界
![image-20240603205710800](https://img-blog.csdnimg.cn/img_convert/9ec1f0c0603d1876b90fa16ab57b81d2.png)
段页式存储(了解)
段式与页式的综合体。先分段,再分页。1个程序有若干个段,每个段中可以有若干页,每个页的大小相同,但每个段的大小不同
可以根据段表始址、段号、段表大小以及页表大小可以算出页号以及页内地址
![image-20240604213740562](https://img-blog.csdnimg.cn/img_convert/70a74a0c6ccaf600c228e35efeb9b16a.png)
优点:空间浪费小、存储共享容易、存储保护容易、能动态连接
缺点:由于管理软件的增加,复杂性和开销也随之增加,需要的硬件以及占用的内容也有所增加,使得执行速度大大下降
页面置换算法 ★
页面还有三种标记用来决定淘汰出内存的顺序:状态位、访问位、修改位
- 状态位:在不在内存中 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](https://img-blog.csdnimg.cn/img_convert/cc12c278849824feee3081cc72525100.png)
微内核操作系统
现代操作系统大多拥有两种工作状态,:分别是核心态和用户态。一般应用程序工作在用户态,而内核模块和最基本的操作系统核心工作在核心态
操作系统的内核服务:异常和中断、计时器、I/O管理等
![image-20240613125825493](https://img-blog.csdnimg.cn/img_convert/4d11e80982dfa0b6a8ad447370bc1812.png)
单体内核 VS 微内核
实质 | 优点 | 缺点 | |
---|---|---|---|
单体内核 | 将图形、设备驱动及文件系统等功能全部在内核中实现,运行在内核状态和同一地址空间 | 减少进程间通信和状态切换的系统开销,获得较高的运行效率 | 内核庞大,占用资源较多且不易剪裁。系统的稳定性和安全性不好 |
微内核 | 只实现基本功能,将图形系统、·文件系统、设备驱动及通信功能放在内核之外 | 内核精练,便于剪裁和移植。系统服务程序运行在用户地址空间,系统的可靠性、稳定性和安全性较高。可用于分布式系统 | 用户状态和内核状态需要频繁切换,从而导致系统效率不如单体内核 |
例题
采用微内核结构的操作系统提高了系统的灵活性和可扩展性 并增强了系统的可靠性和可移植性,可运行于分布式系统中
- 并增强了系统的可靠性和可移植性,可运行于分布式系统中
- 并增强了系统的可靠性和可移植性,但不适用于分布式系统
- 但降低了系统的可靠性和可移植性,可运行于分布式系统中
- 但降低了系统的可靠性和可移植性,不适用于分布式系统
嵌入式操作系统 ★★★
嵌入式系统主要由嵌入式硬件平台、相关支撑硬件、嵌入式操作系统、支撑软件和应用软件组成。其中,嵌入性、专用性和计算机系统是嵌入式系统的三个核心要素
嵌入式操作系统特点
- 微型化
- 代码质量高
- 专业化
- 实时性强
- 可裁减、可配置
低功耗设计
-
基于硬件的低功耗设计
板级电路低功耗设计;选择低功耗处理器;总线的低功耗设计;接口驱动电路的设计;分区分时供电技术
-
基于软件的低功耗设计
编译优化技术(指令开销);软件与硬件的协同设计(硬件功能交由软件完成);算法优化(低时间复杂度)
例题
1、以下关于嵌入式系统开发的叙述正确的是 在宿主机上必须采用交叉编译器来生成目标机的可执行代码
- 宿主机与目标机之间只需要建立逻辑连接
- 宿主机与目标机之间只能采用串口通信方式
- 在宿主机上必须采用交叉编译器来生成目标机的可执行代码
- 调试器与被调试程序必须安装在同一台机器上
2、以下关于嵌入式系统硬件抽象层的叙述错误的是 硬件抽象层应包括设备驱动程序和任务调度
- 硬件抽象层与硬件密切相关,可对操作系统隐藏硬件的多样性
- 硬件抽象层将操作系统与硬件平台隔开
- 硬件抽象层使软硬件的设计与调试可以并行
- 硬件抽象层应包括设备驱动程序和任务调度(操作系统的工作)