软件设计师学习笔记

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件设计师考试笔记
********************初等部分*************************** 关于数据的校验,海明码校验
区位码:将国际码,即ASCII 码的码位图分成94 个区,每个区分94 个位,得到区位图,形成的就是区位码。

将区位码的区号和位号分别加上160,然后用十六进制表示就是机内码,即国际码。

设汉字以16*16 的点阵输出,则每个汉字所占的空间数为
16bit*16bit=32B
两级汉字6763 个字符和一些特殊字符要占用更大的存储空间。

磁盘的存储容量=柱面数*磁道数*每道扇区数*每扇区字节数寻道时间:磁头移动到目标磁道所需的时间
等待时间:找到目标扇区所需时间
数据传输率:找到地址后,单位时间内写入或读取的字节数
磁盘的磁道是一些由中心到边缘的同心圆,所以越中心位密度越大。

Cache 通常由较快的静态半导体存储器制成。

读写机制:写通法,写回法,标记法。

淘汰算法:随机淘汰,先进先出算法,最近最少使用算法。

命中率为=Cache 的存取次数/Cache 和内存加在一起的存取次数CPU 的存储时间=Cache 的存取周期*Cache 命中率+主存存储周期*命中主存率注:不命中Cache 就会命中主存
囊都文字
总线带宽=(总线位宽/8)*总线工作频率
还要看一个总线周期包含N 个时针周期,相应总线的工作频率=总线时针频率/N
一个机器周期包括4 个时钟周期,而执行一个条指令需要三个机器周期。

MIPS 代表的是每秒执行的指令数。

进程调度方式:非剥夺方式,剥夺方式。

进程调度算法:先来先服务,优先级调度算法,轮转法,多级反馈调度。

多级反馈就是时间片轮和优先级算法的结合与发展。

进程之间的通信:
同步是指在异步环境中,各进程通过消息发送而进行相互合作,相互等待,使各进程按一定的速度执行。

互斥是为了保证某一临界资源在某一时刻只能被一个进程访问。

临界区的管理原则:有空即进,无空则等,有限等待和让权等待。

进程的控制:
支持功能:中断处理,时钟管理,原语操作。

资源管理功能:进程管理,存储器管理和设备管理。

页面调度算法:先进先出,WIN NT 系统使用,最优算法,最近最少使用,最近未用转换算法。

作业调度算法:
单道批量处理:先来先服务,短作业优先,响应比高者优先。

多道批量处理:优先级调度,均衡调度算法。

响应比=(估计运行时间+等待时间)/估计运行时间内存储器的管理
地址重定位是指将逻辑地址转换为物理地址的过程。

分为静态和动态重定位,即在程序运行前或后完成逻辑地址到物理地址的转换。

分区存储管理:有固定和可变分区存储管理。

分区的保护采用上下界寄存器保护法或基址加限长寄予存器保护法。

并发进程和系统核心
进程是一个静态定义和动态运行相结合的要领具有动态性和并发性。

进程是由程序块,进程控制块PCB 和数据块组成的,程序块是进程的任务,数据块包括数据和工作区,二者构成进程的实体。

PCB 进程控制块是进程存在的惟一标志,包括:描述信息,控制信息,资源管理信息和CPU
的现场保护信息。

信号量的PV 操作,信号量是为了解决进程的同步和互斥而引进的,它是一种核心的数据结构,P 表示信号减一,V 表示信号加一。

且PV 操作总是成对出现的。

进程的死锁是指两个以上的进程互相要求对方已经占有的资源导致无法继续运行下去的现象。

进程死锁的四个条件:互斥条件,保持和等待条件,不剥夺条件和环路等待。

处理死锁:不理睬,破坏死锁的四个条件之一,精心地分配资源动态地回避死锁检测并能解除死锁。

通道技术:专门用于数据传输工作,分为字节多路通道,数组选择通道和数组多路通道。

DMA 技术:直接主存存取,是数据直接在IO 设备和主存之间的直接成块传送。

缓冲技术:提高外部设备的利用率,分为硬件和软件缓冲。

中断和通道技术使CPU 与外设之间的并行操作成为可能,缓冲则解决CPU 的高速与外设的低速而实现速度上的匹配。

假脱机技术:简称SPOOLing,它利用多道程序技术,采用一组程序或进程模拟一组输入输出处理操作。

如虚拟设备和多窗口技术均是采用假脱机技术。

文件管理:
文件设备块上空闲块的管理方法有三种,索引法,链接法和位图法。

