2013年408试卷知识点整理

一、数据结构

n叉树带权最短路径长度

除了二叉树的最短路径(哈夫曼树)计算以外,其余的n叉树在计算前需要补充权值为0的叶结点,需要补充的结点个数计算如下:

由树的结点数与度数和的关系式,所有结点度数和 = 结点总数 - 1,即

 m_{1}*n_{1}+m_{2}*n_{2}+....+m_{k}*n_{k} = x - 1,其中m_{i}n_{i}分别为结点个数和对应结点度数,k为k叉树,x为结点总数。

可以得到

m*n = (x+m) - 1,其中带权最短路径的n叉树的度只有0和n,因此只需要计算度为n的结点度数和,x为0结点数,即叶结点数。

计算出x后与题目给出的结点数对比,x取尽可能小,并补齐需要的权值为0的结点。

eg.已知三叉树T中六个叶结点权分别为2,3,4,5,6,7,T的带权路径长度最小值为多少?

m*3=(x + m) - 1   ->   x = 3m + 1 -  m = 2m + 1 >= 6,因此x最小能取7,需要补充1个度为0的结点。

补充后的七个叶结点权分别为0,2,3,4,5,6,7。

第一次合并:0,2,3 -> 5,剩下五个结点为4,5,5,6,7。

第二次合并:4,5,5 -> 14,剩下三个节点为6,7,14。

第三次合并:6,7,14 -> 27。

总权值为5+14+27=46。

二、计算机组成原理

磁盘阵列

RAID

RAID(独立冗余磁盘阵列)指将多个独立物理磁块组成一个独立逻辑盘,数据在多个物理盘上分割交叉存储,并行访问(多个物理盘可以同时访问属于自己的物理块)

RAID分级

RAID0:无冗余无校验的磁盘阵列。

RAID1:镜像磁盘阵列。

RAID2:采用纠错的海明码的磁盘阵列。

RAID3:位交叉奇偶校验的磁盘阵列。

RAID4:块交叉奇偶校验的磁盘阵列。

RAID5:无独立校验的奇偶校验磁盘阵列。

RAID分级分析

对于RAID0,把连续多个数据块交替存在不同物理磁盘扇区内,几个磁盘交叉并行读写,增加了存储容量和磁盘数据存取速度,但RAID0没有容错能力。

对于RAID1~RAID5,无论何时有磁盘损坏,都可以随时拔出受损磁盘插入好的磁盘。其中RAID1使两个磁盘同时读写,互为备份,互相检验,一个磁盘故障可以从另一个磁盘读出数据,因此提高可靠性的同时RAID1的容量减少了一半

三、操作系统

I/O软件层次结构

用户层I/O软件

实现与用户交互的接口。大部分I/O软件在操作系统内部,小部分在用户层,用户可直接调用在用户层提供的、与I/O操作有关的库函数,再由用户层软件通过一组系统调用获取操作系统服务。

设备独立性软件

实现用户程序与驱动器的统一接口、设备命令(系统调用)、设备的保护和设备的分配释放,并为设备管理与数据传送提供必要存储空间。

为实现设备独立性,应用程序中使用逻辑设备命名(消除物理设备名的差异,方便调用)请求使用某类设备,系统实际执行时再映射回物理设备名使用。

设备驱动程序

与硬件直接相关,负责具体实现系统对设备发出的操作命令(如计算磁盘所在位置),驱动I/O设备工作的驱动程序。向上层提供统一接口,接收来自上层的抽象I/O要求(如read和write),转换成具体要求传送给设备控制器;接收设备控制器的信号传送给上层,隐藏I/O内核子系统设备控制器之间差异。

中断处理程序

保护被中断进程的CPU环境,转入对应中断处理程序处理,处理完再恢复被中断前的现场后返回被中断进程。

死锁预防(破坏死锁产生的4个必要条件)

破坏互斥条件

允许资源系统都能共享使用,则不会产生死锁。但如打印机等临界资源只能互斥使用,且有的场合需要保护这种互斥性,因此破坏互斥条件可用性不高

破坏不剥夺条件

当一个保持了某些不可剥夺资源的进程请求新资源得不到满足时,必须释放已经保持的所有资源,有需要时重新申请。该策略实现复杂,可能造成前一阶段的工作失效,进而造成饥饿,频繁申请释放资源还会导致系统开销增加,吞吐量降低。一般适用于状态易于保存和恢复的资源,如CPU的寄存器及内存资源,一般不用于打印机之类的资源。

破坏请求并保持条件

采用预先静态分配方法,即进程在运行前一次申请完所需要的所有资源,若不能满足则不投入运行。这种方法会造成系统资源严重浪费,而个别资源如果被长期占用,也会导致其他进程饥饿

破坏循环等待条件

采用顺序资源分配法。给系统中资源编号,只能按编号递增顺序申请资源,同类资源一次申请完。这种方法也存在问题,如编号必须相对稳定,这样导致了新类型设备不好增加;有的作业使用资源顺序与编号顺序不一致,会造成资源浪费;按次序申请资源也会给用户变成带来不便

四、计算机网络

通过海明距离差错检测

海明距离

