【软考】系统架构设计师-计算机系统基础(2):操作系统

1、操作系统基础

OS的5个核心功能:进程管理、存储管理、设备管理、文件管理、作业管理

OS的3个作用:管理运行的程序和分配各种软硬件资源;提供友善的人机界面;为程序应用的开发和运行提供高效的平台

OS的4个特征:并发性、共享性、虚拟性、不确定性

OS分类:批处理OS、分时OS、实时OS、网络OS、分布式OS、微型计算机OS(Windows\MacOS\Linux)、嵌入式OS、微内核OS

嵌入式OS主要特点:微型化、可定制、实时性、可靠性、可移植性

**2、嵌入式系统初始化顺序:**自底向上、从硬件到软件的次序依次为:片级初始化 → 板级初始化 → 系统初始化

3、进程管理

进程:进程控制块PBC、程序、数据

进程调度状态转换3态图:

进程调度状态转换5态图:

4、前驱图和进程资源图:

前驱图 :

进程资源图:

P -> R:表示申请/等待;

R -> P:表示分配给了一个进程.

5、PV信号量

进程的同步与互斥:临界资源/临界区/信号量(互斥信号量/同步信号量)

P操作:申请资源:S = S - 1,P(S)

V操作:释放资源:S = S + 1,V(S)

S>0 表示资源个数;S<0 表示有多少个进程在等待

生产者消费者问题:

互斥信号S0(使用者);同步信号S1(仓库空闲个数);同步信号S2(仓库商品数)

|---------------------------------------|--------------------------------|
| 生产者 | 消费者 |
| 生产商品S P(S0) P(S1) 商品放入仓库中 V(S2) V(S0) | P(S0) P(S2) 取出一个商品 V(S1) V(S0) |

进程调度:可剥夺式、不可剥夺式

先来先服务FCFS、时间片轮转、优先级调度(优先级队列)、多级反馈调度

6、死锁:

产生死锁的4个必要条件:资源互斥、进程占有资源并等待其他资源;系统不能剥夺资源;进程资源图是一个环路

死锁防御、死锁避免、死锁检测、死锁解锁

死锁资源计算(假设,n个进程,每个进程都需要R个资源)

发生死锁的最大资源数为:n(R - 1),即每个P都刚好少一个R

不发生死锁的最小资源数:n(R - 1 )+ 1

银行家算法(结合实例)

进程:拥有资源的独立单位;线程:作为调度和分配的基本单位

7、分页存储管理:

不用一次性全给程序,分批调度

地址:页号 + 页内地址

页号就是告诉有多少个页,即页的个数;页内地址则表示页的大小;

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

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

地址组成:页地址 + 页内偏移地址

物理地址:物理块号 + 页内偏移地址(外存地址)

逻辑地址:页号 + 页内偏移地址(页内地址)

所以,逻辑地址转物理地址方法:页内地址不变,页号通过页表查映射关系即可

快表:快速的页面(最常用的部分,Cache)

页面置换算法:最优算法、先进先出、最近最少使用

淘汰原则:先看访问,没被访问的优先淘汰;再看修改,没被修改的优先淘汰。

8、分段存储管理:

段号 + 段内地址 (分段管理一般只考是否为合法的地址,不考如何转换)

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

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

**9、段页式管理:**先分段,再分页

优点:空间浪费小,存储空间共享容易,存储

10、设备管理

I/O请求:用户进程 --> 设备无关软件 -> 设备驱动程序 -> 中断处理程序 -> 硬件

Spooling技术(外围设备联机操作技术):两个数据缓冲区,输入井、输出井

11、文件管理

索引文件结构:

直接索引:索引节点存放的就是内容(物理盘块),一个物理盘块的大小,如:4KB * N

一级间接索引:存放的是链接到直接物理的盘块的地址;如:4KB/4B * 4KB * N

二级间接索引:4KB/4B * 4KB/4B * 4KB * N

文件目录:相对路径/绝对路径/全文件名路径

空闲区表、位示图、空闲块链、成组链接法

位示图:bit位,每一位对应文件存储器上的物理块:

相关推荐
p@nd@14 小时前
Oracle筑基篇-调度算法-LRU的引入
数据库·oracle·操作系统·lru
肖老师+1 天前
“从零到一:揭秘操作系统的奇妙世界”【操作系统中断和异常】
操作系统
七灵微1 天前
进程与线程以及如何查看
linux·系统架构
oioihoii2 天前
桌面图形界面生成原理:从流水灯到电脑屏幕
系统架构
颯沓如流星2 天前
软件架构设计方法之The Clean Architecture 整洁架构
架构·系统架构
GoGeekBaird2 天前
69天探索操作系统-第20天:页替换算法 - 深度剖析
后端·操作系统
柔弱女子爱java2 天前
spring专题笔记(五):依赖注入--p命名空间注入、c命名空间注入、util命名空间
java·笔记·后端·spring·架构·系统架构
云空3 天前
《 QT 5.14.1 类库模块列表详述》
开发语言·qt·系统架构
IT 青年3 天前
操作系统(12)内存分配
操作系统
星原飞火4 天前
2-2-18-16 QNX系统架构之自适应分区
车载系统·系统架构·qnx·blackberry