牛客网-声网2020校招-通用C++笔试题-2020.9.3
1. 操作系统中两个进程争夺同一个资源会发生什么情况?
答:不一定死锁
解析:产生死锁的四个必要条件为
(1)互斥条件:一个资源每次只能被一个进程使用。
(2)不可剥夺条件:进程已获得的资源,在未使用完之前,不能强行剥夺。
(3)请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放
(4)循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
2. 关于NAT叙述错误的是(C)
A. NAT是英文“网络地址转换”的缩写
B. 地址转换又称地址翻译,用来实现私有地址和公用网络地址之间的转换
C. 当内部网络的主机访问外部网络时,一定不需要NAT
D. 地址转换的提出为解决IP地址紧张的问题提供了一个有效途径
解析:
NAT(Network Address Translation,网络地址转换)是1994年提出的。当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法。
内部网络的主机想访问外部网络的时候,必须需要NAT路由器讲本地地址转为全球IP地址,才可以与因特网链接,
3. 假设A为抽象类,下列声明正确的是(B)
A. A fun(int); B. A*p C. int fun(A); D. A obj;
解析:
抽象类可以作为父类,不能实例化,所以B、D错误。