多核多线程期末考试复习原题
(完整版)操作系统复习题 及答案

一、选择题:1.在多线程操作系统中,对线程具有属性阐述正确的是:【D 】A.具有进程控制块,共享所属进程资源,处理机的独立调度单位,具有动态性B.具有进程控制块,独享所属进程资源,处理机的独立调度单位,具有动态性C.具有进程控制块,共享所属进程资源,处理机的独立调度单位,具有静态性D.具有线程控制块,共享所属进程资源,处理机的独立调度单位,具有动态性2. 计算机系统产生死锁的根本原因是。
【 D 】A.资源有限B.进程推进顺序不当C.系统中进程太多D.A和B3.进程控制块的组织方式有:【 C 】A.链接方式B.索引方式C.A和B D.互斥方式4.若时间片为100ms,系统中有20个用户分享CPU,若暂时忽略用户程序之间切换时运行操作系统的时间开销,则每个用户两次使用CPU之间的时间间隔为:【 A 】A.2S B.3sC.4s D.1s5. 已知系统中资源分配图如图1所示,对图1中资源集合R和有向边集合E描述正确的是:【 B 】RR2R4图1A.R={R1, R 2, R 3}; E = { P1→R1, P2→R3, P3→R2, R1→P2, R2→P2, R3→P3}B.R={R1, R 2, R 3, R 4}; E={ P1→R1, P2→R3, P3→R2, R1→P2, R2→P2, R3→P3}C.R={R1, R 2 }; E = { P1→R1, P2→R3, P3→R2, R1→P2, R2→P2, R3→P3}D.R={R1, R 3}; E = { P1→R1, P2→R3, P3→R2, R1→P2, R2→P2, R3→P3}6.有两个合作进程Pc和Po,它们共享一个单缓冲区B。
Pc是计算进程,Po是打印进程。
则利用PV原语实现同步的伪代码正确的是:【 A 】A.B.C.struct semaphore So, Sc =1,0;cobeginvoid Pc(void){……while (TRUE) {计算下一个结果;P (Sc);B←计算结果;V (So);}……}void Po(void){……while (TRUE) {P (So);从B中取出计算结果;V (Sc);打印取出的数据;}……}coendstruct semaphore Sc, So=1,0;cobeginvoid Pc(void){……while (TRUE) {计算下一个结果;P (Sc);B←计算结果;V (So);}……}void Po(void){……while (TRUE) {P (So);从B中取出计算结果;V (Sc);打印取出的数据;}……}coendD .7. 假设有一个系统,0时刻有4个进程按A, B, C, D 的顺序几乎同时到达,进程执行情况如图1所示。
java多线程练习题(打印版)

java多线程练习题(打印版)### Java多线程练习题#### 题目一:实现一个简单的线程编写一个Java程序,创建一个线程,该线程打印出从1到10的数字。
```javapublic class SimpleThread extends Thread {public void run() {for (int i = 1; i <= 10; i++) {System.out.println(i);}}public static void main(String[] args) {SimpleThread thread = new SimpleThread();thread.start();}}```#### 题目二:线程同步编写一个Java程序,创建两个线程,它们交替打印字符串"A"和"B",直到每个线程打印5次。
```javapublic class ThreadSync {private static final Object lock = new Object();public static void main(String[] args) {Thread threadA = new Thread(() -> {for (int i = 0; i < 5; i++) {synchronized (lock) {System.out.print("A");lock.notify();try {lock.wait();} catch (InterruptedException e) { e.printStackTrace();}}}});Thread threadB = new Thread(() -> {for (int i = 0; i < 5; i++) {synchronized (lock) {System.out.print("B");lock.notify();try {lock.wait();} catch (InterruptedException e) { e.printStackTrace();}}}});threadA.start();threadB.start();}}```#### 题目三:生产者-消费者问题编写一个Java程序,模拟生产者-消费者问题。
多核多线程选择题

