1计算机操作系统复习要点2操作系统的基本特征?并发:同一段时间内多个程序执行(注意区别并发和并行,前者是同一时刻的多个事件,后者是统一时间段内的多个事件)?共享:系统中的资源可以被内存中多个并发执行的进线程共同使用?虚拟:通过时分复用(如分时系统)以及空分复用(如虚拟内存)技术实现把一个物理实体虚拟为多个?异步:系统中的进程是以走走停停的方式执行的,且以一种不可预知的速度推进操作系统的主要功能?处理机管理:处理机分配都是以进程为单位,所以处理机管理也被看做是进程管理。包括进程控制,进程同步,进程通信和进程调度?存储器管理(或者内存管理):内存分配,内存保护,地址映射,内存扩充?设备管理:管理所有外围设备,包括完成用户的IO请求;为用户进程分配IO设备;提高IO设备利用率;提高IO速度;方便IO的使用?文件管理:管理用户文件和系统文件,方便使用同时保证安全性。包括:磁盘存储空间管理,目录管理,文件读写管理以及文件共享和保护提供用户接口:程序接口(如API)和用户接口(如GUI)进程和线程的区别进程:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位(具有动态、并发、独立、异步的特性,以及就绪、执行、阻塞3种状态;也有5状态或者7状态;资源拥有单位的属性);引入进程是为了使多个程序可以并发的执行,以提高系统的资源利用率和吞吐量。线程:是比进程更小的可独立运行的基本单位,可以看做是轻量级的进程(具有轻型实体,独立调度分派单位,可并发执行,共享进程资源等属性);引入目的是为了减少程序在并发执行过程中的开销,使OS的并发效率更高。两者的对比:1.调度方面:在引入线程的OS中,线程是独立的调度和分派单位,而进程作为资源的拥有单位(相当于把未引入线程的传统OS中的进程的两个属性分开了)。由于线程不拥有资源,因此可以显著的提高并发度以及减少切换开销。2.并发性:引入了线程的OS中,进程间可以并发,而且一个进程内部的多个线程之间也是可以并发的,这就使OS具有更好的并发性,有效的提高了系统资源利用率和吞吐量。3.拥有资源:无论OS是否支持线程,进程都是基本的资源拥有单位,线程只拥有很少的基本的资源,但是线程可以访问所隶属的进程的资源(进程的代码段,数据段和所拥有的系统资源如fd)4.系统开销:创建或者撤销进程的时候,系统要为之创建或回收PCB,系统资源等,切换时也需要保存和恢复CPU环境。而线程的切换只需要保存和恢复少量的寄存器,不涉及存储器管理方面的工作,所以开销较小。此外,统一进程中的多个线程由于共享地址空间,所以通信同步等都比较方便。进程的几种状态主要是3中基本状态,5状态和7状态可以直接看书1.就绪状态:进程获得了除了CPU之外的所有的必要资源,只要获得CPU就可以立即执行,此时的进程处于就绪态2.执行状态:进程已经获得CPU,正在运行,在多处理其系统中,会有多个进程同时处于运行状态3.阻塞状态:处于执行状态的进程由于发生某些事件而暂时无法继续执行,放弃处理机而处于暂停状态,此时进程就处于阻塞(执行受到阻塞)状态就绪->执行:调度进程为其分配了处理机执行->就绪:时间片用完执行->阻塞:申请临界资源而未被满足,如IO请求或者申请缓存阻塞->就绪:请求得到满足,如IO完成进程同步多进程虽然提高了系统资源利用率和吞吐量,但是由于进程的异步性可能造成系统的混乱。进程同步的任务就是对多个相关进程在执行顺序上进行协调,使并发执行的多个进程之间可以有效的共享资源和相互合作,保证程序执行的可再现性同步机制需要遵循的原则:1.空闲让进:当没有进程处于临界区的时候,应该许可其他进程进入临界区的申请2.忙则等待:当前如果有进程处于临界区,如果有其他进程申请进入,则必须等待,保证对临界区的互斥访问3.有限等待:对要求访问临界资源的进程,需要在有限时间呃逆进入临界区,防止出现死等4.让权等待:当进程无法进入临界区的时候,需要释放处理机,边陷入忙等经典的进程同步问题:生产者-消费者问题;哲学家进餐问题;读者-写者问题进程间通信进程通信就是指进程间的信息交换,交换信息可以使一个状态,也可以是很...