网络编程笔试、面试题

1. C 语言中,系统自动打开的文件是( D )A. 二进制文件 B. 随机文件C. 非缓冲文件 D. 设备文件2. TCP 使用____B__

1. C 语言中,系统自动打开的文件是( D )

A. 二进制文件 B. 随机文件

C. 非缓冲文件 D. 设备文件

2. TCP 使用____B___进行流量控制。

A. 3次握手法 B. 窗口控制机制

C. 自动重发机制 D. 端口机制

3. TCP/IP层IP 协议的服务是___C____

A. 可靠服务 B. 有确认的服务

C. 无连接数据报 D. 以上都不对

4. 对于一个没有设置任何套接口选项的阻塞套接口,调用recv 接收对方的数据,对方发

送数据前突然断电,下列哪种情况将会发生____A____

A. recv永远不会返回 B. recv立刻返回-1

C. recv立刻返回0 D. recv在等待很长一段时间后返回-1

5. 下列哪些关于套接口选项函数的说法是正确的___C_____

A. SO_DONTLINGER选项是让TCP 套接口不对数据进行缓存,调用send 函数后立

刻将数据发送出去;

B. 调用SO_RCVBUF和SO_SNDBUF调整TCP 窗口的大小;

C. SO_REUSEADDR选项允许套接口绑定在一个已经在使用的地址上;

D. SO_MAX_MSG_SIZE选项获取每次调用TCP 套接口send 时,所能发送的最大

字节数;

假如子网掩码维255.255.255.245 有多少个ip 可用

答:256-245-2=9个

判断192.162.1.1 是A 、B 、C 类 那种网络ip 地址

答:C 类

C 类IP 以110开头,从192.0.0.1到223.255.255.255

IP 通过什么协议转成域名和MAC 地址

答:通过DNS 协议转换成域名。

DNS 是域名系统 (Domain Name System) 的缩写,它是由解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP 地址,并具有将域名转换为IP 地址功能的服务器。

通过ARP (地址转换协议)协议转换成MAC 地址,反过来MAC 到IP 地址的转换是RARP(逆地址转换协议)

产生死锁的必要条件是什么?解决死锁有几种方法?

答: 产生死锁的必要条件:

互斥条件:进程要求对所分配的资源进行排它性控制,即在一段时间内某资源仅为一进程所占用。

,

请求和保持条件:当进程因请求资源而阻塞时,对已获得的资源保持不放。

不剥夺条件:进程已获得的资源在未使用完之前,不能剥夺,只能在使用完时由自己释放。

环路等待条件:在发生死锁时,必然存在一个进程--资源的环形链。

解决死锁的基本方法:

预防死锁:

资源一次性分配:(破坏请求和保持条件)

可剥夺资源:即当某进程新的资源未满足时,释放已占有的资源(破坏不可剥夺条件) 资源有序分配法:系统给每类资源赋予一个编号,每一个进程按编号递增的顺序请求资源,释放则相反(破坏环路等待条件)

避免死锁:

预防死锁的几种策略,会严重地损害系统性能。因此在避免死锁时,要施加较弱的限制,从而获得 较满意的系统性能。由于在避免死锁的策略中,允许进程动态地申请资源。因而,系统在进行资源分配之前预先计算资源分配的安全性。若此次分配不会导致系统进入不安全状态,则将资源分配给进程;否则,进程等待。其中最具有代表性的避免死锁算法是银行家算法。

检测死锁:

首先为每个进程和每个资源指定一个唯一的号码;

然后建立资源分配表和进程等待表,例如:

解除死锁:

当发现有进程死锁后,便应立即把它从死锁状态中解脱出来,常采用的方法有: 剥夺资源:从其它进程剥夺足够数量的资源给死锁进程,以解除死锁状态;

撤消进程:可以直接撤消死锁进程或撤消代价最小的进程,直至有足够的资源可用,死锁状态. 消除为止;所谓代价是指优先级、运行代价、进程的重要性和价值等。

解释可重入:

若一个程序或子程序可以“安全的被并行执行(Parallel computing )”,则称其为可重入(reentrant 或re-entrant )的。即当该子程序正在运行时,可以再次进入并执行它(并行执行时,个别的执行结果,都符合设计时的预期)。

若一个函数是可重入的,则该函数:

● 不能含有静态(全局)非常量数据。

● 不能返回静态(全局)非常量数据的地址。

,

标签: