操作系统知识点归纳第一章操作系统概论1.硬件一一操作系统一一支撑软件一一应用软件2.操作系统特征:併发性、共享性、随机性3.操作系统作为系统软件集中了两类主要的功能:资源管理、控制程序执行4.所谓的共享性:在一定策略下,按照不同资源类型共同占有使用。5.操作系统研究观点:软件、资源管理、进程、虚拟器、服务提供者的观点6.批处理系统优点:吞吐量大、CPU资源利用率高、周转时间短,不具有较快的响应时间缺点:缺乏交互7.微内核(C/S结构客户机/服务器)特点:可靠、灵活、适合分布式处理@重点多选8.没有工业操作系统9.中央处理单元是共享设备,可以被抢占。打印机,扫描仪,磁带机是独占设备,无法被抢占,但是可以共享。10.实时系统的设计目标:满足截止时间的要求,满足可靠性要求第二章操作系统运行机制1.中断源:引起中断的那些事件2.中断请求:中断控制器向中央处理器发送信号3.中断的作用:发挥处理器使用效率、提高系统实时能力4.中断:时钟中断、IO中断、控制台中断、硬件故障中断@重点多选5.异常(不是中断):程序性中断(算术溢出、被零除、缺页)、访管指令异常@重点多选6.系统调用:能够动态请求和释放系统资源7.系统/一般过程调用区别:一般过程调用的调用与被调用程序运行在相同的状态,不涉及系统状态的转换;系统调用的调用程序在用户态,被调用程序在系统态,需要通过软中断(陷入机制)实现用户态到核心态的转化。者都可以嵌套调用@重点单选8.参数传递:陷入指令自带参数、通用寄存器、堆栈区9.用户可见寄存器:数据/地址/条件码寄存器第三章进程线程模型1.顺序执行(独占CPU)特点:顺序性、封闭性、确定性、可再现性2.多道程序设计环境特点:独立性、随机性、资源共享性3.并发执行特点:相互制约、不再一一对应、不可再现4.进程:由程序、数据和进程控制块(PCB)组成,分为系统进程和用户进程5.运行→就绪:时间片用完、程序执行结束、被调度程序抢占6.运行-等待:等待某事件发生7.等待-就绪:等待的事件已发生8.阻塞状态(Blocked)挂起状态(Suspend)9.PCB:调度信息(进程名、进程号、优先级、当前状态、指针)、现场信息:(程序状态字、时钟、界地址寄存器、页表地址和长度)、不存放进程页表和动态链接库@重点多选10.PCB组织方式:线性、索引、链接11.单核maxmin运行就绪n-10等待n012.进程控制通过原语来实现状态转换13.进程创建:系统初始化、被调用的进程创建系统调用、创建新进程、批处理作业初始化、用户登录时14.fork函数的使用:调用一次则一分为二,父子进程(两次则为4,三次为815.线程:用户级、内核级、混合实现方式16.线程表:程序计数器、堆栈指针、寄存器、状态17.Pthreadjoin(等待一个特定的线程退出)Pthread_yield(释放CPU来运行另外一个线程)18.Pthreadcreat()创建线程,四个参数,1线程标识符地址2设置线程属性3线程入口函数的起始地址4.入口函数的参数。19.进程调度:CPU密集型(计算密集型)、I/O密集型(CPU与I/O优先级相同)20.非抢占式调度算法:先来先服务、最短作业优先21.与时间相关调度:先来先服务、短作业优先、最高响应比优先、时间片轮转22.线程的实现机制的三种途径:用户线程、内核线程、混合线程第四章并发与同步1.相互不感知:交互关系(竞争)、问题(互斥、死锁、饥饿)间接感知:交互关系(共享协作)、问题(互斥、死锁、饥饿)直接感知:交互关系(通信协作)、问题(死锁、饥饿)2.临界资源访问过程:进入区(P原语)、临界区、剩余区、退出区(V原语)3.进程准则:空闲则入、忙则等待、有限等待、让权等待@重点多选4.算法:Peterson、Ts指令(进入区使用)、Swap/Exchange指令、信号量5.信号量:实现临界资源的互斥访问、P/N原语成对使用、实现进程同步(前趋关系初始化时只能执行P/V操作6.管程:由Hoare提出,管程本身保障了共享资源的互斥执行、由操作和共享数据构成,任一时刻管程中只能有一个活跃进程、管程本身无法保证互斥7.条件变量:wait和signal、Pthreadmutexinit(创建一个互斥量8.共享内存:设有一个公共内存区(多进程间通信、共享大量信息、系统不产生多份拷贝)9.共享内存进行进程通信需要解决的两个问题:1怎么共享内存2公共内存之间的互斥问题第一个问题由操作系统提供第二个问题由程序员解决10.消息缓冲通信:高级通信原语,由若干消息缓冲区构成。发送消息原语send(receiver,a)其中receiver为接收进程名,a为内存区首地址。接收消息原语receive(a)11.信箱通信:receive(Box,Address)其中Box为指定信箱,Address为指定的地址12..管道通信:连接两个进程之间的一个打开的共享文件、基础是文件系统、要求同步、传送数据量大但通信速度慢第五章内存管理1.静态重定位:装入程序时将地址全部转换为绝对地址2.动态重定位:装入程序不执行转换,执行一条指令时,将逻辑地址转换成绝对地址3.可变分区和段式会产生外部碎片、移动技术(紧缩技术):移动程序把空闲碎片合成连续的空闲区放在内存端,程序放在另一端硬件支持的地址转换机构:重定位和可变分区都需要5.最佳适应算法每次均从头开始寻找最合适的下次适应算法从某个地址开始往后寻找最合适的首次适应算法从头开始满足即可最差适应算法先找空间最大的分区6.回收分区上邻分区空闲:空闲区起始地址+长度=分区起始地址S7.回收分区下邻分区空闲:分区起始地址+长度=空闲区起始地址8.覆盖技术:若干程序段共享某一个存储空间9.交换技术:将不运行的进程调出到外存上的盘交换区,支持多道程序设计10.页式存储:逻辑地址连续的程序放到不连续的内存区域11.逻辑地址:页号+页内地址12.物理地址:内存块号*块长+页内地址13.页式存储管理:硬件支持的页表控制寄存器,工作集是会发生变化的,操作系统为每一个进程都保存一个工作集,页面可能在内存与外存之间调度,可能出现抖动,抖动导致效率急速下降。@重点多选14.反置页表:64位的Ultrasparc和Powerpc15.快表:联想寄存器(高速缓存存储器)、动态更新、与内存页表并行查找16.虚拟存储:主要考虑地址位宽17.页表:页号、有效位(驻留位、存在位、中断位)、页框号、访问位、修改位、保护位、禁止缓存位。其中访问位和修改位决定页面置换、有效位决定是否调入内存18.页面调度策略:预调页、请求调页19.页面置换策略:全局置换、局部置换20.页面划分与页表数量相关、可以找到平衡点21.分页守护进程:后台进程22.先进先出页面置换算法(FIFO)总是选择在主存(内存条)中停留时间最长的一页置换,先进入内存的页,先退出内存23.最近最少使用页面置换算法(LRU):最长时间未使用24.最近最不常用页面置换算法(LFU):出现频率最小25.理想页面置换算法(OPT):以后均不出现26.管理空闲物理内存:空闲块链表、位示图、空闲页面表27.需要用到访问位的算法:LRU、CLOCK、NRU(最近未使用)第六章文件管理1.信息项:文件内容的基本单位2.用户角度:文件系统实现按名存取和存取控制3.文件用途:系统文件、用户文件、库函数文件4.文件组织形式:普通文件、目录文件、特殊文件5.文件逻辑结构:流式文件(无结构)、定长记录文件、不定长记录文件6.文件物理结构:顺序、链接、索引(用户对文件的存取方式与其相关)顺序结构:支持顺序/随机存取8.链接结构:(例FAT文件系统)不支持随机存取、有利于动态扩充(插入、删除)9.索引结构:支持顺序/随机存取、有利于动态扩充(插入、删除10.文件存在的标志:文件控制块FCB(其中不包含文件访问控制列表)11.文件目录:文件符号名到物理地址的映射机制12.树形目录:层次清楚、解决文件重名问题、查找速度快13.目录项分解法14.文件返回信息:文件描述符fd(非负整数15.文件存取权限:存取控制矩阵16.文件存储管理方法:空闲块表、空闲块链表、位示图、成组链接法17.UNIX权限:读、写、执行,对应三位二进制常用十进制表示属主同用户组其他用户@重点多选18.UNIX对文件系统中空闲区的管理通常采用成组链接法19.提高文件系统性能:块高速缓存、合理分配磁盘空间、磁盘驱动调度(寻道时间最长,传输时间最短20.磁盘调度算法:先来先服务(FCFS)、最短寻道时间优先(SSTF)、电梯算法(SCAN)、循环扫描算法21.最短寻道时间优先:以寻道优化为出发点,优先为距离磁头当前所在位置最近的磁道的访问请求服务。22.电梯扫描算法:SCNA,既考虑距离又考虑方向,且以方向优先效率较高110170195685432201223.循环扫描算法:单向扫描第七章I/O设备管理1.设备管理任务:缓冲技术、中断技术(通过协调技术避免设备冲突)、虚拟技术2.虚拟技术进行设备管理的主要目的:提高设备并发度。3.利用缓冲技术进行设备管理的目的:匹配高速和低速设备。4.设备独立性:系统提供的接口应该是相同的5.程序直接控制方式:用测试指令检测状态寄存器完成位是否为16.中断控制方式(CPU与外设一定程度上的并行操作)中断控制方式是CPU在配置I/0设备后,继续自己的工作,直到1/O设备准备好后,向CPU发送中断请求,再由CPU接管,提供服务7.DMA方式:CPU仅在初始化和结束时参与(磁盘),数据交换不经过CPU,直接在内存与10设备之间进行。8.通道控制方式:通道是特殊处理器,有指令和程序。以数据块为单位,传输率高9.通道:选择通道、字节多路通道、数组多路通道10.设备分配表:系统设备表、设备控制表、控制器控制表、通道控制表11.设备分配策略:先来先服务、高优先级@重点多选12.分配考虑因素:固有属性、分配算法、安全性、独立性13.虚拟设备(Spooling):共享设备模拟独占设备,提高系统效率和设备利用率14.缓冲技术:匹配不同外部设备的传输速度15.控制设备传递途径:应用层-独立层-驱动层→硬件16.I/0系统硬件结构:适配器及其接口、设备控制器、设备硬件第八章死锁1.活锁:进程消耗时间片却没有进展也没阻塞2.饥饿:考虑优先级,没有被阻塞,但被无限延后3.死锁产生原因:竞争资源、进程推进顺序不合理4.鸵鸟算法:忽视死锁5.死锁预防:破坏“互斥条件”、“不可剥夺”、“请求和保持”、“循环等待”(资源有序分配策略)其中一个(例如:建立Spooling系统)6.死锁避免:银行家算法7.死锁检测:允许运行发生死锁、检测死锁是否真的发生8.死锁解除:剥夺资源、撤销进程9.安全状态:不发生死锁10.不安全状态:一定导致死锁,但该状态不一定是死锁11.若资源分配图不可化简则发生死锁补充:write()指令打印输出12.进程长期得不到满足,操作系统应将它挂起