【软考】系统架构设计师-计算机系统基础(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位,每一位对应文件存储器上的物理块:

相关推荐
J老熊40 分钟前
RabbitMQ 在 Java 和 Spring Boot 中的应用详解
java·开发语言·spring boot·后端·系统架构·rabbitmq·java-rabbitmq
架构师Wu老七7 小时前
【软考】系统架构设计师-计算机系统基础(4):计算机网络
计算机网络·系统架构·软考·系统架构设计师
银帅1833503097117 小时前
系统架构设计师论文
系统架构·论文笔记
不爱学习的YY酱1 天前
【操作系统不挂科】<线程概念(6)>选择题&简答题(带答案与解析)
linux·开发语言·操作系统
银帅183350309711 天前
2012年下半年试题一:论基于架构的软件设计方法及应用
架构·系统架构·论文笔记
司镜2331 天前
第一部分:1-软考是什么?考了高级有什么用?
软考高级·软考·信息系统项目管理师
李元中1 天前
24下软考高级【系统架构设计师】考试难度分析
网络·人工智能·经验分享·算法·系统架构·云计算
银帅183350309711 天前
2019年下半年试题二:论软件系统架构评估及其应用
系统架构·论文笔记
架构师Wu老七1 天前
【软考】系统架构设计师-计算机系统基础(3):嵌入式系统
系统架构·软考·嵌入式系统