内容发布更新时间 : 2025/7/4 8:29:21星期一 下面是文章的全部内容请认真阅读。
until false end parend end
33 .试比较进程间的低级与高级通信工具。
答:用户用低级通信工具实现进程通信很不方便, 效率低,通信对用户不透明,所有操作都必须由程序员来实现, 而高级通信工具弥补了这些缺陷, 用户直接利用操作系统提供的一组通信命令,高效地传送大量的数据。 34 .当前有哪几种高级通信机制?
答:共享存储器系统、消息传递系统以及管道通信系统。 35 .消息队列通信机制有哪几方面的功能?
答:( 1)构成消息( 2 )发送消息( 3)接收梢息( 4)互斥与同步。36 .为什么要在 OS 中引入线程?
答:在操作系统中引入线程, 则是为了减少程序在并发执行时所付出的时空开销, 有更好的并发性, 提高 CPU 的利用率。 进程是分配资源的基本单位 基本单位。
37 .试说明线程具有哪些属性?
答:( 1) 轻型实体( 2)独立调度和分派的基本单位(
3)可并发执行( 4 )共享进程资源。
使 OS 具
,而线程则是系统调度的
38. 试从调度性,并发性,拥有资源及系统开销方面对进程和线程进行比较。答:
(1 )调度性。线程在 OS 中作为调度和分派的基本单位, 进程只作为资源拥有的基本单位。 (2 )并发性。进程可以并发执行,一个进程的多个线程也可并发执行。
(3 )拥有资源。进程始终是拥有资源的基本单位,线程只拥有运行时必不可少的资源,本身基本不拥有系统资源,但可以访问隶属进程的资源。
(4 )系统开销。操作系统在创建、撤消和切换进程时付出的开销显著大于线程。 39. 为了在多线程 OS 中实现进程之间的同步与通信,通常提供了哪几种同步机制? 答:同步功能可以控制程序流并访问共享数据, 互斥锁、读写锁、条件变量和信号。
40 .用于实现线程同步的私用信号量和公用信号量之间有何差别?答:
(1 )私用信号量。当某线程需利用信号量实现同一进程中各线程之间的同步时,可调用创建信号量的命令来创建一个私用信号量,其数据结构存放在应用程序的地址空间中。 (2 )公用信号量。公用信号量是为实现不同进程间或不同进程中各线程之间的同步而设置 的。其数据结构是存放在受保护的系统存储区中,由 41 .何谓用户级线程和内核支持线程?
OS 为它分配空间并进行管理。
从而并发执行多个线程。 共有四种同步模型:
答:
( 1 )用户级线程:仅存在于用户空间中的线程,无须内核支持。这种线程的创建、撤销、 线程间的同步与通信等功能, 都无需利用系统调用实现。 用户级线程的切换通常发生在一个应用进程的诸多线程之间,同样无需内核支持。
(2 )内核支持线程:在内核支持下运行的线程。无论是用户进程中的线程,还是系统线程中的线程,其创建、撤销和切换等都是依靠内核,在内核空间中实现的。在内核空间里还 为每个内核支持线程设置了线程控制块,内核根据该控制块感知某线程的存在并实施控制。 42 .试说明用户级线程的实现方法。
答:用户级线程是在用户空间中的实现的,运行在
“运行时系统 ”与“内核控制线程 ”的中
LWP
间系统上。运行时系统用于管理和控制线程的函数的集合。内核控制线程或轻型进程 可通过系统调用获得内核提供服务,利用 43 .试说明内核支持线程的实现方法。
LWP 进程作为中间系统。
答:系统在创建新进程时,分配一个任务数据区 PTDA ,其中包括若干个线程控制块 TCB 空间。创建一个线程分配一个 TCB ,有关信息写入 TCB ,为之分配必要的资源。当 PTDA 中的 TCB 用完,而进程又有新线程时,只要所创建的线程数目未超过系统允许值,系统可 在为之分配新的 TCB ;在撤销一个线程时,也应回收线程的所有资