文件控制块FCB 是文件存在的惟一标志,其中包含相应文件的基本属性信息文件控制块的有序集合就是文件目录。

文件安全管理包括系统级,用户级,目录级和文件级的保护。

作业控制:
分为脱机和连机控制两种方式。

一个作业从提交到完成,要经历提交,收容,执行和完成四个状态。

处理机调度通常分为三级,低级,中级和高级调度。

高级调度又称作业调度,任务是为作业建立进程,分配资源。

中级调度又称交换调度,它决定进程在内,外存之间调入调出。

低级调度又叫进程调度,它决定处理机在就绪进程间的分配。

作业的预输入和作业的结果输出由称为假脱机的处理程序专门完成。

假脱机处理程序将作业从输入设备输入到称为输入井的处存空间中,输入井中的作业处于后备状态,称它们为后备作业,假脱机处理程序使作业由提交状态变为后备状态。

动态重定位技术可以在执行代码时临时计算出内存地址,装入内存的程序可以在内存或外存中移动。

实现虚拟存储技术。

单道程序系统中,主存区域的用户空间全由一个作业进程占用,常不对内存地址进行保护,易引起冲突而使系统瘫痪。

设备分类方法:
按工作特性分,存储设备,输入输出设备。

资源分配看,独占设备,共享设备和虚拟设备
使用特性分,存储设备,输入输出设备,终端设备以及脱机设备。

从属关系,系统设备和用户设备。

按信息组织方式,字符设备和块设备。

块设备如磁盘和磁带。


件逻辑结构分为两种结构:流式文件和记录式结构两种。

物理结构分为顺序,链接,索引结构三种。

作业已等待的时间/需要执行的时间=响应比完成时间-到达时间=周转时间
有关数据库应重点加强
*************************************** 多媒体三个基本特征:集成性,实时性,交互性。

综合处理文本,图形,图像,音频和视频等多媒体信息,使它们建立逻辑连接,
集成为一个交互式的系统。

信号的获取,压缩编码解码技术,实时处理技术和特技,输出技术。

声音的三个指标:音量即响度,单调和音色。

音频信号的获取方式有三种,波形,MIDI,CD 音频。

音频信号的数字化,最常用的编码方法是脉冲编码调制技术PCM,PCM 分为采样,量化和编码三个步骤。

数据传输率=采样频率*量化位数*声道数人的听觉带宽一般为
20HZ-20KHZ
数字音频的采样频率为44.1KHZ
任何颜色有仅加入白光会引起饱和度的变化,通常把色调和饱和度称为色度。

饱和度讲某种色彩的颜色深度。

亮度是讲眼睛看上去的明暗程度。

色调是人眼所产生的色彩感觉。

三原色,即红绿蓝,它们的混合可形成任何的颜色,所以说它们是三基色。

256 色=2 的8 次方,则一个256 色的每个象素点就要用一个字节八位来表示。

分辨率就是表示有X*Y 个象素点表示一个静态的画面。

位图是以象素点的形式表示的
适量图是按数学方式描述出来的几何性质。

VOD 系统包括:视频服务器,编码器/路由器,用户请求计算机和记账计算机,机顶盒。

网络七层模型:物理层
数据链路层网络层
运输层,叫传输层好听点会话层
表示层应用层
衡量网络安全性的五个基本指标是:真实性,保密性,完整性,可用性,实用性和占有性。

常用的网络安全措施有:标志与验证机制,网络访问控制机制,加密机制,信息完整性机制认证和审计机制。

网络的信息安全技术有:访问控制与目录管理,数据加密技术,身份验证与鉴别。

防火墙是建立在内外网络边界上的过滤封锁机制,认为内部网络
是可信的,外面则不可信。

防火墙可分为:过滤防火墙,应用代理防火墙和状态监测防火墙。

防火墙的体系结构:过滤路由器,双宿主主机,屏蔽主机网关和被雪困住屏蔽子网。

网络按交换方式分为线路交换和报文交换,都属于存储转发交换方式。

其中分组交换又分为虚电路交换和数据报,一个面向连接,一个面向非连接。

ADSL 称为非对称数字用户线。

有两种方式接入:Modem 虚拟拨号和ADSL 专线设备。

ISDN 称为综合业务数字网,双称一线通。

1000BaseLX 是指千兆以太网,它使用单模光纤作为传输介质。

网卡有一个生产时就决定了的六字节MAC 地址,并写入到网卡。

物理层
机器连入网络后,使用ARP 协议可以实现IP 地址到MAC 地址的动态映射。

