计算机组成和结构

计算机组成结构

软件可靠性指的是一个系统对于给定的时间间隔内、在给定条件下无失效运作的概率。根据定义,软件可靠性与软件的潜在错误的数量、位置有关,与软件产品的使用方式有关,而软件产品的开发方式不决定软件产品的可靠性。 

与可靠性相关的概念主要有:平均无故障时间、平均故障修复时间以及平均故障间隔时间、失效率等。

1、Cache

由于在CPU与存储系统之间存在着数据传送带宽的限制,因此在其中设置了Cache(高速缓冲存储器,简称高速缓存,通常速度比内存快),其改善系统性能的主要依据是程序的局部性原理。通俗地说,就是一段时间内,执行的语句常集中于某个局部。以提高整体效率。但由于其成本更高,因此Cache的容量要比内存小得多。

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

从Cache-主存层次实现的目标看,一方面既要使CPU的访存速度接近于访Cache的速度,另一方面为用户程序提供的运行空间应保持为主存容量大小的存储空间。在采用Cache-主存层次的系统中,Cache对用户程序而言是透明的,也就是说,用户程序可以不需要知道Cache的存在。因此,CPU每次访存时,依然和未使用Cache的情况一样,给出的是一个主存地址。但在Cache-主存结构中,CPU首先访问的是Cache,并不是主存。为此,需要一种机制将CPU的访主存地址转换成Cache地址,这个处理过程对速度要求非常高,因此其是完全由硬件来完成的。由于Cache为高速缓存,存储了频繁访问内存中的数据,因此它与Cache单元地址转换的工作需要稳定而且高速的硬件来完成。

  1. CPU

CPU是计算机的控制中心,主要由运算器、控制器、寄存器组和内部总线等部件组成。计算机中的CPU是硬件系统的核心,用于数据的加工处理,能完成各种算术、逻辑运算及控制功能。

2.1运算器

运算器负责完成算术、逻辑运算功能,通常由ALU(算术/逻辑单元)、寄存器、多路转换器、状态/条件寄存器、数据总线组成;

2.2控制器

控制器(ControlUnit):是中央处理器的核心,主要功能就是统一指挥并控制计算机各部件协调工作,所依据的是机器指令。其实就是向计算机其他部件发送控制指令。控制器的组成包含程序计数器(PC)指令寄存器(IR)指令译码器时序产生器微操作控制信号形成部件(PSW)和中断机构。它是发布命令的“决策机构”,即完成协调和指挥整个计算机系统的操作。它的主要功能:从内存中取出一条指令,并指出下一条指令在内存中的位置;对指令进行译码或测试,并产生相应的操作控制信号,以便启动规定的动作;指挥并控制CPU、内存和输入输出设备之间数据的流动。控制器的作用是控制整个计算机的各个部件有条不紊地工作,它的基本功能就是从内存取指令和执行指令。

执行指令时,CPU将自动修改PC的内容,以便使其保持的总是将要执行的下一条指令的地址。由于大多数指令都是按顺序执行的,因此修改的过程通常只是简单地对PC加1。当遇到转移指令时,后继指令的地址根据当前指令的地址加上一个向前或向后转移的位移量得到,或者根据转移指令给出的直接转移的地址得到。

程序计数器用于存放指令的地址。用于存储指令的地址,CPU根据该寄存器的内容从内存读取待执行的指令,程序员可以访问该寄存器。 令当程序顺序执行时,每取出一条指令,PC内容自动增加一个值,指向下一条要取的指令。当程序出现转移时,则将转移地址送入PC,然后由PC指向新的程序地址。程序计数器的作用是保存待读取指令在内存中的地址。CPU首先从程序计数器(PC)获得需要执行的指令地址,从内存(或高速缓存)读取到的指令则暂存在指令寄存器(IR),然后进行分析和执行。程序计数器(PC)是专用寄存器,具有寄存信息和计数两种功能,又称为指令计数器,在程序开始执行前,将程序的起始地址送入PC,该地址在程序加载到内存时确定,因此PC的初始内容即是程序第一条指令的地址。

计算机中主机与外设间进行数据传输的输入输出控制方法有程序控制方式中断方式DMA等

在程序控制方式下,由CPU执行程序控制数据的输入输出过程。

