




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 2.1 程序、进程与并发2.1.1 并发概述 并发和并行是不同的概念。并行是指在微观上看都可以看作是同时发生的两件或多件事。而并发是指在宏观上可近似看作同时发生的两件或多件事。 并行可看作是一种特殊的并发。严格意义上的并行处理只有在多处理器的情况下才有可能发生。而并发是现代处理系统中常有的事。 2.1.2程序的顺序执行和并发执行(介绍程序执行的过程)顺序执行:一个程序执行完以后才去执行下一个。优点:便于控制。缺点:浪费资源,不分轻重缓急。并发执行:两个或多个程序交替执行。优点:资源利用率高,更合理。缺点:控制复杂,可能产生死锁。进程及其运行环境进程的定义:可并发执行的程序,在一个数据集合上运
2、行的过程。进程与程序的关系:一个程序可以对应一个或多个进程;一个进程可以对应一个程序,或者对应程序的某一部分。(正解?)认为:进程首先是可执行的程序;进程是针对操作系统而言的;在编制进程程序时应合乎进程运行的规则。 进程运行的几个基本特征:动态性;并发性;独立性;异步性;进程的运行是并发的,也会带来一些问题:()增加了空间开销()额外的时间开销()难于控制()处理器竞争尤为突出进程的状态转换进程是一个过程,从产生到灭亡,有若干个状态。五状态进程模型执行状态阻塞状态就绪状态新建状态终止状态五状态间的相互转换:图五状态进程模型新建终止就绪阻塞执行接纳事件发生事件等待完成时间片完分派调度进程的挂起状
3、态对换技术的引入:进程较多,但都在等待同一操作,将一些进程调到外存,而调入新进程。被调出的进程称为挂起进程。可能出现挂起的情形:进程全部阻塞;系统负荷过重;操作系统的需要;终端用户的请求;父进程的需求;挂起进程的特征:不能立即执行;不同于阻塞进程;能实施挂起的进程包括自身、父进程或操作系统;只有实施挂起操作的进程才能激活被挂起进程。Linux 的进程及其状态转换Linux 进程分为三类:交互进程;批处理进程;守护进程。PCB:即数据结构task_struct, 包含以下信息:进程状态;调度信息;标识符;进程通信相关信息;链接信息;时间信息;文件系统信息;虚拟内存信息;处理器信息。2.3 操作系
4、统对进程的控制2.3.1操作系统内核核心操作。包括资源管理和支撑功能。资源管理:进程管理;存储管理;设备管理;支撑功能:中断处理;原语操作(由若干机器指令构成,能完成一定的较复杂的功能);时钟管理; 进程的构成及组织进程由三部分构成:程序;数据集合;进程控制块;2.3.3 进程控制块PCB进程标识符信息外部标识符;内部标识符。2. 处理器状态信息:这些信息放在各个寄存器中,包括:通用寄存器;指令寄存器;程序状态字PSW;用户堆栈指针;3. 进程调度信息进程状态;进程优先级;进程调度有关的其它信息(与算法有关);事件。4. 其它信息程序和数据的地址;进程同步和通信机制;资源清单;链接指针。2.3
5、.4 操作系统对进程的控制包括:进程的创建与撤销创建的过程:分配标识符;分配空间;初始化PCB;建立链接;建立或扩展其它数据结构。终止进程的步骤有:找到PCB,读状态;若为执行态,终止之,调度下一就绪进程执行;若有子孙进程,终止他们;归还该进程的全部资源到系统或父进程;将其PCB从所在队列移出。2. 进程的阻塞与唤醒阻塞的原因:请求系统服务;启动某种操作;新数据尚未到达;无事可做,需等待。可自己阻塞自己,需要由操作系统或阻塞它的进程唤醒。3. 进程的挂起与激活调用原语执行。4. 进程切换分时系统中,分配时间片用完,转而执行另外的进程。2.3.5对进程的控制创建;撤销。Linux 的内核机制机制
6、的引入;机制的数据结构;任务队列:定时器队列;即时队列;进程调度队列。2.4 线程另一种并发实体进程与线程进程包括申请资源,具体执行程序等(即调度)。将传统意义的进程分为两部分,新的进程作为资源申请与拥有的基本单位,线程作为调度的基本单位。要有专门的语言支持多进程、多线程。线程与进程的异同:调度;并发性;拥有资源;系统开销。多线程并发线程从属于进程,一般拥有进程的状态,但一般不具有挂起状态。对线程的操作:派生;阻塞;解除阻塞;结束。2.4.3 线程的类型用户级线程即由用户依据一定的平台而编制的线程。2. 内核级线程用户无法直接对线程进行操作。2.4.4 Linux 的进程与线程管理该系统支持许
7、多标准的内核级线程。2.5进程调度即采取什么原则让某一进程执行,即算法。调度的目标、原则和方式目标:要公平合理;处理器利用率要高;系统吞吐量要大;尽量减少进程的响应时间。原则:(1)面向用户的原则响应时间;周转时间;截至时间。(2)面向系统的原则系统吞吐量;处理器利用率;各类资源的平衡使用;公平性;优先权。方式:非剥夺方式;剥夺方式。2.5.2调度的类型长程调度考虑的问题:选择多少作业进入内存;选择哪些进程。短程调度决定就绪队列里哪个进程获得处理器的使用权。中程调度它是对换功能的一部分。进程调度算法先来先服务(FCFS)短进程优先(SPN)时间片轮转调度法(RR)基于优先级的调度算法剩余时间最
8、短者优先(SRT)响应比高者优先(HRRN)(w/s+1)(w等待,s预期执行)1.反馈调度法(FB)(根据调度的情况动态改变进程的优先级别)2.5.4 实时系统与实时任务调度实时系统与实时任务实时系统:能及时响应外部请求,并作出反应的系统。是一个相对的概念。是否周期执行来划分:周期任务;非周期任务。据截至时间来划分:硬实时任务;软实时任务。 实时调度的目标及必要信息就绪时间;开始截至时间和完成截至时间;处理时间;资源需求;优先级;子任务结构。 实时调度算法最早截止时间优先调度算法;最低松弛度优先算法;速度单调调度算法。进程并发控制互斥与同步并发控制包含的内容:竞争资源必须“互斥”,即不能同时
9、使用,如打印机。这类资源又称为临界资源,访问临界资源的程序段称为临界区。临界区的使用原则:每次一个;短时停留;快速响应;不能限制进程的执行速度及处理器的数量;不能在临界区阻塞等待。共享协作多个进程共享某一些资源,包括修改,要使数据保持一致。通信协作多个进程之间应互通信息。互斥与同步的解决策略软件方法互斥算法;互斥算法。硬件算法屏蔽中断;专用机器指令信号量方法预设一个或多个中间变量,通过改变这些变量通知其它的进程。管程一段程序,多个进程都须使用。包括三个方面:对局部于管程的共享数据结构的说明;对该数据结构进行操作的一组过程;对该数据结构初始化的语句。消息传递与信号量的区别:有先后顺序之分,及发送消息的进程和接收消息的进程。互斥同步问题:生产者消费者问题用信号量方法解决该问题用消息传递解决该问题互斥同步问题:读者写者问题多个读者、写者进程应满足以下条件:允许同时读;不能同时写,只能互斥写;若正在写,则不允许读。Linux 通信实例Linux 信号量分析2.7进程死锁死锁:多个进程因为竞争资源,或执行顺序不当,或相互通信而永久阻塞,如果没有外力将永远保持这种现象。进程死锁的原因必要条件:互斥;占有且等待;非剥夺;循环等待。解决死锁的方法预防死锁;避免死锁;检测并解除死锁。预防死锁禁止产生死锁的必要条
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年薄膜包衣粉合作协议书
- 自行车租赁服务品牌建设考核试卷
- 氮肥施用的农业管理策略考核试卷
- 新媒体广告创意与设计
- 2025年耐高温滤料项目合作计划书
- 2025年同位素分离装置项目发展计划
- 新时代教师思想教育体系建设
- 2025年一级建造师之一建港口与航道工程实务真题练习试卷A卷附答案
- 2025年高通量试验反应堆及配套产品合作协议书
- 2025年隔音降噪设备:隔音吸声材料合作协议书
- 企业所得税课件
- 2025年高考政治核心知识总结
- 2025广西中马钦州产业园区投资控股集团限公司招聘49人易考易错模拟试题(共500题)试卷后附参考答案
- 工程过账协议合同协议
- 托管中心晚辅老师培训
- 兼职顾问服务合同范本
- 人教版(新教材)高中物理选择性必修2教学设计2:2 2 法拉第电磁感应定律教案
- 2024-2025学年人教版数学八年级下册期中押题重难点检测卷(含答案)
- 广西地方公路养护工程预算定额
- 《中式美食鉴赏》课件
- 姐妹间房屋转让合同协议
评论
0/150
提交评论