当前位置: 首页 > news >正文

做投资类网站服务器石家庄正定新区建设局网站

做投资类网站服务器,石家庄正定新区建设局网站,贵州省建设厅省外企业官方网站,中建三局集团有限公司官网进程的基本概念 程序顺序执行的特征#xff1a; 1#xff09;顺序性#xff1a;处理机严格按照程序所规定的顺序执行#xff0c;每一步操作必须在下一步操作开始前执行 2#xff09;封闭性#xff1a;程序在封闭的环境下运行#xff0c;程序独占资源#xff0c;资源的状…进程的基本概念 程序顺序执行的特征 1顺序性处理机严格按照程序所规定的顺序执行每一步操作必须在下一步操作开始前执行 2封闭性程序在封闭的环境下运行程序独占资源资源的状态由程序决定程序一旦开始执行外界环境不会影响程序的执行结果。 3可再现性只要程序的初始条件和环境相同程序的执行结果就相同。 程序的并发执行的特征顺序执行会浪费资源 1间断性程序共享系统的资源以及为完成同一个任务共同合作并发执行的程序之间相互制约不是运行完一个在运行另一个 2失去封闭性各程序共享系统资源资源的状态由各程序所决定。 3不可再现性由于失去了封闭性即初始的环境状态和条件相同程序的执行结果却可能不同该特征超级垃圾必须想办法避免。 进程的概念 具有独立功能的程序在某一个数据集合上的执行过程它是系统进行资源分配和调度的一个独立单位。 进程的特征 结构特征 PCB进程控制块与进程共存亡用于记录进程的基本情况和活动过程一般常驻内存程序段一般为需要的时候动态调入内存描述要完成的功能数据段一般为需要的时候动态调入内存操作的对象即工作区 动态性进程最基本的特征进程不是静态的而是动态的它由创建而产生由调度这里主要指进程调度而不是作业调度而执行由撤销而消亡 并发性指多个进程实体存于内存中且能在同一时间段内执行这里同操作系统的并发性 独立性进程实体是一个能独立运行独立获得资源和独立接收调度的基本单位 异步性同操作系统的异步性 进程的三种基本状态 就绪状态进程已经分配到除了CPU之外的所有资源只要获得CPU便可以立刻执行处于就绪状态的进程维持一个就绪队列。执行状态已经获得CPU正在执行的进程。单处理机系统中同一时刻只能有一个进程处于执行状态多处理机系统中可以同时有多个进程处于执行态阻塞状态/等待状态在执行的过程中由于发生某些事件I/O请求申请缓存等暂时无法执行的进程是由于进程本身引起的阻塞。处于阻塞状态的进程可以维持一个阻塞队列。进程是自己阻塞自己的但是阻塞的进程需要其他进程将其唤醒 三种基本状态的转换 ​ 就绪—执行进程调度获得CPU资源 ​ 执行—就绪在分时操作系统中时间片花完 ​ 执行—阻塞I/O请求申请缓存等自己被迫进入阻塞状态 ​ 阻塞—就绪I/O完成造成阻塞的原因得到解决又变成只差CPU的状态 进程的创建状态和终止状态 创建状态进程成为就绪状态之前的状态 终止状态当一个进程到达了自然结束点或者遇到无法客服的困难或者被操作系统所终结等的时候就进入了终止状态。 挂起操作及引入的原因 1进程被挂起之后处于静止状态。 2引入的原因 终端用户的需要当终端用户想要暂停自己程序的运行的时候父进程请求当父进程想要挂起某个子进程的时候负荷调节的需要当实时系统中的工作负荷较重系统可以将某些不重要的进程挂起保证程序的正常运行。操作系统的需要操作系统有事需要将某些进程挂起已检查运行过程中资源的使用情况3引入挂起操作后进程的状态转换   1阻塞态可以通过释放变为就绪态。活动阻塞释放变为活动就绪静止阻塞释放变为静止就绪。 2活动态和静止态可以进行相互转换活动到静止称为挂起静止到活动可以称为激活。活动态和静止态最本质的区别为活动态在内存中静止态暂时调出内存进入外存 3由执行态可以直接变为静止就绪态即时间片用完直接调离内存 4静止态外存必须通过激活变为非静止态调入内存才能够参与进程的三台转换。 4进程挂起之后不是原封不动的将进程移出内存而是会先将一些必要的信息写入外存。再释放PCB 进程管理中的数据结构 操作系统中用于管理控制的数据结构内存表设备表文件表进程表程序控制快PCB 进程控制块PCB的作用 1作为独立运行基本单位的标志 2能实现间断性的运行方式 3提供进程管理所需要的全部信息 4提供进程调度所需要的全部信息 5实现与其他进程的同步和通信 进程控制块中的信息 进程标识符唯一表示一个进程有两种 1外部标识符方便用户对进程的访问通常有数字和字母组成 2内部标识符方便系统对进程的访问每一个进程有一个唯一的数字标识符。 处理机状态主要指的是处理机中寄存器的状态 1通用寄存器又称为用户寄存器用户的程序可以访问用于暂存信息一般为8~32个 2指令计数器存放了将要访问的下一条指令的地址。 3程序状态字PSW​含有状态信息条件码执行方式指在系统还是用户状态下执行中断屏蔽标志允不允许在执行的过程中被打断 4用户栈指针每个用户进程都有系统栈用于存放过程和系统调用参数及调用地址。 进程调度信息 1进程状态指明了进程的当前状态 2进程优先级即一个整数用于描述进程使用CPU的优先级数字越大优先级越高 3其他信息与采用的进程调度算法有关 4事件指进程由执行状态变为阻塞状态所等待发生的事件。 进程控制信息 1程序和数据的地址由于程序段和数据段并不是常驻内存的而是使用的时候才调入因此需要保存其地址 2进程同步和通信机制 3资源清单一张清单列出了该进程在运行期间所需的全部资源除了CPU资源另一张列出了分配到该进程的资源的清单。 4链接指针给出了本进程PCB所在队列中的下一个进程的PCB的首地址。 进程控制块的组织方式 线性方式不重要 链接方式类似静态链表把具有同一状态的PCB用其中的链接字链接成一个队列     注进程资源的分配并不是在该进程执行之前将该进程所需的资源全部分配给他而是在其执行的过程中进行动态的分配。 进程与程序的区别与关系 进程与程序的区别 进程是一个动态的概念有 “ 生命 ” 程序是静态的概念。进程可以具有并行性在多处理器的系统中但是程序没有进程是竞争系统资源的基本单位进程与程序的关系 一个程序对应多个进程一个进程又可以为多个程序服务。 进程控制 1.基本知识 进程控制是进程管理中最基本的功能主要包括进程的创建进程的终止和运行中的进程的状态转换等功能。进程控制一般是由OS的内核中的原语来实现的。 2.进程的创建 进程的层次结构 进程图 引起进程创建的事件 1用户登录在分时系统中用户成功登录系统将为该用户分配新的进程 2作业调度在多道批处理系统中作业调度程序将某些作业调度内存并且为他们创建进程 3提供服务运行中的用户程序提出某种请求 4应用请求由用户进程自己创建帮助自己完成特定的任务 进程的创建过程OS调用进程创建原语Create创建一个新进程 1申请空白PCB新进程获得一个唯一的数字标识符对于操作系统 2为新进程分配器运行所需的资源包括物理资源和逻辑资源 3初始化进程控制块PCB 1初始化标识符信息系统分配的标识符信息装入PCB 2初始化处理机状态信息主要为一些寄存器 3初始化处理机控制信息一般初始化为就绪状态 4如果进程就绪队列允许将进程插入就绪队列 3.进程的终止 引起进程终止的事件 1正常结束 2异常结束1越界错误访问自己范围外的2保护错误访问自己无权利访问的3非法指令试图运行不存在的指令4特权指令5运行超时6等待超时7算术运算错8I/O故障 3外界的干预1操作员或者操作系统干预2父进程的请求父进程的权利大于子进程3父进程的终止当父进程终止时其所有子进程也应当终止。 进程终止的过程OS调用进程终止原语 1根据要终止的进程的标识符搜索出该进程的PCB从中获得该进程所处的状态 2如果该进程正处于执行状态立刻终止该进程并且置调度标志为真表示在该进程结束后应该进行重新调度即不要让CPU空闲 3若该进程有子孙进程让其所有子孙进程都终止。 4被终止进程所拥有的所有资源归还给父进程或者操作系统 5将终止进程的PCB从所在队列中移除等待其他程序来收集信息。 4.进程的阻塞与唤醒 引起进程阻塞和唤醒的事件阻塞和唤醒是相对应的 1向系统请求共享资源失败 2等待某种操作的完成 3新数据尚未到达 4等待新任务的到达 进程阻塞的过程进程通过调用阻塞原语block将自己阻塞 1进入block后立即停止执行 2保存现场 3将进程控制块中的现行状态改为阻塞并将PCB插入阻塞队列 4转调度程序进行重新调度 进程唤醒的过程当阻塞的进程所期待的事件发生时有关进程不是本身调用唤醒原语wakeup将等待该事件的进程唤醒。唤醒之后进入就绪队列。 1将被阻塞的进程从等待该事件的阻塞队列中移除 2将PCB的现行状态由阻塞改为就绪 3然后再将该PCB插入就绪队列中 4转进程调度或者返回 block原语和wakeup原语是一对作用刚好相反的原语必须成对使用。 5.进程的挂起与激活 进程的挂起过程当出现了引起进程挂起的事件之后OS利用挂起原语将指定的进程挂起即调出内存 首先检查进程的状态不同的状态采取不同的处理方式若该进程正处于活动就绪状态将其改为静止就绪态若该进程处于活动阻塞状态将该进程改为静止阻塞状态若该进程处于执行状态将其改为静止就绪状态调度程序重新进行调度。 进程的激活过程 1首先将进程从外存调入内存 2检查进程所处的状态如果进程处于静止就绪将其改为活动就绪如果处于静止阻塞将其改为活动阻塞 3检查进程的优先级如果优先级高可以进行抢占当前运行进程的资源 4.进程同步 1.进程同步的基本概念 进程同步的目的1按照一定的规则共享系统资源2对多个相关进程在执行次序上进行协调是程序具有可再现性。 两种形式的制约关系 1间接相互制约关系多个进程在并发执行时由于共享系统的临界资源而相互制约如磁带机打印机表格等。互斥 2直接相互制约关系多个进程为完成同一任务而相互合作同步 **临界资源**一次仅允许一个进程使用的共享资源。例如打印机磁带机表格等。 互斥和同步的概念 1互斥并发的多个进程由于竞争同一资源而产生的相互排斥的关系 2同步进程间共同完成一项任务时直接发生相互作用的关系 临界区每个进程中访问临界资源的那段代码 /*一个访问临界资源的循环进程*/ while(true) {进入区//对欲访问的临界资源进行检查查看其是否正被访问如果此刻临界资源未被访问进程便可以进入临界区对临界资源进行访问并设置它正被访问的标志如果此刻临界资源正被访问则不能进入临界区。即后边的wait操作临界区//执行临界资源的那段代码退出区//将临界区正被访问的标志恢复为未被访问的标志signal操作剩余区//除上述三个区之外的代码叫做剩余区 } 同步机制应遵循的原则 1空闲让进 2忙则等待 3有限等待不能一直等 4让权等待进程不能进入临界区就应当释放处理机让权指让出处理机 2.硬件同步机制 3.信号量机制Dijkstra提出 信号量 是一种数据结构值与相应资源的使用情况有关仅与PV操作有关PV代表两种原子操作P为等候原语waitS,V为释放原语signalS。wait操作即在申请资源signal操作是释放资源wait操作其实就是进入临界区之前的进入区signal操作是从临界区出来之后的退出区原子操作的特点操作一开始执行半中间不可以打断原语即为原子操作。 整型信号量 概念Dijkstra把整型信号量定义为一个用于表示资源数目的整型量S。/*等候原语*/ wait(S){while(S 0); //当S0的时候便一直处于等待状态直到获得相应的资源不符合让权等待的原则 S--; //获得资源后资源的数目减一S表示该类资源可用的数目 }/*释放原语*/ signal(S){S; //释放资源后资源的数目加一 } 优缺点 优点实现简单 缺点违背了同步机制中的让权等待原则浪费资源只要S0就会等待 **记录型信号量**当前用的最多的 特点采用了记录型的数据结构/*记录型数据结构*/ typedef struct{int value; //0的时候表示系统中可用资源的数量0的时候其绝对值表示因为该资源而阻塞的进程的数目struct process_control_block *list; //维持阻塞队列的指针 }semaphore;/*等待原语*/ wait(semaphopre *S){S-value--; //一个进程过来首先将S-value--if(S-value 0){ //0表示资源已经用光将该进程加入阻塞队列block(S-list);} }/*释放原语*/ signal(semaphore *S){S-value; //释放资源S-valueif(S-value 0){ //S-value之后还0直接唤醒一个阻塞的进程唤醒的进程拥有了该资源的使用权不需要再次执行P操作然后进入就绪队列。如果0直接将资源释放即可wakeup(S-list);} } wait操作每次都相当于进程请求一个单位的该类资源 signal操作每次都相当于释放一个单位资源 当S-value的初值为1的时候表示只允许一个进程访问临界资源信号量转化为互斥型信号量 优点通过维持阻塞队列的指针使得满足了让权等待的原则弥补了整型信号量的缺点 **缺点**只适用于对单一资源的管理如果一个进程需要请求多类资源的时候很容易产生死锁。 AND型信号量解决记录型信号量会发生的死锁的问题 当一个进程需要两个或者更多的共享资源来完成一个目标的时候多个进程之间可能会发生阻塞刚开始前半部分资源占有了但是后半部分资源无法获得自己再阻塞自己即发生了死锁AND的解决思想将一个进程运行过程中所需要的全部资源一次性都分给他待进程使用完之后在一起进行释放。即一起申请一起释放/*等候原语全分配*/ Swait(S1, S2, …, Sn){While(TRUE){//多类资源同时满足的时候才进行分配先判断再分配。if (S1 1 and … and Sn1 ){for( i1 ;in; i) Si - -;break;}else{Place the process in the waiting queue associated with the first Si found with Si 1,and set the progress count of this process to the beginning of Swait operation 将即将阻塞的进程挂到第一个不能满足他的资源的阻塞队列然后设置该进程的起始地址为Swait操作的开始}} }/*释放原语全释放*/ Ssignal(S1, S2, …, Sn){while(TRUE){ for (i1; in; i) {Si ;Remove all the process waiting in the queue associated with Si into the ready queue将因为该资源得不到满足而阻塞的所有进程都从阻塞队列释放进入就绪队列重新进行排队}} } 注意 1在分配资源的时候首先判断是否所有资源均全部满足相应的条件满足才进行分配。 2释放的时候是将因为该资源得不到满足而阻塞的所有进程都从阻塞队列释放进入就绪队列重新进行排队因为OS需要根据调度算法重新选取新的进程占据CPU 信号量集 Swait(S1, t1, d1; …; Sn, tn, dn)if (S1 t1 and … and Sn tn) thenfor i:1 to n doSi: Si - di ;endforelsePlace the executing process in the waiting queue of the first Si with Si ti and set its program counter to the beginning of the Swait Operationendif 注意 1继承了AND型信号量的思想先判断是否所有所需资源均满足条件。满足才进行分配。 2引入了下限值的概念。Si表示可用的资源的数量ti表示想要分配资源成功至少需要的该资源的数目ti下限值包括两部分一部分是系统执行该进程所需另一部分是该进程所请求的因此一般大于didi表示该进程所请求的该类资源的数目。 4.信号量的应用 1、利用信号量实现进程互斥 semaphore mutex 1;beginparbeginprocess 1: beginrepeatwait(mutex);critical sectionsignal(mutex);remainder sectionuntil false;endprocess 2: beginrepeatwait(mutex);critical sectionsignal(mutex);remainder sectionuntil false; endparend end 注意 1利用信号量实现进程互斥地访问某种资源。首先应将mutex设为1 2wait操作和signal操作必须成对地出现如果缺少wait操作可能会造成系统的混乱如果缺少signal操作那么该资源永远不会得到释放因该资源而被阻塞的进程也将永远不会被唤醒。 2、利用信号量实现前驱关系图进程同步 如下图 semaphore a, b, c, d, e, f, g 0, 0, 0, 0, 0, 0, 0;beginparbeginbegin S1; signal(a); signal(b); end;begin wait(a); S2; signal(c); signal(d); end;begin wait(b); S3; signal(e); end;begin wait(c); S4; signal(f); end;begin wait(d); S5; signal(g); end;begin wait(e); wait(f); wait(g); S6; end;parendend 注意 1信号量的初值必须被设置为0必须等某个进程之前的进程完之后释放资源后边的进程才能够执行。
http://www.pierceye.com/news/669631/