第1章:多核技术导论习题1.全世界第一台全自动电子数字计算机ENIAC于哪一年研制成功?(B)A.1944年B.1945年C.1946年D.1947年2.计算机的硬件工艺发展顺序是:(A)A.电子管数字计算机、晶体管数字计算机、集成电路数字计算机、大规模集成电路数字计算机B.晶体管数字计算机、电子管数字计算机、集成电路数字计算机、大规模集成电路数字计算机C.电子管数字计算机、集成电路数字计算机、大规模集成电路数字计算机、晶体管数字计算机D.电子管数字计算机、集成电路数字计算机、晶体管数字计算机、大规模集成电路数字计算机3.下面关于Intel 8086芯片于8088芯片的描述,不正确的是:(D)A. 8086是第一个16位的微处理器。
B. 8088是第一个16位的微处理器。
C. 8086每周期能传送或接收16位数据D. 8088每周期能传送或接收16位数据4.针对内存的速度瓶颈,英特尔为80386设计了_______来解决这个速度瓶颈:(B)A. 虚拟86B. 高速缓存(Cache)C. 浮点运算单元D. 多媒体扩展指令集5.为了提高电脑在多媒体、3D图形方面的应用能力,产生了许多新指令集,以下不属于这类指令集的是:(C)A.MMXB.SSEC.浮点运算集D.3D NOW!6.以下关于超线程技术的描述,不正确的是:(D)A. 利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高的CPU的运行效率。
B. 采用超线程技术可在同一时间里,使应用程序能够使用芯片的不同部分。
C. 超线程技术可以使芯片同时进行多线程处理,使芯片性能得到提升。
D. 是一种多核技术,揭开x86处理器多核心时代。
7. 总线共享Cache结构的缺点是:(C)A. 结构简单B. 通信速度高C. 总线的结构可扩展性较差D. 以上都是8.为什么说从单核到多核的转变成为不可避免的历史趋势:(D)A. 指令级并行的局限B. 能耗与散热C. 内存墙问题D. 以上都是9.从数据处理的角度看,不存在并行性的是:(A)A. 字串位串B. 字串位并C. 字并位串D. 字并位并10.阵列处理机又称为并行处理机,它的体系结构属于_______计算机。
多核复习02

