一、计算机基本工作原理
1 海明码:是一种多重(复式)奇偶检错编码,将信息用逻辑形式编码,以便能够检错和纠错。
组成:在原有信息上附加奇偶校验位,校验位被编在传输码字的特定位置上。
推导步骤:
i.确定校验位数k;
ii.与原有信息和k位校验位编成长为n+k位新编码
iii.对接收的信息作所需的k个奇偶检查
vi.若所有奇偶检查都正确,则信息无错误;
误码位置:
2 CRC(循环冗余校验码):利用生成多项式为k个数据位,产生r个校验位进行编码,其编码长度为k+r,CRC = 数据位+校验码(位置对应)。
采用模二除法运算
3 奇偶校验码:由若干位有效信息,再加上一个二进制位(校验位)组成校验码,能检错不能纠错
奇校验:“1”的个数总是奇数,否则编码至少有一位出错
偶校验:“1”的个数总是偶数,否则编码至少有一位出错
4 补码:本身带有符号位,0是唯一的(没有+0,-0的区分),所以n位的补码,表示个不同数,8位补码的范围(-128~127)
计算机系统中常采用补码来表示和运算数据,原因是补码可以简化计算机运算部件设计。
5 指令周期:是执行一条指令所需要的时间,由若干个机器周期组成,是取指令、分析指令到执行完成所需的全部时间。CPU执行过程中,取指阶段读取指令,分析指令和执行指令阶段需要操作数才去读。
6 浮点数:一般表示为,其中E为阶码,F为尾数。
阶码表示浮点数的范围,尾数表示浮点数的精度
IEEE754浮点数格式中,阶码采用移码,尾数采用补码
对阶阶段:小数向大数看齐,小阶向大阶对齐,尾数向右移(如小数点往右移,数增大)
7 冗余技术
冗余:对于实现系统规定功能时多余的那部分资源,包括硬件、软件、信息和时间。
结构冗余:按工作方法可以分为静态、动态和混合冗余
信息冗余:为了检测或纠正信息在运算或传输中的错误另外加的一部分信息
时间冗余:以重复执行指令或程序来消除瞬时错误带来的影响
冗余附件技术:为实现上述冗余技术所需的资源和技术
二、指令系统和计算机体系结构
1 计算机体系结构
CPU:是计算机的控制中心,由运算器、控制器、寄存器组和内部总线等部件组成。
控制器:程序计数器(PC)、指令寄存器(IR)、指令译码器(ID)、状态/条件寄存器、微操作信号发生器,时序产生器。
主要功能:依次访问程序之灵,进行指令译码,并协调其他设备。
a.从内存中取出一条指令,并指出下一条指令在内存中的位置。
b.对指令进行译码或测试,并产生相应的操作控制信号,以便启动规定的动作。
c.指挥并控制CPU、内存和输入输出设备之间数据的流动。
程序计数器(PC):是专用寄存器,具有寄存信息功能和计数功能,又称为指令计数器
执行流程:程序开始执行→程序起始地址送入PC→CPU修改PC内容,以便PC总是寄存下一条指令地址.
大多数的指令是顺序执行,因此修改的过程通常是PC+1;当遇到转移指令时,后继指令的地址根据当前指令的地址加上一个向前或向后转移的位移量得到,或者根据转移指令给出的直接转移的地址得到。
指令寄存器(IR):用来保存当前正在执行的指令。
当执行一条指令时,内存→数据寄存器(DR)→IR。
位数取决于指令字长。
对用户来说,是完全透明的。
指令译码器(ID):为执行任何给定的指令,对操作码进行测试,识别所要求的的操作。
IR的操作码输出就是ID的输入,即向操作控制器发出具体操作的特定信号。
地址寄存器(AR):保存当前CPU所访问的内存单元的地址。
由于内存与CPU之间存在操作速度上的差异,所以必须使用AR来保持地址信息,知道内存的IO操作完成。
数据寄存器(MDR):用于保存操作数和运算结果,目的是为节省读取操作书所需占用总线和访问存储器的时间。
累加器(AC):存放算术或逻辑运算的一个操作数(能进行运算)和运算结果的寄存器。
算术逻辑运算单元(ALU):CPU运算单元,主要负责运算工作。
2 指令系统
VLIW(Very Long Instruction Word,超长指令字):是一种非常长的指令组合,它把许多条指令连一起,提高了运算的速度。
CISC(Complex Instruction Set Computer,复杂指令集计算机):增加新指令,增强功能性,但指令系统庞大
RISC(Reduced Instruction Set Computer,精简指令集计算机):减少旧指令,简化指令功能,降低硬件设计复杂度,通过优化编译提高指令的执行速度,采用硬布线控制逻辑优化编译程序。
寻址方式:寻找操作数或操作数地址的方式。指令系统采用不同寻址方式的目的是扩大寻址空间并提高编程灵活性。
立即寻址(效率最快,但不常用):操作数包含在指令中,例如传送常数n
寄存器寻址(效率最快):操作数存放在寄存器中,指令中给出存放操作数的寄存器名
直接寻址:操作数存放在内存单元中,指令直接给出操作数所在存储单元的地址
寄存器间接寻址:操作数存放在内存单元中,内存单元地址存放在寄存器中
寄存器相对寻址:.........
基址加变址寻址:.........
相对寻址:指令地址码给出的是偏移量p,操作数地址为本指令地址a+偏移量p
变址寻址(常见):操作数等于变址寄存器的内容+偏移量
* 流水线:
指令流水线的操作周期为最大操作时间,若n级流水线,则max{time1,time2,.....,timen}
吞吐率:单位时间内流水线所完成的任务书或输出的结果数
例 1 指令流水线由4段组成,各段所需时间为1,2,3,1,连续输入8条指令的吞吐率。
答: (1)流水线执行流程:
1 2 3 1
1 2 3 1
1 2 3 1
1 2 3 1
各列的和相加,则1+3+6+7+6+4+1 = 28
(2)吞吐率:8/28
顺序执行流水线:完成 n 条指令所需时间为【】,T——执行一遍的时间
重叠流水线执行:n条指令,m个流水线时间,指令完成所需时间为t1+t2+...+tmax*(n-1)
指令不同执行方式所需的时间计算:
串行方式的计算: ,T——执行一遍的时间
流水方式的计算:n条指令,m个流水线时间,指令完成所需时间为t1+t2+...+tmax*(n-1)
流水线性能主要度量:吞吐率,加速比和效率;
吞吐率:单位时间内流水线所完成的任务数或输出结果的数量
最大吞吐率:流水线达到稳定状态后做得到的吞吐率,取决于流水线最慢的时间
加速比:等功能的非流水线执行时间与流水线执行时间之比
加速比 = k * 吞吐率
优化流水线的加速比和效率最大化:流水线各级时间相等
程序局限性:
时间局限性:如果程序中的某一指令一旦被执行,则不久的将来可能再次被执行
空间局限性:如果程序访问了某个存储单元,则在不久的将来,附近的存储单元最有可能被访问
Flynn分类法:主要根据指令流河数据流来分类,分为四类:
单指令流单数据流机器(SISD)
单指令流多数据流机器(SIMD)
多指令流单数据流机器(MISD):不具有实际意义,只存在理论之中
多指令流多数据流机器(MIMD)
三、输入输出系统
主机与外设间进行的数据传输的输入输出控制方法有程序控制方式、中断方式、DMA等,常用I/O控制方式还有无条件传送(不需要CPU指令传送数据)。
程序控制方式,由CPU执行程序控制数据的输入输出过程。
中断方式,外设准备好IO时向CPU发送中断请求,若CPU响应,则暂停当前任务,转而执行中断服务程序的IO处理,之后执行中断任务。
中断向量,提供中断服务程序入口地址
中断响应时间(CPU中断响应时间),从发出中断请求到开始进入中断处理程序的时间
多级中断嵌套:若在处理低级中断过程中又有高级中断申请中断,则高级中断处理插队低级中断,完成后处理后,返回低级中断继续处理的过程,这过程中使用后进先出的栈来保护断点和现场最有效
中断按照屏蔽,分为不可屏蔽中断和可屏蔽中断。
不可屏蔽中断:中断源一旦提出请求,CPU必须无条件相应,例如电源掉电。
可屏蔽中断:CPU可以响应,也可以不响应,例如打印机中断请求。
DMA(Direct Memory Access,直接主存存取)方式,向DMA控制器下达指令,使得数据在主存与I/O设备之间直接成块传送,并限时占用系统总线将数据传送完毕反馈结果给CPU,即CPU在一个总线周期结束(一个机器周期)时响应DMA请求。
BIOS是(B暗思春InputOutput System,基本输入输出系统):是一组固话在主板上一个ROM芯片上的程序,保存着计算机最虫咬的基本输入输出程序、开机后自检程序,可以从CMOS中读写系统设置的具体信息。
四、存储系统
1 Cache
Cache-主存层次:
(1) 主存地址与Cache地址之间由硬件完成转换。
(2) Cache的设置是为了使得CPU-内存的速度相匹配,容量相匹配(设置多级Cache,提高CPU访问主存数据或指令效率)。
(3) 为用户程序提供与主存容量相同的存储空间。
(4) Cache对用户程序透明——用户程序不需要知道Cache,使得CPU直接访问Cache间接访问主存。
2 虚拟存储器
组成:主存(主要内存)-辅存(硬盘等外设)两级存储器
虚拟存储器地址:被称为虚地址或逻辑地址
3 内存单元存储单元计算
例 1 内存单元按字节编址,地址0000A000H~0000BFFFH共有(8k)个存储单元
答:1B = 8bit,地址区间0000A000H~0000BFFFH,共有1FFF+1(,即
),1K = 1024 =
, 所以共有8K个存储单元。
4 定点整数最大值计算
例 1 某机器字长为n,最高位为符号位,其定点整数的最大值为()
答: 字长为n,则最大为,最高位为符号位,数据位有n-1位,因为0唯一,所以
5 计算机采用分级存储体系的目的:解决存储容量、成本和速度之间的矛盾。
6 CPU访问速度优先级(快→慢):通用寄存器,Cache,内存,外存
7 主存与Cache的地址映射
全相联:随机映射
直接相联:固定映射
组相联:同组号内随机映射(主存组号采用直接映射,组号内采用全相联映射)
8 存储器分类:
计算机分类依据 | 具体分类 | ||
---|---|---|---|
所处位置 | 内存 | 外存 | |
构成材料 | 磁存储器 | 半导体存储器 | 光存储器 |
工作方式 | 读写存储器 | 只读存储器 | |
访问方式 | 按地址访问的存储器 | 按内容访问的存储器(相联存储器) | |
寻址方式 | 随机存储器 | 顺序存储器 | 直接存储器 |
9 芯片求地址计算
例 1 设用2KX4位的存储器芯片组成16KX8位的存储器(地址单元为0000H~3FFFH,每个芯片的地址空间连续),则地址单元0B1FH锁在芯片的最小地址编号为()
答:(1)组成芯片组需要16个芯片,16K/2K=8,8位/4位 = 2,8 * 2 = 16
(2)两个2KX4位的芯片,组成2KX8位的芯片组,所以16KX8位的芯片组被分为8段,0000H~07FFFH......0800H~0FFFH
10 内存区域存储容量
例1 内存按字节编址从A5000H到DCFFFH的区域其存储容量为(224KB)
答:(1)存储单元数目为:DCFFFH-A5000H+1=38000H=224*1024个
(2)由于是字节编制,从而得到的存储容量为224KB
五、信息安全和病毒防护
1 防火墙
基本功能:控制在计算机网络中不同信任程度区域间传送的数据流。
其它功能:对网络通信扫描,过滤部分攻击;关闭不使用端口,隐藏内部细节;记录访问信息形成日志,提供网络使用情况统计数据。
类型:
应用级网关防火墙:是内部网和外部网的隔离点,可以对应用层的通信数据流进行监控和过滤。
包过滤防火墙:通过源IP地址、源端口号、目标IP地址和目标端口号来判断是否过滤该数据包
防护安全程度(高→低):内网、DMZ、外网
防护工作层次越高,工作效率越低,安全性越高
2 漏洞扫描系统:一种自动检测目标主机安全弱点的程序
原理:根据系统漏洞库对系统可能存在的漏洞进行验证。
作用:
攻击者可以发现目标主机安全漏洞从而针对性攻击
系统管理员可以查找系统中存在的漏洞并进行修补
3 入侵检测系统:可以检测网络入侵者
4 网络攻击
主要手段:
口令入侵:使用合法用户的账号和口令登录目的主机,再实施攻击。
特洛伊木马程序:在目标主机上伪装成本地程序,在用户执行了该程序,则会向攻击者发送IP和设定好的端口
拒绝服务(Dos)攻击:使得计算机或网络无法提供正常的服务。
网络带宽攻击:以极大的通信量冲击网络,耗尽网络资源,使得无法提供服务
连通性攻击:以大量连接请求冲击计算机,耗尽操作系统资源,使得无法提供服务。(SYN Flooding攻击)
端口扫描:利用Socket编程与目标主机的某些端口建立TCP连接、进行传输协议的验证等,从而侦测目标主机端口激活状况,主机提供哪些服务,服务中的缺陷等。
网络监听:是一种主机的工作模式,可以接收到本网段在同一条物理通道上传输的所有信息,使用网络监听工具容易窃取信息
欺骗攻击:攻击者制作一个混淆环境,诱导被攻击者做出错误决策。例如,IP欺骗
电子邮件攻击:发送垃圾邮件,可携带特洛伊木马
主动攻击:被攻击对象实施破坏性攻击的方式
被动攻击:攻击者通过持续监测,拦截等行为,获取信息的攻击方式
5 数字证书:是CA证书授权中心发放,提供身份验证的一种权威性电子文档,常被用来证明自己的身份和识别对方的身份
数字证书包含有 版本、序列号、签名算法标识符、签发人姓名、有效期、主题名、主体公钥信息等并附有CA的签名。
验证CA签名:使用CA的公钥,验证CA签名,以验证数字证书的有效性。
6 安全协议
TLS:安全传输层协议,用于通信应用程序之间提供保密性和数据完整性
SSL:安全套接层协议,为网络通信提供安全和数据完整性
PGP:基于RSA公钥加密体系的邮件加密软件
HTTPS:SSL+HTTP
IPSec:网络层的安全协议,通过加密的安全服务来确保网络上进行保密而安全的通信
SSH:专为远程登录会话和其它网络服务提供的安全协议,有效防止远程管理过程中信息泄露的问题。
7 报文摘要算法
报文摘要:用来保证数据完整性,当数据改变,摘要也改变
RSA:基于大数定律,对信息摘要进行签名
8 DMZ区:为解决安装防火墙后外部网络无法访问内部网络服务问题,而设立的缓冲区,通常放置公开的服务器设施,如企业Web服务器,FTP服务器和论坛等
9 加密算法算法:
对称加密算法(共享密钥加密):DES,3-DES,RC-5、IDEA、AES
非对称加密算法(公开密钥加密算法):RSA、ECC(椭圆加密算法)、DSA(公钥数字签名算法)、DlGamal、背包算法、Rabin、迪菲-赫尔曼密钥交换协议中的公钥加密算法
IDEA、RC4:数据传输加密
MD5:摘要算法,对任意长度的输入计算得到的结果长度为128位
10 病毒
特征:隐蔽性、传染性、潜伏性、触发性和破坏性
根据感染途径以及采用技术区分:
文件型:可以感染可执行文件(包括EXE和COM文件)
引导型(CIH):感染软盘或硬盘的引导扇区
宏病毒(Macro):文档文本(text,world,excel,ppt等),数据库(.db)等文件
目录型:修改硬盘上存储的所有文件的地址
宏病毒:打开带有宏病毒的文档文本文件,自我复制到通用模板中,传播到所有文件上
特洛伊木马(冰河):秘密潜伏且能够通过远程网络控制的恶意程序。
蠕虫病毒(震网病毒,红色代码,爱宠病毒,Nimda病毒,爱丽兹病毒,欢乐时光,熊猫烧香):驻于若干台机器中,会扫描其它机器是否有感染同种计算机蠕虫,若没有则会感染,已达到计算机瘫痪的目的。
六、系统性能评测和可靠性基础
1 可靠度:
计算可靠度:
串行:R1R2……Rn
并行:(1-(1-R1)(1-R2)……(1-Rn))
2 可靠性:一个系统对于给定时间间隔内,在给定条件下无失效运作的概率
决定可靠性的因素:软件潜在错误的数量和位置,产品的使用方式
计算可靠性:MTTF/(1+MTTF) MTTF——平均无故障时间
3 可用性:在给定的时间点上,一个软件系统能够按照规格说明正确运行的概率。
计算可用性:MTBF/(1+MTBF) MTBF——平均失效间隔时间
4 可维护性:在给定的使用条件下,在规定的时间间隔内,使用规定的过程和资源完成维护活动的概率。
计算可维护性:1/(1+MTTR) MTTR——平均修复时间
七、总线系统
总线:连接计算机有关部件的一组信号线,是计算机中用来传送信息代码的公共通道。
优点:
* 简化系统结构,便于系统设计制造
* 大大减少连接数目,便于布线,减小体积,提高系统可靠性
便于接口设计,所有与总线连接的设备均采用类似的接口
便于系统的扩充、更新与灵活配置,易于实现系统的模块化
便于设备的软件设计,所有接口的软件就是对不同的接口地址进行操作
* 便于故障诊断和维修,同时降低成本
总线复用方式:可以减少总线中信号线的数量,以较少的信号线传输更多的信息
总线带宽计算:
例1 总线宽度为32bit,时钟频率为200MHz,若总线每5个时钟周期传送一个32bit的字,则带宽为(160)MB/s
答:(1)统一单位,32bit/8bit = 4B
(2)带宽=总线宽度*每个时钟周期中的时钟频率 = 4B * 200MHz / 5 = 160 MB/s
系统总线:又称内总线或班级总线,用于连接各功能部件。
数据总线DB、地址总线AB、控制总线CB
地址总线:决定字长,例如字长为32,则宽度为32
数据总线:决定内存容量,例如内存容量4GB,则宽度为32
常见系统总线:
ISA总线:是一种8/16位的数据总线
EISA总线:是一种特殊ISA总线,两条ISA总线之间添加一条EISA总线
PCI总线:是一种新型数据总线