在中断方式下,外设准备好输入数据或接收数据时向CPU发出中断请求信号,CPU若决定响应该请求,则暂停正在执行的任务,转而执行中断服务程序进行数据的输入输出处理,之后再回去执行原来被中断的任务。这个过程称为中断。中断是一种非常重要的技术,输入输出设备和主机交换数据、分时操作、实时系统、计算机网络和分布式计算机系统中都要用到这种技术。为了提高响应中断的速度,通常把所有中断服务程序的入口地址(或称为中断向量)汇集为中断向量表。中断的响应时间就是中断的响应过程的时间,中断的响应过程是当有事件产生,进入中断之前必须先记住当前正在做的事情,然后去处理发生的事情,基本定义就是:从发出中断请求到进入中断处理所用的时间。   

在DMA方式下,CPU只需向DMA控制器下达指令,让DMA控制器来处理数据的传送,数据传送完毕再把信息反馈给CPU,这样就很大程度上减轻了CPU的负担,可以大大节省系统资源。

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

计算机系统中主机与外设间的输入输出控制方式有多种,在DMA方式下,输入输出设备与内存储器直接相连,数据传送由DMA控制器而不是主机CPU控制。CPU除了传送开始和终了时进行必要的处理外,不参与数据传送的过程。     

2.3指令寄存器

CPU中通常设置一些寄存器,用于暂时存储程序运行过程中的相关信息。它是CPU内部的临时存储单元。寄存器既可以用来存放数据和地址,也可以存放控制信息或CPU工作时的状态。在CPU中增加寄存器的数量,可以使CPU把执行程序时所需的数据尽可能地放在寄存器件中,从而减少访问内存的次数,提高其运行速度。但是,寄存器的数目也不能太多,除了增加成本外,由于寄存器地址编码增加也会相对增加指令的长度。

指令寄存器(IR)用来保存当前正在执行的一条指令,而指令一般包括操作码地址码两部分。指令寄存器存储的是指令码,位数取决于编码时规定的指令长度。计算机执行一条指定的指令时,必须首先分析这条指令的操作码是什么,以决定操作的性质和方法,然后才能控制计算机其他各部件协同完成指令表达的功能。这个分析工作由指令译码器来完成。所以CPU中算术逻辑单元的部件应该是加法器。

PC用于存放CPU下一条要执行的指令地址。在顺序执行程序中,当PC内容送到地址总线后会自动加1,指向下一条将要运行的指令地址。

通用寄存器常用于暂存运算器需要的数据或运算结果。

地址寄存器数据寄存器用于访问内存时的地址和数据暂存。地址寄存器暂存要访问的内存单元的地址。地址寄存器包括程序计数器、堆栈指示器、变址寄存器和段地址寄存器等,用于记录各种内存地址。

指令寄存器(IR)用于暂存正在执行的指令,指令寄存器暂存从内存读取到的指令。这是由系统使用的寄存器,程序员不能访问.

累加寄存器是算逻运算单元中用来暂存源操作数和计算结果的寄存器。累加器是一个数据寄存器,在运算过程中暂时存放被操作数和中间运算结果,累加器不能用于长时间地保存一个数据。

程序状态寄存器用于记录运算中产生的标志信息,典型的标志为有进位标志位、0标志位、符号标志位、溢出标志位和奇偶标志等。

存储器数据寄存器(MDR)和存储器地址寄存器(MAR)用于对内存单元访问时的数据和地址暂存,也是由系统使用的,程序员不能访问。

2.4内部总线

广义地讲,任何连接两个以上电子元器件的导线都可以称为总线。通常可分为4类:

芯片内总线。用于在集成电路芯片内部各部分的连接。

元件级总线。用于一块电路板内各元器件的连接。

内总线,又称系统总线。用于构成计算机各组成部分(CPU、内存和接口等)的连接。连接处理机的处理器、存储器及其他部件的总线属于内总线。

外总线,又称通信总线。用计算机与外设或计算机与计算机的连接或通信。

按总线上所传送的内容分为数据总线地址总线控制总线

一个设备接口通过总线直接向另一个设备发送数据,它会先向CPU发送DMA请求信号。外设通过DMA控制器向CPU提出接管总线控制权的总线请求,CPU收到该信号后,在当前的总线周期结束后,会按DMA信号的优先级和提出DMA请求的先后顺序响应DMA信号。CPU对某个设备接口响应DMA请求时,会让出总线控制权。于是在DMA控制器的管理下,外设和存储器直接进行数据交换,而不需CPU干预。数据传送完毕后,设备接口会向CPU发送DMA结束信号,交还总线控制权。