1.多处理能力带来的最大好处是能够改进______,一个多线程程序的运行需要____个单处理器系统。
(B)A. 吞吐量,多B. 吞吐量,一C. 频率,多D. 频率,一2.决定延迟最重要的两个因素是__________ 以及_________ 。
(D )A. 内存存取时间,处理器频率B. I/O 时间,处理器频率C. I/O 时间,总线带宽D. 内存存取时间,I/O 时间3.并发性既可以指对单个程序使用______处理,也可以指对多个程序使用____处理。
(A )A. 多任务,多任务B. 多任务,单任务C. 单任务,多任务D. 单任务,单任务4.对于Intel VTune 性能分析器,以下表述正确的是:(D)A. 可以在程序运行的系统平台上自动搜集性能数据B. 可以将所获得的性能数据在各个不同的层次,大至系统层,下至程序源代码级,甚至到处理器指令级,进行不同粒度的交互式可视化,帮助查找可能的性能瓶颈,并提供可能的解决方案C. VTune 既可以在本地、也可以远程搜集性能数据,并在本地进行数据处理、分析以及显示D. 以上都正确1.下列不是多核处理器的是( B )A. INTEL酷睿2 E4500B. INTEL P3 1.2G处理器C. INTEL I7 2600KD. AMD的推土机FX-81505.对于Intel(R) 线程检查器,以下表述不正确的是:(C)A. Intel(R) 线程检查器监控程序执行过程中的线程行为,发现其中存在的线程阻塞以及潜在的线程死锁问题B. 提示同线程错误相关的源代码位置、侵权变量以及堆栈跟踪等C. 不能从Windows 主机系统分析Linux 系统中运行的线程代码D. Intel 线程检查器可以发现数据竞争现象下列不是多核处理器的是( C )A. INTEL酷睿2 E6300B. INTEL I5 2500KC. INTEL P3 1.4G处理器D. AMD的推土机FX-81502.若对于一个给定的应用,用串行算法执行的时间为24秒,用并行算法执行的时间为32秒,则加速比为: ( A )A.0.75B.1.33C.1D.加速比 = 串行时间 / 并行时间=24/32=0.752.若对于一个给定的应用,用串行算法执行的时间为40秒,用并行算法执行的时间为20秒,则加速比为: ( B )A.0.75B. 2C.1D. 0.53.下面是线程创建函数的参数中,“传给线程函数的参数”的是:( A )HANDLE CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes,SIZE_T dwStackSize,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID IpParameter,DWORD dwCreationFlags,LPDWORD IpThreadId,);A.lpParamenterB.lpStartSddressC.lpThreadAttributesD. IpThreadId下面是线程创建函数的参数中,用于指明“线程函数名称”的是: ( B )HANDLE CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes,SIZE_T dwStackSize,LPTHREAD_START_ROUTINE lpStartAddress,LPVOID IpParameter,DWORD dwCreationFlags,LPDWORD IpThreadId,);A.lpParamenterB.lpStartSddressC.lpThreadAttributesD. IpThreadIdWin32API编程中创建线程的语句:HANDLE CreateThread (LPSECURITY_ATTRIBUTES lpThreadAttributes, DWORD dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter,DWORDdwCreationFlags, LPDWORD lpThreadId); 其中lpStartAddress是指:( C )A. 在系统中使用方法进程高级设置B. 线程堆栈大小C. 函数指针,指向实际运行的代码D. 线程ID4.以下表述正确的是:(C)A. 由一个进程中的线程切换到另一进程中的线程时,也不会引起进程切换B. 在引入线程的操作系统中,一个进程中的多个线程之间不可以并发执行C. 进程是拥有系统资源的一个独立单位,它可以拥有自己的资源D. 线程是拥有系统资源的一个独立单位以下表述正确的是:(A)A. 在引入线程的操作系统中,进程之间可以并发执行B. 在引入线程的操作系统中,一个进程中的多个线程之间不可以并发执行C. 线程是拥有系统资源的一个独立单位D. 由一个进程中的线程切换到另一进程中的线程时,也不会引起进程切换以下表述不正确的是:(D)A. 在传统的操作系统中,CPU调度和分派的基本单位是进程B. 在引入线程的操作系统中,则把线程作为CPU调度和分派的基本单位C. 同一进程中线程的切换不会引起进程切换,从而避免了昂贵的系统调用D. 由一个进程中的线程切换到另一进程中的线程时,也不会引起进程切换5.用户级线程开销很___,内核线程开销很___。
操作系统期末复习题版详解(含解析)

操作系统期末复习题版详解(含解析)一、选择题1. 下列哪个操作系统不是分时操作系统?A. UNIXB. LinuxC. Windows 98D. Windows Server解析:分时操作系统是一种多用户、多任务的操作系统,能够使多个用户同时使用计算机系统。
Windows 98 是单用户操作系统,不支持多用户同时使用。
因此,答案为 C。
答案:C2. 进程和线程的主要区别是?A. 进程是系统进行资源分配和调度的基本单位B. 线程是进程的组成部分C. 进程可以并发执行,线程不能并发执行D. 进程和线程都需要操作系统进行管理解析:进程是系统进行资源分配和调度的基本单位,而线程是进程的组成部分,是进程内部的一个执行流。
进程和线程都需要操作系统进行管理。
因此,答案为 B。
答案:B二、填空题3. 在操作系统中,负责处理中断请求的硬件部分是______。
解析:在操作系统中,中断控制器负责处理中断请求,它能够根据优先级响应不同的中断请求。
答案:中断控制器4. 虚拟存储器的作用是______。
解析:虚拟存储器的作用是扩大内存空间,提高内存利用率,使得程序可以在比实际物理内存更大的空间中运行。
答案:扩大内存空间,提高内存利用率三、判断题5. 在操作系统中,进程和线程是可以相互转换的。
解析:在操作系统中,进程和线程不可以相互转换。
进程是系统进行资源分配和调度的基本单位,而线程是进程的组成部分,是进程内部的一个执行流。
答案:错误6. 电梯调度算法是一种最短作业优先调度算法。
解析:电梯调度算法是一种基于进程请求访问的次序进行调度的算法,它不是最短作业优先调度算法。
答案:错误四、简答题7. 简述进程和线程之间的区别。
解析:进程和线程是操作系统中两个基本的概念,它们之间有以下区别:(1)进程是系统进行资源分配和调度的基本单位,线程是进程的组成部分,是进程内部的一个执行流。
(2)进程拥有独立的地址空间,线程共享进程的地址空间。
多核 期末复习