中继器是一个转发或重发器。

物理层
集线器相当于多端口的网桥。

物理层
网桥是在数据链路层把网段相互连接起来。

数据链路层交换机相当于多个网桥。

网络层
网关是协议转换器,用来连接不同协议的网络。

第四层以上
局域网模型中:数据链路层分为逻辑链路控制子层和网络接口访问控制子层。

ARP 协议是一种地址解析协议,它存在于网际层中。

传输层的协
议有TCP 和UDP 两种。

网络协议有三要素:语义,语法和定时也称为记时,包括速度匹配和排序等。

PPP 协议叫Point To Point 点对点协议,支持动态分配。

N-ISDN 为普通用户提供基本速率接口,是2B+D 链路,B 信道通常用于传送数据,带宽是64kb/s,D 信道用于传送控制信号,带宽是16kb/s。

在特定情况下D 信道也可以传送用户数据,所以N-ISDN 速度可达144kb/s。

N-ISDN 为商业用户提供基群速率接口,是30B+D 链路。

因此总通信速率达到2.048Mb/s。

DSL 称为数字用户线路Digital Subscriber Line。

程序设计语言的定义一般包括:语法,语义和语用。

一个汇编语句通常划为四个区:标号区,操作码区,操作数区和注解区。

软件开发模型主要有:瀑布模型,演化模型,螺旋模型,喷泉模型和智能模型。

演化模型是在快速开发一个原型的基础上,逐步演化成最终的系统。

螺旋模型则综合了瀑布模型和演化模型的优点并增加了风险分析。

软件工程中描述生命周期的瀑布模型一般包括:计划,需求分析,软件设计,编码测试及维护几个阶段。

软件设计阶段通常又可以分为概要设计和详细设计两步。

软件工程技术应该遵循分解,一致性,确定性及抽象和信息隐蔽的原则。

软件计划阶段应该依次完成系统定义,软件计划和需求分析的任务。

可行性研究包括:技术可行性,经济可行性,法律可行性以及社会可行性。

软件开发环境对软件产品的开发提供了支持,包括:软件开发工具可细分为,需求分析工具,设计工具和编码与排错工具。

集成软件开发环境:数据集成,界面集成,控制集成,过程集成和平台集成。

在数据流图中,箭头表示数据流,圆圈表示加工,用方框表示源/宿
用双横线上的进入及离开箭头表示数据存储。

模块独立性要追求低耦合,按耦合度从低到高可分为:非直接耦合,两模块任何一个都不信赖另一模块
数据耦合,利用参数表在模块间传递数据
标记耦合,当一个数据的一部分借助于模块接口被传递
控制耦合,传递的信息中包含用于控制模块命令逻辑的控制信息外部耦合,当模块与软件以外的环境有关时就发生
公共耦合,多个模块引用同一全局数据区的模式
内容耦合,直接访问另一模块的内部数据,或不通过正常入口转到另一个模块内部或一个模块有多个入口。

模块的内聚性由低到高分为七种类型:
偶然,逻辑,瞬时,过程,通信,信息,功能内聚。

软件语言主要包括:需求定义语言,功能性语言,设计语言,程序设计语言和文档语言。

程序设计语言基本成份有四种:数据成分,运算成分,控制成分和传输成分。

我国已建立的各种标准有:基础标准,开发标准,文档标准,管理标准。

软件的维护分为以下几种:校正性维护,适应性维护,完善性维护,预防性维护。

较全面地评价一个软件质量应从以下几方面入手:
易维护性,可靠性,效率和易理解性(即可读性),易移植性,正确性。

规范性。

软件可靠性是指程序在给定的时间间隔内,按照规格说明书的规定成功地实现其功能的概率堆和栈的区别:
栈是程序的代码区,在内存中地址向低地址扩展,是连续的堆向高地址扩展,不是连续的。

堆的效率慢,易产生碎片。

*******************初等部分结束
****************************
码距是指有一个编码系统中任意两个合法编码之间至少有多少个二进制位不同,码距为一的编码是不能发现错误的。

冗余校验:冗余校验码合法码字集的压码距为2D+1,则它能发现2D 错位,并能纠正D 位错。

8421 码是非冗余的,因此不能检错,查错。

海明校验码,也是利用奇偶性来纠错。

通过在数据之间插入K 个校验位,扩大数据的编码的码距。

有能力检测出N 位错,并能纠正1 位或N 位错,K 必须满足2K-1<=N+K
指令流:机器执行的指令序列。

数据流:由指令流调用的数据序列,包括输入数据和中间结果。