指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成,是从取指令、分析指令到执行完所需的全部时间。CPU执行指令的过程中,根据时序部件发出的时钟信号按部就班进行操作。在取指令阶段读取到的是指令,在分析指令和执行指令时,需要操作数时再去读操作数。指令流水线的操作周期应为“瓶颈”段所需时间。

CISC(Comple xInstructionSetComputer,复杂指令集计算机)的基本思想是:进一步增强原有指令的功能,用更为复杂的新指令取代原先由软件子程序完成的功能,实现软件功能的硬件化,导致机器的指令系统越来越庞大而复杂。CISC计算机一般所含的令数目至少300条以上,有的甚至超过500条。RISC(ReducedInstructionSetComputer,精简指令集计算机)的基本思想是:通过减少指令总数和简化指令功能,降低硬件设计的复杂度,使指令能单周期执行,并通过优化编译提高指令的执行速度,采用硬布线控制逻辑优化编译程序。在20世纪70年代末开始兴起,导致机器的指令系统进一步精炼而简单。RISC鼓励尽可能使用较少的寻址方式,这样可以简化实现逻辑、提高效率。相反地,CISC则提倡通过丰富的寻址方式来为用户编程提供更大的灵活性。

串行总线将数据一位一位传输,数据线只需要一根(如果支持双向需要2根),并行总线是将数据的多位同时传输(4位,8位,甚至64位,128位),显然,并行总线的传输速度快,在长距离情况下成本高,串行传输的速度慢,但是远距离传输时串行成本低。 单总线结构在一个总线上适应不同种类的设备,通用性强,但是无法达到髙的性能要求,而专用总线则可以与连接设备实现最佳匹配。    

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

总线宽度是指总线的线数,即数据信号的并行传输能力,也体现总线占用的物理空间和成本;总线的带宽是指总线的最大数据传输率,即每秒传输的数据总量。总线宽度与时钟频率共同决定了总线的带宽。 32bit/8=4Byte,200MHz/5X4Byte=160MB/s  

2.5寻址

直接寻址是指操作数存放在内存单元中,指令中直接给出操作数所在存储单元的地址。而跳转指令中的操作数即为要转向执行的指令地址,因此,应将指令中的地址码送入程序计数器(PC),以获得下一条指令的地址,从而实现程序执行过程的自动控制功能。

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

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

• 立即寻址。操作数就包含在指令中。立即数寻址执行速度最快,因为这种寻址方式,取指令时操作数也一起取出,不需要再次取操作数,所以执行速度最快。立即寻址方式通常直接在指令的地址码部分给出操作数。这种方式的优点就是不需要数据存储单元,缺点是立即寻址方式通常仅仅用来指定一些精度要求不高的整型常数,数据的长度不能太长。

• 直接寻址。操作数存放在内存单元中,指令中直接给出操作数所在存储单元的地址。在指令中直接给出参加运算的操作数或运算结果所存放的主存地址,即在指令中直接给出有效地址。  

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

• 相对寻址。指令地址码给出的是一个偏移量(可正可负),操作数地址等于本条指令的地址加上该偏移量。  

• 变址寻址。操作数地址等于变址寄存器的内容加偏移量。

• 寄存器寻址。指令在执行过程中所需要的操作数来源于寄存器,运算结果也写回到寄存器中,这种寻址方式在所有的RISC计算机及大部分的CISC计算机中得到广泛应用。有寄存器直接寻址与间接寻址之分。

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

 寄存器间接寻址。其中在寄存器间接寻址方式中,寄存器内存放的是操作数的地址,而不是操作数本身,即操作数是通过寄存器间接得到的,因此称为寄存器间接寻址。    

         

4、存储

计算机系统的存储器按所处的位置可分为内存外存

按构成存储器的材料,可分为磁存储器半导体存储器光存储器

按存储器的工作方式可分为读写存储器只读存储器

按访问方式可分为按地址访问的存储器和按内容访问的存储器

按寻址方式可分为随机存储器顺序存储器直接存储器相联存储器是一种按内容访问的存储器。

在具有层次结构存储器的计算机中,虚拟存储器是为用户提供一个比主存储器大得多的可随机访问的地址空间的技术。虚拟存储技术使辅助存储器和主存储器密切配合,对用户来说,好像计算机具有一个容量比实际主存大得多的主存可供使用,因此称为虚拟存储器。虚拟存储器的地址称为虚地址或逻辑地址。

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