1、多核中核的概念:指独立的执行和控制单元,包括独立的功能部件和独立的控制器,以及完整的指令流水线。
2、并行与并发的对比:并行:目前活动的线程在不同的硬件资源或者处理器单元上同时执行也就是说多个时间点都是同时进行的。
并发:目前活动的进程在同一个硬件资源上交替进行,再某个给定的时刻,只有一个线程在执行,要提高并行性,就必须利用多个硬件资源上的并发性。
3、锁:类似于信号量,但是一个线程同一个时刻只能使用一个锁。
锁的粒度,是指上锁后保护共享数据的多少。
减少锁的粒度可以提高对共享数据的访问并行性4、单核与多核的对比多核:是将两个甚至更多的独立执行核嵌入到一个处理器内部。
每个指令序列都有一个完整的硬件执行环境,所以个线程之间就形成的真正意义上的并行。
多核的优势:适合开发线程级并行,改善了性价比,核间高带宽和延迟5、集群系统的特点:机群系统的每一个结点都是一个完整的计算机,机群各个结点总有本地磁盘各节点通过低成本的商用网络互联结点与系统级网络的网络接口是连接再I/O总线上的(松耦合),而MPP的网络接口是连接到结点的存储总线上(紧耦合)每个结点上驻留有完整的操作系统,并在加软件层一支持单一系统映像、通信等,而MPP 中结点上只是一个操作系统微核软件技术是集群的关键6、线程的同步:线程的同步是指线程之间所具有的一种制约关系一个线程的执行,依赖于另一线程的消息。
当它没有得到另一个线程的消息时,应该等待直到消息到达时才被唤醒。
临界区:每个进程有一个代码段,临界资源:所有n个进程竞争使用一些共享的数据,这些数据叫做“临界资源”;7、处理器性能指标:处理器性能=主频*IPC从上面的公式可以看出衡量处理器性能的主要指标是每个时钟周期内可以执行的指令数和处理器的主频。
其中频率就是每秒钟做周期性变化的次数。
因此提高处理器性能就是两条途径:提高主频和提高每个时钟内执行的指令数,处理器微架构的变化可以改变IPC,刑律更高的微架构可以提高IPC从而提高处理器的性能。
多线程练习题目

