操作系统
-
计算机系统
- 由硬件和软件两部分组成
- 计算机系统层次结构
- 计算机硬件(系统软件开发人员) 裸机
- 操作系统(系统软件开发人员)
- 对硬件的首次扩充,编辑程序、汇编程序、编译程序、数据库管理系统都是建立在操作系统基础上的
- 系统软件(应用软件开发人员)
- 应用软件
- 最终用户
-
进程管理(处理机管理)
- 进程是资源分配和独立运行的基本单位
- 在多道程序批处理和分时系统中有多个并发执行的程序,为了描述系统中程序执行时动态变化的过程引入了进程
- 前趋图(顺序执行)
- 一个有向无循环图,X->Y X是Y的前驱,Y是X的后继,要X执行结束Y才可以执行
- 程序顺序执行时的主要特征包括顺序性、封闭性、可再现性
- X--------->Y X结束V(s1)操作 Y开始前P(s1)操作 信号量初始值0
- 前驱图(并行执行)
- 失去了程序的封闭性
- 程序和机器的执行程序的活动不再一一对应
- 并发程序间的相互制约性
- 五态模型
-
进程间的通信
- 同步与互斥
- 同步是合作进程间的直接制约问题,互斥是申请临界资源进程间的间接制约问题
- 临界区管理的原则
- 有空则进、无空则等、有限等待、让权等待
- 取值范围:可用资源数X 进程N -(N-X)`X
- 死锁
- 同类资源分配不当引起死锁,系统m个资源被n进程共享,当每个进程要求k个资源,m<nk可能引起死锁 m=>n(k-1)+1就不会死锁
- 死锁预防:鸵鸟策略(不理睬策略)、预防策略、避免策略√、检测与接触策略
- 进程资源图
- 进程P->资源R 申请资源 反过来是分配资源
- 先分配 在申请,申请只是判断不会要走 有一个非堵塞就可以尝试化简
- 线程
- 属性:(进程)可拥有资源的独立单位,(线程)可独立调度和分配的基本单位
- 线程是进程中的一个实体,可与同属一个进程的其他线程共享进程所拥有的全部资源。(进程可以被线程共享,线程不可以跟线程共享)
- 同步与互斥
-
程序局部性原理
- 时间局限性
- 程序中的某一条指令一旦执行在不久再次被执行,存储单元被访问,不就在访问,产生时间局限性的典型原因是在程序中存在着大量的循环操作
- 空间局限性
- 一旦程序访问了某个存储单元,在不久的将来,附近的存储单元也最有可能被访问,既程序在一段时间内所访问的地址集中在一定的范围内,典型原因是程序是顺序执行
- 淘汰原则
- 状态位为1说明在内存才可以淘汰;后面访问位为0,先淘汰;前面都访问过在看修改位为0先淘汰。
- 时间局限性
-
分页存储管理
- (逻辑地址)地址结构(16位) 页号4+页内地址12(页面大小4k=4096=2的12次方)
-
段页式存储管理
- 地址结构(32位):段号(最多x个段)+段内页号(最大允许x页)+页内地址(页大小x)
-
单缓冲区
- 时间:(T+M)*n+C T输入 M传送 C处理 n个数
-
双缓冲区
- 时间:T*n+M+C 前提M+C<T
-
磁盘调度算法
- 先来先服务(FCFS) 按顺序来 总的磁头移动绝对值加起来 平均寻道长度/顺序个数
- 最短寻道优先(SSTF) 按距离磁头最短来
- 电梯调度或扫描(SCAN)先选择一个方向干到没有了再换另外一个方向
- 循环扫描(CSCAN)或单向扫描 先选择一个方向干到没有了换另外一个方向头开始
-
旋转调度算法
- 正常时间:第一个纪录的读处理时间+{(旋转速度-处理时间)+读处理时间}*(n-1)
-
多级索引结构
- 地址项 指向 磁盘数据块 最大文件长度需要*磁盘索引块大小
- 直接地址索引
- 直接指向磁盘数据块
- 一级间接地址索引
- 先指向磁盘索引块(一级索引1KB) 里面有地址项(4B) 地址项(当做直接地址索引)指向 磁盘数据块(1KB) 最后一块的位置+255
- 二级间接地址索引
- 先指向磁盘索引块(二级索引1KB) 里面有地址项(4B) 每个地址项(直接地址索引)指向 磁盘索引块(一级索引1KB) 最后指向 磁盘数据块 最后一块位置+256²-1
- 直接地址索引
- 地址项 指向 磁盘数据块 最大文件长度需要*磁盘索引块大小
-
文件目录
- 由文件控制块(文件目录项)组成的,专门用于文件的检索。
- 至少包括文件名和存放文件的物理地址称为文件控制块(FCB)
- 基本信息类、存取控制信息类、使用信息类
- 若系统再将目录文件修改的结果写回磁盘时发生奔溃,则对系统的影响相对较大
- 由文件控制块(文件目录项)组成的,专门用于文件的检索。
-
目录结构
- 多级目录结构
- 倒置的有根树,每一个节点都是目录,叶节点是文件
- 各目录用 \ 拼接 全文件名啥都要 绝对路径 最后的文件名不需要写\结束 相对路径(相对位置的路径,当前工作目录\可不写)最后的文件名不需要写\结束 …\上一级目录 .\当前目录(可省略)
- 多级目录结构
-
位示图
- 用二进制的一位来表示一个物理块的使用情况
- 字号从0开始,物理块号从0开始 1字byte等于32位bit 磁盘容量(*1024)/磁盘大小/字长 = x字
- 位示图的大小由磁盘空间的大小(物理块总数)决定的
-
拓展
- 设计操作系统需要考虑的问题有:计算机系统的硬件资源的管理、计算机系统中软件资源的管理、用户与计算机之间的接口
- 系统级初始化主要任务是以软件初始化为主,主要进行操作系统的初始化
- 嵌入式系统初始化过程:片级->板级->系统级初始化
- 使用文件关联来打开什么图像文件
- 当用户键盘或鼠标进入某应用系统时,最先获得信息的是中断处理
- I/O设备层次:用户进程、与设备无关的系统软件、设备驱动程序、中断处理程序、硬件