标签:
1 操作系统概述
操作系统:是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境的程序集合
操作系统的特征:并发,共享,虚拟,异步。
并发:两个或多个事件在同一时间间隔内发生。
共享:即资源共享,有两种共享方式:互斥共享方式(一段时间内只允许一个进程访问该资源,只有当该进程访问完并释放该资源后,才允许另一个进程对其访问,这种资源叫做临界资源或独占资源);同时访问方式:允许一段时间内由多个进程“同时访问”(宏观意义上的,即分时共享)。
虚拟:是指把物理上的实体变为若干个逻辑上的对应物。例如:虚拟处理器(对单核而言,实际是通过分时调用),虚拟内存。
异步:多道程序环境下,允许并发,但由于资源有限,进程的执行是以不可预知的速度向前推进的。
操作系统的目标与功能:作为计算机系统资源的管理者;作为用户接口(命令接口,程序接口)
操作系统的发展与分类:手工操作阶段(独占资源,程序的装入运行需人工干预);脱机输入输出阶段;批处理阶段(单道批处理,多道批处理);分时操作系统;实时操作系统;网络操作系统;分布式操作系统;和人计算机系统。
内核:计算机上配置的底层软件,包括与硬件关联紧密的模块(时钟管理,中断处理等)以及运行频率较高的程序(进程管理,设备管理)。
原语:底层操作的一些小程序,接近硬件,具有原子性,短小操作频繁。
用户态核心态:用户程序叫做用户态指令,内核程序叫做核心态指令。也指CPU的工作状态
2 进程管理
1线程概念
进程:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。所谓创建进程,实质上是创建进程映像中的PCB,撤销进程实质是撤销PCB。进程映像是静态的,进程是动态的。
PCB:进程控制块,为了使参与并发执行的程序(含数据)能独立运行,必须为之配置一个专门的数据结构,称为PCB。系统利用PCB来描述进程的基本情况和运行状况。
进程映像:又称进程实体,由程序段,相关数据段和PCB组成。
进程的特征:
动态性:进程是程序的依次执行,具有创建,活动,暂停,终止等过程。
并发性:指多个进程实体,同存于内存中,能在同一时间内同时运行。
独立性:指进程实体是一个能独立运行,独立获得资源和独立接受调度的基本单位。
异步性:进程的相互制约,是进程的执行具有间断性,也即进程按照各自独立的不可预知的速度推进。
结构性:每个进程都配置一个PCB。从结构上看,进程实体是由程序段,数据段和PCB组成。
进程的状态:运行,就绪(进程获得除处理机之外的一切资源),阻塞(等待),创建,结束。
进程控制:
创建进程:1分配唯一的进程标示号,申请空白PCB;2分配资源,为新进程的程序和数据以及用户栈分配内存;3初始化PCB;4如果进程就绪队列能能够接纳新进程,就将新进程插入就绪队列,等待被调度运行。
终止进程:(正常结束,异常结束,外界干预都可以终止进程)1根据进程标志号,检索PCB,读出进程状态;2如被终止的进程处于执行状态,立即终止进程,将处理机资源分配给其他进程;3如该进程由子进程,应将其所有子进程终止;4将该进程的所有资源归还其父进程或系统;5删除PCB
进程的阻塞和唤醒(进程的阻塞是进程自身的一种主动行为,因此处于运行态的进程(获得CPU),才可能将其转换为阻塞状态)
阻塞:1找到标识号对应的PCB;2如该进程为运行状态,则保护现场,将其状态转为阻塞状态,停止运行;3把该PCB插入到相应事件的等待队列中。
唤醒:在该事件的等待队列中找到对应进程的那个PCB;2将其从等待队列中移出,并置其为就绪状态;3然后把该PCB插入就绪队列,等待调度程序调度。
进程切换:是指处理机从一个进程的运行转到另一个进程上运行。1保存处理机上下文,包括计数器和其他寄存器;2更新PCB;3把进程的PCB移入相应的队列;4选择另一个进程执行;5根性内存管理的数据结构;6回复处理机上下文。
PCB:进程描述信息,进程控制和管理信息,资源分配清单,处理机相关信息。
进程的通信:是指进程之间的信息交换。高级的通信方式有三种:共享存储,消息传递,管道通信。
线程:直接理解是轻量级进程,基本的CPU执行单元,也是程序执行流的最小单元。线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源,但他可以与同属一个进程的其他线程共享进程所拥有的其他全部资源。引入线程后,进程的内涵发生变化,进程只作为除CPU以外的系统资源的分配单位,线程则作为处理机的分配单元。
线程与进程的比较:
调度:传统操作系统中,拥有资源和独立调度的基本单位是进程,在引入线程的操作系统中,线程是独立调度的基本单位。在同一进程中,线程的切换不会引起进程切换。在不同进程中进行线程切换,会引起线程切换。
拥有资源:不论是传统操作系统还是引入线程的操作系统,进程都是拥有资源的基本单位。但线程可以访问其隶属进程的系统资源。
并发性:在引入线程的操作系统中,不仅进程之间可以并发执行,而且同一进程内的多个线程之间也可以并发执行。
系统开销:进程创建,销毁,切换的系统开销远远大于线程。线程之间的同步与通信非常容易实现。
2处理机调度
调度:是对处理机进行分配,就是从就绪队列中,按照一定的算法(公平,高效)选择一个进程并将处理机分配给它运行,以实现进程并发的执行。是操作系统设计的核心问题。
调度的层次:一个作业从开始到完成,往往要经历以下三级调度:作业调度(又称高级调度),中级调度(又称内存调度),进程调度(又称低级调度)。
进程调度方式:是指当某一进程正在处理机上执行时,若够某个更为重要或紧迫的进程需要处理,即优先级更高的进程进入就绪队列时,此时如何分配处理机。分非剥夺式,剥夺式。
非剥夺调度:一旦把CPU分给某个进程,那么该进程就会拥有CPU直到执行完成或转换到等待状态。
剥夺调度:又称抢占式,若有某个更为重要或紧急的进程需要CPU,则立即停止正在执行的进程,将处理机分配给这个更为重要或紧急的进程
3进程同步
临界资源:一次仅允许一个进程使用的资源。在每个进程中,访问临界资源的那段代码称为临界区。对临界资源的访问过程分为4个部分:
进入区:检查是否可以进入临界区,如果可以,则设置正在访问的临界区的标志,阻止其他进程同时进入临界区。
临界区:进程中访问临界资源的那段代码又称为临界段。
退出区:将正在访问的临界区的标志清除。
剩余区:代码中剩余部分。
同步:亦称直接制约关系,是指为完成某种任务而建立的两个或多个进程,这些进程因为需要正在某些位置上协调他们的工作次序二等待,传递信息所产生的的制约关系。
互斥:亦称间接制约关系。当一个进程进入临界区使用临界资源时,另一个进程必须等待,当占用临界资源的进程退出临界区后,另一进程才允许访问临界资源。
原语:是指完成某种功能且不被分割不被中断执行的操作序列。
信号量:用于解决互斥与同步问题,只能被连个标准的原语来访问。整型信号量,记录型信号量,利用信号量实现同步,利用信号量实现进程互斥,利用信号量实现前驱关系。
管程:管程是由一组数据以及定义在这组数据上的对该组数据的操作组成的软件模块,这组操作能初始化并改变管程中的数据和同步进程。
4死锁
死锁:是指多个进程因竞争资源而造成的一种僵局(互相等待),如无外力作用,这些进程都将无法向前推进。
死锁产生的必要条件:互斥条件,不剥夺条件,请求和保持条件(进程已经保持了至少一个资源,又请求一个被其他进程占用的资源,此时请求进程被阻塞,但对自己获得的资源保持不放),循环等待条件(存在一种进程资源的循环等待连,链中每一个进程已获得的资源同时被立案种下一个进程所请求)。
银行家算法:数据结构描述,银行家算法描述,安全性算法
第3章 内存管理
1 内存管理的概念
内存管理:指操作系统对内存的划分和动态分配。
链接3种方式:静态连接,装入时动态链接,运行时动态链接。
装入内存的3种方式:绝对装入,可重定位装入(静态重定位),动态运行时装入(动态重定位)
交换与覆盖:交换技术主要在不同进程之间进行,而覆盖则用于同一程序或进程中。
内存连续分配管理方式:用户进程在主存中连续存放,单一连续分配(内存分为系统区与用户区),固定分区分配,动态分区分配。
内存的非连续分配管理方式:允许一个程序分散的装入到不相邻的内存分区中。根据分区的大小是否固定分为分页存储管理方式和分段管理存储方式。
基本分页存储概念:进程中的块称为页面,内存中的块称为页框,外存中的直接称为块。进程在执行时需要申请主存空间,就是要为每一个页面分配主存中的页框,这就产生了页和页框的一一对应。
逻辑地址A到物理地址E的转换(基于分页管理):设页面大小为L,
1 计算页号P=A/L和页内偏移量W=A%L;
2 比较页号P与页表长度M,若P>=M,则产生越界中断,否则继续;
3 页表项地址b(也叫物理块号)=页表起始地址F+P*页表长度;
4 计算E=b*L+W;
基本分段管理方式:按照用户进程中的自然段划分逻辑空间。每段从0开始编号,段内要求连续,段间不要求连续。
2 虚拟内存管理
局部性原理:时间局部性(正在访问的不久以后可能再次访问),空间局部性(正在访问的存储单元附近的存储单元可能会被马上访问)。
虚拟内存特征:多次性(作业被分成多次调入内存运行),对换性(作业运行工程中换入换出),虚拟性(从逻辑上扩充内存容量)。
虚拟内存的实现方法:请求分页存储管理,请求分段存储管理,请求段页式存储管理。
请求分页管理:页表机制,缺页中断机构,地址变换机构略。
页面置换方法:OPT, FIFO,LRU, CLOCK
第4章 文件管理
所有文件的信息都保存在目录结构中。
操作系统的打开文件表。
进程打开表。
文件的逻辑结构:是从用户观点出发看到的文件的组织形式,分为无结构文件(流式文件),有结构文件(记录式文件)。
文件的物理结构:是从实现观点出发,又称为文件的存储结构,是指文件在外存上个组织方式。
FCB:文件控制块,用来存放控制文件需要的各种信息的数据结构,FCB的有序集合称为文件目录,一个FCB就是一个文件目录项。在文件目录中的每个目录项仅由文件名和指向该文件所对应的结点的指针构成。
文件共享:1 基于索引节点的共享方式;2利用符号链实现文件共享。
文件系统层次结构:用户接口,文件目录系统,存取控制模块,逻辑文件系统与文件缓冲区,物理文件系统,分配模块,设备管理程序模块。
目录实现:1 线性列表;2 哈希表。
文件实现:1 文件分配方式(是指如何为文件分配磁盘,有3种方法:连续分配,链接分配,索引分配);2 文件存储空间管理(文件存储器空间的划分与初始化;文件存储空间管理,即对空闲块的组织管理,有3种方法:空闲表法,空闲链表法,位示图法,成组链接法)
磁盘读写操作时间:寻找时间(磁头移动到固定磁道所用的时间),延迟时间(磁头定位到某一磁道的扇区所用时间),传输时间(从磁盘读出或写入数据所经历的时间)。
磁盘调度算法(决定寻找时间):先来先服务算法FCFS,最短寻找时间优先算法SSTF,扫描算法SCAN,循环扫描算法C-SCAN。
自举程序:计算机启动时需要运行的一个初始化程序。
引导控制块:包括系统从该分区引导操作系统所需要的信息。
分区控制块:包含分区详细信息。
第5章 输入输出管理
IO控制方式:程序直接控制,中断驱动方式,DMA方式(直接存取器存储,整块数据的传送是在DMA控制器下完成的),通道(是指专门负责输入输出的处理机)控制方式。
IO调度:就是确定一个好的顺序来执行这些IO请求。
磁盘高速缓存:不同于通常意义下的介于CPU与内存之间的小容量告诉存储器,而是利用内存中的存取空间来暂存从磁盘中读出的一系列信息。
缓冲区技术:分4种:单缓冲,双缓冲,缓冲池,循环缓冲。
标签:
原文地址:http://blog.csdn.net/u011402017/article/details/51328747