DMA存取方式,是一种完全由硬件执行I/O数据交换的工作方式。它既考虑到中断的响应,同时又要节约中断开销。此时,DMA控制器代替CPU完全接管对总线的控制,数据交换不经过CPU,直接在内存和外围设备之间成批进行。常用的I/O接口编址方法有两种:一是与内存单元统一编址,二是单独编址。与内存单元统一编址方式下,是将I/O接口中有关的寄存器或存储部件看作存储器单元,与主存中的存储单元统一编址。这样,内存地址和接口地址统一在一个公共的地址空间里,对I/O接口的访问就如同对主存单元的访问一样,可以用访问内存单元的指令访问I/O接口。I/O接口单独编址是指通过设置单独的I/O地址空间,为接口中的有关寄存器或存储部件分配地址码,需要设置专门的I/O指令进行访问。这种编址方式的优点是不占用主存的地址空间,访问主存的指令和访问接口的指令不同,在程序中容易使用和辨认。

I/O设备管理软件一般分为4层:中断处理程序设备驱动程序与设备无关的系统软件用户级软件。至于一些具体分层时细节上的处理,是依赖于系统的,没有产格的划分,只要有利于设备独立这一目标,可以为了提高效率而设计不同的层次结构。I/O软件的所有层次及每一层的主要功能如下图所示。  图中的箭头给出了I/O部分的控制流。当用户通过键盘或鼠标进入某应用系统时,通常最先获得键盘或鼠标输入信息的程序是中断处理程序

主存储器简称为主存、内存,设在主机内或主机板上,用来存放机器当前运行所需要的程序和数据,以便向CPU提供信息。相对于外存,其特点是容量小速度快。 主存储器主要由存储体控制线路地址寄存器数据寄存器地址译码电路等部分组成。            

CPU对存储访问的速度由快到慢排序如下:寄存器--Cache--内存--硬盘。

计算机中不同容量、不同速度、不同访问形式、不同用途的各种存储器形成的是一种层次结构的存储系统。所有的存储器设备按照一定的层次逻辑关系通过软硬件连接起来,并进行有效的管理,就形成了存储体系。不同层次上的存储器发挥着不同的作用。一般计算机系统中主要有两种存储体系:Cache存储体系由Cache和主存储器构成,主要目的是提高存储器速度,对系统程序员以上均透明;虚拟存储体系由主存储器和在线磁盘存储器等辅存构成,主要目的是扩大存储器容量,对应用程序员透明。             

相联存储器是一种按内容访问的存储器。其工作原理就是把数据或数据的某一部分作为关键字,将该关键字与存储器中的每一单元进行比较,找出存储器中所有与关键字相同的数据字。 相联存储器可用在高速缓冲存储器中,在虚拟存储器中用来作段表、页表或快表存储器,还常用在数据库和知识库中。

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

5、计算相关

内存按字节编址,从A1000H到B13FFH的区域的存储容量为(65)KB。

结束地址和起始地址的差值再加1为存储单元的个数,B13FFH-A1000H+1=10400H,转换为十进制后等于65536+1024=64KB+1KB=65K。

浮点数的表示分为阶和尾数两部分。两个浮点数相加时濡要先对阶,即()(n为阶差的绝对值)。

浮点数加、减运算一般包括对阶、尾数运算、规格化、舍入和判溢对阶就是使两数的阶码相等,对阶原则是小阶向大阶看齐,即阶码小的数尾数右移,每右移一位,阶码加1,直刭两数的阶码相等为止。

补码的取值范围:-2n-1~2n-1-1

若某计算机采用8位整数补码表示数据,则运算()将产生溢出。

采用8位补码表示整型数据时,可表示的数据范围为-128〜127,因此进行127+1的运算会产生溢出。

进制数据在计算机系统中的表示方法是最基本的专业知识。补码本身是带符号位的,补码表示的数字中0是唯一的,不像原码有+0和-0之分,也就意味着n位二进制编码可以表示2n个不同的数。

设机器字长为n (即采用n个二进制位表示数据),最高位是符号位,0表示正号,1表示负号。 原码表示方式下,除符号位外,n-1位表示数值的绝对值。因此,n为8时,[+0]原 = 0 0000000,[-0]原=l 0000000。 正数的反码与原码相同,负数的反码则是其绝对值按位求反。n为8时,数值0的反码表示有两种形式:[+0]反=0 0000000,[-0]反=1 1111111。 正数的补码与其原码和反码相同,负数的补码则等于其反码的末尾加1。在补码表示中,0 有唯一的编码:[+0]原= 0 0000000,[-0]原=00000000。 移码表示法是在数X上增加一个偏移量来定义的,常用于表示浮点数中的阶码。机器字长为n时,在偏移量为2n-1的情况下,只要将补码的符号位取反便可获得相应的移码表示。

