老铁们,大家好,相信还有很多朋友对于操作系统习题和操作系统习题解答3的相关问题不太懂,没关系,今天就由我来为大家分享分享操作系统习题以及操作系统习题解答3的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!
19.为什么要在OS中引入线程?
答:在操作系统中引入线程,则是为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性,提高CPU的利用率。进程是分配资源的基本单位,而线程则是系统调度的基本单位。
20.试说明线程具有哪些属性?
答:(1)轻型实体(2)独立调度和分派的基本单位(3)可并发执行(4)共享进程资源
21.试从调度性、并发性、拥有资源及系统开销方面对进程和线程进行比较。
答:(1)调度性。线程在OS中作为调度和分派的基本单位,进程只作为资源拥有的基本单位。
(2)并发性。进程可以并发执行,一个进程的多个线程也可并发执行。
(3)拥有资源。进程始终是拥有资源的基本单位,线程只拥有运行时必不可少资源,本身基本不拥有系统资源,但可以访问隶属进程的资源。
(4)系统开销。操作系统在创建、撤销和切换进程时付出的开销显著大于线程。
22.线程控制块TCB中包含了哪些内容?
答:一般TCB中的内容和PCB相比较少,因为有关资源分配等多数信息已经记录于所属进程的PCB中。TCB中的主要信息包括(1)线程标识符(2)一组寄存器,包括程序计数器PC、状态寄存器和通用寄存器的内容(3)线程运行状态(4)优先级,描述线程执行的优先程度(5)线程专有存储区(6)信号屏蔽(7)堆栈指针
23.何谓用户级线程和内核支持线程?
答:(1)用户级线程:仅存在于用户空间中的线程,无须内核支持。这种线程的创建、撤销、线程间的同步与通信等功能,都无需利用系统调用实现。用户级线程的切换通常发生在一个应用进程的诸多线程之间,同样无需内核支持。
(2)内核支持线程:在内核支持下运行的线程。无论是用户进程中的线程,还是系统线程中的线程,其创建、撤销和切换等都是依靠内核,在内核空间中实现的。在内核空间里还为每个内核支持线程设置了线程控制块,内核根据该控制块感知某线程的存在并实施控制。
24.试说明用户级线程的实现方法。
答:用户级线程是在用户空间中的实现的,运行在“运行时系统”与“内核控制线程”的中间系统上。运行时系统用于管理和控制线程的函数的集合。内核控制线程或轻型进程LWP可通过系统调用获得内核提供服务,利用LWP进程作为中间系统。
25.试说明内核支持线程的实现方法。
答:系统在创建新进程时,分配一个任务数据区PTDA,其中包括若干个线程控制块TCB空间。创建一个线程分配一个TCB,有关信息写入TCB,为之分配必要的资源。当PTDA中的TCB用完,而进程又有新线程时,只要所创建的线程数目未超过系统允许值,系统可在为之分配新的TCB;在撤销一个线程时,也应回收线程的所有资源和TCB。
26.多线程模型有哪几种类型?多对一模型有何优缺点?
多线程模型有:多对一模型、一对一模型和多对多模型。
多对一模型的主要缺点在于,如果一个线程在访问内核时发生阻塞,则整个进程都会被阻塞;此外,在任一时刻,只有一个线程能够访问内核,多个线程不能同时在多个处理机上运行。
操作系统习题和操作系统习题解答3的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!