二叉树问题:
②树的度应该是树中节点度的最大值
④某一分支的叶子节点是不可能为另一分支节点的子孙节点的,并且叶子节点除了自己以外也不能为其他叶子节点的子孙节点
操作系统:(可能引起进程挂起的原因?)
1)终端用户的请求。当终端用户在自己的程序运行期间发现有可疑问题时,希望暂停使自己的程序静止下来。亦即,使正在执行的进程暂停执行;若此时用户进 程正处于就绪状态而未执行,则该进程暂不接受调度,以便用户研究其执行情况或对程序进行修改。我们把这种静止状态称为“挂起状态”。
(2)父进程的请求。有时父进程希望挂起自己的某个子进程,以便考察和修改子进程,或者协调各子进程间的活动。
(3)负荷调节的需要。当实时系统中的工作负荷较重,已可能影响到对实时任务的控制时,可由系统把一些不重要的进程挂起,以保证系统能正常运行。
(4)操作系统的需要。操作系统有时希望挂起某些进程,以便检查运行中的资源使用情况或进行记账。
进程唯一表征为以下元素:标识符,状态,优先级,程序计数器,内存指针,上下文数据,I/O状态信息,记账信息。这些信息被存储在一个称为进程控制块(PCB)的数据结构中。
PPP(Point-to-point Protocol)是使用串行线路通信的面向字节的协议,该协议应用在直接连接两个结点的链路之上。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单链接的一种共同的解决方案。
PPP是在SLIP的基础上发展而来的,它既可以在异步线路上传输,也可以在同步线路上使用;不仅用于Modem链路,也用于租用的路由器到路由器的线路
PPP有三个组成部分:
1)链路控制协议LCP:用于建立、配置、测试和管理数据链路
2)网络控制协议NCP:PPP允许同时采用多种网络层协议,每个不同的网络层协议要用一个相应的NCP来配置,为网络层协议建立和配置逻辑连接
3)一个将IP数据报封装到串行链路的方法
注意:
1)PPP提供差错检测但不提供纠错功能,只保证无差错接收(通过硬件进行CRC校验)。它是不可靠的传输协议,因此也不使用序号和确认机制
2)它仅仅支持点对点的链路通信,不支持多点线路
3)PPP只支持全双工网路
4)PPP的两端可以运行不同的网络层协议,但仍然可以使用同一个PPP进行通信
5)PPP是面向字节的,当信息字段出现和标志字段一致的比特组合时,PPP有两种不同处理方法:如果PPP用在异步线路(默认)时,采用字节填充法;如果PPP用在SONET/SDH等同步线路时,协议规定采用硬件来完成比特填充(和HDLC做法一样)
高级数据链路控制(HDLC)协议是ISO制定的面向比特(PPP协议是面向字节的)的数据链路层协议。该协议不依赖于任何一种字符编码集;数据报文可以透明传输,用于实现透明传输的“0比特插入法”易于硬件实现;全双工通信,有较高的数据链路传输效率;所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重发,传输可靠信高;传输控制功能与处理功能分离,具有较大灵活性
HDLC可适用于链路的两种基本配置:非平衡配置和平衡配置
1)非平衡配置的特点是由一个主站控制整个链路的工作
2)平衡配置的特点是链路两端的两个站都是复合站,每个复合站都可以平等地发起数据传输,而不需要得到对方复合站的允许