多线程练习题目多线程练习题目多线程一、单项1.下述哪个选项为真?( )A.Error类是一个RoutimeException异常B.任何抛出一个RoutimeException异常的语句必须包含在try块之内C.任何抛出一个Error对象的语句必须包含在try块之内D. 任何抛出一个Exception异常的语句必须包含在try块之内2.下列关于Java线程的说法哪些是正确的?( )A.每一个Java线程可以看成由代码、一个真实的CPU以及数据3部分组成B.创建线程的两种方法,从Thread类中继承的创建方式可以防止出现多父类问题C.Thread类属于java.util程序包D.以上说法无一正确3.哪个关键字可以对对象加互斥锁?( )A.transientB.synchronizedC.serializeD.static4.下列哪个方法可用于创建一个可运行的类?()A.public class X implements Runable { public void run() {……} }B. public class X implements Thread { public void run() {……} }C. public class X implements Thread { public int run() {……} }D.public class X implements Runable { p rotected void run() {……} }5.下面哪个选项不会直接引起线程停止执行?( )A.从一个同步语句块中退出来B.调用一个对象的wait方法C.调用一个输入流对象的read方法D.调用一个线程对象的setPriority方法6.使当前线程进入阻塞状态,直到被唤醒的方法是( )A.resume()方法B.wait()方法C.suspend()方法D.notify()方法7.运行下列程序,会产生的结果是( )public class X extends Thread implements Runnable {public void run(){System.out.print ln(“this is run()”);}public static void main(String[] args){Thread t=new Thread(new X());t.start();}}A.第一行会发生编译错误B. 第六行会发生编译错误C.第六行会发生运行错误D.程序会运行和启动/doc/df10316442.html,ng.ThreadGroup类的作用为( )A.使任何类都可以为线程提供线程体B.定义了线程与交互的方法C.提供了线程组或组中的每个线程进行操作的方法D.以上都不是9.实现线程的创建有( )方法A.一种B. 两种 C.三种 D.四种10.一个进程可以包含( )个线程A.一B. 二C. 三D.四11.Java中的线程模型包含( )A.一个虚拟处理机B.CPU执行的代码C.代码操作的数据D.以上都是12.关于线程组以下说法错误的是( )A.在应用程序中线程可以独立存在,不一定要属于某个线程B.一个线程只能创建时设置其线程组C.线程组由/doc/df10316442.html,ng包中的ThreadGroup类实现D.线程组使一组线程可以作为一个对象进行统一处里或维护13.下列定义线程方法正确的是( )A.Public Thread();B.Public Thread(Runnable target);C.Public Thread(ThreadGroup group,Runnable target);D.以上都正确14.以下不属于Thread类提供的线程控制方法是( )A.break()B.sleep()C.yield()D.join()15.下列关于线程的说法正确的是( )A.线程就是进程B.线程在操作系统出现后就产生了C.Soloris是支持线程的操作系统D.在单处理器和多处理器上多个线程不可以并发执行16.下列不属于线程生命周期状态的是( )A. 新建状态B.可运行状态C. 运行状态D.解锁状态17.以下不属于Thread类的线程优先级静态常量的是( )A.MIN_PRIORITYB.MAX__PRIORITYC.NORM__PRIORITYD.BEST__PRIORITY18.( )关键字可以对对象加互斥锁。
多线程试卷参考答案