多倍性:在系统性能瓶颈部件上同时处于同一执行阶段的指令或数据的最大可能个数。

单指令流单数据流SISD
单指令流多数据流SIMD 多指令流单数据流MISD 多指令流多数据
流MIMD
相联存储器的访问方式是按内容访问。

非格式化容量=最大化密度*最内圈周长*总磁道数并行:分时同时性和并发性
资源重复,资源共享,时间重叠
列阵处理机即并行处理机,表示并发关系并可对其控制。

加密和解密三性,可逆,密钥安全,数据安全
秘密密钥加密体制DES
公开密钥加密体制RSA
专作备份用,一旦出现问题就可以巴切换称为热备份
平时做其它用,但一碰到服务器出现问题就可以马上切换过来,称做双工系统,兼职性
CRC 检错编码
是一种循环冗余校验码
原理:收到一个CRC 码,生成式除CRC 码,余数是0 则正确,可发现并纠正一位错,可检测小于等于校验位长度的突发错。

逻辑移位,算术移位,除法移位
除法移位的方法,符号位不变,相邻位依次移入到高位,将高位溢出的一们填到最低位。

乘法向左移即可。

相对寻址方式:程序计数器的内容加上指令形式的地址项。

注意虚拟存储是按内容寻址的。

RISC 啬了编译后的指令数,每个机器周期未变。

程序计数器PC 的作用是使CPU 在完成中断后能回到中断点断续以前的工作。

完成一个MOV 操作,首先要做是将PC 读到地址段寄存器
分时操作系统是一种多用户的系统。

WINDOWS 是单用户多任务的操作系统。

动态分配资源才可能形成回路。

操作系统的特征:并发性,从宏观上说
共享性,系统资源对于多个进程是共性的
虚拟性,将一个物理实体变成若干个逻辑上的对应物。

异步性,即程序的走走停停,但只要运行环境相同,总会得到相同的结果。

操作系统的分类
批处理,分时,实时,网络,分布式。

实时操作系统的特点
外部中断处理,在线人机对话,超负荷保护,时钟管理。

产生死锁的原因:
竞争资源,进程推进顺序不当。

产生死锁的必要条件:
互斥条件
请示和保持条件不剥夺条件
一路等待条件
处理死锁的基本方法:预防,避免,检测,解除spooling 系统
解决CPU 和低速外设的一种脱机技术,将数据到外存中进行暂
存。

前驱图是一个有向无循环图,还有间接前驱图。

虚拟存储是基于程序的局部性实现的。

内外存之间交换信息的基本单位有两种,一种是以作业为单位,称为SWAPPING 技术它要求作业的地址空间要小于或等于内存的可用空间,另一种交换技术是在作业内部做部分住处的调入调出,通常将作业地址空间分页或分段,以交换段或页称为虚拟存储。

工作集是一个进程在定长的执行时间区间内涉及到的页面集合。

存储分配方法有如下几种:
固定分区分配,支持多道程序设计,易产生碎片。

单一连续分区分配,不支持多道程序设计,内存中仅驻留一道程序。

可重定位分获分配,采用拼接技术,克服固定分区的碎片问题,能将小分区拼接成大分区,还能够整理存储器内各个作业的存储位置,以达到消除存储碎片和紧缩存储
空间的目的。

页式存储管理,系统将一个进程的逻辑窨分为若干大小相等的页面,把内存空间也分成与页面大小相同的若干个存储块,称为物理块或页框,并建立编号和映射关系,分页存储管理分为请求分页和非请求分页存储管理。

非请求的不支持虚拟存储管理。

请求式,即程序将要用到某个页才将其调入内存。

文件类型:
按用途分类,系统文件,用户文件,库文件
按文件中的数据,源文件,目标文件,可招待文件。

按存取控制属性,可执行文件,只读文件,读写文件。

按文件的逻辑结构,有结构文件也称记录式文件和无结构文件。

按文件的物理结构分,顺序文件,链接文件,索引文件。

文件系统的功能:按名存取是其特征
对文件存空间的管理对文件目录的管理地址映射
文件的读,写管理文件的共享与保护。

直接文件,又称为哈希文件,记录以它们在直接的物理地址来进行直接访问。

IO 设备
按住处交换的单位分,块设备和字符设备。

按设备的共享属性分,独占设备,共享设备,虚拟设备按速度
分,低中高速设备。

制备控制器是CPU 和IO 设备的接口,它接收从CPU 发出的命令,并控制IO 设备工作。

