day36—选择题

1.下列关于线程的说法错误的是(B)

A 耗时的操作使用线程,提高程序响应
B 耗内存的操作使用线程,提高内存利用率
C 多CPU的系统使用线程,提高CPU利用率
D 并行操作使用线程,如c/s架构中服务端程序为每个客户端请求创建一个线程来响应

思路:耗时的操作使用线程就可以和其他的操作并发并行的执行,从而提高程序响应;线程使用的内存都是进程提供的内存,所以耗内存的操作占用的都是进程的内存;

2.在下列进程的四个特征中,最基本的特征是(B)

A 并发性
B 动态性
C 独立性
D 异步性

思路:并发性指多个进程实体同存于内存中,且在一段时间内同时运行。并发性是进程的重要特征,同时也成为操作系统的重要特征;动态性:进程的实质是进程实体的一次执行过程,因此,动态性是进程最基本的特征;独立性:进程实体是一个独立运行、独立分配资源和独立接受调度的基本单位;异步性:指进程按各自独立的、不可预知的速度向前推进,或者说实体按异步方式运行

3.什么是内存抖动(Thrashing)(A )

A 非常频繁的换页活动
B 非常高的CPU执行活动
C 一个极长的执行进程
D 一个极大的虚拟内存

思路:页面的频繁更换,导致整个系统效率急剧下降,这个现象称为内存抖动;抖动一般是内存分配算法不好,内存太小引或者程序的算法不佳引起的页面频繁从内存调入调出。

4.假设如下代码中,若t1线程在t2线程启动之前已经完成启动。代码的输出是(B)

public static void main(String[]args)throws Exception {
	final Object obj = new Object();
	Thread t1 = new Thread() {
		public void run() {
			synchronized (obj) {
				try {
					obj.wait();//释放对象锁,让当前线程等待(这里就是让t1线程等待)
					System.out.println("Thread 1 wake up.");
				} catch (InterruptedException e) {
				
				}
			}
		}
	};
	t1.start();
	Thread.sleep(1000);//We assume thread 1 must start up within 1 sec.
	Thread t2 = new Thread() {
		public void run() {
			synchronized (obj) {
				obj.notifyAll();//通知obj对象.wait()等待的线程
				System.out.println("Thread 2 sent notify.");
			}//走到这,释放锁,发起通知
		}
	};
	t2.start();
}

A Thread 1 wake up Thread 2 sent notify.
B Thread 2 sent notify. Thread 1 wake up
C A、B皆有可能
D 程序无输出卡死

思路:

5.以下哪句的说法是正确的(C)

A 在页式存储管理中,用户应将自己的程序划分为若干个相等的页
B 所有的进程都挂起时,系统将陷入死锁
C 执行系统调用可以被中断
D 进程优先数是进程调度的重要依据,必须根据进程运行情况动态改变

思路:页的划分是操作系统做的;系统进入死锁必须满足4个条件:互斥、循环并等待、不剥夺、请求与保持,所有的进程都挂起,并不表示这些进程间有资源调用和循环等待的关系,有些进程定时器结束后可能自动唤醒;静态优先级调度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值