OS相关概念
1.操作系统(OS):
操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其它软件方便的接口和环境的程序集合。
2.操作系统的目标
使用方便,高效工作
3.操作系统的功能
处理机管理,存储器管理,设备管理,文件管理
4.提供的接口:
命令接口,程序接口
5.管态和目态
寄存器清零指令可能在管态下执行,也可能在目态下执行。
进程和线程
1.什么叫进程?为什么要引入进程?
进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。
在多道程序环境下,允许多个程序并发执行,此时它们将失去封闭性,并具有间断性及不可再现性的特征,为此引入了进程的概念,以便更好地描述和控制程序的并发执行。
2.动态性是进程的最基本的特征
3.进程的创建(创建原语):
1.为新进程分配一个唯一的进程标识符,并申请一个空白的PCB
2.为新进程分配资源,为新进程的程序、数据以及用户栈分配必要的内存空间
3.初始化PCB
4.如果就绪队列能够接受新进程,就将新进程插入就绪队列,等待被调度
4.进程的终止(撤销原语):
1.根据进程的标识符,检索PCB,查看进程的状态
2.若进程处于执行状态,则终止该进程的执行,讲处理机资源分配给其它进程
3.若该进程有子进程,则终止其所有子进程
4.将该进程所拥有的资源全部归还给其父进程或操作系统
5.将其PCB从队列中删除
5.进程包括:PCB、程序段、数据段,其中PCB是进程存在的唯一标志
6.进程控制块PCB包含的信息:
标识信息,说明信息,现场信息,管理信息
进程描述信息、进程控制和管理信息、资源分配清单和处理机相关信息
7.进程通信:
低级通信:PV操作
高级通信:
1.共享存储:基于数据结构、基于存储区
2.消息传递:消息通信(直接)、信箱通信(间接)
3.管道通信:通过共享文件(pipe文件),须有互斥、同步和确定对方存在的能力
8.线程的概念:
线程是轻量级进程,它是一个基本的CPU执行单元,由线程ID、程序计数器、寄存器集合和堆栈组成。
9.线程和进程的比较:
1.引入线程后,线程代替进程成为独立调度的基本单位
2.进程是拥有资源的基本单位,而线程不拥有系统资源
3.进程切换开销大,线程切换开销小,且线程之间的同步和通信更容易实现
4.进程的地址空间相互独立,线程共享其所属进程的资源
处理机调度
1.作业调度:
作业调度又称高级调度,主要任务是按一定的原则从外存上处于后备状态的作业中挑选一个作业,给它分配内存以及必要的资源,并建立相应的进程,使它获得竞争处理机的权利。
2.中级调度:
中级调度又称内存调度,将那些暂时不能运行的进程调至外存,等它们具备运行条件并且内存有空闲空间时,由中级调度将它们再重新调回内存,并挂在就绪队列上等待。
3.进程调度:
进程调度又称低级调度,主要是按照某种方法和策略从就绪队列中选一个进程,将处理机分配给它。
4.五种状态转换图
进程同步
1.原语
原语是指处于系统最底层,操作只能一气呵成,不能被中断的程序。
2.临界资源
一次仅允许一个进程使用的资源称为临界资源。
3.临界区
进程中访问临界资源的代码片段成为临界区。
4.管程
管程是由一组数据以及定义在这组数据上的操作组成的软件模块。
组成:
1.局部于管程的共享结构数据说明
2.对该数据结构进行操作的一组过程
3.对局部于管程的共享数据设置初始值的语句
死锁
1.死锁产生的原因:
1.资源竞争 2.进程推进顺序不当
2.死锁产生的必要条件
1.互斥条件
2.不可剥夺条件
3.请求和保持条件
4.循环等待条件
3.预防死锁
通过破坏四个必要条件之一,以防止死锁发生。
破坏互斥条件,不太可行
破坏不可剥夺条件:实现复杂
破坏请求和保持条件:预先静态分配资源
破坏循环等待条件:采用顺序资源分配法
4.避免死锁
在资源动态分配过程中,用银行家算法等方法防止系统进入不安全状态
5.死锁解除
资源剥夺法、撤销进程法、进程回退法
6.死锁的概念
死锁是指多个进程因竞争资源而造成的一种互相等待的僵局,若无外力作用,这些进程都讲无法向前推进。
内存管理概念
1.程序的执行过程
编译――链接――装入
链接分为:静态链接,装入时动态链接,运行时动态链接
装入分为:绝对装入,可重定位装入(静态重定位),动态运行时装入(动态重定位)
绝对装入技术是在编译时完成地址重定位
可重定位装入是在装入时进行地址重定位
动态运行时装入是在执行时地址重定位
2.具有快表的请求分页存储系统的地址变换过程:
3.请求分页系统的硬件和软件支持
硬件:请求分页的页表,缺页中断,地址变换机构
软件:请求调页的软件,页面置换的软件
4.请求分页系统的页表项中的域
页号,物理块号,状态位P,访问字段A,修改位M,外存地址
5.快表的概念
地址变换机构中具有并行查找能力的高速缓冲存储器,用来存放当前访问的若干页表项,以加快地址变换过程。
文件管理
1.文件
文件是指由创建者所定义的、具有文件名的一组相关元素的集合,可以分为有结构文件和无结构文件两种。
文件系统管理的目标之一是提供统一的用户接口,其含义是不同设备提供同样的接口,方便用户操作和编程。
2.文件属性
包括 名称、标识符、类型、位置、大小、保护、时间、日期和用户标识等。
3.文件的打开
将指定的文件属性信息从外存拷贝到内存打开文件目录表的一个表目中,并将该表目的编号返回给用户,可以有效避免多次访问外存而导致的资源和时间浪费。
4.文件的逻辑结构
1.无结构文件(流式文件)
2.有结构文件(记录式文件)
顺序文件,可以顺序存储或链表存储。
索引文件,可以加快检索速度。
索引顺序文件
直接文件或散列文件
5.文件控制快
文件控制快(FCB)是用来存放控制文件需要的各种信息的数据结构,以实现“按名存取”。
6.文件索引结点
将文件名与文件描述信息分开,文件描述信息单独形成一个称为索引结点的数据结构。
7.文件目录
文件目录是一种数据结构,用于标识系统中文件及其物理地址,以实现“按名存取”和加快文件检索和共享等。
8.文件共享的两种方式
1.基于索引结点的共享方式(硬连接)
通过引用指针实现,除非引用值减为0,文件才会删除
2.利用符号链实现文件共享(软链接)
引用的一方只是存储文件的路径,当文件所有者删除文件时,文件真正删除,其他符号链无法访问。
9.文件分配方式(物理结构)
连续分配
链接分配
分隐式链接和显式链接
索引分配
建立索引表
10.文件存储空间管理
空闲表法,空闲链表法,位示图法,成组链接法(UNIX)
I/O系统
1.设备独立性
设备独立性又称设备无关性,使应用程序独立于具体使用的物理设备。
2.SPOOLing技术
输入进程控制:
输入设备――输入缓冲区――输入井
输出进程控制:
输出井――输出缓冲区――输出设备
3.设备分配过程
SDT―DCT―COCT―CHCT
DCT:设备控制表,COCT:控制器控制表,CHCT:通道控制表,SDT:系统设备表。
4.设备管理
操作系统设备管理的主要对象有I/O设备,设备控制器,I/O通道
Windows98是一个单用户多任务的操作系统。
单用户多任务操作系统:一台计算机同时只能有一个用户使用,但该用户一次可以运行或提交多个作业。
输入输出指令需要中断操作,中断操作必须在核心态下执行。
存在磁盘上的文件既可随机访问(直接访问),又可顺序访问。是根据文件的物理结构而定的。
文件有逻辑结构和物理结构。
分页式存储管理:每个进程拥有一张页表,有内部碎片。对用户透明。
段式存储管理:每个进程拥有一张段表,有外部碎片,方便编程,信息保护与共享,动态增长。
段页式存储管理:有内部碎片。
对于磁盘,物理上读写的最小单位是一个物理块(扇区)。
进程由三部分组成:进程控制块(PCB),数据段,程序段。
进程最基本的特征是“动态性”。
操作系统提供的接口:命令接口,程序接口。