一、解释题(每小题20分)
1. 临界区
参考答案:指的是一个访问共用资源(例如:共用设备或是共用存储器)的程序片段,而这些共用资源又无法同时被多个线程访问的特性。当有线程进入临界区段时,其他线程或是进程必须等待。
2. 带宽和数据率
参考答案:数据率:数据传输速率在数值上等于每秒钟传输构成数据代码的二进制比特数,单位为比特/秒(bit/second),记作bps。带宽:带宽表示通信线路所能传送数据的能力,在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。
3. 快表
参考答案:快表就是存放在高速缓冲存储器的部分页表。它起页表相同的作用。由于采用页表做地址转换,读写内存数据时CPU要访问两次主存。有了快表,有时只要访问一次高速缓冲存储器,一次主存,这样可加速查找并提高指令执行速度。
4. CPI
参考答案:CPI(Cycle Per Instruction,每条指令执行需要的时钟周期数)指CPU的指令时钟数。表示每条计算机指令执行所需的时钟周期数。
5. 文件系统
参考答案:操作系统中实现文件统一管理的一组软件、被管理的文件以及为实施文件管理所需要的一些数据结构的总称,主要涉及文件的逻辑组织和物理组织,目录的结构和管理。
二、简答题(每小题24分)
1. 说明线程引入的原因和作用
参考答案:
由于进程是一个资源的拥有者,因而在创建,撤销,切换中,系统必须为之付出较大的时空开销。正因如此,在系统中所设置的进程,其数目不宜过多,进程切换的频率也不宜过高,这也就限制这并发程度的进一步提高。
为了使多个程序更好的并发执行同时又尽量减少系统的开销,于是就引入了线程。
在操作系统中引入进程的目的,是为了使多个程序能并发执行,以提高资源的利用率和系统的吞吐量,那么在操作系统中再引入线程,则是为了减少程序在并发执行时所付出的时空开销,使处理机OS具有更好的并发性。
2. IP地址和MAC地址的区别
参考答案:
- 两者地址使用不同。IP地址是指Internet协议使用的地址,而MAC地址是Ethernet协议使用的地址。当存在一个附加层的地址寻址时,设备更易于移动和维修。
- 分配依据不同。IP地址的分配是基于网络拓扑,MAC地址的分配是基于制造商。IP地址是可以自动分配的,MAC地址在每个网卡出厂的时候就有一个全球唯一的MAC地址,所以很多的验证软件就是验证mac地址的。IP是可以更改的,mac地址虽然也可以更改,但是一般用不上,除非要用来绕过一些验证软件的。网卡在通讯的时候通过mac地址相互识别。
3. 整个中断过程可以分成哪两个子过程?各自完成什么任务?
参考答案:中断过程分为中断响应和中断处理两个子过程。CPU通过执行一条隐指令来进行中断响应,完成关中断、保护断点和识别中断源的任务。中断响应的结果是得到了相应的中断服务程序的首地址,下一个指令周期开始,进入中断服务程序的执行。在中断处理(即:中断服务程序)阶段,完成保护现场、中断服务、恢复现场和中断返回的任务。
4. 简述死锁的必要条件,并列举2种破坏死锁条件的方法
条件
- 互斥条件:一个资源每次只能被一个进程使用。
- 请求和保持条件:一个进程因为请求资源而阻塞时,对已获得的资源保持不放。
- 不剥夺条件:进程已经获得的资源在没有使用完之前,不能强行剥夺。
- 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
方法
- 预防死锁(资源一次性分配:破坏请求条件)。
- 解除死锁(剥夺资源:从其他进程剥夺足够数量的资源给死锁进程,以解除死锁状态)。
三、计算题(每小题5分)
1. CRC校验码计算
题目:假设要传送的数据信息为1000111,约定其生成多项式为 ,求其校验码。 参考答案:生成多项式为 ,用二进制来表示该生成多项式为1001,所以最终的校验码应该有3位。在数据信息后添3个0后得:1000111000,将该数除以1001,采用模2除法,余数为:110。所以校验码为110,CRC码为1000111110。
2. 进程同步(围棋子分拣)
题目:在一个盒子里,混装了数量相等的黑白围棋子。现在用自动分拣系统把黑子、白子分开,设分拣系统有二个进程P1和P2,其中P1拣白子;P2拣黑子。规定每个进程每次拣一子;当一个进程在拣时,不允许另一个进程去拣;当一个进程拣了一子时,必须让另一个进程去拣。试写出两进程P1和P2能并发正确执行的程序。
参考答案1(信号量实现)
实质上是两个进程的同步问题,设信号量S1和S2分别表示可拣白子和黑子,不失一般性,若令先拣白子。
var S1,S2:semaphore;
S1:=1;S2:=0;
cobegin
{
process P1
begin
repeat
P(S1);
拣白子
V(S2);
until false;
end
process P2
begin
repeat
P(S2);
拣黑子
V(S1);
until false;
end
}
coend.
参考答案2(管程实现)
TYPE pickup-chess =MONITOR
VAR flag:boolean;
S-black,S-white:condition;
DEFINE pickup-black,pickup-white;
USE wait,signal,check,release;
procedure pickup-black;
begin
check(IM);
if flag then wait(S-black,IM);
flag:=true;
pickup a black;
signal(S-white,IM);
release(IM);
end
procedure pickup-white;
begin
check(IM);
if not flag then wait(S-white,IM);
flag:=false;
pickup a white;
signal(S-black,IM);
release(IM);
end
begin
flag:=true;
end.
main()
{cobegin
process-B( );
process-W( );
coend
process-B()
begin
pickup-chess.pickup-black( );
other;
end
process-W()
begin
pickup-chess.pickup-white( );
end
}
3. 香农公式计算信道容量
题目:调制解调器的数据速率有一极限值即33.6Kbps,这是电话线路理论上的最高比特率。我们知道电话线通常的有效带宽是3000Hz,信噪比35dB。 参考答案:
四、畅想题(满分9分)
题目:未来人工智能会成为一大发展特色,请结合相关知识谈一谈人工智能会应用到哪些相关技术。