操作系统知识点介绍

上传人:奇异 文档编号:125439864 上传时间:2022-07-26 格式:DOCX 页数:18 大小:35.71KB
返回 下载 相关 举报
操作系统知识点介绍_第1页
第1页 / 共18页
操作系统知识点介绍_第2页
第2页 / 共18页
操作系统知识点介绍_第3页
第3页 / 共18页
亲,该文档总共18页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
操作系统是一组控制和管理计算机硬件和软件资源, 合理地对各类作业进行调度,以及方便用户使用的程 序的集合。虚拟机:在裸机的基础上,每增加一层新的操作系统的软件,就变成 了功能更为强大的虚拟机或虚机器。操作系统的目标:1.方便性2.有效性3.可扩充性4.开放性操作系统的作用:OS乍为用户与计算机硬件系统之间的接口 ; OS乍 为计算机系统资源的管理者;0弦现了对计算机资源的抽象(作扩 充机器)。操作系统的特征:并发性;共享性;虚拟性;异步性推动操作系统发展的主要动力:不断提高计算机资源利用率;方便用户;器件的不断更新换代;计算机体系结构的不断发展 。人工操作方式的特点:用户独占全机; CPU?待人工操作;独占性;串行性。缺点:计算机的有效机时严重浪费;效率低脱机I/O方式的主要优点:减少了 CPU勺空闲时间;提高I/O速度。单道批处理系统的特征:自动性;顺序性;单道性多道批处理系统原理:用户所提交的作业都先存放在外存上并排成一 个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从 后备队列中选择若干个作业调入内存,使它们共享CPUffi系统中的各 种资源。多道批处理系统的优缺点资源利用率高;系统吞吐量大;可提高内存和I/O设备利用率;平均周转时间长;无交互能力多道批处理系统需要解决的问题(1)处理机管理问题(2)内存管理 问题(3) I/O设备管理问题4)文件管理问题(5)作业管理问题 分时系统:在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中 的资源。时间片:将CPU1勺时间划分成若干个片段,称为时间片,操作系统以 时间片为单位,轮流为每个终端用户服务实时系统与分时系统特征的比较:多路性;独立性;及时性;交互性; 可靠性操作系统的特征:并发性;共享性;虚拟性;异步性操作系统的主要功能:处理机管理;存储器管理;设备管理;文件管理;作业管理对处理机管理,可归结为对进程的管理:进程控制(创建,撤消,状 态转换);进程同步(互斥,同步);进程通信;进程调度(作业调度, 进程调度)。存储器管理功能:内存分配(最基本);内存保护;地址映射;内存 扩充设备管理功能:设备分配;设备处理(相当于启动);缓冲管理;虚 拟设备文件管理功能:文件存储空间管理;目录管理;文件读写管理;文件 保护。用户接口:命令接口;程序接口;图形接口传统的操作系统结构:无结构 OG模块化OS吉构;分层式OS结构 模块化操作系统结构:操作系统是由按其功能划分为若干个具有一定独立性和大小的模块。每个模块具有某个方面的管理功能, 规定好模 块之间的接口。微内核的基本功能:进程管理-存储器管理-进程通信管理-I/O设备管理进程的特征:动态性(最基本);并发性;异步性;独立性;结构特征(程序段,数据段,进程控制块 PCB进程的基本属性:可拥有资源的独立单位;可独立调度和分配的基本 单位。进程控制块的基本组成:进程标识符;处理机的状态;进程调度所需 信息;进程控制信息。进程控制一般是由操作系统的内核中的原语来实现临界资源:如打印机、磁带机等一段时间内只允许一个进程进行使用的资源。信号量:整型,记录型,and型,信号量集。实现进程互斥,前趋关 系,进程同步。semaphore同步P操作在互斥P操作前Swait(S, d, d) 表示每次申请d个资源,当少于d个时,便不分配Swait(S, 1, 1) 表示互斥信号量Swait(S, 1,0)可作为一个可控开关(S1时,允许多个进程进入临界区;S=0时,禁止任何进程进入临界区)同步机制应遵循的规则:空闲让进;忙则等待;有限等待;让权等待生产者进程i:Repeat生产数据nextp ;wait(empty);wait(mutex);bufferin:=nextp;in=(in+1)%n ;signal(full);until false;消费者进程i:Repeatwait(full);wait(mutex);Nextc=buffer(out);out=(out+1)%n ;signal(empty);until false;哲学家i :Repeatwait(SM);wait(chopsticki);wait(chopstick(i+1)%5);就餐;signal(chopsticki);signal(chopstick(i+1)%5);signal(sm);继续思考;until false;Chopstick0.4=1;sm=4读者进程i :REPAETwait(rmutex);if readcout=0 wait(wmutex);Readcount+;signal(rmutex);访问数据文件;wait(rmutex);Readcount-;If readcout=0 wait(wmutex);signal(rmutex);until false;写者进程i:REPAETwait(wmutex);修改文件;signal(wmutex);until false;司机与售票员的合作问题VAR S1 = 1;S2=0;司机:Wait(s1);启动车辆;正常行车;到站停车Signal(s2);售票员:Wait(s2);开车门;上下乘客;关车门Signal(sl);售票 读者进程i:Var s=100;mutex=1;Wait(s);Wait(mutex);查登记表,并置某座位为占用态Signal(mutex);在座位上坐下阅读;Wait(mutex);查登记表,并置某座为空闲状态Signal(mutex);Signal(s);接收原语Procedure receive(b)BeginJ=internal name;Wait(j.sm);Wait(j.mutex);Remove(j.mq,i);Signal(j.mutex);b.sender=i.sizer;b.size=i.size;b.text=i.size;End;进程通信的类型:共享存储器系统;消息传递系统;管道通信管道通信:用于连接一个读进程和一个写进程以实现他们通信的一个共享文件,又名Pipe文件,本身提供了互斥和同步进程的能力。next:指向下一个消息缓冲区的指针线程的属性:轻型实体;独立调度和分派的基本单位;可并发执行;共享进程资源作业的状态“进入”或“提交”“后备” “运行”“完成”决定作业调度的两个因素:多道程序度;调度算法周转时间:完成时间-到达时间带权周转时间:周转时间/执行时间先来先服务(FCFS)短作业(进程)优先SJ(P)F高响应比优先调度算法 HRRN响应比R = (1+T-到达时间)/服务时间时间片轮转法RR准则:面向用户的准则(周转时间短;反应时间快;截止时间的保证;优先权准则);面向系统的准则(系统吞吐量高;处理机利用率好;各类资源的平衡利用)程序的装入:绝对装入方式;可重定位装入方式;动态运行时装入方式。程序的链接:1、静态链接:程序运行前先链接,再装入内存:1)对 相对地址的改变2)变换外部调用符号2、装入时动态链接:装入内存时,边装入边链接。3、运行时动态链接:某些模块的链接推迟到执行时才执行,用不到 的模块可以不调入内存。产生死锁的原因竞争资源:可剥夺和非剥夺性资源 /临时性资源;进 程间推进顺序非法。死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,若无外力作用,它们都将无法再向前推进。处理死锁的基本方法:预防死锁;避免死锁;检测死锁;解除死锁 产生死锁的必要条件互斥条件:资源本身的特性;请求和保持条件: 在请求不到新资源的时候进程不释放原来的资源 ;不剥夺条件:进 程获得的资源,为使用完前不可被剥夺 ;环路等待条件:进程对资 源的请求形成一个请求环形链预防死锁1、打破请求和保持条件:要求进程一次性申请到全部资源后再运行, 不会产生死锁,但效率降低2、打破不剥夺条件:要求进程提出新资源要求不被满足后,必须释放原来的保持的资源,损失代价严重;3、打破环路等待条件:对资源进行线性排序编号,要求每个进程必 须从低号到高号申请资源,而不考虑进程实际申请资源的先后顺序。死锁的解除剥夺资源;撤消进程拼接或紧凑:通过移动内存中作业的位置,以把原来多个分散的小分区拼接成一个大分区的方法。虚拟存储器的特征:多次性;对换性;虚拟性银行家算法:主要用来判断在当前状态下如果有进程提出资源请求request口 ,看是否能满足该请求:a:判断请求的合法性,是否满足小于NEED巨阵中的向量;b:请求的可满足性判断,是否小于 available口 向量;c:试探分配,修改相应的参数available小allocationneed;d:进行安全性检查,若分配后安全,则进行分配,若判断从此进入了不安全状态,则恢复原来数据,对进程请求不予满足。安全性算法检查:(1)设定两个向量 work=available;finishi=true(2)从进程集合中找到一个能满足下述条件的进程:finishi=false;needijworkj;若找到,执行步骤3,否则执行步骤4(3)当进程pi获得资源后,可顺利执行,直到执行,并释放出分配给它的资源workj= workj+allocationij; finishi=true;Go to step2(4)如果所有进程finishi=true都满足,则系统处于安全状态,否则处于不安全状态。Work need、allocation work+allocation 虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容 量加以扩充的一种存储器系统。其逻辑容量由内存容量和外存容量之 和所决定的。动态分区分配算法:首次适应算法:按地址递增的顺序;循环首次适应算法:从上次找到的空闲分区的下一个开始;最佳适应算法:按大小递增的顺序;最坏适应算法:按地址递减的顺序地址为A,页面大小L页号P,页内地址d:p=int(A/L)d=AmodL分段系统的基本原理:分段:将作业的逻辑地址空间分为若干个段,每个段内定义一组逻辑信息。作业的地址空间分为段号(名)+段内地址两部分。段表:将不同的段分配到内存不连续的存储空间,当然,具体每个段,因为长度可能不同,但是需连续的存储空间,因此,段表内需确定段 号、段的长度、段在内存的起始地址。分页与分段区别:(1)页是信息的物理单位,为了提高内存利用率引入的;段是信息的逻辑单位,是考虑用户编程需要分成的段。(2)页的大小固定,段的大小不确定(3)页的逻辑地址是1维的,段的逻辑地址是2维的。段页式存储管理方式基本原理:首先用户程序分成若干个段,每个段内再实施分页,为每 个段赋予一个段名。在段页式系统中,其地址结构由段号、段内页号及页内地址三部分组成。页号、物理块号、状态位p、访问字段A、修改位M外存地址固定分配局部置换 卜变分配全局置换可变分配局部置换页表机制:页号和物理块号,状态位 P (0表示在外存,没有调入,1 表示在内存);访问字段A (一段时间内访问次数或是否被访问过, 供页面置换出去时参考);修改位M (一段时间内是否被修改过,置 换时需要回写到外存对换区);外存地址(将来调入内存时使用); 物理块的分配策略(1)(2)(3)物理块分配算法(4) 平均分配算法(2)按比例分配算法(3)考虑优先权的分配算法最佳置换算法(Optimal )先进先出置换算法(FIFO)最近最久未使用(LRUClock置换算法设备控制器是在CPU口 I/O设备之间的接口,一个设备控制器控制几 个设备。设备控制器的功能接收和识别命令;数据交换;标识和报告设备的状态;地址识别;数据缓冲;差错控制通道是通过执行通道程序,并与设备控制器共同实现对I/O设备的控 制的。通道程序是由一系列通道指令所构成的。通道程序每条指令:(1)操作码(2)内存地址(3)计数(4)通道程序结束位(5)记录结束标志。设备分配中的数据结构1、设备控制表DCT2、控制器控制表 COCT通道控制表 CHCT3、系统设备表联机命令的类型系统访问类(login );磁盘操作类format、diskcopy ;文件操作类type;目录操作类 mkdir;其它命令spooling 系统组成(1)输入井和输出井(2)输入缓冲区和输出缓冲区(3)输入进程spi和输出进程spoSPOOLIN疏统的特点提高了 I/O的速度;将独占设备改造为共享设备;实现了虚拟设备功 能设备处理程序通常又称为设备驱动程序。是I/O进程与设备控制器之间的通信程序,以进程的形式存在,故称为设备驱动进程。连续分配的优缺点:(1)顺序访问容易(2)顺序访问速度快(3)要求有连续的存储空 间(4)必须事先知道文件的长度。显示链接是把链接文件个物理块的指针显式的存放在内存的一张链接表中,整个磁盘仅设置一张混合索引分配方式:UNIX系统V的索引结点中:直接寻址 iaddr(0)-iaddr(9);一次间接寻址iaddr(10);多次间接寻址iaddr(11) iaddr(12)对目录管理的要求如下:(1)实现“按名存取”(2)提高对目录的检索速度(3)文件共享(4)允许文件重名文件与文件控制块一一对应,人们把文件控制块的有序集合称为文件 目录多级目录结构(1)提高了检索目录的速度(2)在不同的用户目录中,可以使用相 同的文件名(3)不同用户还可以使用不同的文件名来访问同一个共享文件。输入下列命令:cp filel file2 时,将文件filel 拷贝成file2#include#include #include #includeint main(int argc,char *argv)char buf88;int j,n,m;int fd,fd1;fd=open(argv1,O_RDWR);if(fd0) printf(open %s failed,argv1);else j=creat(argv2,S_IWRITE | S_IREAD);if(j0) printf(creat %s failed,argv2);else n=read(fd,buf,sizeof(buf);if(n0) printf(read %s failed,argv1);else close(fd);fd1=open(argv2,O_RDWR);if(fd10) printf(open %s failed,argv2);elsem=write(fd1,buf,n);if(m0) printf(write %s failed,argv2);elseclose (fd1);write(fd1,i am系统调用的类型利用无名管道(用chlid1n”,13);(1)进程控制类pipe()创建)实现进lockf(fd1,0,0);(2)文件操纵类程间的通信。父进程(3)进程通信类创建两个子进程,两else个子进程分别向管if(k=fork()=0对对象操纵和管理道中写一条消息:)的软件集合是文件i a amlockf(fd1,1,0)管理系统的核心部childl. ”和;分。“I am child2. ”write(fd1,I amHash函数,可将记录chlid2n”,13);键值转换为相应记#include录的地址。#includelockf(fd0,1,0)(1)顺序扫描位示int main();图,找出值为0的二int j,k,m;m=read(fd0,line进制位进行分配。int fd2;,26);(2)将所找到的每char line40;write(STDOUT_FILE一个位,转换为相应pipe(fd);NO,line,m);的盘块号if(j=fork()=0)b=n(i-1)+j(n 为每lockf(fd1,1,0)行位数)(3)修改;位示图,令mapi,j=1盘块的回收:1、将回收的盘块号转换为行号和列号i=(b-1)/n+1j=(b-1)%n+12、修改位示图。令mapi,j=0系统调用在本质上是应用程序请求操作系统内核完成某功能时的一种过程 调用,属于特殊的过 程调用系统调用的类型(1)进程控制类(2)文件操纵类(3)进程通信类父进程创建一个子 进程,父进程等待子 进程,子进程执行完后自我终止,并唤醒 父进程,父、子进程 执行时打印有关信 息。#include#includeint main()int childpid = 0;int retpid = 0;intstatus=0;childpid=fork();if(childpid 0) print f(failn); elseif(childpid = 0)printf(sonn); else printf(father);retpid = waitpid(childpid, &status,0);if(retpid = childpid)printf(sonfinished, ready to startfathern); return 0;父进程创建一个子 进程,在子进程运行 时显示当前目录下 的所有文件和目录, 父进程输出子进程 和自己进程的ID。在 程序运行时控制进程的顺序;子进程先 执行,父进程后执printf(child2spidis %d,getpid();elseprintf(parent spidis %d,getpid();行。#include main ()int i;i=fork()if(i=-1)printf(createchild process failed);else if (i=0) sleep(3);execl(/bin/ls, ls,0,0);exit(0);else wait(0);printf(parent process is %d,child process is %d n,getpid(),i);实现父进程创建子 进程,每个进程都在 屏幕上显示自己的ID号。观察记录ID 显示的顺序并分析 原因。#include#includemain() int i,j;if (i=fork()=0)printf(child1spidis %d,getpid();else if (j=fork()=0)
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!