目录
第一章 计算机网络概述
1.1计算机系统基础知识
1.1.1 计算机硬件
计算机硬件基本由运算器、控制器、输入设备和输出设备五大部分组成。
1.1.2 中央处理器——CPU
CPU由运算器、控制器、寄存器组和内部总线组成
运算器
主要用于做算术运算和逻辑运算,由以下部分组成:
- 算术逻辑单元ALU:数据处理,对数据进行算术运算和逻辑运算。
- 累加寄存器AC:通用寄存器,为ALU提供个工作区,用来存放运算的结果。
- 数据缓冲寄存器DR:对类有储器进行读写操作时,用来暂存数据。
- 状态条件寄存器PSW:用来存储计算过程中产生的标志位和状态信息。例如进位。
控制器
包括指令控制逻辑、时序控制逻辑、总线控制逻辑、中断控制逻辑,指令控制逻辑有三个操作为取指令、分析指令、执行指令。由以下部分组成:
- 指令寄存器IR:暂存当前指令
- 程序计数器PC:指明下一条指令的地址,分为顺序执行和跳转执行
- 地址寄存器AR:保有当前CPU所访问的内存单元的地址
- 指令译码器ID:分为操作码和地扯码,分析操作码,方便指令执行
1.1.3 数据的表示
原码:数据的二进制形式,最高位是符号位,0表示正数,1表示负数
反码:正数的反码与原码相同,负数的反码是原码除符号外取反
补码:正数的补码与原码相同,负数的补码是反码加1
移码:补码的符号位取反,不区正负数
取值范围:
浮点数:N=M*Re
M:尾数,R:基数,e:尾数
1.1.4 校验码
奇偶校验码:利用奇偶性校验,只可以检错不能纠错。分为奇校验和偶校验,分别用于检查多个奇数位或偶数位是否出错。
循环冗余校验码:可检错,不可纠错。利用多项式产生校验位,通过模2除法生成校验码。学会计算,模2除法是按位做异或运算
海明校验码:可检错也可以纠错,学会计算
1.2 计算机体系结构
1.2.1 计算机体系结构发展
CISC与RISC指令集区别
指令集 | 名称 | 指令数 | 寻址方式 | 实现方法 |
---|---|---|---|---|
CISC | 复杂指令集计算机 | 指令数量多,使用频率差别大,可变长格式 | 支持多种寻址方式 | 微程序控制技术 |
RISC | 精简指令集计算机 | 指令数量少,使用频率接近,定长格式,单周期指令,操作寄存器,只有Load/Store操作内存 | 支持少量寻址方式 | 增加了通用寄存器,硬布线逻辑控制为主,适合采用流水线 |
体系结构Flynn分类法
体系结构类型 | 结构 | 关键特性 | 代表 |
---|---|---|---|
单指令流单数据流SISD | 一个控制部分,一个处理器,一个主存模块 | 单处理器系统 | |
单指令流多数据流SIMD | 一个控制部分,多个处理器,多个主存模块 | 各处理器以异步的形式执行同一条指令 | 并行处理机,阵列处理机,超级向量处理机 |
多指令流单数据流MISD | 多个控制部分,一个处理器,多个主存模块 | 被证明不可能 | 无此类计算机 |
多指令流多数据流MIMD | 多个控制部分,多个处理器,多个主存模块 | 能够实现作业、任 务、指令等各级全面 | 多处理机系统,多计算机 |
流水线
基本符号表示
k:流水线需要执行的步骤,若流水线分为取指、分析和处理三个步骤,则k=3
t1 ~ tk:流水线各个过程的所需时间
∆t:流水线周期,取t1 ~ tk的最大值
n:表示n条指令
(1)流水线执行时间计算
理论公式:(t1+t2+…+tk)+(n-1)*∆t
实际公式:(k+n-1)*∆t
优先选择理论公式的值,若没有理论公式的值,再选择实际公式的值
(2)吞吐率:单位时间内流水线所完成的任务量或输出的结果数
TP = n/流水线执行时间
最大吞吐率:TPmax = 1/∆t
(3)加速比
S = 不使用流水线的执行时间 / 使用流水线执行的时间
(4)效率
E = n个任务占用的时空区 / k个流水线总的时空区
1.2.2 存储系统
层次化存储结构:读取速度由快到慢,存储容量由小到大
- CPU内部通用存储器
- Cache (按内容存取)
- 主存储器(内存)
- 外存(硬盘、光盘、U盘)
Cache
(1)功能:
- 提高CPU数据输入输出的效率
- 平衡CPU与主存之间输入输出的速度差距
- 改善系统的性能——程序的局部性原理
(2)Cache+主存的平均周期:t3=h*t1+(1-h)*t2
h是cache访问的命中率,t1表示cache的周期时间,t2表示主存储器的周期时间。
(3)地址映像方法
映像方法 | 描述 | 优缺点 |
---|---|---|
直接映像 | 主存的块也Cache块的对应关系固定 | 优点:地址变换简单;缺点:灵活性差 |
全相联映像 | 主存的块可以调用到cache的任一块中 | 优点:调入Cache的位置不受限制,十分灵活;缺点:无法从主存块号直接获取Cache块号,需要复杂的变换 |
组相联映像 | 结合上面两种方式,将Cache先分块再分组 |
磁盘结构
存取时间=寻道时间+等待时间(平均空位时间+转动延迟)
寻道时间是指磁头移动到磁道所需时间
等待时间是等待读写的扇区转到磁头下方所用的时间
例题:
磁盘阵列技术
- RAID-0:不具备容错能力
- RAID-1:采用镜像容错
- RAID-2:采用海明码进行错误检测
- RAID-3:减少了检验的磁盘存储器个数,一个检验盘
- RAID-4:独立进行组内磁盘读写,一个检验盘
- RAID-5:同一个磁盘既记录数据,也检验信息,无检验盘
- RAID-6:两级数据冗余和数据编码解决数据恢复问题,出现故障仍然可工作
1.2.3 输入/输出技术
(1)直接程序控制
输入/输出过程在CPU的控制下完成。分为无条件传送和程序查询方式。
(2)中断方式
I/O系统与外设交换数据时,无需CPU参与。数据准备完成后向CPU发送中断请求信号,CPU去完成I/O系统的数据交换。
注:中断请求信号,保存的是正在执行程序的现场。
多中断源的中断处理方法:
- 多中断信号线法:每个中断源都有自己的中断请求信号线与CPU相连
- 中断软件查询法:利用中间软件管理中断请求信号
- 菊花链法:硬件查询法,中断信号在多个I/O模块间查找知道找到中断源
- 总线仲裁法:由总线仲裁机制来裁定谁发送中断请求信号
- 中断向量表法:中断向量表用来保存各个中断源的中断服务程序的入口地址
(3)直接存储器存取方式(DMA )
内存与I/O设备之间数据成块产送,传送过程不需要CPU的参与。CPU只需要在开始和结束时进行处理即可,数据准备和数据交换实际是由DMA硬件直接执行完成。
(4)输入/输出处理机(IOP)
又叫通道,分担了一部分CPU的功能,可对外围设备进行统一管理,完成外围设备和主存之间数据的传送
1.2.4 总线结构
- 数据总线::双向传输,用来传递数据信息,宽度决定了CPU和设备之间每次数据交换的次数
- 地址总线:发单向传输,用于传送CPU发送的地地信息,宽度决定了CPU的最大寻址能力
- 控制总线:传送控制信号、时序信号、状态信息等
常见总线:
- PCI总线:并行传输,内总线
- RS-232C:串行传输,外总线
- SCSI总线:并行传输,外总线
1.3 计算机安全
1.3.1 计算机安全概述
基本要素:
- 机密性:不暴露给未授权的实体或进程
- 完整性:只有被允许的人才可修改,并能判断数据是否已被修改
- 可用性:被授权的实体需要时可访问数据
- 可控性:可控制授权范围内的信息流向及行为方式
- 可审查性:对出现的安全问题提供调查的依据和手段
安全威胁的种类
- 授权侵犯:将系统用做其他为授权的目的
- 拒绝服务:对信息或其他合法访问无条件的拒绝,或推迟等操作
- 窃听
- 信息泄露
- 截获
- 假冒
- 否认
- 非法使用
- 人员疏忽
- 完整性破坏:对数据进行未授权的创建、修改会破坏,使数据一致性收到损坏
- 媒体清理:信息从废弃或打印中获得
- 物理入侵:绕过物理控制获得对系统的访问
- 资源耗尽:被故意超负荷使用,导致其他用户的服务被切断
1.3.1 系统可靠性分析
串联系统
可靠性:R = R1R2…Rn
并联系统
可靠性:R =1-(1-R1)(1-R2)…(1-Rn)
模冗余系统
1.3.3 加密和认证技术
对称加密(私人密钥加密)
使用相同的密钥加密和解密,算法有:
- 数据加密标准DES
- 三重DES
- RC-5
- 国家数据加密算法IDEA
- 高级加密标准AES
非对称加密(公开密钥加密)
使用不同的密钥加密和解密,分为公钥和私钥,成对出现。算法有:
- RSA
认证
PKI是一种密钥管理平台,提供加密和数字签名等密码服务以及所必要的密钥和证书管理体系。
(1)信息摘要
简要的描述传输文本的关键信息,可以被公开,但是不会透露文件的任何内容。
根据传输的文本生成的信息摘要,接收方接收到文本之后生成的摘要与接收到信息摘要对比,检测文本是否被更改。
采用单列Hash函数,算法使用MD5,MD5会生成128位散列值
(2)数字签名
保证发送方的真实和唯一
总结
第二章 程序设计语言
2.1 程序设计语言分类
- PASCAL,过程式、结构化程序设计语言
- C++,面向对象程序设计语言
- C#,面向对象、运行于.NET上
- Objective-C,由C衍生,面向对象
- java,面向对象
- Ruby,解释性、面向对象、动态类型的脚本语言
- PHP,服务器端执行,嵌入HTML文档的脚本语言
- Py