软件评测师:计算机系统构成,硬件及操作系统基础知识

一、CPU(中央处理器)

  1. 组成部件:运算器,控制器,寄存器组,内部总线

  1. 运算器(数据的加工处理部件,用于完成计算机的各种算数和逻辑运算):组成部件有,算数逻辑单元ALU、累加寄存器(加法器)、数据缓冲寄存器、状态条件寄存器。
  2. 控制器:
    1. 程序计数器(PC),作用是指示下一条指令所在的内存单元地址。
    2. 指令寄存器:其内容是正在执行的指令,其位数取决于指令字长。
    3. 地址寄存器:
    4. 指令译码器:
    5. 时序部件等
  3. 寄存器组:
    1. 通用寄存器:用于传送和暂存数据,也可参与算数逻辑运算,并保存运算结果。
    2. 地址寄存器:用来保存当前CPU所访问的内存单元地址。
    3. 指令寄存器:临时放置从内存里面取得的程序指令的寄存器,用户存放当前从主存储器读出的正在执行的一条指令。

        CPU对主存的访问方式:随机存取

        CPU内外设置高速缓存Cache的主要目的是:提高CPU访问主存数据或指令的效率。

          例题:在CPU内外设置高速缓存Cache的主要目的是(D)

        (A)扩大主存的存储容量

        (B)提高CPU访问外存储器的速度

        (C)扩大存储系统的容量

        (D)提高CPU访问主存数据或指令的效率

        

        试题解析

        在CPU内外的高速缓存是用来解决CPU与内存之间速度、容量不匹配的问题,与外存无关,主要目的是提高CPU访问主存数据或指令的效率。

        Cache不属于主存,与主存容量无关,Cache容量相对于其他存储层次,量级较小,不能扩大存储系统的存量。

二、指令系统

1、寻址方式

        定义:处理器根据指令中给出的地址信息来寻找物理地址的方式。

(1)寄存器寻址

        当操作数据不放在内存中,而是放在CPU的通用寄存器中时,可采用寄存器寻址方式。

(2)寄存器间接寻址

        与寄存器寻址方式的区别在于:指令格式中的寄存器内容不是操作数据,而是操作数的地址,该地址指明的操作数在内存中。

(3)立即寻址

        指令的地址字段指出的不是操作数的地址,而是操作数本身,这种寻址方式称之为立即寻址。

(4)直接寻址

        直接寻址是一种基本的寻址方法,其特点是:在指令格式的地址的字段中直接指出操作数在的内存的地址。由于操作数据的地址直接给出而不需要经过某种变换,所以称这种寻址方式为直接寻址方式。

(5)间接寻址

        间接寻址意味着指令中给出的地址不是操作数的地址,而是存放操作数地址的主存单元的地址,简称操作数地址的地址。

(6)隐含寻址

        不是明显地给出操作数的地址,而是在指令中隐含着操作数的地址。

         例题:假设重磁盘块与缓冲区大小相同,每个磁盘块读入缓冲区的时间为10μs,由缓冲区送至用户区的时间是5μs,系统对每个磁盘块数据的处理时间为2μs。若用户需要将大小为10个磁盘块的Docl文件逐块从磁盘读入缓冲区,并送至用户区进行处理,那么采用单缓冲区需要花费的时间为(问题1:C)μs,采用双缓冲区需要花费的时间为(问题2:B)μs。

问题1:

(A)100            (B)107              (C)152              (D)170

问题2:

(A)100            (B)107              (C)152              (D)170

        试题解析:

        这道题的主要难点在于单缓冲区和双缓冲区的区别,首先能够确定的是,采用双缓冲区时,计算方法和例题中的情景是一样的,可以确定的是有10个磁盘块,一条完整的流水线分为3部分,耗时分别为10μs、5μs和2μs,所以总耗时套用公式为:(10μs+5μs+2μs)+(10-1)×10μs=107s。故第二问正确答案为B。

        接下来回头看第一问,通过题干知道采用流水线进行处理时,每个数据要经过3个步骤:读入缓冲区→由缓冲区送至用户区→系统处理。这刚好对应了:取指令→分析→执行。在这3个步骤中,前两个步骤是需要用到缓冲区的,所以这两个步骤执行时,缓冲区的都不可以开始下一个磁盘区的处理工作,这就是单缓冲区的限制,所以3个步骤可合并为两个:导入缓冲区并送至用户区、处理。此时,任然可应用流水线的方式来提升效率,只不过我们将其浓缩成了两个步骤。此时再次确定基础数据,有10个磁盘块,一条完整的流水线分为两个部分,耗时分别为15μs和1μs,所以总耗时套用公式为:(15μs+2μs)+(10-1)×15μs=152μs。故第一问的正确答案为C。

     例题:某指令系统流水线由4段组成,各段所需要的时间如下如所示。连续输入8条指令时的吞吐率(单位时间内流水线所完成的任务数或输出的结果数)为(B)。

(A)8/56△t            (B)8/32△t                (C)8/28△t                (D)8/56△t 

       

        试题解析

        流水线的吞吐率指的是计算机中的流水线在特定的时间内可以处理的任务或输出的数据的结果数量。流水线的吞吐率可以进一步分为最大吞吐率和实际吞吐率。该题目中要求解的是实际吞吐率,这类题是对流水线知识的考察,

有固定的公式:最长的时间×指令的条数+其他非最长时间的总和

所以总时间为:3*8+1+2+1=28△t。因此吞吐率为8/28△t 。

三、处理机管理

时间片到:进程会从执行状态转到就绪状态,继续等待时间片轮转;

执行V操作释放资源,此时激活等待资源的进程进入就绪状态,而不是进入阻塞状态;

I/O完成:I/O完成后会进入就绪状态,当I/O请求的时候才可能进入阻塞状态;

执行P操作申请资源,当资源不足时,进程会被阻塞。

        例题:假设系统有n(n\geq5)个并发进程,它们竞争互斥资源R。若采用PV操作,当有4个进程同时申请资源R,而系统只能满足其中3个进程的申请时,资源R对应的信号量S的值应为()

(A) 0             (B)-1              (C)1          

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值