【教学课件】第4章多线程-内容提要

上传人:dax****eng 文档编号:252937280 上传时间:2024-11-26 格式:PPT 页数:13 大小:360.47KB
返回 下载 相关 举报
【教学课件】第4章多线程-内容提要_第1页
第1页 / 共13页
【教学课件】第4章多线程-内容提要_第2页
第2页 / 共13页
【教学课件】第4章多线程-内容提要_第3页
第3页 / 共13页
点击查看更多>>
资源描述
,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,第4章 多线程内容提要,线程的概念,线程的好处,应用线程的例子,线程的状态和线程管理,多线程的实现,Solaris,操作系统的线程机制,Mach,操作系统的线程机制,习题,进程和线程的执行示意图,三个进程各占自己的资源,独自执行,同一进程中三个线程公用资源,独自执行,线程的概念和性质,进一步提高并行性的需求,并行性(多处理器)和并发性(单处理器),对并行的实际需求,并发的开销大:模式转换和进程开关,降低进程开关的开销的思路:将进程的资源占有和运行单元体的两个角色分开,定义:线程是进程内的一个相对独立的、可调度的执行单元。,性质:,进程内一个相对独立的可执行单元,操作系统的基本调度单元,每个进程至少要有一个或一个以上的线程,线程可以创建其他线程,同一个进程中的线程共享该进程的资源,线程间需要通信和同步机制,线程有生命期,有诞生和死亡,采用线程机制带来的好处,创建和撤消线程的开销大大小于创建和撤消进程的开销,线程开关的开销大大小于进程开关开销,增加了通信的有效性,为便于实现线程机制,促使程序员设计结构良好的程序,应用线程的例子,前台和后台:输入、检查、修改、打印,异步处理:定期备份,加快处理速度:对数据的并行处理,组织复杂的工作:如,DBMS,对,SQL,语句的处理,同时处理多个用户的服务请求:如民航售票或证券交易,线程的状态和线程管理,线程状态:就绪、运行、等待(,p.62,图4-1),几点说明:无挂起状态;使用,I/O,时是否阻塞其他线程;进程的状态只与资源有关了,线程的描述,进程现场:映象和保护体系(与资源有关),线程现场:状态、运行现场、执行堆栈(与运行有关),用面向对象的形式表示线程控制块(,TCB),对象和类的概念,进程对象和线程对象:,p.65,表4.1和表4.2,线程的管理、线程组,基本管理方式:,TCB,队列,线程控制原语:创建、撤消、阻塞、挂起、解挂,以线程组的形式成组管理线程,多线程的实现(1),基于线程观点的操作系统分类:单进程单线程(,MS-DOS);,多进程单线程(传统,UNIX);,单进程多线程;多进程多线程(,WINDOWS NT,等),p.67,用户级和内核级线程:,p.70,图4.4,用户级线程(,ULT):,定义;实现方式线程库;优点(开销小;适应多类应用;适应多种操作系统);问题(,I/O,时阻塞;时间片轮转时线程与进程状态不协调);缺点(阻塞多个线程;饥饿;无法享受多处理器);解决方案(监控程序和虚拟时钟、,I/O,外套程序);其他问题(对共享存区的保护、多,CPU);,实际数据,多线程的实现(2),内核级线程(,KLT):,什么是,KLT;,优点(多处理器并行;阻塞时不相互牵制;内核线程);缺点(进出操作系统的两次模式转换的开销),KLT,和,ULT,结合的方法:,p.70,图4.4,c;,四个容易混淆的术语的解释(针对线程主,还是针对线程运行的地址空间而言),线程库:,功能:支持,ULT,的开发和应用,所提供的过程调用,实现要点:尽量减少目态/管态间转换(每次转换都涉及在不同的地址空间之间复制数据,开销很大);线程调度;编程接口,Solaris,操作系统的线程机制,Solaris,的多线程结构:,有关概念,及图示,轻质进程,UNIX,和,Solaris,的进程表的比较:,Solaris,的进程不包括处理器现场,该现场在轻质进程数据块。,轻质进程的本质是一个特殊的用户线程,轻质线程的局限性:开销大;占用内核资源多;仅涉及用户空间(即上层)的操作开销小,同时涉及上下层的开销大。,内核线程:数据结构;,Solaris,内核构成,用户线程:完全由线程库管理,与内核无关。,线程的执行,用户线程与轻质进程多对多:用户线程状态变化图(,p.75);LWP,状态变化图(,p.76),用户进程与轻质进程一对一:走则同行;停则同停,内核中断线程,中断处理由中断线程执行,并用锁或信号量互斥,实现方法及其性能分析(,p.77,页首),Solaris,多线程结构的有关概念,进程;,用户级线程,ULT:,通过在进程地址空间的线程库实现;,轻质进程,LWP:LWP,是用户级线程与内核级线程之间的映射。,LWP,被内核独立调度并可在多处理器上并行执行;,内核级线程,KLT:,被调度并分派到一个处理器上执行的基本实体。,Solaris,的多线程结构有关概念图示,u,k,CPU,线程库,进程1,u,L,线程库,进程2,u,u,线程库,进程3,u,u,u,线程库,进程4,u,u,线程库,进程5,u,u,u,L,L,L,L,L,L,L,L,k,k,k,k,k,k,k,k,线程调度程序,CPU,CPU,CPU,CPU,内核,硬件,用户空间,Mach,操作系统的线程机制,任务(类似进程)和线程,线程的数据结构(,p.77),与线程相关的系统调用:创建、终止、挂起、恢复等,线程分类:纯内核线程;用户任务的线程(相当于,Solaris,中的轻质进程),线程库,线程库的实现方法,基于线程(,default):,每个用户线程使用一个内核用户线程(相当于轻质进程),抢占式调度,基于协同例程:多个用户线程对应一个内核用户线程,不可抢占式调度,基于任务:每个线程使用一个,Mach,任务(即,UNIX,进程),习题,4.2,4.3,4.4,4.5,4.10,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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