软件评测师知识点整理根据大纲.docx
- 文档编号:5394772
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:104
- 大小:611.20KB
软件评测师知识点整理根据大纲.docx
《软件评测师知识点整理根据大纲.docx》由会员分享,可在线阅读,更多相关《软件评测师知识点整理根据大纲.docx(104页珍藏版)》请在冰豆网上搜索。
软件评测师知识点整理根据大纲
资料整理
书码参考《软件评测师考试考点分析与真题解析》一书
下午考试题目
章节/章节
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
1、软件评测基础知识
有
有
有
有
2、测试用例设计方法
有
有
有
有
有
有
有
有
有
有
有
3、软件测试技术与应用
有
有
有
有
有
有
4、性能测试
有
有
有
有
有
有
有
有
有
有
5、安全测试与信息安全知识
有
有
有
有
有
有
有
有
6、测试项目管理
有
有
有
1、计算机系统构成及硬件基础知识(科1大纲1.1)
计算机系统的构成
硬件系统
由中央处理单元CPU(运算器、控制器)、存储器、输入设备和输出设备组成;分为单总线结构、双总线结构
软件系统
由应用软件和系统软件给成
Ps:
输入设备---存储器(内)---控制器---输出设备
计算机体系结构分类、按Flynn、冯氏分类
Flynn分类:
指令流、数据流、多倍性三方面进行分类。
单指令流单数据流(SISD):
控制器1、处理器1主存模块1
单指令多数据流(SIMD):
控制器1、处理器N主存模块N代表:
并行(阵列)处理机、超级向量处理机等
多指令流单数据流(MISD):
没有这种计算机
多指令流多数据流(MIMD):
控制器N、处理器N主存模块N代表:
多计算机
冯氏:
以计算机系统在单位时间内所能够处理的最大二进制位数分类。
处理机
组成
运算器:
对数据进行加工处理的部件,完成算术运算、逻辑运算和其他操作
控制器:
从内存中取出指令,并指出下一条指令的存储位置;控制和协调整个计算机的动作
功能
程序控制,操作控制,时间控制,数据处理
运算器和控制器组成中央处理器CPU。
运算器负责完成算术、逻辑运算功能。
通常由ALU(算术逻辑单元)、寄存器、多路转换器、数据总线组成。
控制器负责方位程序指令,进行指令译码,并协调其他设备。
通常由程序计数器(PC)、指令寄存器、指令译码器、状态/条件寄存器、时序发生器、微操作信号发生器组成。
程序计数器,也叫IP(EIP)(PC),用来存储下一条指令的地址。
可以通过call,jmp等跳转指令间接改变,可以用Move,push等读出其值,但是不可写。
(程序员可以访问)
指令寄存器(IR )用来保存当前正在执行的一条指令。
当执行一条指令时,先把它从内存取到内存数据寄存器(MDR)中,然后再传送至IR。
指令寄存器的位数取决于指令的子长。
对用户是透明的,用户不能访问。
指令译码器:
对当前指令进行译码
状态/条件寄存器:
保存在计算过程中的状态和条件
定时与控制电路PLA:
产生各种微操作控制信号。
标志寄存器FR:
记录运算器重要状态或特征。
专用寄存器:
有特定功能和用途,例如程序计数器,标志寄存器都为专用寄存器
通用寄存器:
存放运算中间结果。
存取数据—>用户
主存与CPU之间的硬连接:
主存与CPU的硬连接有三组连线:
地址总线(AB)、数据总线(DB)和控制总线(CB)。
把主存看作一个黑盒子,存储器地址寄存器(MAR)和存储器数据寄存器(MDR)是主存和CPU之间的接口。
MAR可以接收由程序计数器(PC)的指令地址或来自运算器的操作数的地址,以确定要访问的单元。
MDR是向主存写入数据或从主存读出数据的缓冲部件。
MAR和MDR从功能上看属于主存,但通常放在CPU内。
CPU特性:
指令周期:
取出并执行一条指令所需的时间,也称机器周期
总线周期:
指从CPU存储器或I/O端口存取一个字节所需的时间,也称为主振周期
时钟周期:
指CPU处理动作的最小单位,通常我们说的I5,2.6GHZ(处理一个动作花费1/2.6GHZ)
关系:
一个指令周期可以划分为一个或多个总线周期,一个总线周期又可以划分为几个时钟周期
字长:
CPU进行运算和数据处理的最基本、最有效的信息位长度。
参见数据总线
基本输入/出设备
纸带机、卡片机——大型计算机的输入设备;
键盘、鼠标;
显示器;——触摸屏实际上是显示器与鼠标的结合
外存——是主存的辅助和延伸,主要有软盘、硬盘、光存储器、磁带机、闪存
打印机
图形图像摄影输入设备——包括扫描仪、数码相机、数字摄像机
外设的访问
1、程序查询方式:
由cpu执行程序控制数据的输入输出过程
2、中断方式:
外设准备好输入数据或接受数据时向CPU发出中断请求信号,若CPU决定相应该请求,则暂停正在执行的任务,转而执行中断服务程序进行数据的输入和输出处理,之后再回去执行原来被中断的任务。
3、DMA:
CPU只要想DMA控制器下达指令,让DMA控制器来处理数据的传送。
数据传送完毕后再把信息反馈给CPU,这样就很大程度上减轻的CPU的负担
计算总线数据传输速率
总线数据传输率=时钟频率/每个总线包含的时钟周期x每个总线周期传送的字节数
例如:
某系统总线的一个总线周期包含3个时钟周期,每个总线周期中可以传送32位数据。
若总线的时钟频率为33MHz,则总线的带宽(即传输速度)应该是多少?
根据上述公式得出:
33MHz/3×32b=11M×4=44MB/S
计算机系统速度(指令/秒、事物项/秒)
每秒指令数=时钟频率/每个总线包含的时钟周期/指令平均占用总线周期数
Ps:
时钟频率很大程度上决定了计算机的运算速度
总线:
是cpu、内存、输入、输出设备传递信息的公用通道。
数据总线DB:
用于传送数据信息、(双向)
地址总线AB:
用来传送地址、单向CPU指向内存或者其他寄存器。
控制总线CB:
用来传送控制洗脑和时序信号、(双向)
总线复用:
减少总线中信号线的数量
地址总线宽度
地址总线宽度决定了CPU可以访问的物理地址空间,简单地说就是CPU到底能够使用多大容量的内存。
1KB=1024B;1MB=1024KB=1024×1024B。
其中1024=210。
1B(byte,字节)=8bit(见下文);
8位为一个字节
1KB(Kibibyte,千字节)=1024B=2^10B;
1MB(Mebibyte,兆字节,百万字节,简称“兆”)=1024KB=2^20B;
1GB(Gigabyte,吉字节,十亿字节,又称“千兆”)=1024MB=2^30B;
地址线的宽度为32位,最多可以直接访问4096 MB(4GB)的物理空间。
2^32B=4GB
数据总线宽度
负责整个系统的数据流量大小、如果数据总线的宽度为32,则字长为32
控制总线
存储系统
存储器结构
高速缓存(cache),主存储器(MM)和辅助存储器(外存储器)
分类
按位置分:
内存(主存)、外存(辅存)按访问方式分:
按地址访问和按内容访问
按材料分:
磁存储器、半导体存储器、光存储器
按寻址方式分:
随机存储器(RAM)和直接存储器(DAM)、顺序存储器(RAM)
按工作方式分:
读写存储器、只读存储器按内容方式分:
相联存储器(CAM)
相连存储器
是一种按内容访问的存储器,把数据或数据的一部分作为关键字,将该关键字与存储器中的每一个单比较,找出存储器中所有与关键字相关的数据字
高速存储器
组成:
控制部分和cache部分
地址映象方法:
直接映象、全相连映象、组相连映象
替换算法:
随机替换算法,先进先出算法、近期最少使用算法、优化替换算法
性能分析:
主存的访问时间/计算机实际访问时间
虚拟存储器
由主存、辅存、存储管理单元及操作系统中的存储管理软件组成,分类页式、段式、段页式虚拟存储器
外存储器
用来存放暂时不用的程序和数据,并且以文件的形式存储。
CPU不能直接访问外存中的数据,只有将其以文件为单位调入主存方可访问;由磁表面存储器及光盘存储器构成;磁盘存储器、光盘存储器
磁盘阵列技术
由多台磁盘存储器组成的,一个快速大容量高可靠的外存子系统,常见为廉冗余磁盘阵列(RAID),RAID分为6级
存储器分为:
主存储器、辅存储器、Cache三种。
存储器存取方式:
顺序存取(磁带)、直接存取(磁盘)、随机存取(主存储器)、相联存取(Cache:
根据内容来寻址)。
存储器的性能
存储时间:
对随机存取,就是完成一次读写所花时间。
对非随机存取,就是将读写装置移动到目的位置所花的时间。
存储器带宽:
每秒能方位的位数。
通常存储器周期是纳秒级。
计算公式:
1/存储器周期X每周期可访问的字节数
数据传输率:
每秒输入/输出的数据位数。
随机存取:
传输率R=1/存储器周期非随机:
读写N位所需的平均时间=平均时间+N位/数据传输率
主存储器(内存储器)
1、RAM:
随机存储器:
只能暂时存数据,断电后数据无法保存。
SRAM:
静态随机存储器:
在不断电时信息能够一直保存(Cache材料)
DRAM:
动态随机存储器,需要定时刷新以维持信息不丢失(内存材料)
2、ROM:
只读存储器,出厂前用掩膜技术写入,常用于存放BIOS和微程序控制。
3、PROM:
可编程ROM,只能够一次写入,需用特殊电子设备写入
4、EPROM:
可擦除的PROM,用紫外线照射15-20分钟可擦除信息,可写入多次
5、E2PROM:
电可擦除EPROM,可以写入,但是速度很慢
6、闪存存储器:
速度介于EPROM和E2PROM。
但是不能机型字节级别的删除
主存储器的组成
实际存储器是由一片或多篇存储器配以控制电路构成。
其容量为W*B,W是存储单元(word字)的数量,B表示每个word由多少bit组成,如果一个芯片规格为w*b,则组成W*B的存储器需要(W/w)*(B/b)个芯片。
主存储器的地址编码
主存储器(内存)采用随机存取方式,需对每个数据块进行编码,而在主存储器中,数据块是以word为单位来标识的,即每个字一个地址,通常采用十六进制表示。
按字节编址,地址从A4000H-CBFFFH。
则地址表示CBFFF-A4000+1字节,即28000H字节,也就是16340字节,等于160KB
Ps:
编址的基础是可以字节,也可以是字。
要计算地址位数,首先应计算要编址的字或字节数,然后求得对数即可得到
Cache(硬件来实现)
Cache高速缓冲存储器是存在于主存(内存)与CPU之间的一级存储器,由静态存储器芯片(SRAM)组成,容量比较小但速度比主存高得多,接近于CPU的速度。
但其成本更高,比内存小得多。
使用Cache改善系统性能的主要依据是程序的局部性原理。
时间局部性原理:
程序访问某条指令不久的将来还会访问这条指令。
空间局部性原理:
程序访问某条指令,它的附近指令可能会被访问到。
Cache的访问的命中率为h(通常1-h就是Cache的是效率),Cache的方位周期时间是t1,主存储器的方位周期时间害是t2,整个系统的平均访存时间就是t3=h*t1+(1-h)*t2
Cache存储器的映射机制
分配给Cache的地址存放在一个相联存储器(CAM)CPU发生访存请求时,如果命中就直接使用。
这个判断的过程就似乎Cache地址映射。
主存的块和Cache块大小是一致的
常见的映射3种:
直接映射:
一种多对一的映射关系,但一个主存块只能够复制Cache的一个特定的位置上去。
Cache的行号i和主存的块号j有函数关系i=j/m(m为Cache的总行数)
某Cache容量为16KB(可用14位表示),每行的大小为16B(即可用4位表示),则说明其可分为1024行(可用10位表示),主存的低4位为Cache的行内地址,中间10位为Cache行号。
如果内存地址为1234E8F8H,那么最后4位就是1000(对应十六进制数的最后一位),而中间10位,则对应E8F(111010001111)中获取,得1010001111.
全相联映射:
将主存中一个块的地址与块的内容一起存于Cache的行中,任一主存块能映射到Cache中任意行。
速度更快,但控制复杂。
组相联映射:
前两种方式的折中方案。
按照Cache的比例分成区,每个区内分组和Cache分组方式一致
As:
容量为64块的Cache采用组相联的方式映射,字块大小是128字,每4块为一组。
如主存容量为4096块,且以字编址,那么主存地址应该为多少位,主存区号为多少位。
4096=2^12、128=2^7,因此需19位主存地址
内存需要分为4096/64个区,即2^6,因此主存区号需要6位。
Cache淘汰算法
当Cache数据已满,并且出现未命中情况时,就要淘汰一些老的数据
3钟淘汰方式:
随机淘汰算法、先进先出淘汰算法(FIFO)、最近最少使用淘汰算法(LRU)
Cache存储器的写操作
在使用Cache时,需要保证数据与主存一致,因此在写Cache时就要考虑与主存间同步问题。
写直达:
命中时同步发生修改。
写回,Cache的数据被换出才写回主存。
标记法:
标记有效位。
磁带存储器
顺序存取设备,时间长,容量大,用于大数据量的备份。
读写方式不同:
启停式、数据流式
磁盘存储器
计算磁道数:
(外半径-内半径)*道密度*记录面数
非格式化容量*=位密度*兀*最内圈直径*总磁道数
格式化容量=每道扇区数*扇区容量*总磁道数
平局数据传输率=每道扇区数*扇区容量*盘片转数
存取时间=旋转定位时间+寻道时间+数据传输时间
SCSI接口是小型计算机系统接口的简称,它是一种输入/输出接口,主要用于光盘机、磁带机、硬盘扫锚仪、打印机等设备。
RAID:
独立磁盘冗余阵列。
堕胎磁盘存储器组成一个快速、大容量、高可靠性的辅助存储子系统。
指令系统基础
指令由操作码和地址码两个部分组成。
指令系统中用来确定如何提供操作数或提供操作数地址的方式成为寻址方式和编址方式。
分为四大类:
立即寻址:
直接给出操作数而非地址
直接寻址:
直接给出操作数地址或所在存储器号(寄存器寻址)
间接寻址:
给出的是指向操作数的地址的地址
变址寻址:
给出的地址需与特定的地址值累加从而得出操作数地址
RISC和CISC
CISC:
复杂指令计算机:
为提高操作系统的效率,人们最初选择向指令系统中添加更多、更复杂指令来实现,导致指令集越来越大
RISC:
精简指令计算机:
对指令数目和寻址方式做精简,指令的指令周期相同,采用流水线技术,指令并行执行程度更好。
硬布线控制与微程序相结合。
目前RISC技术采用并行处理技术,超级流水线,超级标量,超常指令字,大幅度提高运算速度。
流水线技术:
指程序执行时多条指令重叠进行操作的一种任务分解技术。
计算执行:
任务分成N个子任务,每个子任务需要时间t。
完成该任务为Nt。
若完成k个任务为Nt+(K-1)t。
Ps,如果每个子任务所需的时间不同,其时间取决于执行顺序中最慢的那个。
流水线吞吐率:
单位时间流水线完成的任务数量或输出的结果数量
加速比:
不采用流水线的执行时间/采用流水线的执行时间。
影响流水线的主要因素1、转移指令2、共享资源访问的冲突3、响应中断。
并行处理技术:
同一时刻或同一时间间隔内完成两种或两种以上性质相同或不同的工作。
只要在时间上互相重叠,都存在并行性。
措施:
1、时间重叠(多个处理过程在时间上错开)2、资源重复(引入多套硬件设备)3、资源设备(轮流使用CPU等)
输入输出
程序查询、中断控制、DMA方式、I/O通道控制方式
程序查询方式:
由cpu执行程序控制数据的输入输出过程
中断方式:
外设准备好输入数据或接受数据时向CPU发出中断请求信号,若CPU决定相应该请求,则暂停正在执行的任务,转而执行中断服务程序进行数据的输入和输出处理,之后再回去执行原来被中断的任务。
直接存储器存取DMA:
CPU只要想DMA控制器下达指令,让DMA控制器来处理数据的传送。
数据传送完毕后再把信息反馈给CPU,这样就很大程度上减轻的CPU的负担
循环冗余校验码:
K位数据位后跟R个校验位。
浮点数和定点数
定点数(FixedPointNumber)。
在这种表达方式中,小数点固定的位于实数所有数字中间的某个位置。
货币的表达就可以使用这种方式,比如99.00或者00.99可以用于表达具有四位精度(Precision),小数点后有两位的货币值。
由于小数点位置固定,所以可以直接用四位数值来表达相应的数值。
SQL中的NUMBER数据类型就是利用定点数来定义的。
还有一种提议的表达方式为有理数表达方式,即用两个整数的比值来表达实数。
定点数的补码和移码可表示为2^n个数,而其原码和反码只能表示2^(n-1)个数。
(0占用了两个编码),因此定点数表示范围比较小,运算容易造成范围溢出。
浮点数;这种表达方式利用科学计数法来表达实数,即用一个尾数(Mantissa),一个基数(Base),一个指数(Exponent)以及一个表示正负的符号来表达实数。
比如123.45用十进制科学计数法可以表达为1.2345×102,其中1.2345为尾数,10为基数,2为指数。
浮点数利用指数达到了浮动小数点的效果,从而可以灵活地表达更大范围的实数
原码、补码、反码
1、原码就是符号位加上真值的绝对值,即用第一位表示符号,其余位表示值.比如如果是8位二进制:
[+1]原 =00000001[-1]原 =10000001
第一位是符号位.因为第一位是符号位,所以8位二进制数的取值范围就是:
[11111111,01111111]即-127到127
2、反码的表示方法是:
正数的反码是其本身,负数的反码是在其原码的基础上,符号位不变,其余各个位取反
[+1]=[00000001]原=[00000001]反
[-1]=[10000001]原 =[11111110]反
3补码的表示方法是:
正数的补码就是其本身,负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后+1.(即在反码的基础上+1)
[+1]=[00000001]原 =[00000001]反 =[00000001]补
[-1]=[10000001]原 =[11111110]反 =[11111111]补
补码的出现,解决了0的符号以及两个编码的问题:
=1+(-1)=[00000001]原 +[10000001]原 =[00000001]补 +[11111111]补 =[00000000]补=[00000000]原
这样0用[00000000]表示,而以前出现问题的-0则不存在了.而且可以用[10000000]表示-128:
(-1)+(-127)=[10000001]原 +[11111111]原 =[11111111]补 +[10000001]补 =[10000000]补
-1-127的结果应该是-128,在用补码运算的结果中,[10000000]补 就是-128.但是注意因为实际上是使用以前的-0的补码来表示-128,所以-128并没有原码和反码表示.(对-128的补码表示[10000000]补算出来的原码是[00000000]原,这是不正确的)
使用补码,不仅仅修复了0的符号以及存在两个编码的问题,而且还能够多表示一个最低数.这就是为什么8位二进制,使用原码或反码表示的范围为[-127,+127],而使用补码表示的范围为[-128,127].
移码:
移码最简单了,不管正负数,只要将其补码的符号位取反即可。
例如:
X=-101011,[X]原=10101011 ,[X]反=11010100,[X]补=11010101,[X]移=01010101
2、程序语言基础(科1大纲1.6)
程序设计语言基本概念
低级语言和高级语言
低级语言:
机器语言和汇编语言称为低级语言
机器语言是指0、1组成的机器指令序列;汇编语言指用符号表示指令的语言。
高级语言:
人类的逻辑思维角度出发,面向各类应用还程序语言。
高级语言或汇编语言编写的程序成为源程序。
源程序不能直接在计算机上执行。
1、如果源程序是汇编语言编写的,则需要一个称为汇编程序的翻译程序将其翻译成目标程序,然后才能执行
2、如果源程序是为高级语言时,这个翻译程序车工那位编译程序
3、按源程序中语句的执行顺序,逐条翻译并立即执行相关功能的处理程序,称为解释程序。
编译执行:
编译阶段,把原程序翻译为目标程序(obj);运行阶段,真正执行此目标程序。
解释执行:
源程序每个语句一经解释就立即执行。
编译系统基本原理
编译程序的工作过程可以分为6个阶段:
词法分析,语法分析,语义分析,中间代码生成、代码优化、目标代码生成。
其中符号管理和出错处理贯穿前后整个过程。
词法分析:
输入源程序,对构成源程序的字符串扫描和分解,识别出一个个的单词,删掉无用信息,报告分析时的错误。
一个程序语言的基本语法符号分为五类:
关键字(if等)、标识符(定义的变量)、常量、运算符(+)、界符(小括号、尖括号)。
词法分析其所输出单词符号常常表示成如下的二元式:
(单词种别,单词符号的属性值)
描述词法规则通常用:
正规式和有限自动机
状态转换图
状态转换图是状态有限的有向图,有圆圈表示结点状态,结点之间有向边代表状态转换,有向边上可标记字符,表示前一状态接受某一个字符后的状态转移。
功能:
用于识别一定的字符串
要求:
状态(即结点)个数有限、至少一个初始状态若干终止状态、每条边上标有字符(也可以是空字符)
表示习惯:
初始态用“o”表示。
。
。
终态是双圈。
多度进字符用*表示
正规表达式和正规集//待整理
初始态;终止状态(接收状态);
后继状态:
有限状态机在读入一个字符时,其状态改变为另一个状态,则改变后的状态被称为后继状态。
如果有限状态机每次转换后状态时唯一的,则称为确定有限状态自动机(DFA)
M={s,。
。
。
}
编译工序:
词法分析:
编译过程的第一阶段,从左到右逐个字符扫描,从中识别出一个个单词符号
语法分析:
根据语言的语法规则将单词符号序列分解成各类语法单位。
编译检查
语义分析:
主要分析程序中各种语法结构的语义信息。
静态语义分析,动态运行
在高级程序中:
语句用语描述程序中的运算步骤、控制结构和数据传输
标符:
为数据,子程序,函数,变量等命名。
3、操作系统(科1大纲1.2)
操作系统的中断控制、进程管理、线程管理
中断控制
作用
CPU可以不用等待I/O的状态,直接去处理其他业务,I/O系统使用中断信号通知CPU,CPU转入中断处理程序中,完成与I/O系统的数据交换,提高了CPU的效率
处理方法
多中断信号线法、中断软件查询法、雏菊链法、总线仲载法,中断向量表法
中断优先级控制
当不同优先级的多个中断源同时提出中断请求时,CPU应优先响应高优先级的中断源,最先响应高优先级
从资源管理的观点看,操作系统的功能分成5部分:
处理机管理,存储管理,设备管理,文件管理,作业管理(p75)
处理机管理
进程:
是可以与其他程序并发执行的一次执行过程,进程是运行中的程序,是程序的一次运行活动。
进程是一个动态的概念,而程序是静态的概念,是指令的集合。
所以进程具有并发性和动态性。
进程控制块(PCB)来标记进程,进程控制块是进程存在的唯一标志。
进程是由进程控制
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 评测 知识点 整理 根据 大纲