设备控制器分为控制字符和控制块设备的控制器。

设备控制器的功能:
接收和识别命令,数据交换(CPU 与控制器之间,控制器与设备之间)。

设备状态的了解和报告,地址识别。

主要的设备管理技术
中断技术,通道技术,缓冲技术。

数据传输控制方式,除以上三种控制外还加程序控制方式。

螺旋模型是在瀑布模型和演化模型的基础上加上风险分析所建立的一种软件开发模型。

数据流与加工的关系。

*表示想邻的一对数据流同时出现,注意入加工与出加工不同。

DFD 用来描述数据流从输入到输出的变换流程,是一种面向数据流的分析方法的图形描述工具,思想是自顶向下逐层分解,一个父图可以N 个子图,但每个子图仅有一个父图。

任意两个加工之间可有0 或多条名字互不相同的数据流。

信息流分为两种,变换流和事务流。

DFD 图可明显地分成输入,变换和输出三大部分。

事务流有一个明显的事务中心。

原型化方法特征加快需求的确定。

与结构化方法相比它更需要完整的生命周期。

衡量原形开发人员能力的重要标准是快速获取需求。

软件设计原则:抽象,模块化,信息隐蔽,模块独立。

模块之间的耦合度从低到高:
非直接,数据,标记,控制,外部,公共,内容耦合。

模块内聚由低到高:
偶然,逻辑,瞬时,过程,通信,顺序,功能内聚。

软件设计包括四个独立又相互联系的活动:
体系结构设计,接口设计,数据设计和过程设计。

将都要用到的一些代码放到一个模块内称为偶然内聚。

逻辑上相似的成分放在一个模块中,称为逻辑内聚。

模块中所有成分的输入是另一些成分的输入,称为通信内聚。

模块中的某成分的输入是另一些成分的输入,为顺序内聚。

模块中所有成分结合起来完成一项任务,是功能性内聚。

一个模块把开关量作为参数传给另一个模块称为控制耦合
一个模块把一个数值量作为参数传递给另一模块称为数据耦合。

结构化设计方法在软件开发中用于概要设计。

是一种面向数据流的设计方法。

使用的图形程序结构图。

如果两矩形之间有直线相连,表示它们存在调用关系。

如何定义大小合适的模块,五个标准:
模块可分解性,模块可组装性,可理解性,连续性,模块保护。

常用的白盒测试技术
语句覆盖,判定覆盖,条件覆盖,判定条件覆盖,条件组合覆盖,路径覆盖。

黑盒测试技术
等价类划分,边界值分析,错误猜测,因果图。

测试步骤
单元测试,集成测试,确认测试。

alpha 测试是由一个用户在开发者在场所进行的,开发者并对其进行指导。

beta 测试是由软件的最终用户在正常使用的情况下一个或多个场所来进行的,通常开发者不在现场。

软件集成测试最好由不属于该软件开发组的软件设计人员。

单元测试在实现阶段,测试方案应在详细设计阶段完成。

集成测试所依据的模块说明书和测试方案应在概要设计阶段完成,它能发现设计错误。

确认测试应在模拟的环境中进行强度测试的基础上进行,测试计划应在软件需求分析阶段完成。

黑盒测试最常用边界值测试法
对于测试用例应尽可以地覆盖尚未被覆盖的有效等价类。

测试用例一次只能覆盖一个尚未被覆盖的无效等价类。

因果图是根据输入和输出之间的因果关系来设计测试用例的。

对查出来的错误修正后再次测试称为回归测试。

软件维护的分类:
改正性,适应性,完善性,预防性维护等。

可维护性是指理解,改正,改动,改进软件的难易程度。

质量认证也称为合格评定。

按谁的对象分为新产品质量认证和质量体系认证两类。

按认证的作用可以分为安全认证和合格认证。

软件可移植性是衡量软件质量的一个重要尺度。

应提高软件的设备独立性,采用表格驱动方式有助于提高设备独立性。

C 语言的移植性较好。

面向对象主要特征:封装,继承,多态。

通用多态有参数多态和包含多态两种。

特定多态有过载多态和强制多态两种。

包含多态最常见的例子就是子类型化,即一个类型是另一类型的子类型。

过载多态是同一变量用来表示不同的功能,通过上下以决定一个名所代表的功能。

可靠性,可维护性,可移植性,可复用性是较为重要的质量特征。

为确保质量,在软件开发中必须采取有力的措施:
在开发初期制定质量保证计划,并在开发中坚持执行。

严格执行。

相关文档
最新文档