相关文章:

  • 舞钢网站建设企业做网站需要什么软件
  • 网站开发上市公司专业的网站建设价格低
  • 备案网站有哪些资料公司名字大全四个字
  • 网站推广预期达到的目标建湖人才网手机版
  • 营销网站设计公司排名wordpress图片缓冲
  • 山西建设官方网站第三方网站流量统计
  • 企业网站用wordpress龙岗网站建设网站排名优化
  • 成都建设网站哪家好事件营销的特点
  • 如何利用模板做网站视频wordpress手机版边侧导航
  • 网站制作在哪里找wordpress 设置登陆界面
  • 济南seo网站建设上海seo网站优化_搜索引擎排名_优化型企业网站建设_锦鱼网络
  • 深圳网站备影楼网站建设
  • asp网站开门桂林市区
  • dw个人网站主页怎么做网站前端用什么语言
  • 网站建设是平面设计吗网站如何做中英文双语言
  • 网站关键词先后论坛网站在线生成
  • 无为建设局网站安装wordpress xampp
  • 广药网站建设试卷wordpress人力资源模板下载
  • 电商网站规划的开发背景明年做那个网站能致富
  • 网站建设及托管合同wordpress页面批量生成二维码
  • 益阳市住房和建设局 网站哪些网站可做矿机期货
  • 网站开发哪里有html5网站赏析
  • 襄阳网站建设八零后做的网站怎么上传到网上运行
  • 学网站开发培训学校专业集团门户网站建设费用
  • 加快政务公开网站建设知名的摄影网站有哪些
  • 任县网站建设网络公司桐城网站开发
  • linux服务器做网站软装设计图效果图
  • 个人网站可以做商城吗被官方认可赚钱软件
  • 自己可以做网站服务器室内设计整套方案图
  • 网站建设商城网站微信广告代理