考试参考答案一、单项选择题(从下列各题四个备选答案中选出一个正确答案,并将其代号写在答题纸相应位置处。
答案错选或未选者,该题不得分。
)1. D2. D3. B4. A5.A6. B7. A8. B9. B10.C11.D 12.A 13.D 14.A 15.C16.D 17.D 18.A 19.C 20.C21.C 22.C 23.B 24.A 25.C26. A 27. A 28. C29. B30.D31. A 32. D 33. D 34. C35.C36.C 37.A 38.C 39.C 40.C41.A 42.B 43.B 44.C 45.A46.B 47.B 48.C 49.B 50.C二、填空题1. ng.Thread2. 并发3.抢先调度4. stop()5. 死亡6. Thread7.可运行状态8.线程体9.返回线程的字符串信息10.用户11.寄存器12.虚拟的CPU 代码数据13.MAX_PRIORITY MIN_PRIORITY14.getPrority() setPrority()15.syschronized16.可运行状态阻塞状态17.封锁18.代码一组寄存器19.相互独立20.wait( )方法三、判断题(判断以下论述的正误,认为正确的就在答题相应位置划“T”,错误的划“F”)1. F2. T3. F4. F5. T6. T7. F8. T9.T 10. T11. F 12. T 13. T 14. F 15. T16. F 17. T 18. F 19.T 20. F四、简答题(回答要点,并简明扼要作解释)1. 答:线程是一段完成某个特定功能的代码,是程序中单个顺序的流控制。
但和进程不同的是,同类的多个线程是共享一块内存空间和一组系统资源,而进程本身的数据通常只有微处理器的寄存器数据,以及一个供程序执行时使用的堆栈。
2. 答:线程从创建、运行到销往的过程称为线程的生命周期。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
多核编程
一、不定项选择(每题4分)
计算机的硬件工艺发展顺序是:(A)
A.电子管数字计算机、晶体管数字计算机、集成电路数字计算机、大规模集成电路数字计算机
B.晶体管数字计算机、电子管数字计算机、集成电路数字计算机、大规模集成电路数字计算机
C.电子管数字计算机、集成电路数字计算机、大规模集成电路数字计算机、晶体管数字计算机
D.电子管数字计算机、集成电路数字计算机、晶体管数字计算机、大规模集成电路数字计算机
下面关于Intel 8086芯片于8088芯片的描述,不正确的是:(D)
A. 8086是第一个16位的微处理器。
B. 8088是第一个16位的微处理器。
C. 8086每周期能传送或接收16位数据
D. 8088每周期能传送或接收16位数据
针对内存的速度瓶颈,英特尔为80386设计了_______来解决这个速度瓶颈:(B)
A. 虚拟86
B. 高速缓存(Cache)
C. 浮点运算单元
D. 多媒体扩展指令集
对一个具体的问题做性能优化时,可以同时在这多个层次上考虑可能的优化手段,一般说来:(AB)
A. 在越高的层次上进行优化,可能获得的效益越高
B. 在越低的层次上进行优化工作则相对越容易实现
C. 在越高的层次上进行优化,可能获得的效益越低
D. 在越低的层次上进行优化工作则相对越难于实现
VTune性能分析器中的取样功能有哪几种方式?(AC)
A. 基于时间取样
B. 随机取样
C. 基于事件取样
D. 线性取样
Intel调优助手能够给我们自动推荐代码改进办法,主要有以下哪些方面?(BCD)
A. 算法自动改进
B. 处理器瓶颈以及改进
C. 取样向导增强
D. 超线程
使用-O3编译选项所得的程序,执行效率比使用-O2编译选项所得的程序_______。
(D)
A. 高
B. 低
C. 一样
D. 不一定
对于函数调用的边际效应,以下表述不正确的是:(B)
A. 只要函数在调用的过程中改变了某些全局变量的值,我们就称函数调用中有边际效应。
B. 存在边际效应的函数调用,其调用次数的不同会对整个程序的行为产生不同的影响。
C. 为了避免函数调用的边际效应,就必须尽量避免使用全局变量,尽量使用局部变量。
D. 编译器无法检测出函数调用中是否会产生边际效应,所以应该将函数调用移出循环体外。
对于一个优化的编译器,以下表述不正确的是:(D)
A. 编译器负责其中的寄存器分配的优化
B. 编译器负责其中的代码选择及有限重组的优化
C. 编译器进行一些局部范围内的优化
D. 优化的编译器能够改进算法的计算复杂度
以下表述不正确的是:(D)
A. 在传统的操作系统中,CPU调度和分派的基本单位是进程
B. 在引入线程的操作系统中,则把线程作为CPU调度和分派的基本单位
C. 同一进程中线程的切换不会引起进程切换,从而避免了昂贵的系统调用
D. 由一个进程中的线程切换到另一进程中的线程时,也不会引起进程切换
以下表述正确的是:(AC)
A. 在引入线程的操作系统中,进程之间可以并发执行
B. 在引入线程的操作系统中,一个进程中的多个线程之间不可以并发执行
C. 进程是拥有系统资源的一个独立单位,它可以拥有自己的资源
D. 线程是拥有系统资源的一个独立单位,它可以拥有自己的资源
以下表述不正确的是:(A)
A. 用户级线程在用户层通过线程库来实现。
对它的创建、撤销和切换都要利用系统的调用。
B. 核心级线程由操作系统直接支持,即无论是在用户进程中的线程,还是系统进程中的线程,它们的创建、撤消和切换都由核心实现
C. 硬件线程就是线程在硬件执行资源上的表现形式
D. 用户级线程通过操作系统被作为核心级线程实现,再通过硬件相应的接口作为硬件线程来执行
对于操作系统中的线程,以下表述不正确的是:(D)
A. 操作系统中存在两种类型的线程,I/O阻塞线程和计算非阻塞线程
B. IO阻塞线程主要用于有交互式的程序中,它在大多数时间内都在等待外部事件
C. 计算非阻塞线程在大多数时间内都是被调度函数调度到的,应该和处理器资源相匹配
D.在处理IO阻塞线程的时候要依次地等待每个请求完成才继续处理下一个请求
I/O阻塞线程_____引起时间片切换开销,计算非阻塞线程_____引起时间片切换的开销。
(B)
A.不会,会
B.会,不会
C.都会
D.都不会
以下表述错误的是:(D)
A. OpenMP可以根据目标系统尽量使用最优数量的线程个数
B. 使用线程池可以避免为每个线程创建新进程的开销
C. 线程池通常具有最大线程数限制,如果所有线程都繁忙,而额外的任务将放入队列中,直到有线程可用时才能够得到处理
D.对于有优先级的线程,也可以使用线程池
调用exit会使____进程终止;调用pthread_exit会使____进程终止。
(B)
A.整个,整个
B.整个,调用
C.调用,调用
D.调用,整个
如果多个线程同时执行函数的多个活动请求而不会相互干扰,那么这个函数是____,如果会相互干扰,那么这个函数是_____。
(A)
A. 线程安全,非线程安全
B. 都是线程安全
C. 都是非线程安全
D. 非线程安全,线程安全
用户级线程开销很___,内核线程开销很___。
(C)
A.高,高
B.高,低
C.低,高
D.低,低
下列说法哪个是不正确的。
(A)
A. 应用程序可以在内存中找到内核对象的数据结构并直接改变它们的内容。
B. 内核对象都是通过调用函数来创建的
C. 内核对象的数据结构只能被内核程序访问
D. Windows提供了一组函数,以便用定义的很好的方法来对内核对象的数据结构进行操作下面哪个说法是正确的(AB)
A. 每个进程被初始化时,系统为它分配一个句柄表,用于保存该进程使用的内核对象信息
B. 相同的句柄值在不同的进程中可能标识不同的内核对象
C. 一个进程中止执行,它使用的内核对象也会被撤销
D. 内核对象是由进程拥有的
下列说法哪个是不正确的。
(C)
A. 进程是线程的容器
B. 单个进程可以包含多个线程
C. 进程中不一定有线程
D. Win32中有专门的创建进程的API:CreateProcess
OpenMP标准诞生于_______年。
(B)
A.1996
B.1997
C.1998
D.1999
以下表述不正确的是:(C)
A. OpenMP是一种面向共享内存以及分布式共享内存的多处理器多线程并行编程语言
B. OpenMP是一种能够被用于显示制导多线程、共享内存并行的应用程序编程接口(API)
C. OpenMP的规范由ANSI发起,由一组主要的计算机硬件和软件厂商共同制定并认可
D. OpenMP能够支持多种平台,包括大多数的类UNIX系统以及Windows NT系统
在OpenMP的并行编程模型中,所有的处理器都连接到_________的内存单元上,处理器在访问内存的时候使用的是______的内存地址空间。
(D)
A. 不同,相同
B. 不同,不同
C. 一个共享,不同
D. 一个共享,相同
一条指令中的操作数地址,可以有个。
ABCD
A. 0
B. 1
C.2
D.3
二、填空题
Flynn将计算机划分为四种基本类型,即SISD、____[1]___、____[2]___、MIMD。
线程的状态分为就绪、____[3]___和运行状态。
一组进程(线程)中的每个进程(线程)均等待此组进程(线程)中某一其它进程(线程)所占有的,因而永远无法得到的资源,这种现象称作____[4]____。
分解是将应用程序划分成多个独立的任务,并确定这些任务之间的相互关系的过程,分解方式包括____[5]____分解、____[6]____分解和数据流分解。
片上多核处理器的英文缩写是____[7]___。
独立于体系结构性能优化方法主要有:____[8]___、____[9]___和____[10]___。