可靠度为R1和R2的两个部件并联后的可靠度为(1-(1-R1)(1-R2)),这两个部件串联后的可靠度为R1R2。

确定小数点的位置通常有两种方法:一种是规定小数点位置固定不变,称为定点数。另一种是小数点的位置不固定,可以浮动,称为浮点数。在计算机中,通常是用定点数来表示整数和纯小数,分别称为定点整数和定点小数。对于既有整数部分、又有小数部分的数,一般用浮点数表示。下面分别予以介绍:1. 定点整数 在定点数中,当小数点的位置固定在数值位最低位的右边时,就表示一个整数。请注意:小数点并不单独占1个二进制位,而是默认在最低位的右边。定点整数又分为有符号数和无符号数两类。2. 定点小数 当小数点的位置固定在符号位与最高数值位之间时,就表示一个纯小数。 因为定点数所能表示数的范围较小,常常不能满足实际问题的需要,所以要采用能表示数的范围更大的浮点数。3. 浮点数 在浮点数表示法中,小数点的位置是可以浮动的。 在大多数计算机中,都把尾数s定为二进制纯小数,把阶码p定为二进制定点整数。尾数S的二进制位数决定了所表示数的精度;阶码p的二进制位决定了所能表示的数的范围。为了使所表示的浮点数既精度高、又范围大,就必须合理规定浮点数的存储格式。  

当两个同符号的数相加(或者是相异符号数相减)时,运算结果有可能产生溢出。常用的溢出检测机制主要有进位判决法和双符号位判决法。计算机运算溢出检测机制,采用双符号位,00表示正号,11表示负号。如果进位将会导致符号位不一致,从而检测出溢出。结果的符号位为01时,称为上溢,为10时,称为下溢。我们可以认为当符号位为11或00时,运算结结果不溢出。由此可知运算结果的两个符号位经异或运算得1,则可断定这两个数相加的结果产生了溢出。

 吞吐率建立时间是使用流水线技术的两个重要指标。吞吐率是指单位时间里流水线处理机流出的结果数。对指令而言,就是单位时间里执行的指令数。流水线开始工作,须经过一定时间才能达到最大吞吐率,这就是建立时间,若m个子过程所用时间一样, 均为△t0,则建立时间T0 = m△t0。 本题目中,连续输入n条指令时,第1条指令需要的时间为(l+3+l+2+l)△t,之后,每隔3△t便完成1条指令,即流水线一旦建立好,其吞吐率为最长子过程所需时间的倒数。综合n条指令的时间为(1+3+1+2+1)△t+ (n-1)X3△t,因此吞吐率为         

流水线处理机在执行指令时,把执行过程分为若干个流水级,若各流水级需要的时间不同,则流水线必须选择各级中时间较大者为流水级的处理时间。 理想情况下,当流水线充满时,每一个流水级时间流水线输出一个结果。 流水线的吞吐率是指单位时间流水线处理机输出的结果的数目,因此流水线的吞吐率为一个流水级时间的倒数,即最长流水级时间的倒数。  

       

   Flynn于1972年提出计算平台分类法主要根据指令流和数据流来分类,分为四类:

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

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

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

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

程序查询和中断方式都需要CPU来执行程序指令进行数据的输入和输出,DMA方式则不同,这是一种不经过CPU而直接从内存存取数据的数据交换模式。 程序查询方式是由CPU主动查询外设的状态,在外设准备好时传输数据。 中断方式是在外设准备好时给CPU发中断信号,之后再进行数据传输。在外设未发中断信号之前,CPU可以执行其他任务。 在DMA模式下,CPU只需向DMA控制器下达指令,让DMA控制器来处理数据的传送,数据传送完毕再把信息反馈给CPU即可。       

MIME即多用途互联网邮件扩展,是目前互联网电子邮件普遍遵循的邮件技术规范。在MIME出现之前,互联网电子邮件主要遵循由RFC 822所制定的标准,电子邮件一般只用来传递基本的ASCII码文本信息,MIME在 RFC 822的基础上对电子邮件规范做了大量的扩展,引入了新的格式规范和编码方式,在MIME的支持下,图像、声音、动画等二进制文件都可方便的通过电子邮件来进行传递,极大地丰富了电子邮件的功能。目前互联网上使用的基本都是遵循MIME规范的电子邮件。     

