Bootstrap

软考中级笔记

计算机组成与结构

小结:

  • 浮点数范围:

− 1 ∗ 2 2 R − 1 − 1 + ( 1 − 2 − M + 1 ) ∗ 2 2 R − 1 − 1 -1*2^{2^{R-1}-1}\\ +(1-2^{-M+1})*2^{2^{R-1}-1} 122R11+(12M+1)22R11

  • 负数的补码为原码取反加一
  • 海明码n与k的关系:

2 k − 1 ≥ n + k 2^{k}-1 \ge n+k 2k1n+k

  • 常用的虚拟存储器由主存-辅存两级存储器组成

  • DMA控制方式是在主存与外设之间建立数据通路进行数据的交换处理

  • 在CPU中,常用来为ALU执行算术逻辑运算提供数据并暂存运算结果的寄存器是累加寄存器

  • CPU是在一个总线周期结束时相应DMA请求的

  • VLIW:(Very Long Instruction Word,超长指令字)一种非常长的指令组合,它把许多条指令连在一起,增加了运算的速度。

  • 在程序运行过程中,CPU需要将指令从内存中取出并加以分析和执行。CPU依据指令周期的不同阶段来区分在内存中以二进制编码形式存放的指令和数据

  • CISC: complex

    RISC: 简单(大量寄存器,硬布线电路实现指令编码

  • 指令系统中采用不同寻址方式的目的是扩大寻址空间并提高编程灵活性

  • 指令寄存器的位数取决于指令字长

  • 计算机中CPU对其访问速度最快的是通用寄存器

    其次是Cache、内存、外存(硬盘)

  • 判断是否全为0:与0进行逻辑与运算

  • 对阶时,小数向大数看齐;对阶是通过较小数的尾数右移实现的。

  • 全相联映射方式(冲突概率低但访问慢成本高),直接映射方式(简单直接但冲突概率高),组相连映射方式(折中)

  • 计算机指令一般包括操作码和地址码两部分,为分析一条指令,其操作码和地址码都应存入指令寄存器中

  • 程序员可以访问程序计数器(PC),指令寄存器对用户是完全透明的

    在汇编语言程序中,程序员可以直接访问通用寄存器以存取数据,可以访问状态字寄存器以获取有关数据处理结果的相关信息,可以通过相对程序计数器进行寻址,但是不能访问指令寄存器。

  • 在I/O设备与主机间进行数据传输时,CPU只需在开始和结束时作少量处理,而无需干涉数据传送过程的是直接存储器存取方式

  • 计算机系统的主存主要是由DRAM构成的

  • Cache的设计思想是在合理成本下提高命中率

  • 关于64位和32位处理器,不能以2倍关系描述的是运算速度

    计算机系统的运算速度受多种因素的影响,64位微处理器可同时对64位数据进行运算,但不能说其速度是32位微处理器的2倍。

  • ISA,EISA,PCI属于系统总线

  • 海明码数据位数是从右往左从一开始第几个=对应校验码的二进制和

  • 如果使用大量的连接请求攻击计算机,使得所有可用的系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求,这种手段属于拒绝服务攻击

  • 利用漏洞扫描系统可以获取某FTP服务器中是否存在可写目录的信息

  • 下列安全协议中,与TLS最接近的协议是SSL

  • 利用报文摘要算法生成报文的主要目的是防止发送的报文被篡改

  • 下列网络攻击行为中,属于DoS攻击的是SYN Flooding攻击

  • 木马程序的客户端运行在攻击者的机器上

  • 网络系统中,通常把Web服务器置于DMZ区

  • SSH协议在终端设备与远程站点之间建立安全连接

  • 可用于数字签名的算法是RSA

  • 应用级网关防火墙是内部网和外部网的隔离点,它可对应用层的通信数据流进行监控和过滤

  • 与电子邮箱服务的安全性有关的是SSL,HTTPS,PGP,无关的是MIME

  • 包过滤防火墙对数据包的过滤依据包括源IP地址、源端口号、目标IP地址和目标端口号

  • 通过内部发起连接与外部主机建立联系,由外部主机控制并盗取用户信息的恶意代码为特洛伊木马

  • 用户组默认权限由高到低的顺序是administrators—power users —users—everyone

  • PKI体制中,保证数字证书不被篡改的方法是用CA的私钥对数字证书签名

  • 机房安全属于物理安全,入侵检测属于网络安全,漏洞补丁管理属于系统安全,而数据库安全则是应用安全。

  • 计算机病毒具有隐蔽性、传染性、潜伏性、触发性和破坏性等特定。

  • DES是典型的私钥加密体制,属于对称加密,不属于公开秘钥加密。

  • 计算机感染特洛伊木马的典型现象:有未知程序试图建立网络连接

  • 某网站向CA申请了数字证书,用户通过CA的签名来验证网站的真伪

  • 防范网络监听最有效的方法是数据加密

  • 从认证中心CA获取用户B的数字证书,该证书用CA的私钥作数字签名:从用户B的数字证书中可以获得B的公钥

  • 用户B收到用户A带数字签名的消息M,为了验证M的真实性,首先需要从CA 获取用户A的数字证书,验证证书的真伪需要用CA的公钥验证CA的签名,验证M的真实性需要用用户A的公钥验证用户A的签名。

  • 在安全通信中S将所发送的信息使用S的私钥进行数字签名,T收到消息后可利用S的公钥验证该消息的真实性

  • 数字证书–身份认证;

    CA公钥–证书真伪;

    用发送者的公钥验证签名–消息真实性

    用发送者私钥进行数字签名

    公钥加密认证,私钥解密签名

  • 当用户通过键盘或鼠标进入某应用系统时,通常最先获得键盘或鼠标输入信息的程序是中断处理程序。

  • 公钥体系即非对称加密体系,其密钥分为公钥与私钥。一般公钥用于加密,而私钥用于解密。公钥一般是公开的,大家都可以知道,适合用于认证;而私钥只有密钥拥有者自己知道,可用于签名

概念:

  • CPU是计算机的控制中心,主要由运算器、控制器、寄存器组和内部总线等部件组成。控制器由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器组成,它是发布命令的“决策机构”,即完成协调和指挥整个计算机系统的操作。它的主要功能有:从内存中取出一条指令,并指出下一条指令在内存中的位置;对指令进行译码或测试,并产生相应的操作控制信号,以便启动规定的动作;指挥并控制CPU、内存和输入输出设备之间数据的流动。 程序计数器(PC)是专用寄存器,具有寄存信息和计数两种功能,又称为指令计数器,在程序开始执行前,将程序的起始地址送入PC,该地址在程序加载到内存时确定,因此PC的初始内容即是程序第一条指令的地址。执行指令时,CPU将自动修改PC的内容,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序执行的,因此修改的过程通常只是简单地对PC加1。当遇到转移指令时,后继指令的地址根据当前指令的地址加上一个向前或向后转移的位移量得到,或者根据转移指令给出 的直接转移的地址得到。

    CPU首先从程序计数器(PC)获得需要执行的指令地址,从内存(或高速缓存)读取到的指令则暂存在指令寄存器(IR),然后进行分析和执行。

    程序计数器、指令寄存器和指令译码器都是CPU中控制单元的部件,加法器是算术逻辑运算单元的部件。

    程序被加载到内存后开始运行,当CPU执行一条指令时,先把它从内存储器取到缓冲寄存器DR中,再送入IR暂存,指令译码器根据IR的内容产生各种微操作指令,控制其他的组成部件工作,完成所需的功能。 程序计数器(PC)具有寄存信息和计数两种功能,又称为指令计数器。程序的执行分两种情况,一是顺序执行,二是转移执行。在程序开始执行前,将程序的起始地址送入PC,该地址在程序加载到内存时确定,因此PC的内容即是程序第一条指令的地址。执行指令时,CPU将自动修改PC的内容,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序来执行的,所以修改的过程通常只是简单地对PC加1。当遇到转移指令时,后继指令的地址根据当前指令的地址加上一个向前或向后转移的位移量得到,或者根据转移指令给出的直接转移地址得到。

    指令寄存器(IR)用于暂存从内存取出的、正在运行的指令,这是由系统使用的寄存器,程序员不能访问。 存储器数据寄存器(MDR)和存储器地址寄存器(MAR)用于对内存单元访问时的数据和地址暂存,也是由系统使用的,程序员不能访问。 程序计数器(PC)用于存储指令的地址,CPU根据该寄存器的内容从内存读取待执行的指令,程序员可以访问该寄存器

  • 计算机中主机与外设间进行数据传输的输入输出控制方法有程序控制方式中断方式DMA等。 在程序控制方式下,由CPU执行程序控制数据的输入输出过程。 在中断方式下,外设准备好输入数据或接收数据时向CPU发出中断请求信号,若CPU决定响应该请求,则暂停正在执行的任务,转而执行中断服务程序进行数据的输入输出处理,之后再回去执行原来被中断的任务。 在DMA方式下,CPU只需向DMA控制器下达指令,让DMA控制器来处理数据的传送,数据传送完毕再把信息反馈给CPU,这样就很大程度上减轻了CPU的负担,可以大大节省系统资源。

  • CPU中常设置多个寄存器,其中,程序计数器的作用是保存待读取指令在内存中的地址,累加器是算逻运算单元中用来暂存源操作数和计算结果的寄存器,指令寄存器暂存从内存读取的指令,地址寄存器暂存要访问的内存单元的地址。

  • Cache:在CPU内外的高速缓存是用来解决CPU与内存之间速度、容量不匹配的问题,与外存无关,可以提高CPU访问主存数据或指令的效率。Cache不属于主存,与主存容量无关。Cache容量相对于其他存储层次,量级较小,不能扩大存储系统的存量。

    Cache是一个高速小容量的临时存储器,可以用髙速的静态存储器(SRAM)芯片实现,可以集成到CPU芯片内部,或者设置在CPU与内存之间,用于存储CPU最经常访问的指令或者操作数据。Cache的出现是基于两种因素:首先是由于CPU的速度和性能提高很快而主存速度较低且价格高,其次是程序执行的局部性特点。因此,才将速度比较快而容量有限的SRAM构成Cache,目的在于尽可能发挥CPU的高速度。很显然,要尽可能发挥CPU的高速度,就必须用硬件实现其全部功能。

    高速缓存(Cache)是随着CPU与主存之间的性能差距不断增大而引入的,其速度比主存快得多,所存储的内容是CPU近期可能会需要的信息,是主存内容的副本,因此CPU需要访问数据和读取指令时要一访问Cache,若命中则直接访问,若不命中再去访问主存。 评价Cache性能的关键指标是Cache的命中率,影响命中率的因素有其容量、替换算法、其组织方式等。Cache的命中率随容量的增大而提高,其关系如下图所示。

    Cache的设置不以扩大主存容量为目的,事实上也并没有扩大主存的容量。

  • 寻址方式是指寻找操作数或操作数地址的方式。指令系统中采用不同寻址方式的目的是为了在效率和方便性上找一个平衡。立即寻址和寄存器寻址在效率上是最快的, 但是寄存器数目少,不可能将操作数都存入其中等待使用,立即寻址的使用场合也非常有限,这样就需要将数据保存在内存中,然后使用直接寻址、寄存器间接寻址、寄存器相对寻址、基址加变址寻址、相对基址及变址寻址等寻址方式将内存中的数据移入寄存器中。

  • 中断:计算机在执行程序过程中,当遇到急需处理的事件时,暂停当前正在运行的程序, 转去执行有关服务程序,处理完后自动返回原程序,这个过程称为中断。 中断是一种非常重要的技术,输入输出设备和主机交换数据、分时操作、实时系统、计算机网络和分布式计算机系统中都要用到这种技术。为了提高响应中断的速度,通常把所有中断服务程序的入口地址(或称为中断向量)汇集为中断向量表。

    当系统中有多个中断请求时,中断系统按优先级进行排队。若在处理低级中断过程中又有高级中断申请中断,则高级中断可以打断低级中断处理,转去处理高级中断,等处理完高级中断后再返回去处理原来的低级中断,称为中断嵌套。实现中断嵌套用后进先出的来保护断点和现场最有效。

    中断系统是计算机实现中断功能的软硬件总称。一般在CPU中设置中断机构,在外设接口中设置中断控制器,在软件上设置相应的中断服务程序。中断源在需要得到CPU服务时,请求CPU暂停现行工作转向为中断源服务,服务完成后,再让CPU回到原工作状态继续完成被打断的工作。中断的发生起始于中断源发出中断请求,中断处理过程中,中断系统需要解决一系列问题,包括中断响应的条件和时机,断点信息的保护与恢复,中断服务程序入口、中断处理等。中断响应时间,是指从发出中断请求到开始进入中断服务程序所需的时间

  • 中断方式下的数据传送是当I/O接口准备好接收数据或准备好向CPU传送数据时,就发出中断信号通知CPU。对中断信号进行确认后,CPU保存正在执行的程序的现场, 转而执行提前设置好的I/O中断服务程序,完成一次数据传送的处理。这样,CPU就不需要主动查询外设的状态,在等待数据期间可以执行其他程序,从而提高了CPU的利用率。采用中断方式管理I/O设备,CPU和外设可以并行地工作。

    程序查询方式下,CPU通过执行程序查询外设的状态,判断外设是否准备好接收数据或准备好了向CPU输入的数据。 直接内存存取(Direct Memory Access,DMA)方式的基本思想是通过硬件控制实现主存与I/O设备间的直接数据传送,数据的传送过程由DMA控制器(DMAC)进行控制,不需要CPU的干预。

    在DMA方式下,由CPU启动传送过程,即向设备发出“传送一块数据”的命令,在传送过程结束时,DMAC通过中断方式通知CPU进行一些后续处理工作。

  • 计算机系统中,高速缓存一般用SRAM,内存一般用DRAM,外存一般采用磁存储器。SRAM的集成度低、速度快、成本高。DRAM的集成度高,但是需要动态刷新。磁存储器速度慢、容量大、价格便宜。因此,不同的存储设备组成分级存储体系,来解决速度、存储容量和成本之间的矛盾

  • 全相联地址映射:主存的任意一块可以映象到Cache中的任意一块。只有装满才需要替换

    直接相联映射:主存中一块只能映象到Cache的一个特定的块中。

    组相联的映射:各区中的某一块只能存入缓存的同组号的空间内,但组内各块地址之间则可以任意存放。即从主存的组到Cache的组之间采用直接映象方式,在两个对应的组内部采用全相联映象方式。

  • BIOS:(Basic Input Output System)(基本输入输出系统)是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从CMOS中读写系统设置的具体信息。

  • 计算机系统的存储器按所处的位置可分为内存和外存。按构成存储器的材料可分为磁存储器、半导体存储器和光存储器。按存储器的工作方式可分为读写存储器和只读存储器。按访问方式可分为按地址访问的存储器和按内容访问的存储器。按寻址方式可分为随机存储器、顺序存储器和直接存储器。 相联存储器是一种按内容访问的存储器

    存储系统中的存储器,按访问方式可分为按地址访问的存储器和按内容访问的存储器;按寻址方式分类可分为随机存储器、顺序存储器和直接存储器。随机存储器(Random Access Memory,RAM)指可对任何存储单元存入或读取数据, 访问任何一个存储单元所需的时间是相同的。顺序存储器(Sequentially Addressed Memory,SAM)指访问数据所需要的时间与数据所在的存储位置相关,磁带是典型的顺序存储器。直接存储器(Direct Addressed Memory,DAM)是介于随机存取和顺序存取之间的一种寻址方式。磁盘是一种直接存取存储器,它对磁道的寻址是随机的,而在一个磁道内,则是顺序寻址。相联存储器是一种按内容访问的存储器。其工作原理就是把数据或数据的某一部分作为关键字,将该关键字与存储器中的每一单元进行比较,从而找出存储器中所有与关键字相同的数据字。

  • 按照是否可以被屏蔽,可将中断分为两大类:不可屏蔽中断(又叫非屏蔽中断)和可屏蔽中断。不可屏蔽中断源一旦提出请求,CPU必须无条件响应,而对可屏蔽中断源的请求,CPU可以响应,也可以不响应。典型的非屏蔽中断源的例子是电源掉电,一旦出现,必须立即无条件地响应,否则进行其他任何工作都是没有意义的。典型的可屏蔽中断源的例子是打印机中断,CPU对打印机中断请求的响应可以快一些,也可以慢一些, 因为让打印机等待是完全可以的。对于软中断,它不受中断允许标志位(IF位)的影响, 所以属于非屏蔽中断范畴。

  • 内存容量为4GB,即内存单元的地址宽度为32位。字长为32位即要求数据总线的宽度为32位,因此地址总线和数据总线的宽度都为32。 地址总线的宽度就是处理机寻址范围,若地址总线为n位,则可寻址空间为2的n次方字节。所以本题的可寻址空间为:4102410241024位,所以地址总线宽度为32

  • 总线是连接计算机有关部件的一组信号线,是计算机中用来传送信息代码的公共通道。釆用总线结构主要有以下优点:简化系统结构,便于系统设计制造;大大减少了连线数目,便于布线,减小体积,提髙系统的可靠性;便于接口设计,所有与总线连接的设备均釆用类似的接口;便于系统的扩充、更新与灵活配置,易于实现系统的模块化; 便于设备的软件设计,所有接口的软件就是对不同的口地址进行操作;便于故障诊断和维修,同时也降低了成本

    总线是一组能为多个部件分时共享的信息传送线,用来连接多个部件并为之提供信息交换通路,通过总线复用方式可以减少总线中信号线的数量,以较少的信号线传输更多的信息

    系统总线又称内总线或板级总线,在微机系统中用来连接各功能部件而构成一个完整的微机系统。系统总线包含有三种不同功能的总线,即数据总线DB (Data Bus)、地址总线AB (Address Bus)和控制总线CB (Control Bus)。ISA (Industrial Standard Architecture)总线标准是IBM公司1984年为推出PC/AT机而建立的系统总线标准,所以也叫AT总线。它是对XT总线的扩展,以适应8/16位数据总线要求。 EISA总线是1988年由Compaq等9家公司联合推出的总线标准。它在ISA总线的基础上使用双层插座,在原来ISA总线的98条信号线上又增加了98条信号线,也就是在两条ISA信号线之间添加一条EISA信号线。在实用中,EISA总线完全兼容ISA总线信号。 PCI (Peripheral Component Interconnect)总线是当前最流行的总线之一,它是由Intel公司推出的一种局部总线。它定义了32位数据总线,且可扩展为64位。PCI总线主板插槽的体积比原ISA总线插槽还小,支持突发读写操作,最大传输速率可达132MB/S,可同时支持多组外围设备。PCI局部总线不能兼容现有的ISA、EISA、MCA (Micro Channel Architecture)总线,但它不受制于处理器,是基于奔腾等新一代微处理器而发展的总线。

    SCSI (Small Computer System Interface)是一种用于计算机和智能设备之间(硬盘、软驱、光驱、打印机、扫描仪等)系统级接口的独立处理器标准。

  • 指令中的寻址方式就是如何对指令中的地址字段进行解释,以获得操作数的方法或 获得程序转移地址的方法。常用的寻址方式有:

    •立即寻址。操作数就包含在指令中。

    •直接寻址。操作数存放在内存单元中,指令中直接给出操作数所在存储单元的地址。

    •寄存器寻址。操作数存放在某一寄存器中,指令中给出存放操作数的寄存器名。

    •寄存器间接寻址。操作数存放在内存单元中,操作数所在存储单元的地址在某个寄存器中。

    •间接寻址。指令中给出操作数地址的地址。

    •相对寻址。指令地址码给出的是一个偏移量(可正可负),操作数地址等于本条 指令的地址加上该偏移量。 •变址寻址。操作数地址等于变址寄存器的内容加偏移量。 题目给出的指令中,R1是寄存器,属于寄存器寻址方式,45是立即数,属于立即寻址方式。

  • 随机访问存储器(RAM)有两类:静态的(SRAM)和动态的(DRAM),SRAM 比DRAM速度更快,但也贵得多。SRAM用来作为高速缓冲存储器(Cache),DRAM 用来作为主存及图形系统的帧缓冲区。SRAM将每个位存储在一个双稳态的存储器单元中,DRAM将每个位存储为对一个电容的充电,由于电容非常小,在10〜l00ms时间内会失去电荷,所以需要周期性地刷新充电以保持信息。 EEPROM是电可擦除可编程只读存储器。

  • Flynn主要根据指令流和数据流来分类,分为四类:

    ①单指令流单数据流机器(SISD) SISD机器是一种传统的串行计算机,它的硬件不支持任何形式的并行计算,所有的指令都是串行执行,并且在某个时钟周期内,CPU只能处理一个数据流。因此这种机器被称作单指令流单数据流机器。早期的计算机都是SISD机器。

    ②单指令流多数据流机器(SIMD) SIMD是采用一个指令流处理多个数据流。这类机器在数字信号处理、图像处理以及多媒体信息处理等领域非常有效。 Intel处理器实现的MMXTM、SSE (Streaming SIMD Extensions)、SSE2及SSE3扩展指令集,都能在单个时钟周期内处理多个数据单元。也就是说人们现在用的单核计算机基本上都属于SIMD机器。

    ③多指令流单数据流机器(MISD) MISD是采用多个指令流来处理单个数据流。在实际情况中,采用多指令流处理多数据流才是更有效的方法。因此MISD只是作为理论模型出现,没有投入实际应用。

    ④多指令流多数据流机器(MIMD) M1MD机器可以同时执行多个指令流,这些指令流分别对不同数据流进行操作。例如,intel和AMD的双核处理器就属于MIMD的范畴。

  • 漏洞扫描系统是一种自动检测目标主机安全弱点的程序,漏洞扫描系统的原理是根据系统漏洞库对系统可能存在的漏洞进行一一验证。黑客利用漏洞扫描系统可以发现目标主机的安全漏洞从而有针对性的对系统发起攻击;系统管理员利用漏洞扫描系统可以查找系统中存在的漏洞并进行修补从而提高系统的可靠性。漏洞扫描系统不能用于发现网络入侵者,用于检测网络入侵者的系统称为入侵检测系统。

  • 入侵检测技术包括专家系统、模型检测、简单匹配;漏洞扫描不是入侵检测的内容。

  • 网络攻击的主要手段包括口令入侵放置特洛伊木马程序拒绝服务(DoS)攻击端口扫描、网络监听、欺骗攻击和电子邮件攻击等。 口令入侵是指使用某些合法用户的账号和口令登录到目的主机,然后再实施攻击活动。 特洛伊木马(Trojans)程序常被伪装成工具程序或游戏,一旦用户打开了带有特洛伊木马程序的邮件附件或从网上直接下载,或执行了这些程序之后,当用户连接到互联网上时,这个程序就会向黑客通知用户的IP地址及被预先设定的端口。 拒绝服务(DoS)攻击目的是使计算机或网络无法提供正常的服务。最常见的拒绝服务攻击有网络带宽攻击和连通性攻击。带宽攻击指以极大的通信量冲击网络,使得所有可用网络资源都被消耗殆尽,最后导致合法的用户请求无法通过。连通性攻击是指用大量的连接请求冲击计算机,使得所有可用的操作系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求。 端口扫描就是利用Socket编程与目标主机的某些端口建立TCP连接、进行传输协议的验证等,从而侦知目标主机的扫描端口是否处于激活状态、主机提供了哪些服务、提供的服务中是否含有某些缺陷等。 网络监听是主机的一种工作模式,在这种模式下,主机可以接收到本网段在同一条物理通道上传输的所有信息。使用网络监听工具可轻而易举地截取包括口令和账号在内的信息资料。 欺骗攻击是攻击者创造一个易于误解的上下文环境,以诱使受攻击者进入并且做出缺乏安全考虑的决策。IP欺骗是欺骗攻击的一种,IP欺骗实现的过程是:使得被信任的主机丧失工作能力,同时采样目标主机发出的TCP序列号,猜测出它的数据序列号。然后,伪装成被信任的主机,同时建立起与目标主机基于地址验证的应用连接。如果成功,黑客可以使用一种简单的命令放置一个系统后门,以进行非授权操作。

  • 数字证书是由权威机构 CA证书授权(Certificate Authority)中心发行的,能提供在Internet上进行身份验证的一种权威性电子文档,人们可以在互联网交往中用它来 证明自己的身份和识别对方的身份。 数字证书包含版本、序列号、签名算法标识符、签发人姓名、有效期、主体名、主体公钥信息等并附有CA的签名,用户A获取用户B的数字证书后通过验证CA的签名 来确认数字证书的有效性。验证CA的签名时使用的是CA的公钥。

  • 漏洞扫描技术是检测远程或本地系统安全脆弱性的一种安全技术。通过与目标主机TCP/IP端口建立连接并请求某些服务(如TELNET、FTP等),记录目标主机的应答, 搜集目标主机相关信息(如匿名用户是否可以登录等),从而发现目标主机某些内在的安全弱点。

  • TLS是安全传输层协议的简称,用于在两个通信应用程序之间提供保密性和数据完整性。SSL是安全套接层协议的简称,它也是一种为网络通信提供安全和数据完整性的协议,它与TLS非常接近,它们都是在传输层对网络连接进行加密。PGP是一个基于RSA公匙加密体系的邮件加密软件,用它可以对邮件保密以防止非授权者阅读。HTTPS即安全版的HTTP (超文本传输协议)的,它是在HTTP下加入SSL层,HTTPS的安全基础就是SSL。IPSec是网络层的安全协议,它通过使用加密的安全服务来确保在网络上进行保密而安全的通讯。

  • 报文摘要是用来保证数据完整性的。传输的数据一旦被修改,摘要就不同了。只要对比两次摘要就可确定数据是否被修改过。

  • 特洛伊木马是附着在应用程序中或者单独存在的一些恶意程序,它可以利用网络远程控制网络另一端的安装有服务端程序的主机,实现对被植入了木马程序的计算机的控制,或者窃取被植入了木马程序的计算机上的机密资料。 拒绝服务攻击通过网络的内外部用户来发动攻击。内部用户可以通过长时间占用系统的内存、CPU处理时间使其他用户不能及时得到这些资源,而引起拒绝服务攻击;外部黑客也可以通过占用网络连接使其他用户得不到网络服务。SYN Flooding攻击以多个随机的源主机地址向目的路由器发送SYN包,在收到目的路由器的SYN ACK后并不回应,于是目的路由器就为这些源主机建立大量的连接队列,由于没有收到ACK—直维护着这些队列,造成了资源的大量消耗而不能向正常请求提供服务,甚至导致路由器崩溃。服务器要等待超时才能断开己分配的资源,所以SYN Flooding攻击是一种DoS攻击。 端口欺骗攻击是采用端口扫描找到系统漏洞从而实施攻击。 IP欺骗攻击是产生的IP数据包为伪造的源IP地址,以便冒充其他系统或发件人的身份。

    典型现象:有未知程序试图建立网络连接

  • 木马(Trojan),是指通过特定的程序(木马程序)来控制另一台计算机。木马通常有两个可执行程序:一个是控制端,另一个是被控制端。植入对方电脑的是服务端,而黑客正是利用客户端进入运行了服务端的电脑。运行了木马程序的服务端以后;会产生一个有着容易迷惑用户的名称的进程,暗中打开端口,向指定地点发送数据(如网络游戏的密码,即时通信软件密码和用户上网密码等),黑客甚至可以利用这些打开的端口进入电脑系统。Sniffer,中文可以翻译为嗅探器,是一种基于被动侦听原理的网络分析方式。使用这种技术方式,可以监视网络的状态、数据流动情况以及网络上传输的信息。Sniffer不是木马程序。

  • DMZ是为了解决安装防火墙后外部网络不能访问内部网络服务器的问题,而设立的一个非安全系统与安全系统之间的缓冲区,这个缓冲区位于企业内部网络和外部网络之间的小网络区域内,在这个小网络区域内可以放置一些必须公开的服务器设施,如企业Web服务器、FTP服务器和论坛等。

  • 防火墙最基本的功能就是控制在计算机网络中,不同信任程度区域间传送的数据流。防火墙对流经它的网络通信进行扫描,这样能够过滤掉一些攻击,以免其在目标计算机上被执行。防火墙还可以关闭不使用的端口,隐蔽内部细节。所有的访问都经过防火墙,防火墙就能记录下这些访问并作出日志记录,同时也能提供网络使用情况的统计数据。

    防火墙是一种放置在网络边界上,用于保护内部网络安全的网络设备。它通过对流经数据流进行分析和检查,可实现对数据包的过滤、保存用户访问网络的记录和服务器代理功能。防火墙不具备检査病毒的功能。

  • 通过防火墙我们可以将网络划分为三个区域:安全级别最高的LAN Area (内网), 安全级别中等的DMZ区域和安全级别最低的Internet区域(外网)。三个区域因担负不同的任务而拥有不同的访问策略。通常的规则如下: ①内网可以访问外网:内网的用户需要自由地访问外网。在这一策略中,防火墙需要执行NAT。 ②内网可以访问DMZ:此策略使内网用户可以使用或者管理DMZ中的服务器。 ③外网不能访问内网:这是防火墙的基本策略,内网中存放的是公司内部数据,显然这些数据是不允许外网的用户进行访问的。如果要访问,就要通过VPN方式来进行。 ④外网可以访问DMZ: DMZ中的服务器需要为外界提供服务,所以外网必须可以访问DMZ。同时,外网访问DMZ需要由防火墙完成对外地址到服务器实际地址的转换。 ⑤DMZ不能访问内网:如不执行此策略,则当入侵者攻陷DMZ时,内部网络将不会受保护。 ⑥DMZ不能访问外网:此条策略也有例外,可以根据需要设定某个特定的服务器可以访问外网,以保证该服务器可以正常工作。 综上所述,防火墙区域按照受保护程度从高到低正确的排列次序应为内网、DMZ和外网。

  • 终端设备与远程站点之间建立安全连接的协议是SSH。SSH为Secure Shell的缩写, 是由IETF制定的建立在应用层和传输层基础上的安全协议。SSH是专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX上的程序,后来又迅速扩展到其他操作平台。

  • 网络攻击有主动攻击和被动攻击两类。其中主动攻击是指通过一系列的方法,主动向被攻击对象实施破坏的一种攻击方式,例如重放攻击、IP地址欺骗、拒绝服务攻击等均属于攻击者主动向攻击对象发起破坏性攻击的方式。流量分析攻击是通过持续检测现有网络中的流量变化或者变化趋势,而得到相应信息的一种被动攻击方式。

    网络攻击分为主动攻击和被动攻击两种。主动攻击包含攻击者访问他所需信息的故意行为。比如通过远程登录到特定机器的邮件端口以找出企业的邮件服务器的信息;伪造无效IP地址去连接服务器,使接受到错误IP地址的系统浪费时间去连接那个非法地址。攻击者是在主动地做一些不利于你或你的公司系统的事情。主动攻击包括拒绝服务攻击(DoS)、分布式拒绝服务(DDoS)、信息篡改、资源使用、欺骗、伪装、重放等攻击方法。 主要是收集信息而不是进行访问,数据的合法用户对这种活动一点也不会觉察到。被动攻击包括嗅探、信息收集等攻击方法。

  • RSA基于大数定律,通常用于对消息摘要进行签名;IDEA和RC4适宜于进行数据传输加密;MD5为摘要算法。

    MD5是一种摘要算法,经过一系列处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

    根据题意,要求选出适合对大量明文进行加密传输的加密算法。备选项中的4种加密算法均能够对明文进行加密。 RSA是一种非对称加密算法,由于加密和解密的密钥不同,因此便于密钥管理和分发,同时在用户或者机构之间进行身份认证方面有较好的应用; SHA-1是一种安全散列算法,常用宁对接收到的明文输入产生固定长度的输出,来确保明文在传输过程中不会被篡改; MD5是一种使用最为广泛的报文摘要算法; RC5是一种用于对明文进行加密的算法,在加密速度和强度上,均较为合适,适用于大量明文进行加密并传输

  • 非对称加密又称为公开密钥加密,而共享密钥加密指对称加密。常见的对称加密算法有:DES,三重DES、RC-5、IDEA、AES。

  • 公开密钥加密(public-key cryptography),也称为非对称加密(asymmetric cryptography),一种密码学算法类型,在这种密码学方法中,需要一对密钥,一个是私人密钥,另一个则是公开密钥。 常见的公钥加密算法有: RSA、ElGamal、背包算法、Rabin(RSA的特例)、迪菲-赫尔曼密钥交换协议中的公钥加密算法、椭圆曲线加密算法(Elliptic Curve Cryptography, ECC) ;DSA数字签名(又称公钥数字签名),将摘要信息用发送者的私钥加密,接收者只有用发送者的公钥才能解密被加密的摘要信息,也是属于公开密钥加密算法。DES是典型的私钥加密体制,属于对称加密,不属于公开秘钥加密。

  • 应用级网关可以工作在OSI七层模型的任一层上,能够检查进出的数据包,通过网关复制传递数据,防止在受信任服务器和客户机与不受信任的主机间直接建立联系。应用级网关能够理解应用层上的协议,能够做复杂一些的访问控制,起到防火墙的作用,成为应用级网关。

  • MIME它是一个互联网标准,扩展了电子邮件标准,使其能够支持,与安全无关。与安全电子邮件相关的是S/MIME安全多用途互联网邮件扩展协议。SSL和HTTPS涉及到邮件传输过程的安全,PGP(全称:Pretty Good Privacy,优良保密协议),是一套用于信息加密、验证的应用程序,可用于加密电子邮件内容。

  • 数字签名用于通信的A、B双方,使得A向B发送签名的消息P,提供以下服务:

    ①B可以验证消息P确实是来源于A;

    ②A不能否认发送过消息P;

    ③B不能编造或改变消息P。

    数字签名首先需要生成消息摘要,使用非对称加密算法以及私钥对摘要进行加密。接收方使用发送放的公钥对消息摘要进行验证。

  • 用户可在一定的认证机构(CA)处取得各自能够认证自身身份的数字证书,与该用户在同一机构取得的数字证书可通过相互的公钥认证彼此的身份;当两个用户所使用的证书来自于不同的认证机构时,用户双方要相互确定对方的身份之前,首先需要确定彼此的证书颁发机构的可信度。即两个CA之间的身份认证,需交换两个CA的公钥以确定CA的合法性,然后再进行用户的身份认证。

  • 网络监听是主机的一种工作模式,在这种模式下,主机可以接收到本网段在同一条物理通道上传输的所有信息。使用网络监听工具可轻而易举地截取包括口令和账号在内的信息资料。采用数据加密的方式保护包括口令和账号在内的信息资料,使得即使网络监听获取密文后也无法解密成明文,是对付网络监听的有效手段。

  • 计算机病毒的分类方法有许多种,按照最通用的区分方式,即根据其感染的途径以及采用的技术区分,计算机病毒可分为文件型计算机病毒、引导型计算机病毒、宏病毒和目录型计算机病毒。 文件型计算机病毒感染可执行文件(包括EXE和COM文件)。 引导型计算机病毒影响软盘或硬盘的引导扇区。 目录型计算机病毒能够修改硬盘上存储的所有文件的地址。 宏病毒感染的对象是使用某些程序创建的文本文档、数据库、电子表格等文件,从文件名可以看出Macro.Melissa是一种宏病毒。

    病毒文件名称一般分为三部分,第一部分表示病毒的类型,如Worm表示蠕虫病毒,Trojan表示特洛伊木马,Backdoor表示后门病毒,Macro表示宏病毒等。 宏病毒感染的对象是使用某些程序创建的文本文档、数据库、电子表格等文件。

  • 典型网络病毒主要有宏病毒、特洛伊木马、蠕虫病毒、脚本语言病毒等。 宏病毒的传播方式通常如下:字处理程序Word在打开一个带宏病毒的文档或模板时,激活了病毒宏,病毒宏将自身复制至Word的通用(Normal)模板中,以后在打开或关闭文件时病毒宏就会把病毒复制到该文件中。 特洛伊木马是一种秘密潜伏且能够通过远程网络进行控制的恶意程序。控制者可以控制被秘密植入木马的计算机的一切动作和资源,是恶意攻击者窃取信息的工具。 蠕虫病毒的传播过程一般表现为:蠕虫程序驻于一台或多台机器中,它会扫描其他机器是否有感染同种计算机蠕虫,如果没有,就会通过其内建的传播手段进行感染,以达到使计算机瘫痪的目的。

  • 欢乐时光及熊猫烧香均为蠕虫病毒,CIH则为系统病毒,这3者均以感染台式机或服务器为主,且产生较早;X卧底则是新近产生的、通过木马形式传播、目标为智能手机的病毒。

    “蠕虫”(Worm)是一个程序或程序序列。它利用网络进行复制和传播,传染途径是通过网络、移动存储设备和电子邮件。最初的蠕虫病毒定义是在DOS环境下,病毒发作时会在屏幕上出现一条类似虫子的东西,胡乱吞吃屏幕上的字母并将其改形,蠕虫病毒因此而得名。常见的蠕虫病毒有红色代码、爱虫病毒、熊猫烧香、Nimda病毒、爱丽兹病毒等。 冰河是木马软件,主要用于远程监控,冰河木马后经其他人多次改写形成多种变种,并被用于入侵其他用户的计算机的木马程序。

    震网(Stuxnet),指一种蠕虫病毒。它的复杂程度远超一般电脑黑客的能力。这种震网(Stuxnet)病毒于2010年6月首次被检测出来,是第一个专门定向攻击真实世界中基础(能源)设施的“蠕虫”病毒,比如核电站,水坝,国家电网。 引导区病毒破坏的是引导盘、文件目录等;宏病毒破坏的是OFFICE文件相关;木马的作用一般强调控制操作。

  • 包过滤技术是一种基于网络层、传输层的安全技术,优点是简单实用,实现成本较低同时,包过滤操作对于应用层来说是透明的,它不要求客户与服务器程序做任何修改。但包过滤技术无法识别基于应用层的恶意入侵,如恶意的Java小程序以及电子邮件中附带的病毒。代理服务技术基于应用层,需要检查数据包的内容,能够对基于高层协议的攻击进行拦截,安全性较包过滤技术要好。缺点是处理速度比较慢,不适用于高速网之间的应用。另外,代理使用一个客户程序与特定的中间节点连接,然后中间节点与代理服务器进行实际连接。因此,使用这类防火墙时外部网络与内部网络之间不存在直接连接,即使防火墙发生了问题,外部网络也无法与被保护的网络连接。

  • 重放攻击(Replay Attacks)又称重播攻击、回放攻击或新鲜性攻击(Freshness Attacks),是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证的正确性。Kerberos系统采用的是时间戳方案来防止重放攻击,这种方案中,发送的数据包是带时间戳的,服务器可以根据时间戳来判断是否为重放包,以此防止重放攻击。

  • 冗余是指对于实现系统规定功能是多余的那部分资源,包括硬件、软件、信息和时间。通常冗余技术分为4类:1.结构冗余,按其工作方法可以分为静态、动态和混合冗余;2.信息冗余,指的是为了检测或纠正信息在运算或传输中的错误另外加的一部分信息;3.时间冗余,是指以重复执行指令或程序来消除瞬时错误带来的影响;4. 冗余附件技术,是指为实现上述冗余技术所需的资源和技术。

  • 软件可靠性指的是一个系统对于给定的时间间隔内、在给定条件下无失效运作的概率。软件可用性使之在给定的时间点上,一个软件系统能够按照规格说明正确运行的概率。软件可维护性是在给定的使用条件下,在规定的时间间隔内,使用规定的过程和资源完成维护活动的概率。

    可靠性、可用性和可维护性是软件的质量属性,软件工程中,用0-1之间的数来度量。 可靠性是指一个系统对于给定的时间间隔内、在给定条件下无失效运作的概率。可以用MTTF/(1+MTTF)来度量,其中MTTF为平均无故障时间。 可用性是在给定的时间点上,一个系统能够按照规格说明正确运作的概率。可以用MTBF/(1+MTBF)来度量,其中MTBF为平均失效间隔时间。 可维护性是在给定的使用条件下,在规定的时间间隔内,使用规定的过程和资源完成维护活动的概率。可以用1/(1+MTTR)来度量,其中MTTR为平均修复时间。

软件工程基础知识

小结:

  • 敏捷方法中,重构是一种重新组织技术,重新审视需求和设计,重新明确地描述它们以符合新的和现有的需求,可以简化构件的设计而无需改变其功能或行为。

  • 基于构件的软件开发,主要强调在构建软件系统时复用已有的软件“构件”,在检索到可以使用的构件后,需要针对新系统的需求对构件进行合格性检验、适应性修改,然后集成到新系统中。

  • 瀑布模型–有经验,需求明确

    结构化–需求不清晰需求变化不大

  • 需求分析确定软件要完成的功能及非功能性要求;

    概要设计将需求转化为软件的模块划分,确定模块之间的调用关系;

    详细设计将模块进行细化,得到详细的数据结构和算法;

    编码根据详细设计进行代码的编写,得到可以运行的软件,并进行单元测试。

  • 起始阶段专注于项目的初创活动。

    精化阶段理解了最初的领域范围之后,进行需求分析和架构演进。

    构建阶段关注系统的构建,产生实现模型。

    移交阶段关注于软件提交方面的工作,产生软件增量。

    产生阶段运行软件并监控软件的持续使用,提供运行环境的支持,提交并评估缺陷报告和变更请求。

    初启阶段结束时产生一个构想文档、一个有关用例模型的调查、一个初始的业务用例、一个早期的风险评估和一个可以显示阶段和迭代的项目计划等制品;精化阶段结束时产生一个补充需求分析、一个软件架构描述和一个可执行的架构原型等制品;构建阶段结束时的成果是一个准备交到最终用户手中的产品,包括具有最初运作能力的在适当的平台上集成的软件产品、用户手册和对当前版本的描述;移交阶段结束时产生移交给用户产品发布版本。

    精化阶段的里程碑是生命周期架构

  • PERT图不能清晰地描述各任务之间的并行情况

    甘特图Gantt图不能清晰地获得各任务之间的依赖关系

  • 极限编程XP是激发开发人员创造性、使得管理负担最小的一组技术;水晶法Crystal认为每一个不同的项目都需要一套不同的策略、约定和方法论;并列争球法(Scrum)使用迭代的方法,其中把每30天一次的迭代成为一个冲刺,并按需求的优先级来实现产品。多个自组织和自治小组并行地递增实现产品,并通过简短的日常情况会议进行协调。

    以下关于极限编程(XP)中结对编程的叙述中,不正确的是编码的速度更快,正确的是支持共同代码拥有和共同对系统负责、承担了非正式的代码审查过程、代码质量更高

    极限编程是一种轻量级(敏捷)、高效、低风险、柔性、可预测的、科学的软件开发方式。

    • 4大价值观: 沟通、简单性、反馈和勇气

    • 5个原则:快速反馈、简单性假设、逐步修改、提倡更改和优质工作。

    • 12个最佳实践:计划游戏(快速制定计划、随着细节的不断变化而完善)、小型发布(系统的设计要能够尽可能早地交付)、隐喻(找到合适的比喻传达信息)、简单设计(只处理当前的需求,使设计保持简单)、测试先行(先写测试代码,然后再编写程序)、重构(重新审视需求和设计,重新明确地描述它们以符合新的和现有的需求)、结队编程、集体代码所有制、持续集成(可以按日甚至按小时为客户提供可运行的版本)、每周工作40个小时、现场客户和编码标准。不包括精心设计

  • 在对软件开发资源进行规划时,为了确定构建软件系统所需的人数,需要考虑软件系统的规模、系统的技术复杂性、项目计划和开发人员的技术背景等方面,而与系统是否有市场前景无关。

  • 基本模型是一个静态单变量模型

  • 大规模项目最不适于采用无主程序员组的开发人员组织形式,因为大项目需要主程序员来整合各模块程序。

  • 软件风险一般包括不确定性和损失两个特性

  • 风险预测从风险发生的可能性大小以及风险发生所产生的后果是否严重两个方面评估风险。

  • 敏捷开发方法scrum的步骤不包括Refactoring,包括Product Backlog、Sprint Backlog、Sprint

  • 1.原型方法适用于用户需求不清、需求经常变化的情况,可以帮助导出系统需求并验证需求的有效性; 2.探索型原型的目的是弄清目标的要求,确定所希望的特性,并探讨多种方案的可行性,可以用来探索特殊的软件解决方案; 3.原型法能够迅速地开发出一个让用户看得见的系统框架,可以用来支持用户界面设计。 原型法不能用来指导代码优化。

  • 测试设计在需求分析阶段写

    测试分析报告在测试阶段写

  • 功能性是指与功能及其指定的性质有关的一组软件质量;可靠性是指衡量在规定的一段时间内和规定条件下维护性能水平的一组软件质量;可维护性是指与软件维护的难易程度相关的一组软件属性;易使用性是指与使用难易程度及规定或隐含用户对使用方式所做的评价相关的属性。综上所述,可以知道将每个用户的数据和其他用户的数据隔离开,是考虑了软件的功能性质量特性

  • 在屏蔽软件错误的容错系统中,冗余附加技术的构成不包括关键程序和数据的冗余存储及调用

  • 在这里插入图片描述

  • 功能性包括安全性

  • 系统开发人员与项目管理人员在项目期内进行沟通的文档主要有系统开发计划、系统开发月报以及系统开发总结报告等项目管理文件。

  • 逆向工程从源代码得到软件系统的规格说明和设计信息,属于软件维护阶段行为,因此逆向工程工具属于软件维护工具

  • 队列的特点是先进先出,若用循环单链表表示队列,则入队列和出队列操作都不需要遍历链表

概念:

  • 常见的软件生存周期模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。瀑布模型是将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型,适合于软件需求很明确的软件项目。V模型是瀑布模型的一种演变模型,将测试和分析与设计关联进行,加强分析与设计的验证。原型模型是一种演化模型,通过快速构建可运行的原型系统,然后根据运行过程中获取的用户反馈进行改进。演化模型特别适用于对软件需求缺乏准确认识的情况。螺旋模型将瀑布模型和演化模型结合起来,加入了两种模型均忽略的风险分析。 本题中项目组具备了所开发系统的相关领域及类似规模系统的开发经验,即需求明确,瀑布模型最适合开发此项目。

  • 软件设计的任务是基于需求分析的结果建立各种设计模型,给出问题的解决方案。从工程管理的角度,可以将软件设计分为两个阶段:概要设计阶段详细设计阶段结构化设计方法中,概要设计阶段进行软件体系结构的设计、数据设计和接口设计;详细设计阶段进行数据结构和算法的设计。面向对象设计方法中,概要设计阶段进行体系结构设计、初步的类设计/数据设计、结构设计;详细设计阶段进行构件设计。 结构化设计和面向对象设计是两种不同的设计方法,结构化设计根据系统的数据流图进行设计,模块体现为函数、过程及子程序;面向对象设计基于面向对象的基本概念进行,模块体现为类、对象和构件等。

  • COCOMO用3个不同层次的模型来反映不同程度的复杂性,它们分别为:基本模型(Basic Model):是一个静态单变量模型,它用一个以已估算出来的源代码行数(LOC)为自变量的函数来计算软件开发工作量。中级模型(Intermediate Model):则在用LOC为自变量的函数计算软件开发工作量的基础上,再用涉及产品、硬件、人员、项目等方面属性的影响因素来调整工作量的估算。详细模型(Detailed Model):包括中级COCOMO型的所有特性,但用上述各种影响因素调整工作量估算时,还要考虑对软件工程过程中分析、设计等各步骤的影响。

  • 敏捷开发方法XP是一种轻量级、高效、低风险、柔性、可预测的、科学的软件开发方法,其特性包含在12个最佳实践中。 1.计划游戏:快速制定计划、随着细节的不断变化而完善; 2.小型发布:系统的设计要能够尽可能早地交付; 3.隐喻:找到合适的比喻传达信息; 4.简单设计:只处理当前的需求使设计保持简单; 5.测试先行:先写测试代码再编写程序; 6.重构:重新审视需求和设计,重新明确地描述它们,以符合新的和现有的需求; 7.结队编程; 8.集体代码所有制; 9.持续集成:可以按日甚至按小时为客户提供可运行的版本; 10.每周工作40个小时; 11.现场客户; 12.编码标准。

  • 项目估算是项目计划和管理的一个至关重要的方面。成本超出某个限度可能导致客户取消项目,而过低的成本估算可能会迫使开发小组投入大量的时间却没有相应的经济回报。目前常用的项目估算方法有专家判断方法,该方法受到专家经验和主观性等方面的影响;算法方法,根据某个计算模型来估算项目开发成本,如启发式方法COCOMO 模型,但这些模型中的参数难以确定;机器学习方法,如根据过去的项目开发数据,建立分类模型,预测新项目的开发成本,但这类方法难以定义训练数据的特征以及定义数据对象之间的相似性。即使结合多种方法,上述问题仍然存在,因此并不能得到精确地估算结果。

  • 软件需求是软件系统必须完成的事以及必须具备的品质。软件需求包括功能需求、非功能需求和设计约束三个方面的内容。功能需求是所开发的软件必须具备什么样的功能:非功能需求是指产品必须具备的属性或品质,如可靠性、性能、响应时间和扩展性等等;设计约束通常对解决方案的一些约束说明。“软件产品必须能够在3秒内对用户请求作出响应”主要表述软件的响应时间,属于非功能需求。

  • Gantt图是一种简单的水平条形图,以日历为基准描述项目任务。水平轴表示日历时间线,如日、周和月等,每个条形表示一个任务,任务名称垂直的列在左边的列中,图中水平条的起点和终点对应水平轴上的时间,分别表示该任务的开始时间和结束时间,水平条的长度表示完成该任务所持续的时间。当日历中同一时段存在多个水平条时,表示任务之间的并发。 Gantt图能清晰地描述每个任务从何时开始,到何时结束,任务的进展情况以及各个任务之间的并行性。但它不能清晰地反映出各任务之间的依赖关系,难以确定整个项目的关键所在,也不能反映计划中有潜力的部分。

  • 软件风险一般包括不确定性和损失两个特性,其中不确定性是指风险可能发生,也可能不发生:损失是当风险确实发生时,会引起的不希望的后果和损失。救火和危机管理是对不适合但经常采用的软件风险管理策略。已知风险和未知风险是对软件风险进行分类的一种方式。员工和预算是在识别项目风险时需要识别的因素。

  • 风险分析实际上是4个不同的活动:风险识别、风险预测、风险评估和风险控制。 风险识别是试图系统化地确定对项目计划(估算、进度、资源分配)的威胁。风险预测又称为风险估算,它从两个方面评估一个风险:风险发生的可能性或概率;以及如果风险发生时所产生的后果。风险评估根据风险及其发生的概率和产生的影响预测是否影响 参考水平值。风险控制的目的是辅助项目组建立处理风险的策略,有效的策略应考虑风 险避免、风险监控、风险管理及意外事件计划。

  • 对基本加工的说明有三种描述方式:结构化语言、判断表(决策表)、判断树(决策树)。基本加工逻辑描述的基本原则为:1.对数据流图的每一个基本加工,必须有一个基本加工逻辑说明。2.基本加工逻辑说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则。3.加工逻辑说明必须描述实现加工的策略而不是实现加工的细节。4.加工逻辑说明中包含的信息应是充足的,完备的,有用的,无冗余的。

  • 增量式开发的主要优点包括:1.由于能够在较短的时间内向用户提交一些有用的工作产品,因此能够解决用户的一些急用功能。2.由于每次只提交用户部分功能,用户有较充分的时间学习和适应新的产品。3.对系统的可维护性是一个极大的提高,因为整个系统是由一个个构件集成在一起的,当需求变更时只变更部分部件,而不必影响整个系统。主要缺点包括:1.由于各个构件是逐渐并入已有的软件体系结构中的,所以加入构件必须不破坏已构造好的系统部分,这需要软件具备开放式的体系结构。2.在开发过程中,需求的变化是不可避免的。增量模型的灵活性可以使其适应这种变化的能力大大优于瀑布模型和快速原型模型,但也很容易退化为边做边改模型,从而使软件过程的控制失去整体性。3.如果增量包之间存在相交的情况且未很好处理,则必须

  • 软件成熟度模型CMM是对软件组织进化阶段的描述,该模型在解决软件过程存在问题方面取得了很大的成功,因此在软件界产生了巨大影响,促使软件界重视并认真对待过程改进工作。过程能力成熟度模型基于这样的理念:改进过程将改进产品,尤其是软件产品。软件组织为提高自身的过程能力,把不够成熟的过程提升到较成熟的过程涉及4个方面,这4个方面构成了软件过程改进的框架,即过程改进基础设施、过程改进线路图、软件过程评估方法和软件过程改进计划。在进行评估后需要把发现的问题转化为软件过程改进计划。而过程改进通常不可能是一次性的,需要反复进行。每一次改进要经历4个步骤:评估、计划、改进和监控

  • 能力成熟模型集成CMMI(CMM模型的最新版本):

    CL0(未完成的):过程域未执行或未得到CL1中定义的所有目标。

    CL1(已执行的):其共性目标是过程将可标识的输入工作产品转换成可标识的输出工作产品,以实现支持过程域的特定目标。

    CL2(已管理的):其共性目标是集中于已管理的过程的制度化。根据组织级政策规定过程的运作将使用哪个过程,项目遵循已文档化的计划和过程描述,所有正在工作的人都有权使用足够的资源,所有工作任务和工作产品都被监控、控制、和评审。

    CL3(已定义级的):其共性目标集中于已定义的过程的制度化。过程是按照组织的裁剪指南从组织的标准过程中裁剪得到的,还必须收集过程资产和过程的度量,并用于将来对过程的改进。

    CL4(定量管理的):其共性目标集中于可定量管理的过程的制度化。使用测量和质量保证来控制和改进过程域,建立和使用关于质量和过程执行的质量目标作为管理准则。

    CL5(优化的):使用量化(统计学)手段改变和优化过程域,以满足客户的改变和持续改进计划中的过程域的功效。

  • 模块结构评审时,主要包括以下方面的评审:1.控制流结构:规定了处理模块与处理模块之间的流程关系。检查处理模块之间的控制转移关系与控制转移形式(调用方式)。2.数据流结构:规定了数据模块是如何被处理模块进行加工的流程关系。检查处理模块与数据模块之间的对应关系;处理模块与数据模块之间的存取关系,如建立、删除、查询、修改等。3.模块结构与功能结构之间的对应关系:包括功能结构与控制流结构的对应关系;功能结构与数据流结构的对应关系;每个模块的定义(包括功能、输入与输出数据)。

  • 软件配置管理SCM用于整个软件工程过程,其主要目标是标识变更、控制变更、确保变更正确的实现,报告变更。其主要内容包括版本管理、配置支持、变更支持、过程支持、团队支持、变化报告和审计支持等。

  • 用于系统开发人员与项目管理人员在项目期内进行沟通的文档主要有系统开发计划,包括工作任务分解表、PERT图、甘特图和预算分配表等。总体规划和开发合同用于与系统分析人员在系统规划和系统分析阶段的沟通。测试计划用于系统测试人员与系统开发人员之间的沟通。

  • 文档是指某种数据媒体和其中所记录的数据。在软件开发过程中,有大量的信息要记录和使用,因此文档具有重要的作用,如可以提高软件开发过程的能见度、提髙开发效率、作为开发人员在一定阶段的工作成果和结束标志、记录开发过程中的有关信息、提高对软件运行维护和培训的有关信息、便于用户了解软件功能和性能等各项指标。 髙质量的文档应该体现在几个方面:针对性,文档编制应考虑读者。按不同的类型、不同层次的读者,决定怎样适应他们的需要;精确性,文档的行文应该十分确切,不能出现多义性的描述。同一项目几个文档的内容应该是协调一致,没有矛盾的;清晰性, 文档编写应力求简明,如有可能,配以适当的图表,以增强其清晰性;完整性,任何文 档都应当是完整的、独立的,应该自成体系;灵活性,各个不同软件项目,其规模和复 杂程度有着许多实际差别,不能一律看待;可追溯性,由于各开发阶段编制的文档与各个阶段完成的工作有密切的关系,前后两个阶段生成的文档,随着开发工作的逐步延伸, 具有一定的继承关系,在一个项目各开发阶段之间提供的文档必定存在着可追溯的关系。

  • 可维护性是所有软件都应具有的基本特点,必须在开发阶段保证软件具有可维护的特点,在系统分析阶段的复审过程中,应该指出软件的可移植性问题以及可能影响软件维护的系统界面;在系统设计阶段的复审期间,应该从容易修改、模块化和功能独立的目的出发,评价软件的结构和过程;在系统实施阶段的复审期间,代码复审应该强调编码风格和内部说明文档这两个影响可维护性的因素。可测试性是可维护性的一个评价指标。

  • 系统设计为系统制定蓝图,软件设计模型关注新系统总体结构、代码设计、处理过程、数据结构和界面模型等。对项目范围的关注在软件设计之前。

系统开发与运行

小结:

  • 顶层数据流图描述了系统的输入与输出
  • 数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明,使用数据字典为简单的建模项目。其条目有数据流、数据项、数据存储、基本加工等。不包括外部实体
  • 数据流图中的基本图形元素包括数据流、加工、数据存储和外部实体。其中,数据流、加工和数据存储用于构建软件系统内部的数据处理模型,而外部实体表示存在于系统之外的对象,用来帮助用户理解系统数据的来源和去向。外部实体包括:人/物、外部系统、组织机构等
  • 使用白盒测试方法时,应根据程序的内部逻辑和指定的覆盖标准确定测试数据
  • 模块的作用范围定义为受该模块内一个判定影响的模块集合,模块的控制范围为模块本身以及所有直接或间接从属于该模块的模块集合。其作用范围应该在控制范围之内

概念:

  • 数据流图是结构化分析方法的重要模型,用于描述系统的功能、输入、输出和数据存储等。在绘制数据流图中,每条数据流的起点或者终点必须是加工,即至少有一端是加工。在分层数据流图中,必须要保持父图与子图平衡。每个加工必须既有输入数据流又有输出数据流。必须要保持数据守恒。也就是说,一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者是通过该加工能产生的数据。

  • 对基本加工的说明有三种描述方式:结构化语言、判断表(决策表)、判断树(决策树)。基本加工逻辑描述的基本原则为:1.对数据流图的每一个基本加工,必须有一个基本加工逻辑说明。2.基本加工逻辑说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则。3.加工逻辑说明必须描述实现加工的策略而不是实现加工的细节。4.加工逻辑说明中包含的信息应是充足的,完备的,有用的,无冗余的。

  • 结构化设计方法是一种面向数据流的设计方法,与结构化分析方法衔接。在需求分析阶段,结构化分析方法产生了数据流图,而在设计阶段,结构化设计方法将数据流映射为软件系统的模块结构。数据流图中从系统的输入数据流到系统的输出数据流的一连串变换形成了一条信息流。其中的信息流一般情况下包括变换流型和事物流型不同类型的数据流到程序模块的映射方法不同。一个软件系统往往不仅仅有一种数据流类型。

    结构化开发方法由结构化分析、结构化设计和结构化程序设计构成,是一种面向数据流的开发方法。结构化方法总的指导思想是自顶向下、逐层分解,基本原则是功能的分解与抽象。它是软件工程中最早出现的开发方法,特别适合于数据处理领域的问题,但是不适合解决大规模的、特别复杂的项目,而且难以适应需求的变化

    结构化设计主要包括: ①体系结构设计:定义软件的主要结构元素及其关系。 ②数据设计:基于实体联系图确定软件涉及的文件系统的结构及数据库的表结构。 ③接口设计:描述用户界面,软件和其他硬件设备、其他软件系统及使用人员的外部接口,以及各种构件之间的内部接口。 ④过程设计:确定软件各个组成部分内的算法及内部数据结构,并选定某种过程的表达形式来描述各种算法。

    结构化方法的分析结果由以下几部分组成:一套分层的数据流图、一本数据词典、一组小说明(也称加工逻辑说明)、补充材料。

  • 模块独立性是创建良好设计的一个重要原则,一般采用模块间的耦合和模块的内聚两个准则来进行度量。耦合是模块之间的相对独立性的度量,模块之间的连接越紧密, 联系越多,耦合性就越高,而其模块独立性就越弱。一般来说,模块之间的耦合有7种类型,根据耦合性从低到高为非直接耦合、数据耦合、标记耦合、控制耦合、外部耦合、公共耦合和内容耦合。如果一个模块访问另一个模块时,彼此之间是通过数据参数(不是控制参数、公共数据结构或外部变量)来交换输入、输出信息的,则称这种耦合为数据耦合;如果一组模块通过数据结构本身传递,则称这种耦合为标记耦合;若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合;若一个模块直接访问另一个模块的内部数据、一个模块不通过正常入口转到另一个模块内部、两个模块有一部分程序代码重叠或者一个模块有多个入口,上述几个情形之一发生则说明两个模块之间就发生了内容耦合

  • 偶然内聚(巧合内聚):指一个模块内的各个处理元素之间没有任何联系。 ②逻辑内聚:指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。 ③时间内聚:把需要同时执行的动作组合在一起形成的模块。 ④通信内聚:指模块内所有处理元素都在同一个数据结构上操作,或者指各处理使用相同的输入数据或者产生相同的输出数据。 ⑤顺序内聚:指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行, 前一个功能元素的输出就是下一个功能元素的输入。 ⑥功能内聚:是最强的内聚,指模块内所有元素共同完成一个功能,缺一不可

  • 一个模块的作用范围(或称影响范围)指受该模块内一个判定影响的所有模块的集合。一个模块的控制范围指模块本身以及其所有下属模块(直接或间接从属于它的模块)的集合。一个模块的作用范围应在其控制范围之内,且判定所在的模块应在其影响的模块在层次上尽量靠近。如果再设计过程中,发现模块作用范围不在其控制范围之内,可以用“上移判点”或“下移受判断影响的模块,将它下移到判断所在模块的控制范围内”的方法加以改进。

  • 通常,可以按照在软件系统中的功能将模块分为四种类型。①传入模块:取得数据或输入数据,经过某些处理,再将其传送给其他模块.②传出模块:输出数据,在输出 之前可能进行某些处理,数据可能被输出到系统的外部,或者会输出到其他模块进行进一步处理。③变换模块:从上级调用模块得到数据,进行特定的处理,转换成其他形式,在将加工结果返回给调用模块。④协调模块一般不对数据进行加工,主要是通过调用、协调和管理其他模块来完成特定的功能。

  • 系统结构图(SC)又称为模块结构图,它是软件概要设计阶段的工具,反映系统的功能实现和模块之间的联系与通信,包括各模块之间的层次结构,即反映了系统的总体结构。SC包括模块、模块之间的调用关系、模块之间的通信和辅助控制符号等4个部分。

  • 白盒测试也称为结构测试,根据程序的内部结构和逻辑来设计测试用例,对程序的执行路径和过程进行测试,检查是否满足设计的需要。白盒测试常用的技术涉及不同覆盖标准,在测试时需根据指定的覆盖标准确定测试数据。

  • 结构化分析将数据和处理作为分析对象,数据的分析结果表示了现实世界中实体的属性及其之间的相互关系,而处理的结果则展现了系统对数据的加工和转换。面向数据流建模是目前仍然被广泛使用的方法之一,而DFD则是面向数据流建模中的重要工具,DFD将系统建模成输入一处理一输出的模型,即流入软件的数据对象,经由处理的转换,最后以结果数据对象的形式流出软件。在实际使用DFD进行数据流建模时,需要注意以下原则: ①加工处理和数据流的正确使用,如一个加工必须既有输入又有输出;数据流只能和加工相关,即从加工流向加工、数据源流向加工或加工流向数据源。 ②每个数据流和数据存储都要在数据字典中有定义,数据字典将包括各层数据流图中数据元素的定义。 ③数据流图中最底层的加工处理必须有加工处理说明。 ④父图和子图必须平衡,即父图中某加工的输入输出(数据流)和分解这个加工的子图的输入输出数据流必须完全一致,这种一致性不一定要求数据流的名称和个数一 一对应,但它们在数据字典中的定义必须一致,数据流或数据项既不能多也不能少。 ⑤加工处理说明和数据流图中加工处理涉及的元素保持一致。例如,在加丄处理说明中,输入数据流必须说明其如何使用,输出数据流说明如何产生或选取,数据存储说明如何选取、使用或修改。 ⑥一幅图中的图元个数控制在7+2以内。

    在题目所示的DFD图中,数据流DF2、DF6和DF7的输入、输出均不是加工,这与“数据流只能和加工相关,即从加工流向加工、数据源流向加工或加工流向数据源”相违背。加工P1只有输出,没有输入;加工P3只有输入没有输出,这与“一个加工必须既有输入又有输出”相违背。数据流DF4经过加工P4之后没有发生任何改变,说明该数据对加工P4是没有作用的,根据数据守恒原理,这条数据流不应与P4有关联。综上,该DFD图中共有6个错误。

网络与多媒体基础知识

小结:

  • 网络安全体系设计可以从物理线路安全、网络安全、系统安全、应用安全等方面来进行,其中,数据库容灾属于系统安全和应用安全

  • 数据链路层–网桥

  • HTTPS使用SSL协议对报文进行分析

  • 网络安全包含了网络信息的可用性、保密性、完整性和网络通信对象的真实性。其中数字签名是对真实性的保护

  • 在IE浏览器中,安全级别最高的区域设置是受限站点

  • 通常利用通过端口漏洞扫描来检测远程主机状态,获取权限从而攻击远程主机。

  • 矢量图中的图形元素称为图元。而另一类图具有代表性的图像表示形式是位图图像,该图采用像素来表示图像。

  • 音频信号范围20Hz~20kHz

  • 在ISO指定并发布的MPEG系列标准中,MPEN-1的音、视频压缩编码技术被应用到VCD中,MPEG-2标准中的音、视频压缩编码技术被应用到DVD中

  • RGB x:y:z 颜色数为2^(x+y+z)种

  • 目前,计算机数字音乐合成技术主要有FM和Wave Table,其中FM即频率调制,在电子音乐合成技术中,是最有效的合成技术之一,而Wave Table即波形表合成,它是一种真实的音乐合成技术,其合成的音乐音质更好。

  • 计算机终端用户因等待时间过长而放弃下载或显示图片/影像的问题,不能通过采用AD/DA变换方式来解决

  • dpi是Dots Per Inch的缩写,也就是每英寸的像素

  • 在FM方式的数字音乐合成器中,改变数字载波频率可以改变乐音的音调,改变它的信号幅度可以改变乐音的音高

  • 水平分辨率表示显示器在横向(行)上具有的像素点数目,垂直–垂直(就是正的别多想)

  • 物理层–中继器

    数据链路层–网桥/交换机

    网络层–路由器

  • 建立连接进行可靠通信在TCP/IP网络中,应该在==传输层==完成,在OSI/RM同样在传输层完成。

  • ARP属于网络层协议,它的作用是实现IP地址与MAC地址之间的变换

  • 集线器连接的主机构成一个冲突域,交换机的每个端口属于一个冲突域,路由器连接的两部分网络形成两个广播域,所以共有两个广播域和5个冲突域。

  • PPP中的安全认证协议是CHAP它使用三次握手的会话过程传送密文

  • FTP协议占用两个标准的端口号:20和21,其中20为数据口,21为控制口

    使用的传输层协议为TCP

  • POP3服务器默认端口为110

  • 以下协议中属于应用层协议的是SNMP,该协议封装在UDP

    属于应用层协议的是简单网络管理协议SNMP,它的传输层协议是UDP。ARP和ICMP都属于网络层协议。X.25是分组交换网上的协议,也归于网络层。

    ICMP协议属于因特网中的网络层协议,ICMP数据单元封装在IP数据报中传送

    助记:

    应用层–SNMP 网络层–ARP、ICMP

    SNMP-封装在-UDP(S对U soup) ICMP-封装在-IP数据报(IP对IP)

  • 在浏览器地址栏输入一个正确的网址后,本地主机将首先在本机hosts文件查询该网址对应的IP地址

    DNS域名查询的次序是:本地的hosts文件一>本地DNS缓存一>本地DNS服务器一>根域名服务器。

    主域名服务器在接收到域名请求后,首先查询的是本地缓存

    见概念:域名解析流程 部分(高亮)

  • 主要的传输层协议为TCP和UDP。TCP协议的是现较为复杂,采用3次握手建立连接,传输过程中能实现可靠传输、流量控制以及拥塞控制,因而也带来了较大开销。UDP协议主要通过端口号实现传输层级的寻址,开销也小。

    助记:c-complex

  • 使用ADSL接入Internet,用户端需要安装PPPoE协议

  • 在Windows系统中设置默认路由的作用是当没有其他路由可选时最后选择的路由

  • SMTP传输的邮件报文采用ASCLL格式表示

  • 在ASP的内置对象中。能修改cookie中的值的是response,它还可以创建cookie,而request可以访问cookie中的参数。

  • VLAN优点允许逻辑的划分网段

  • POP3协议是TCP/IP协议簇中用于邮件接收的协议。邮件客户端通过与服务器之间建立TCP连接,采用Client/Server计算模式来传送邮件。(记忆:tri-三)

  • HTTP的一次请求过程:1.在浏览器中输入URL并按下回车键;2.浏览器向DNS服务器发出域名解析请求并获得结果;3.根据目的IP地址和端口号,与服务器建立TCP连接;4.浏览器向服务器发送数据请求;5.服务器将网页数据发送给浏览器;6.浏览器解析收到的数据并显示/通信完成,断开TCP连接。(先后有争议)

  • HTTP协议中,用于读取一个网页的操作方法为GET

  • 网络的可用性是指用户利用网络时间的百分比

  • 如果要使得两个IPv6结点可以通过现有的IPv4网络进行通信,则应该使用隧道技术,如果要使得纯IPv6结点可以与纯IPv4结点进行通信,则需要使用翻译技术

  • IPV6的地址空间是IPV4的2^96倍

    IPv4用32位二进制表示,能够表示的地址空间是232,IPv6用128位二进制表示,能够表示的地址空间是2128,本题选择2128 /232=296

  • “三网合一”是将电信网、广播电视网以及互联网进行整合,实现业务互联互通的一种网络解决方案。

  • POP3协议采用C/S模式进行通信,POP3需要TCP连接的支持,当客户机需要服务时,客户端软件与POP3服务器建立TCP连接。

  • DHCP客户端可从DHCP服务器获得本机IP地址、DNS服务器的地址、DHCP服务器的地址、默认网关的地址等,但没有Web服务器、邮件服务器地址。

    DHCP协议的功能是自动分配IP地址;FTP协议的作用是文件传输,使用的传输层协议为TCP。

  • 默认网关和本地IP地址应属同一网段。

  • 127.0.0.1是本地回送地址,当网络连接不可用时,为了测试编写好的网络程序,通常使用的目的主机IP地址为127.0.0.1。

  • ipconfig 显示信息; ipconfig /all 显示详细信息 ,可查看DHCP服务是否已启用; ipconfig /renew 更新所有适配器; ipconfig /release 释放所有匹配的连接。

    ipconfig/renew的含义是更新所有适配器的 DHCP 配置。该命令仅在具有配置为自动获取 IP 地址的适配器的计算机上可用。ipconfig/flushdns的含义是刷新并重设DNS解析器缓存。netstat –r用于显示核心路由表。arp –a用于查看ARP高速缓存中的内容。

  • TCP的流量控制采用了可变大小的滑动窗口协议,由接收方指明接收缓冲区的大小(字节数),发送方发送了规定的字节数后等待接收方的下一次请求。固定大小的滑动窗口协议用在数据链路层的HDLC中。可变大小的滑动窗口协议可以应付长距离通信过程中线路延迟不确定的情况,而固定大小的滑动窗口协议则适合链路两端点之间通信延迟固定的情况。

  • 使用ping命令进行网络检测,按照由近及远原则,首先执行的是ping127.0.0.1,其次是ping本地IP,再次是ping默认网关,最后是ping远程主机。

  • TCP和UDP均提供了端口寻址功能。

  • 建筑物综合布线系统中的园区子系统是指连接各个建筑物的通信系统

  • 浏览网页、Telnet远程登录以及发送邮件应用均不允许数据的丢失,需要采用可靠的传输层协议TCP,而VoIP允许某种程度上的数据丢失,采用不可靠的传输层协议UDP。

  • 主机路由的子网掩码是255.255.255.255。网络路由要指明一个子网,所以不可能为全1,默认路由是访问默认网关,而默认网关与本地主机属于同一个子网,其子网掩码也应该与网络路由相同,对静态路由也是同样的道理。

  • 各种路由来源的管理距离如下表所示。

    如果路由器收到了由多个路由协议转发的、关于某个目标的多条路由,则比较各个路由的管理距离,并采用管理距离小的路由来源提供的路由信息。

  • 在层次化局域网模型中,核心层的主要功能是将分组从一个区域高速地转发到另一个区域

概念:

  • Outlook Express有以下一些优点:

    • 可以脱机处理邮件,有效利用联机时间,降低了上网费用。

    • 可以管理多个邮件账号,在同一个窗口中使用多个邮件账号。

    • 可以使用通讯簿存储和检索电子邮件地址。

    • 在邮件中添加个人签名或信纸。

    • 发送和接收安全邮件。

  • 网络层的联网设备是路由器,数据链路层的联网设备是网桥和交换机,传输层和会话层主要是软件功能,都不需要专用的联网设备。

  • HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

    HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议。它是一个安全通信通道,基于HTTP开发,用于在客户计算机和服务器之间交换信息。HTTPS使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。HTTPS和HTTP的区别: • https协议需要到ca申请证书,一般免费证书很少,需要交费。 • http是超文本传输协议,信息是明文传输,https 则是具有安全性的SSL加密传输协议。 • http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。 • http的连接很简单,是无状态的。 HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。

  • ARP攻击(ARP欺骗)是欺骗攻击的一种,通过伪造IP地址和MAC地址,能够在网络中产生大量的ARP通信量使网络阻塞,如果伪造网关的IP地址和MAC地址对,则所有发往网关的IP包将因为MAC地址错误而无法到达网关(ARP攻击一般会将MAC地址改为发起ARP攻击的主机地址),造成无法跨网段通信。 处理ARP攻击的方法为首先断开ARP攻击主机的网络连接,然后用“arp-d”命令清除受攻击影响的ARP缓存。

  • SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

  • 在IE浏览器中,安全级别最高的区域设置是受限站点。其中Internet区域设置适用于Internet网站,但不适用于列在受信任和受限制区域的网站;本地Intranet区域设置适用于在Intranet中找到的所有网站;可信任站点区域设置适用于你信任的网站;而受限站点区域设置适用于可能会损坏你计算机或文件的网站,它的安全级别最高。

  • 通常所说的“媒体(Media)”包括两重含义:一是指信息的物理载体,即存储和传递信息的实体,如手册、磁盘、光盘、磁带以及相关的播放设备等(本题只涉及存储信息);二是指承载信息的载体,即信息的表现形式(或者说传播形式),如文字、声音、图像、动画和视频等,即CCITT定义的存储媒体和表示媒体。表示媒体又可以分为三种类型:视觉类媒体(如位图图像、矢量图形、图表、符号、视频和动画等)、听觉类媒体 (如音响、语音和音乐等)和触觉类媒体(如点、位置跟踪,力反馈与运动反馈等)。视觉和听觉类媒体是信息传播的内容,触觉类媒体是实现人机交互的手段。

  • MPEG是Moving Picture Expert Group的简称,最初是指由国际标准化组织(ISO) 和国际电工委员会(IEC)联合组成的一个研究视频和音频编码标准的专家组。同时MPEG也用来命名这个小组所负责开发的一系列音、视频编码标准和多媒体应用标准。这个专家组至今为止已制定和制定中的标准包括MPEG-1、MPEG-2、MPEG-4、MPEG-7和MPEG-21标准。其中MPEG-1、MPEG-2和MPEG-4主要针对音、视频编码技术,而MPEG-7是多媒体内容描述接口标准,MPEG-21是多媒体应用框架标准。 VCD使用了MPEG-1标准作为其音、视频信息压缩编码方案,而MPEG-2标准中的音、视频压缩编码技术被应用到DVD中。

  • WAV为微软公司开发的一种声音文件格式,它符合RIFF(Resource Interchange File Format)文件规范。 BMP(Bitmap)是Windows操作系统中的标准图像文件格式,可以分成两类:设备相关位图(DDB)和设备无关位图(DIB)。它采用位映射存储格式,除了图像深度可选以外,不采用其他任何压缩。 MP3(Moving Picture Experts Group Audio Layer Ⅲ是一种音频压缩技术,它被设计用来大幅度地降低音频数据量。作为文件扩展名时表示该文件时一种音频格式文件。 MOV即QuickTime影片格式,它是Apple公司开发的一种音频、视频文件格式,用于存储常用数字媒体类型。

  • 在这里插入图片描述

  • JPEG累进(或增量、渐进、递增、progressive)编码模式,这样可以实现图像内容的方式传输,在浏览器上的直观效果是无需过久等待即可看到模糊的图像,然后图像显示内容由模糊逐渐变得清晰。 GIF图像文件格式以数据块为单位来存储图像的相关信息,采用了LZW无损压缩算法按扫描行压缩图像数据。它可以在一个文件中存放多幅彩色图像,每一幅图像都由一个图像描述符、可选的局部彩色表和图像数据组成。如果把存储于一个文件中的多幅图像逐幅读出来显示到屏幕上,可以像播放幻灯片那样显示或者构成简单的动画效果。GIF定义了两种数据存储方式,一种是按行连续存储,存储顺序与显示器的显示顺序相同;另一种是按交叉方式存储,由于显示图像需要较长的时间,使用这种方法存放图像数据,用户可以在图像数据全部收到之前这幅图像的全貌,而不觉得等待时间太长。 图像信号是一种模拟信号,计算机要对它进行处理,必须将它转换成为数字图像信号,即用二进制数字的编码形式来表示图像,转换过程一般称为A/D转换(模数转换)。将图像播放出来,需进行D/A转换(数模转换)。

  • 国际电话电报咨询委员会(CCITT)将媒体分为感觉媒体、 表示媒体、 表现媒体、存储媒体和传输媒体5类。 感觉媒体指直接作用于人的感觉器官,使人严生内接感觉的媒体, 如引起听觉反应的声音、引起视觉反应的图像等; 传输媒体指传输表示媒体的物理介质,如电缆、光缆。电磁波等; 表示媒体指传输感觉媒体的中介媒体,即用于数据交换的编码,如图像编码、文本编码和声音编码等; 表现媒体是指进行信息输入和输出的媒体,如键盘、鼠标、话筒,以及显示器、打印机、喇叭等; 存储媒体指用于存储表示媒体的物理介质,如硬盘、光盘等。

  • 音调(Pitch)用来表示人的听觉分辨个声音的调子高低的程度,主要由声音的频率决定,同时也与声音强度有关。对一定强度的纯音,音调随频率的升降而升降;对定频率的纯音、低频纯音的音调随声强增加而下降,高频纯者的音调却随强度增加而上升。 音色(Timbre)是指声音的感觉特性,不同的人声和不同的声响都能区分为不同的音色,即音频泛音或谐波成分。 音高是指各种不同高低的声音(即首的高度),是首的基本特征的一种。 在FM方式音乐合成器中,数字载波波形和调制波形有很多种,不同型号的FM合成器所选用的波形也不同。各种不同乐音的产生是通过组合各种波形和各种波形参数并采用各种不同的方法实现的。改变数字载波频率可以改变乐音的音调,改变它的幅度可以改变乐音的音高。

  • 语音信号频率范围是300Hz〜3.4kHz,也就是不超过4kHz,按照奈奎斯特定律,要保持话音抽样以后再恢复时不失真,最低抽样频率是2倍的最高频率,即8kHz就可以保证信号能够正确恢复,因此将数字语音的采样频率定义为8kHz

  • 显示分辨率是指显示器上能够显示出的像素点数目,即显示器在横向和纵向上能够显示出的像素点数目。水平分辨率表明显示器水平方向(横向)上显示出的像素点数目,垂直分辨率表明显示器垂直方向(纵向)上显示出的像素点数目。例如,显示分辨率为1024X768 则表明显示器水平方向上显示1024个像素点,垂直方向上显示768个像素点,整个显示屏就含有796432个像素点。屏幕能够显示的像素越多,说明显示设备的分辨率越高,显示的图像质量越高。显示深度是指显示器上显示每个像素点颜色的二进制位数。

  • ARP是网络层协议,它的作用是实现IP地址与MAC地址之间的变换。IP地址是分配给主机的逻辑地址,在互联网中表示唯一的主机。另外,每个主机还有一个物理地址,通常用网卡地址(MAC地址)来表示主机的物理地址。 物理地址和逻辑地址的区别可以从两个角度看:从网络互连的角度看,逻辑地址在整个互连网络中有效,而物理地址只是在子网内部有效;从网络协议分层的角度看,逻辑地址由Internet层使用,而物理地址由子网访问子层(具体地说就是数据链路层)使用。 由于有两种主机地址,因而需要一种映像关系把这两种地址对应起来。在Internet 中用地址分解协议(Address Resolution Protocol,ARP)来实现逻辑地址到物理地址映像。 ARP分组的格式如下图所示。 各字段的含义解释如下:

    •硬件类型:网络接口硬件的类型,对以太网此值为1。

    •协议类型:发送方使用的协议,0800H表示IP协议。

    •硬件地址长度:对以太网,地址长度为6字节。

    •协议地址长度:对IP协议,地址长度为4字节。

    •操作类型:1 一ARP请求,2—ARP响应,3—RARP请求,4—RARP响应。

    通常Internet应用程序把要发送的报文交给IP协议,IP当然知道接收方的逻辑地址 (否则就不能通信了),但不一定知道接收方的物理地址。在把IP分组向下传送给本地数据链路实体之前可以用两种方法得到目标物理地址:①查本地内存中的ARP地址映像表,其逻辑结构如下表所示。可以看出这是IP地址和以太网地址的对照表。 ②如果在ARP表中查不到,就广播一个ARP请求分组,这种分组经过路由器进一步转发,可以到达所有连网的主机。它的含义是“如果你的IP地址是这个分组中的目标结点协议地址,请回答你的物理地址是什么”。收到该分组的主机一方面可以用分组中的 两个源地址更新自己的ARP地址映像表,另一方面用自己的IP地址与目标结点协议地址字段比较,若相符则发回一个ARP响应分组,向发送方报告自己的硬件地址,若不相符则不予回答。

  • PPP 认证是可选的。PPP 扩展认证协议(Extensible Authentication Protocol,EAP) 可支持多种认证机制,并且允许使用后端服务器来实现复杂的认证过程。例如通过Radius 服务器进行Web认证时,远程访问服务器(RAS)只是作为认证服务器的代理传递请求和应答报文,并且当识别出认证成功/失败标志后结束认证过程。通常PPP支持的两个认证协议是: ①口令验证协议(Password Authentication Protocol,PAP):提供了一种简单的两次握手认证方法,由终端发送用户标识和口令字,等待服务器的应答,如果认证不成功,则终止连接。这种方法不安全,因为采用文本方式发送密码,可能会被第三方窃取。 ②质询握手认证协议(Challenge Handshake Authentication Protocol,CHAP);采用三次握手方式周期地验证对方的身份。首先是逻辑链路建立后认证服务器就要发送一个挑战报文(随机数),终端计算该报文的Hash值并把结果返回服务器,然后认证服务器把收到的Hash值与自己计算的Hash值进行比较,如果匹配,则认证通过,连接得以建立,否则连接被终止。计算Hash值的过程有一个双方共享的密钥参与,而密钥是不通过网络传送的,所以CHAP是更安全的认证机制。在后续的通信过程中,每经过一个随机的间隔,这个认证过程都可能被重复,以缩短入侵者进行持续攻击的时间。值得注意的是,这种方法可以进行双向身份认证,终端也可以向服务器进行挑战,使得双方都能确认对方身份的合法性。

  • ADSL Modem上网拨号方式有3种,即专线方式(静态IP)、PPPoA和PPPoE。 PPPoE(英语:Point-to-Point Protocol Over Ethernet),以太网上的点对点协议,是将点对点协议(PPP)封装在以太网(Ethernet)框架中的一种网络隧道协议。 PPTP(Point to Point Tunneling Protocol),即点对点隧道协议。该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网(VPN),可以通过密码验证协议(PAP)、可扩展认证协议(EAP)等方法增强安全性。可以使远程用户通过拨入ISP、通过直接连接Internet或其他网络安全地访问企业网。 SLIP(Serial Line Internet Protocol,串行线路网际协议),该协议是Windows远程访问的一种旧工业标准,主要在Unix远程访问服务器中使用,现今仍然用于连接某些ISP。 PPP(点到点协议)是为在同等单元之间传输数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。

  • 把局域网划分成多个不同的VLAN,使得网络接入不再局限于物理位置的约束,这样就简化了在网络中增加、移除和移动主机的操作,特别是动态配置的VLAN,无论主机在哪里,它都处于自己的VLAN中。VLAN内部可以相互通信,VLAN之间不能直接通信,必须经过特殊设置的路由器才可以连通。这样做的结果是,通过在较大的局域网中创建不同的VLAN,可以抵御广播风暴的影响,也可以通过设置防火墙来提高网络的安全性。VLAN并不能直接增强网络的安全性。

  • 25端口为SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务器所开放,主要用于发送邮件。110端口是为POP3(邮件协议3)服务开放的,POP2、POP3都是主要用于接收邮件的,目前POP3使用的比较多,许多服务器都同时支持POP2和POP3。客户端可以使用POP3协议来访问服务端的邮件服务。

  • netstat是控制台命令,是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。 nslookup是一个监测网络中DNS服务器是否能正确实现域名解析的命令行工具。 PING命令常用于测试连通性,在此过程中可看出是直接ping的目标地址。 nslookup、ping、tracert都可以加上一个主机域名作为其命令参数来诊断DNS故障,nslookup还可以看到本地DNS服务器地址。Arp命令是与arp记录有关,与DNS无关联。

  • 域名解析流程: 1.客户机提出域名解析请求,并将该请求发送给本地的域名服务器。 2.当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。 3.如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址。 4.本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。 5.重复第4步,直到找到正确的纪录。 6.本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。

  • 在HTTP协议中,GET可以用于获取一个指定页面内容;而HEAD用户获取头部信息;POST可以请求服务器接收包含在请求中的实体信息,可以用于提交表单,向新闻组、BBS、邮件群组和数据库发送消息。READ为干扰项,没有该命令。

  • 集线器是一种物理层设备,它的作用是从一个端口接收信息,并向其他端口广播出去。 集线器不解释所传送信息的含义,也不能识别任何协议数据单元。集线器的各个端口构成一个冲突域,即只能有一个端口发送数据,如果有两个以上端口同时发送,就冲突了。网桥是数据链路层设备,能识别数据链路层协议数据单元,并根据数据链路层地址进行数据转发。交换机是一种多端口网桥,任何一对端口之间都能进行数据转发。交换机的各个端口构成一个广播域,但不是冲突域,即可以有多个端口同时发送数据而不会出现冲突。

  • 可用性是指网络系统、网络元素或网络应用对用户可利用的时间的百分比。有些应用对可用性很敏感,例如飞机订票系统若宕机一小时,就可能减少几十万元的票款;而股票交易系统如果中断运行一分钟,就可能造成几千万元的损失。实际上,可用性是网络元素可靠性的表现,而可靠性是指网络元素在具体条件下完成特定功能的概率。

  • 帧中继(Frame Relay,FR)是为克服X.25交换网的缺陷、提髙传输性能而发展起来的高速分组交换技术。帧中继网络不进行差错和流量控制,并且通过流水方式进行交换,所以比X.25网络的通信开销更少,传输速度更快。 帧中继提供面向连接的虚电路服务,因而比DDN专线更能提高通信线路利用率, 用户负担的通信费用也更低廉。在帧中继网中,用户的信息速率可以在一定的范围内变化,从而既可以适应流式业务,又可以适应突发式业务,这使得帧中继成为远程传输的理想形式。

  • 结构化综合布线系统(Structure Cabling System)是基于现代计算机技术的通信物理平台,集成了语音、数据、图像和视频的传输功能,消除了原有通信线路在传输介质上的差别。 结构化布线系统分为6个子系统:工作区子系统、水平子系统、干线子系统、设备间子系统、管理子系统和建筑群子系统。 工作区子系统(Work Location)。 工作区子系统是由终端设备到信息插座的整个区域。一个独立的需要安装终端设备的区域划分为一个工作区。工作区应支持电话、数据终端、计算机、电视机、监视器以及传感器等多种终端设备。 水平布线子系统(Horizontal)。 各个楼层接线间的配线架到工作区信息插座之间所安装的线缆属于水平子系统。水平子系统的作用是将干线子系统线路延伸到用户工作区。 管理子系统(Administration)。 管理子系统设置在楼层的接线间内,由各种交连设备(双绞线跳线架、光纤跳线架)以及集线器和交换机等交换设备组成,交连方式取决于网络拓扑结构和工作区设备的要求。交连设备通过水平布线子系统连接到各个工作区的信息插座,集线器或交换机与交连设备之间通过短线缆互连,这些短线被称为跳线。通过跳线的调整,可以在工作区的信息插座和交换机端口之间进行连接切换。 干线子系统(Backbone) 干线子系统是建筑物的主干线缆,实现各楼层设备间子系统之间的互连。干线子系统通常由垂直的大对数铜缆或光缆组成,一头端接于设备间的主配线架上,另一头端接在楼层接线间的管理配线架上。 设备间子系统(Equipment)。 建筑物的设备间是网络管理人员值班的场所,设备间子系统由建筑物的进户线、交换设备、电话、计算机、适配器以及保安设施组成,实现中央主配线架与各种不同设备 (如PBX、网络设备和监控设备等)之间的连接。 建筑群子系统(Campus)。 建筑群子系统也叫园区子系统,它是连接各个建筑物的通信系统。大楼之间的布线方法有三种:一种是地下管道敷设方式,管道内敷设的铜缆或光缆应遵循电话管道和入孔的各种规定,安装时至少应预留1〜2个备用管孔,以备扩充之用。第二种是直埋法,要在同一个沟内埋入通信和监控电缆,并应设立明显的地面标志。最后一种是架空明线,这种方法需要经常维护。

  • 如果本地的DNS服务器工作不正常或者本地DNS服务器网络连接中断都有可能导致该计算机的DNS无法解析域名,而如果直接将该计算机的DNS服务器设置错误也会导致DNS无法解析域名,从而出现使用域名不能访问该网站,但是使用该网站的IP地址可以访问该网站。但是该计算机与DNS服务器不在同一子网不会导致DNS无法解析域名的现象发生,通常情况下大型网络里面的上网计算机与DNS服务器本身就不在一个子网,只要路由可达DNS都可以正常工作。

  • ipconfig命令详解如下: ①具体功能 该命令用于显示所有当前的TCP/IP网络配置值、刷新动态主机配置协议(DHCP)和域名系统(DNS)设置。使用不带参数的IPCONFIG可以显示所有适配器的IP地址、子网掩码、默认网关。 ②语法详解 ipconfig [/all] [/renew [adapter] [/release [adapter] [/flushdns] [/displaydns] [/registerdns] [/showclassidpadapter] [/setclassidpadapter] [classID] ③参数说明 /all显示所有适配器的完整TCP/IP配置信息。在没有该参数的情况下IPCONFIG只显示IP地址、子网掩码和各个适配器的默认网关值。适配器可以代表物理接口(例如安装的网络适配器)或逻辑接口 (例如拨号连接)。 /renew更新所有适配器(如果未指定适配器),或特定适配器(如果包含了adapter参数) 的DHCP配置。该参数仅在具有配置为自动获取IP地址的网卡的计算机上可用。要指定适配器名称,请输入使用不带参数的IPCONFIG命令显示的适配器名称。 /release[adapter]发送DHCPRELEASE消息到DHCP服务器,以释放所有适配器(如果未指定适配器)或特定适配器(如果包含了adapter参数)的当前DHCP配置并丢弃IP地址配置。该参数可以禁用配置为自动获取IP地址的适配器的TCP/IP。要指定适配器名称,请键入使用不带参数的IPCONFIG命令显示的适配器名称。 /flushdns清理并重设DNS客户解析器缓存的内容。如有必要,在DNS疑难解答期间,可以使用本过程从缓存中丢弃否定性缓存记录和任何其他动态添加的记录。 DNS Client服务为计算机解析和缓存DNS名称。为了要达到用最快速、最有效率的方式,让客户端能够迅速找到网域的验证服务,在Win2000/XP系统中,加入了DNS 快取(Cache)的功能。当第一次在找到了目的主机的IP地址后,操作系统就会将所查询到的名称及IP地址记录在本机的DNS快取缓冲区中,下次客户端还需要再查询时,就不需要到DNS服务器上査询,而直接使用本机DNS Cache中的数据即可,所以你查询的结果始终是同一IP地址。这个服务关闭后,dns还可以解析,但是……

  • 在Windows的DNS服务器中基于DNS的循环(round robin),只需要为同一个域名设置多个ip主机记录就可以了,DNS中没有转发器的概念,因此需要启用循环,添加每个Web服务器的主机记录就可以确保域名解析并实现负载均衡。

  • 国际电信联盟(ITU)在2000年5月确定W-CDMA、CDMA2000和TDS-CDMA三大主流无线接口标准,写入3G技术指导性文件《2000年国际移动通讯计划》(简称IMT-2000)。W-CDMA:英文名称是Wideband Code Division Multi-ple Access,中文译名为宽带码分多址,它可支持384kbps到2Mbps不等的数据传输速率,支持者主要以GSM系统为主的欧洲厂商。CDMA2000:亦称CDMA Multi-Carrier,由美国高通北美公司为主导提出,摩托罗拉、Lucent和后来加入的韩国三星都有参与,韩国现在成为该标准的主导者。TD-SCDMA:该标准是由中国独自制定的3G标准,由于中国的庞大的市场,该标准受到各大主要电信设备厂商的重视,全球一半以上的设备厂商都宣布可以支持TD-SC-DMA标准。

  • 在层次化局域网模型中,核心层的主要功能是将分组从一个区域高速地转发到另一个区域。核心层是因特网络的高速骨干,由于其重要性,因此在设计中应该采用冗余组件设计,使其具备高可靠性,能快速适应变化。在设计核心层设备的功能时,应尽量避免使用数据包过滤、策略路由等降低数据包转发处理的特性,以优化核心层获得低延迟和良好的可管理性。 汇聚层是核心层和接入层的分界点,应尽量将资源访问控制、核心层流量的控制等都在汇聚层实施。汇聚层应向核心层隐藏接入层的详细信息,汇聚层向核心层路由器进行路由宣告时,仅宣告多个子网地址汇聚而形成的一个网络。另外,汇聚层也会对接入层屏蔽网络其他部分的信息,汇聚层路由器可以不向接入路由器宣告其他网络部分的路由,而仅仅向接入设备宣告自己为默认路由。 接入层为用户提供了在本地网段访问应用系统的能力,接入层要解决相邻用户之间的互访需要,并且为这些访问提供足够的带宽。接入层还应该适当负责一些用户管理功能,包括地址认证、用户认证和计费管理等内容。接入层还负责一些用户信息收集工作,例如用户的IP地址、MAC地址和访问日志等信息。

  • 静态路由是固定路由,从不更新除非拓扑结构发生变化;洪泛式路由将信息发送到连接的所有路由器,不利用网络信息;随机路由是洪泛式的简化;自适应路由依据网络信息进行代价计算,依据最小代价实时更新路由。

  • 备选项命令的作用分别是:Netstat用于显示网络相关信息;Ping用于检查网络是否连通;msconfig用于Windows配置的应用程序;cmd称为命令提示符,在操作系统中进行命令输入的工作提示符。

  • 在层次化局域网模型中,核心层的主要功能是将分组从一个区域高速地转发到另一个区域。核心层是因特网络的高速骨干,由于其重要性,因此在设计中应该采用冗余组件设计,使其具备高可靠性,能快速适应变化。在设计核心层设备的功能时,应尽量避免使用数据包过滤、策略路由等降低数据包转发处理的特性,以优化核心层获得低延迟和良好的可管理性。 汇聚层是核心层和接入层的分界点,应尽量将资源访问控制、核心层流量的控制等都在汇聚层实施。汇聚层应向核心层隐藏接入层的详细信息,汇聚层向核心层路由器进行路由宣告时,仅宣告多个子网地址汇聚而形成的一个网络。另外,汇聚层也会对接入层屏蔽网络其他部分的信息,汇聚层路由器可以不向接入路由器宣告其他网络部分的路由,而仅仅向接入设备宣告自己为默认路由。 接入层为用户提供了在本地网段访问应用系统的能力,接入层要解决相邻用户之间的互访需要,并且为这些访问提供足够的带宽。接入层还应该适当负责一些用户管理功能,包括地址认证、用户认证和计费管理等内容。接入层还负责一些用户信息收集工作,例如用户的IP地址、MAC地址和访问日志等信息。

算法与数据结构

小结:

  • 布鲁特-福斯模式匹配算法(朴素的或基本的模式匹配)中,若主串和模式串长度分别为n和m(且n远大于m),字符最多比较(n-m+1)*m次

概念

  • 逆波兰式(reverse polish notation,也叫后缀表达式)是将运算符写在操作数之后的表达式表示方法。对逆波兰式进行求值的方法是:从左至右扫描表达式,遇到操作数则压栈,遇到运算符号则从栈中弹出操作数进行运算,然后将运算结果压入中,重复该过程直到表达式结束,最后的结果为栈顶元素。由于控制上比较简单,所以逆波兰式更便于计算。 表达式“a-b+cd”的后缀式为“ab-cd+”。 表达式“(a-b)* c+d”的后缀式为“ab-cd+”。 表达式“(a-b) (c+d)”的后缀式为“ab-cd+”。 表达式“a-bc+d”的后缀式为“abc*-d+”。
  • 在计算机信息处理中,“哈夫曼编码”是一种一致性编码法(又称“熵编码法”),用于数据的无损耗压缩。这一术语是指使用一张特殊的编码表将源字符(例如某文件中的一个符号)进行编码。这张编码表的特殊之处在于,它是根据每一个源字符出现的估算概率而建立起来的。出现概率髙的字符使用较短的编码,出现概率低的则使用较长的编码,这便使编码之后的字符串的平均期望长度降低,从而到无损压缩数据的目的。
  • 数据挖掘就是应用一系列技术从大型数据库或数据仓库中提取人们感兴趣的信息和知识,这些知识或信息是隐含的,事先未知而潜在有用的,提取的知识表示为概念、 规则、规律、模式等形式。也可以说,数据挖掘是一类深层次的数据分析。常见和应用最广泛的数据挖掘方法如下。 ①决策树:决策树方法是利用信息论中的互信息(信息增益)寻找数据库中具有最大信息量的属性字段,建立决策树的一个结点,再根据该属性字段的不同取值建设树的分支;在每个分支子集中重复建立树的下层结点和分支的过程。国际上最早的、也是最有影响的决策树方法是Quiulan研究的ID3方法。 ②神经网络:神经网络方法是模拟人脑神经元结构,完成类似统计学中的判别、 回归、聚类等功能,是一种非线性的模型,主要有三种神经网络模型:前馈式网络、反馈式网络和自组织网络。人工神经网络最大的长处是可以自动地从数据中学习,形成知识,这些知识有些是我们过去未曾发现的,因此它具有较强的创新性。神经网络的知识体现在网络连接的权值上,神经网络的学习主要表现在神经网络权值的逐步计算上。 ③遗传算法:遗传算法是模拟生物进化过程的算法,它由三个基本过程组成:繁殖(选择)、交叉(重组)、变异(突变)。采用遗传算法可以产生优良的后代,经过若干代的遗传,将得到满足要求的后代即问题得解。 ④关联规则挖掘算法:关联规则是描述数据之间存在关系的规则,形式为 “A1A2…An=>B1B2…Bn”。一般分为两个步骤:求出大数据项集、用大数据项集产生关联规则。 除了上述的常用方法外,还有粗集方法,模糊集合方法,Bayesian Belief Netords ,最邻近算法(K-nearest Neighbors Method,kNN)等。

面向对象技术

小结:

  • 面向对象开发方法有Booch方法、Coad方法和OMT方法。Jackson方法是一种面向数据结构的开发方法。

  • Python是一种面向对象、解释型计算机程序设计语言。

  • PHP更适合用来进行动态网页处理

  • 采用面向对象方法进行系统开发时,需要对多对多的关系建新类

  • 继承关系中的子类将拥有父类的全部属性和方法

  • 领域模型中不包含领域对象

  • 事件触发一个没有特定监护条件的迁移,对象不一定离开当前状态

  • 最大线程数–看黑色粗线条数目

  • 动态绑定支持多态

  • UML的设计视图包含了类、接口和协作,其中,设计视图的静态方面由类图和对象图表现,动态方面由交互图、状态图和活动图表现

  • 在分析阶段,架构师主要关注系统的行为

  • 里氏代换:任何基类可以出现的地方子类一定可以出现

  • 观察者设计模式允许一个对象在其状态改变时,通知依赖它的所有对象

  • 异步消息并不引起调用者终止执行而等待控制器的返回

  • 两个类之间可以有多个关联,但这些关联需要由不同角色进行标识。

  • 面向对象分析过程中,从给定需求描述中选择名词短语来标识对象

  • 观察者模式中,Concrete Subject在其状态发生改变时,向它的各个观察者发出通知

  • 对一个复杂用例中的业务处理流程进行进一步建模的最佳工具是UML活动图

  • 部署图用于展示所交付系统中软件组件和硬件之间的物理关系

    用例图–对新开发系统的需求进行建模,开发什么功能或测试用例

  • 组合:类A对象消失时类B对象也随之消失

  • 进行面向对象设计时,类图中可以展现类之间的关联关系,还可以在类图中图示关联中的数量关系,即多重度。表示数量关系时,用多重度说明数量或数量范围,表示有多少个实例(对象)能被连接起来,即一个类的实例能够与另一个类的多少个实例相关联。

  • on是超状态

概念:

  • XML (可扩展标记语言)是标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。

    Python是一种面向对象、解释型计算机程序设计语言。

    Prolog是逻辑型程序设计语言。

    C++为面向对象的编译型语言,而非解释型语言。

  • HTML用于处理静态网页;LISP一种基于λ演算的函数式编程语言。PHP是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网。C++是一个接近系统底层的综合的,支持面向对象和范编程的程序设计语言,适用于开发要求很高效率的程序,例如大型游戏、大型企业应用、系统应用等。

  • 开-闭原则(Open-Closed Principle)是面向对象的可复用设计(Object Oriented Design,OOD)的基石。开-闭原则是指一个软件实体应当对扩展开放,对修改关闭,即在设计 一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展。满足开-闭原则的系统可以通过扩展己有的软件系统,提供新的能力和行为,以满足对软件的新需求,使软件系统有一定的适应性和灵活性;因为已有的软件模块,特别是最重要的抽象层模块不能再修改,这就使变化中的软件系统有一定的稳定性和延续性;满足开-闭原则的系统具备更好的可复用性与可维护性。 在面向对象编程中,通过抽象类及接口,规定了具体类的特征作为抽象层,相对稳定,从而满足“对修改关闭”的要求;而从抽象类导出的具体类可以改变系统的行为, 从而满足对扩展开放。 里氏代换原则(Liskov Substitution Principle,LSP)是指一个软件实体如果使用的是—个基类的话,那么一定适用于其子类,而且软件系统觉察不出基类对象和子类对象的区别,也就是说,在软件系统中把基类都替换成它的子类,程序的行为没有变化。但需要注意的是,里氏代换原则中仅仅指出了用子类的对象去代替基类的对象,而反过来的代换则是不成立的。例如,如果一个软件模块中使用的是一个子类对象,那么使用父类 对象去代换子类对象则可能产生错误。用一句简单的话概括:任何基类对象可以出现的地方,子类对象一定可以代替基类对象。 依赖倒转原则(Dependence Inversion Principle,DIP)就是要依赖于抽象,而不依赖于实现,或者说要针对接口编程,不要针对实现编程。系统中进行设计和实现的时候应 当使用接口和抽象类进行变量类型声明、参数类型声明、方法返回类型说明,以及数据 类型的转换等,而不要用具体类进行上述操作。要保证做到这一点,一个具体类应当只 实现接口和抽象类中声明过的方法,而不要给出多余的方法。 传统的过程性系统的设计办法倾向于使高层次的模块依赖于低层次的模块,抽象层次依赖于具体层次。依赖倒转原则就是把这个不良的依赖关系倒转过来。面向对象设计 的重要原则是创建抽象层次,并且从该抽象层次导出具体层次,具体层次给出不同的实现。继承关系就是一种从抽象化到具体化的导出。抽象层包含的应该是应用系统的业务 逻辑和宏观的、对整个系统来说重要的战略性

  • 面向对象分析的目的是为了获得对应用问题的理解,确定系统的功能、性能要求。面向对象分析包含5个活动:认定对象、组织对象、描述对象间的相互作用、定义对象的操作和定义对象的内部信息。而分析阶段最重要的是理解问题域的概念,其结果将影响整个工作。经验表明,从应用定义域概念标识对象是非常合理的。因此,面向对象分析的第一步就是确定问题域。

  • 在面向对象技术中,对象是基本的运行时的实体,它既包括数据(属性),也包括作用于数据的操作(行为)。一个对象把属性和行为封装为一个整体,与其他对象之间有清晰的边界,有良好定义的行为和**可扩展性**。对象位置和数量,由使用其的对象或系统确定。

  • 在面向对象技术中,不同的对象收到同一消息可以产生完全不同的结果,这一现象叫做多态(polymorphism)。在使用多态的时候,用户可以发送一个通用的消息,而实现的细节则由接收对象自行决定。这样,同一消息就可以调用不同的方法。多态有参数多态、包含多态、过载多态和强制多态四类。参数多态是应用比较广泛的多态,被称为最纯的多态,包含多态在许多语言中都存在,最常见的例子就是子类型化,即一个类型是另一个类型的子类型。过载多态是同一个名字在不同的上下文中所代表的含义不同。

    过载多态是一种特定的多态,指同一个名字在不同上下文中可代表不同的含义

  • 定义领域模型是面向对象分析的关键步骤之一。领域模型是从按对象分类的角度来创建对象领域的描述,包括定义概念、属性和重要的关联,其结果用一组显示领域概念和对象的图形一一类图来组织,图中还包括多重性、关联关系、泛化/特化关系以及聚合关系等。

  • 一个对象把属性和行为封装为一个整体

  • 实体类主要负责数据和业务逻辑;边界类负责和用户进行交互,即用户界面;控制类则负责实体类和界面类的交互。

  • UML活动图用于构建系统的活动。建模用例执行过程中对象如何通过消息相互交互,将系统作为一个整体或者几个子系统进行考虑。对象在运行时可能会存在两个或多个并发运行的控制流,为了对并发控制流进行建模,UML中引入同步的概念,用同步棒——黑色粗线条表示并发分支与汇合

  • 绑定是一个把过程调用和响应调用所需要执行的代码加以结合的过程。在一般的程序设计语言中,绑定是在编译时进行的,叫做静态绑定动态绑定则是在运行时进行的, 因此,一个给定的过程调用和代码的结合直到调用发生时才进行。

  • 在采用面向对象技术开发系统时,主要步骤有面向对象分析、面向对象设计、面向对象程序设计和面向对象测试。面向对象分析主要包括:认定对象、组织对象、描述对象间的相互作用、定义对象的操作、定义对象的内部信息。面向对象设计是设计分析模型和实现相应源代码。面向对象程序设计选择合适的面向对象程序设计语言,将程序组织为相互协作的对象集合,每个对象表示某个类的实例,类通过继承等关系进行组织。 面向对象测试是尽可能早的开始进行系统测试,以发现系统中可能存在的错误并进行修复,进而保证系统质量。

  • 对象的状态包括这个对象的所有属性(通常是静态的)以及每个属性当前的值(通常是动态的);为了将一个对象与其它所有对象区分开来,我们通常会给它起一个“标识”;行为是对象根据它的状态改变和消息传递所采取的行动和所作出的反应;对象的行为代表了其外部可见的活动;操作代表了一个类提供给它的对象的一种服务。

  • 通常是用一组视图反映系统的各个方面,以完整地描述系统,每个视图代表系统描述中的一个抽象,显示系统中的一个特定的方面。UML2.0中提供了多种图形,从静态和动态两个方面表现系统视图。 类图展现了一组对象、接口、协作和它们之间的关系。对象图展现了一组对象以及其之间的关系,描述了在类图中所建立的事物的实例的静态快照。序列图是场景的图形化表示,描述了以时间顺序组织的对象之间的交互活动。通信图和序列图同构,强调收发消息的对象的结构组织。状态图展现了一个状态机,由状态、转换、事件和活动组成, 它关注系统的动态视图,强调对象行为的事件顺序。活动图是一种特殊的状态图,展现了在系统内从一个活动到另一个活动的流程,它专注于系统的动态视图。序列图、通信图、交互图和定时图均被称为交互图,它们用于对系统的动态方面进行建模。

  • 采用面向对象技术进行软件开发时,需要进行面向对象分析(OOA)、面向对象设计(OOD)、面向对象实现和面向对象测试几个阶段。分析阶段的目的是为了获得对应用问题的理解,确定系统的功能、性能要求,在此阶段主要关注系统的行为,明确系统需要提供什么服务。在设计阶段,采用面向对象技术将OOA所创建的分析模型转化为设计模型,其目标是定义系统构造蓝图。在实现阶段(面向对象程序设计),系统实现人员选用一种面向对象程序设计语言,采用对象、类及其相关概念进行程序设计,即实现系统。

  • 命令(Command)模式通过将请求封装为一个对象,可将不同的请求对客户进行参数化。责任链(Chain of Responsibility)模式将多个对象的请求连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止,避免请求的发送者和接收者之间的耦合关系。观察者(Observer)模式定义对象之间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 在上述观察者模式的类图中,Subject (目标)知道其观察者,可以有任意多个观察者观察同一个目标,提供注册和删除观察者对象的接口。Observer (观察者)为那些在目标发生改变时需获得通知的对象定义一个更新接口。Concrete Subject (具体目标)将有关状态存入各Concrete Observer对象,当它的状态发生改变时,向它的各个观察者发出通知。Concrete Observer (具体观察者)维护一个指向Concrete Subject对象的引用,存储有关状态,实现Observer的更新接口以使自身状态与目标的状态保持一致。

  • UML2.0中提供了多种图形,序列图是场景的图形化表示,描述了以时间顺序组织的对象之间的交互活动。其中消息定义了交互中生命线之间的特定交互,有同步消息、异步消息和返回消息三类。同步消息指进行阻塞调用,调用者中止执行,等待控制权返回,需要等待返回消息;而异步消息的调用者发出消息后继续执行,不引起调用者阻塞, 也不等待返回消息。消息由名称进行标识,还描述出消息的发出者和接收者。异步消息由空心箭头表示,如上图中3所示,同步消息用实心三角箭头表示,如上图中1所示,返回消息。

    UML2.0中提供了多种图形。组件图(component diagram)展现了一组组件之间的组织和依赖,专注于系统的静态实现视图,与类图相关,通常把组件映射为一个或多个类、接口或协作。部署图(deployment diagram)展现了运行处理节点以及其中构件的配置。部署图给出了体系结构的静态实施视图。它与构件图相关,通常一个节点包含一个或多个构件。类图(class diagram)展现了一组对象、接口、协作和它们之间的关系,在开发软件系统时,类图用于对系统的静态设计视图建模。

    部署图展现了运行处理节点以及其中组件的配置,描述代码的物理模块,用于描述系统在不同计算机系统的物理分布。部署图给出了体系结构的静态实施视图。它与组件图相关,通常一个节点包含一个或多个组件,其依赖关系类似于包图。

    UML序列图(Sequence Diagram)以二维图的形式显示对象之间交互的图,纵轴自上而下表示时间,横轴表示要交互的对象,主要体现对象间消息传递的时间顺序,强调参与交互的对象及其间消息交互的时序。序列图中包括的建模元素主要有:活动者(Actor)、对象(Object)、生命线(Lifeline)、控制焦点(Focus of control)和消息(Message)等。其中对象名标有下划线;生命线表示为虚线,沿竖线向下延伸;消息在序列图中标记为箭头;控制焦点由薄矩形表示。 消息是从一个对象的生命线到了一个对象生命线的箭头,用从上而下的时间顺序来安排。一般分为同步消息(→),异步消息()和返回消息()。本题图中evaluation为返回消息,其他为同步消息。al和a2均为Account对象,所以Account应该实现了xfer()、minus()和plus()方法,Person应该实现check()方法。

    UML2.0中提供了多种图形,序列图是场景的图形化表示,描述了以时间顺序组织的对象之间的交互活动。其中消息定义了交互中生命线之间的特定交互,有同步消息、 异步消息和返回消息三类。同步消息指进行阻塞调用,调用者中止执行,等待控制权返回,需要等待返回消息;而异步消息的调用者发出消息后继续执行,不引起调用者阻塞,也不等待返回消息。消息由名称进行标识,还描述出消息的发出者和接收者。异步消息由空心箭头表示,如上图中3所示,同步消息用实心三角箭头表示,如上图中1所示,返回消息。

    UML2.0中状态图主要用于描述对象、子系统、系统的生命周期。通过状态图可以了解到一个对象所能到达的所有状态以及对象收到的事件(消息、超时、错误、条件满足等)对对象状态的影响等。针对具有可标记的状态和复杂的行为的对象构建状态图。状态可能有嵌套的子状态,且子状态可以是一个状态图。 本题图示状态图中,ON是一个超状态,它有3个子状态:Idle、Rewinding和Playing, 这三个子状态之间在相关事件发生时状态之间进行迁移。

    状态图(state diagram)展现了一个状态机,用于描述一个对象在其生存期间的动态行为,表现为4个对象所经历的状态序列,它由状态、转换、事件和活动组成。状态图关注系统的动态视图,它对于接口、类和协作的行为建模尤为重要强调对象行为的事件顺序。状态图通常包括简单状态和组合状态、转换(事件和动作)。 可以用状态图对系统的动态方面建模。这些动态方面可以包括出现在系统体系结构的任何视图中的任何一种对象的按事件排序的行为,这些对象包括类(各主动类)、接口、构件和节点。 当对象处于某个状态时,这个状态被称为激活状态(active state)。任何从激活状态出发的转换所标识的事件被检测到发生时,进行转换,而从当前状态出发的事件如果没有标注所检测到的事件名称,就忽略该事件,不激发任何转换,当前状态仍然是激活状态。 本题叙述中图示状态B内嵌套了B1、B2、B3和B4。咨激活状态是B且内嵌为状态B2时,如果发生事件e2,则转移到C3状态;如果当前激活状态B的子状态不是B2,则事件e2发生后,不激发状态转换。当激活状态为B时,不论内嵌状态是哪个,则发生事件e1后,激活状态转换到C1;或者B中内嵌的两个结束状态均达到时,会离开状态B。

    2符号形象叫棒棒糖,表示提供的接口;1符号形象叫插座,表示要求提供的接口。有这两个符号,这是一个组件图(构件图),系统构件和构件之间,类或接口之间的关系图。

  • 在UML中,关系把事物结合在一起,包括依赖、关联、泛化和实现四种。关联是一种结构关系,描述了一组链,即对象之间的连接;聚集是一种特殊类型的关联,描述了整体和部分之间的结构关系。在关联上可以标注重复度(multiplicity)和角色(role)。两个类之间可以有多个关联,但这些关联需要由不同角色进行标识。

标准化和知识产权

小结:

  • 自软件开发完成后就产生了著作权
  • 先申请人可以获得专利申请权
  • 翻译权是指将原软件从一种程序设计语言转换成另一种程序设计语言的权利
  • 合理使用指可以不经著作权人许可,不须支付报酬,使用其作品
  • 购买一幅美术作品原件,享有该作品的所有权与其展览权
  • 商标权的保护期限是可以延长的,可能无限期拥有
  • 烟草制品必须使用注册商标
  • 非法进行拷贝、发布或更改软件的人被称为软件盗版者
  • 《中华人民共和国著作权法》和《计算机软件保护条例》是构成我国保护计算机软件著作权的两个基本法律文件

概念:

  • 发明专利权的期限为二十年,实用新型专利权和外观设计专利权的期限为十年,均自申请日起计算。专利保护的起始日是从授权日开始,有下列情形之一的,专利权在期限届满前终止:①没有按照规定缴纳年费的;②专利权人以书面声明放弃其专利权的。还有—种情况就是专利期限到期,专利终止时,保护自然结束。 商标权保护的期限是指商标专用权受法律保护的有效期限。我国注册商标的有效期为十年,自核准注册之日起计算。注册商标有效期满可以续展;商标权的续展是指通过指定程序,延续原注册商标的有效期限,使商标注册人继续保持其注册商标的专用权。 在著作权的期限内,作品受著作权法保护;著作权期限届满,著作权丧失,作品进入公有领域。 法律上对商业秘密的保密期限没有限制,只要商业秘密的四个基本特征没有消失,权利人可以将商业秘密一直保持下去。权利人也可以根据实际状况,为商业秘密规定适当的期限。

大题

数据流图:

实体E、数据存储D、加工P(圆角)

补充缺失的数据流:

  1. 父子平衡
  2. 输入输出都要有
  3. 每句话对应

格式:

数据名 起点 终点

xxx信息 EDP几或(文字) 类似

结构化语言描述加工逻辑:

过程{
	WHILE(条件)
	DO{
		IF 条件(==、AND)
			THEN 怎么做;
			ELSE 怎么样;
		ENDIF
		XXX;
		...;
	}ENDDO
}

数据流图是结构化分析方法的重要模型,用于描述系统的功能、输入、输出和数据存储等。在绘制数据流图中,每条数据流的起点或者终点必须是加工,即至少有一端是加工。在分层数据流图中,必须要保持父图与子图平衡。每个加工必须既有输入数据流又有输出数据流。必须要保持数据守恒。也就是说,一个加工所有输出数据流中的数据必须能从该加工的输入数据流中直接获得,或者是通过该加工能产生的数据。

ER图:

函数依赖

范式

类图:

C代码:

20下:希尔排序

19下:0-1背包问题

19上:n皇后问题

18下:最优配对

18上:自顶向下/自底向上递归

17下:无向连通图的哈密尔顿回路(邻接矩阵)

17上:分硬币问题(二分法思想找假币,天平可分三份)

16下:KMP算法

16上:最大不相交子集(动态规划)

15下:最长公共子串

15上:n皇后问题

14下:最长递增子序列(动态规划)

14上:归并排序

13下:多矩阵相乘

13上:贪心问题

12下:贪心问题

12上:最优解

11下:回溯法

Java/c++代码:

19下:观察者模式

19上:策略模式

18下:状态模式

18上:生成器模式

17下:桥接模式

17上:生成器模式

16下:装饰者模式

16上:适配器模式

15下:策略模式

15上:访问者模式

14下:命令模式

14上:观察者模式

13下:桥接模式

13上:原型模式

12下:抽象工厂

12上:装饰者模式

11下:状态模式

11上:组合模式

;