一个编码在所有可取的码值范围内,两两不同二进制个数至少有几个,如某四位编码可取范围为0000,1010,1111,则码距为2,若多一个范围为1000,则码距为1。

检验d位

海明距离为 d+1,如某四位编码的范围为0000,1010,1111,发送数值为0010,则可以知道该发送的数据有错,但无法找到错误位置,因为可能原数据为0000第3位出错,也可能为1010第1位出错。

纠错d位

海明距离为 2d+1,如某六位编码范围为000 000,101 010,111 111,发送数值为111 010,可以发现是第2位出错。但如果错误有两位,如原本要发送的数据位111 111,第4位与第6位出错,也会得到上述发送的数值,并按第2位出错来处理,因此对于海明距离为2d+1可以纠错d位,但错误超出d位也可能会纠错,此时会得到错误结果

海明码(实现海明距离检错的方法之一)

确定海明码位数

n+k\leq 2^{k}-1,其中n为有效信息位的位数,k为校验位的位数。

若数据码为1010,要检错一位 -> k = 3,设信息位为D_{4}D_{3}D_{2}D_{1}(1010),共4位,校验位为P_{3}P_{2}P_{1},共3位,对应海明码为H_{7}H_{6}H_{5}H_{4}H_{3}H_{2}H_{1}

确定校验位的分布

规定校验位P_{i}在海明位号位2^{i-1}的位置上,其余为信息位,具体分布如下:

P_{1}的海明位号为2^{1-1}=2^{0}=1,即H_{1}P_{1}

P_{2}的海明位号为2^{2-1}=2^{1}=2,即H_{2}P_{2}

P_{3}的海明位号为2^{3-1}=2^{2}=4,即H_{4}P_{3}

H_{7}H_{6}H_{5}H_{4}H_{3}H_{2}H_{1}
D_{4}D_{3}D_{2}P_{3}D_{1}P_{2}P_{1}

校验位分组

D_{4}=H_{7}=H_{4+2+1}  -> D_{4}P_{3}P_{2}P_{1}检测。

D_{3}=H_{6}=H_{4+2}     -> D_{3}P_{3}P_{2}检测。

D_{2}=H_{5}=H_{4+1}     -> D_{2}P_{3}P_{1}检测。

D_{1}=H_{3}=H_{2+1}     -> D_{1}P_{2}P_{1}检测。

检验位取值

根据分组结果可得:

P_{1}=D_{1}\oplus D_{2} \oplus D_{4}=0 \oplus 1 \oplus 1=0

P_{2}=D_{1}\oplus D_{3} \oplus D_{4}=0 \oplus 0 \oplus 1=1

P_{3}=D_{2}\oplus D_{3} \oplus D_{4}=1 \oplus 0 \oplus 1=0

因此传输的海明码为1010010

海明码检验原理

S_{1}=P_{1}\oplus D_{1} \oplus D_{2} \oplus D_{4}

S_{2}=P_{2}\oplus D_{1} \oplus D_{3} \oplus D_{4}

S_{3}=P_{3}\oplus D_{2} \oplus D_{3} \oplus D_{4}

得到的S_{3}S_{2}S_{1}若为000,则代表没出错,否则对应的二进制位数出错,如010代表第二位H_{2}出错。

编码与调制

数字数据编码为数字信号

其中USB2.0通信采用了反向归零编码(NRZI)以太网(如各种网卡)采用了曼彻斯特编码,且该编码所占频带宽度为正常两倍,因为2码元=1比特。

还有一种方法为4B/5B编码(编码效率80%)。把发送数据以4位为一组,再按4B/5B编码方式转换成对应5位码。把5位码的32种组合中,取一半用于数据传输,另一半用作控制码或保留。

数字数据调制为模拟信号

 

还有一种方法为正交振幅调制(QAM)。在频率相同的前提下,把幅移键控(ASK)与相移键控(PSK)叠加,形成叠加信号。QAM技术的数据传输率为

R=B\log_{2}(mn)   (单位为b/s)   

其中B为波特率,m为相位数,n为每个相位的振幅种类。

模拟数据编码为数字信号

典型的例子是常用于对音频信号进行编码的脉码调制(PCM),包括了采样、量化、编码三个步骤。其中采样的条件为,若原始信号最大频率为f,则采样频率需要大于等于2f(奈奎斯特定理),原理为正弦波一个周期内需要两点才能确定波形(了解即可)。

模拟数据调制为模拟信号(放大器调制器)

为实现传输有效性,需要将信号频率拉高。可以使用频分复用(FDM)技术,充分利用宽带资源。电话机和本地局交换机采用这种技术,模拟的声音数据加载到模拟的载波信号中传输。

 

以太网交换机的两种交换模式

直通式交换机

只检查帧的目的地址,因此帧被接收后可以几乎马上被传出去。这种方式速度快,但缺乏智能性与安全性,也无法支持具有不同速率的端口的交换。

存储转发式交换机

将接收到的帧先存在高速缓存器中,并检查数据是否正确,确认无误后通过查找表转换成输出端口间的交换,若发现帧有错,立即丢弃。有点是可靠性高支持不同速率端口交换,但延迟较大

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值