磁盘阵列(Redundant Arrays of Independent Disks,RAID)有“独立磁盘构成的具有冗余能力的阵列”之意。磁盘阵列是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。 RAID5把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块磁盘上都存储完整的数据,也就是说有相当于一块磁盘容量的空间用于存储奇偶校验信息,是目前运用较多的一种解决方案。      

固态硬盘没有IDE接口的,常见的有:SATA、PCIeM.2。             

RAID分为0~7这8个不同的冗余级别,其中RAID0级无冗余校验功能:RAID1采用磁盘镜像功能,磁盘容量的利用率是50%; RAID3利用一台奇偶校验盘来完成容错功能。所以如果利用4个盘组成RAIDS阵列,可以有3个盘用于有效数据,磁盘容量的利用率为75%。

RAID 0磁盘利用率100%,RAID0技术不具备容错,但是磁盘利用率能达到100%。RAID 0需要两个以上硬盘驱动器,每个磁盘划分为不同的区块,数据按区块Al、A2、A3、A4、…的顺序存储,数据访问采用交叉存取、并行传输的方式。将数据分布在不同驱动器上可以提高传输速度,平衡驱动器的负载。这种系统没有镜像盘,也没有差错控制措施,磁盘容量利用率在RAID技术中最高。

RAID 1利用率50%,

RAID 5磁盘利用率(N-1)/N,N最小取3。

RAID 6磁盘利用率(N-2)/N,N最小为4。raid6是再raid5的基础上为了加强数据保护而设计的。可允许损坏2块硬盘。可用容量:C=(N-2)×D    

C=可用容量      N=磁盘数量   D=单个磁盘容量      

操作系统

存放在磁盘空间上的各类文件必须进行编目,操作系统才能实现文件的管理,这与图书馆中的藏书需要编目录、一本书需要分章节是类似的。用户总是希望能“按名存取”文件中的信息。为此,文件系统必须为每一个文件建立目录项,即为每个文件设置用于描述和控制文件的数据结构,记载该文件的基本信息,如文件名、文件存放的位置、文件的物理结构等。这个数据结构称为文件控制块FCB文件控制块的有序集合称为文件目录。  

路径名是指操作系统查找文件所经过的目录名以及目录名之间的分隔符构成的。通常,操作系统中全文件名是指路径名+文件名。 按查找文件的起点不同可以将路径分为:绝对路径相对路径。在树型目录结构中到某一确定文件的绝对路径和相对路径均只有一条。绝对路径是确定不变的,而相对路径则随着用户工作目录的变化而不断变化。

文件的绝对路径应包括盘符及从根目录开始的路径名从根目录开始的路径称为绝对路径。也称为完全路径。

文件的相对路径是当前工作目录下的路径名。从用户当前工作目录开始的路径称为相对路径,相对路径是随着当前工作目录的变化而改变的。                

编译的程序占用的内存分为以下几个部分:

  1. 栈区(stack)— 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。
  2. 堆区(heap)—般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。 
  3. 全局区(静态区)(static)—全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。
  4. 文字常量区—常量字符串就是放在这里的。
  5. 程序代码区—存放函数体的二进制代码。          

            

在磁盘调度管理中,应先进行移臂调度,再进行旋转调度。  

当用户双击一个文件名时,Windows系统通过建立的文件关联来决定使用什么程序打开该文件。

进程具有三种基本状态:运行态就绪态阻塞态。处于这三种状态的进程在一定条件下,其状态可以转换。

运行态:当CPU空闲时,系统将根据某种调度算法选择处于就绪态的一个进程进入运行态;

就绪态:当CPU的一个时间片用完时,当前处于运行态的进程就进入了就绪态;

阻塞:进程从运行到阻塞状态通常是由于进程释放CPU,等待系统分配资源或等待某些事件的发生,如:执行了P操作,系统暂时不能满足其对某资源的请求,或等待用户的输入信息等;当进程正在等待的事件发生时,进程从阻塞到就绪状态,如I/O完成。     

分时操作系统将CPU的时间划分成若干个片段,称为时间片。操作系统以时间片为单位,轮流为每个终端用户服务。每个用户轮流使用一个时间片而使每个用户并不感到有别的用户存在。系统对每个用户的响应时间为(n-1)×q+q= n×q。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

慎独&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值