2.8.2 线程的实现 1. 内核支持线程的实现 在仅设置了内核支持线程的OS中,一种可能的线程控制方法是,系统在创建一个新进程时,便为它分配一个任务数据区PTDA(Per Task Data Area),其中包括若干个线程控制块TCB空间,如图2-19所示。 图2-19 任务数据区空间 2. 用户级线程的实现 1) 运行时系统(Runtime System) 所谓“运行时系统”,实质上是用于管理和控制线程的函数(过程)的集合,其中包括用于创建和撤消线程的函数、线程同步和通信的函数,以及实现线程调度的函数等。正因为有这些函数,才能使用户级线程与内核无关。运行时系统中的所有函数都驻留在用户空间,并作为用户级线程与内核之间的接口。 2) 内核控制线程 这种线程又称为轻型进程LWP(Light Weight Process)。每一个进程都可拥有多个LWP,同用户级线程一样,每个LWP都有自己的数据结构(如TCB),其中包括线程标识符、优先级、状态,另外还有栈和局部存储区等。LWP也可以共享进程所拥有的资源。LWP可通过系统调用来获得内核提供的服务,这样,当一个用户级线程运行时,只须将它连接到一个LWP上,此时它便具有了内核支持线程的所有属性。这种线程实现方式就是组合方式。 图2-20 利用轻型进程作为中间系统 2.8.3 线程的创建和终止 1. 线程的创建 应用程序在启动时,通常仅有一个线程在执行,人们把线程称为“初始化线程”,它的主要功能是用于创建新线程。在创建新线程时,需要利用一个线程创建函数(或系统调用),并提供相应的参数,如指向线程主程序的入口指针、堆栈的大小,以及用于调度的优先级等。在线程的创建函数执行完后,将返回一个线程标识符供以后使用。 2. 线程的终止 当一个线程完成了自己的任务(工作)后,或是线程在运行中出现异常情况而须被强行终止时,由终止线程通过调用相应的函数(或系统调用)对它执行终止操作。但有些线程(主要是系统线程),它们一旦被建立起来之后,便一直运行下去而不被终止。在大多数的OS中,线程被中止后并不立即释放它所占有的资源,只有当进程中的其它线程执行了分离函数后,被终止的线程才与资源分离,此时的资源才能被其它线程利用。 习 题 ?? 1. 什么是前趋图? 为什么要引入前趋图? 2. 试画出下面四条语句的前趋图: S1: a = x+y; S2: b = z+1; S3: c = a-b; S4: w = c+1; 3. 为什么程序并发执行会产生间断性特征? 4. 程序并发执行时为什么会失去封闭性和可再现性? 5. 在操作系统中为什么要引入进程的概念? 它会产生什么样的影响? 6. 试从动态性、并发性和独立性上比较进程和程序。 7. 试说明PCB的作用具体表现在哪几个方面,为什么说PCB是进程存在的唯一标志? 8. ?PCB提供了进程管理和进程调度所需要的哪些信息? 9. 进程控制块的组织方式有哪几种? 10. 何谓操作系统内核? 内核的主要功能是什么? 11. 试说明进程在三个基本状态之间转换的典型原因。 12. 为什么要引入挂起状态? 该状态有哪些性质? 13. 在进行进程切换时,所要保存的处理机状态信息有哪些? 14. 试说明引起进程创建的主要事件。 15. 试说明引起进程被撤消的主要事件。 16. 在创建一个进程时所要完成的主要工作是什么? 17. 在撤消一个进程时所要完成的主要工作是什么? 18. 试说明引起进程阻塞或被唤醒的主要事件是什么? 19. 为什么要在OS中引入线程? 20. 试说明线程具有哪些属性? 21. 试从调度性、并发性、拥有资源及系统开销方面对进程和线程进行比较。 22. 线程控制块TCB中包含了哪些内容? 23. 何谓用户级线程和内核支持线程? 24. 试说明用户级线程的实现方法。 25. 试说明内核支持线程的实现方法。 26. 多线程模型有哪几种类型? 多对一模型有何优缺点? (5) 该服务器存根接到消息后,由阻塞状态转入执行状态,拆开消息从中取出过程调用的参数,然后以一般方式调用服务器上关联的过程; (6) 在服务器端的远程过程运行完毕后,将结果返回给与之关联的服务器存根; (7) 该服务器存根获得控制权运行,将结果打包为消息,并将控制权转移给远程服务器进程; (8) 远程服务器进程将消息发送回客户端; (9) 本地客户进程接收到消息后,根据其中的过程名将消息存入关联的客户存根,再将控制权转移给客户存根; (10) 客户
您可能关注的文档
最近下载
- 某天然气公司燃气系统运行安全现状评价报告.doc
- 维修Switch+中文版教程.pdf VIP
- 公共营养师四级试题【含答案】.docx VIP
- 统编人教部编版小学六年级下册道德与法治第一单元教学案.docx VIP
- IPC-6012F-CN-中文版 2024 TOC 刚性印制板的鉴定及性能规范.pdf VIP
- 2025年寒假作业七年级生物北师大版答案.pdf VIP
- impella for doctors左心辅助知识讲座.pptx VIP
- 成人患者医用粘胶相关性皮肤损伤的预防及护理(1).pptx VIP
- 安徽省高新技术产品国际竞争力:现状、挑战与提升策略.docx VIP
- PENTAX宾得 645NII相机手册.pdf VIP
原创力文档

文档评论(0)