单选题 A multitasking operating system can have several processes running at the same time. What are the components within the processes that are shown in the graphic that follows?
【正确答案】 A
【答案解析】解析:A正确。进程是内存中的程序。更准确地说,一个进程是指该程序的指令和由操作系统分配给这个进程的所有资源。把所有这些指令和资源都归为一组,并当作一个实体(这便是进程)进行控制会更加容易。当进程需要发送东西给CPU处理时,它便会产生一个线程。线程是由一个单独的指令集和数据组成,而这种数据只能由CPU处理。大多数应用程序都有几种不同的功能。Word处理器能够打开文件、存储文件、打开其他程序(如电子邮件客户端)和打印文档等。每一个这样的功能都需要动态产生一个线程(指令集)。所以,如果Tom选择打印文档,Word处理器进程便会产生一个包含这个文档应该如何打印(字体、颜色、文本、边距等)的指令的线程。如果他选择通过该程序经由电子邮件发送文档,那么便会创建另外一个线程,该线程告诉电子邮件客户打开什么文件以及什么文件需要发送等信息。线程根据需求动态创建和销毁。一旦Tom完成了文档打印,为此功能而创建的线程就自动销毁了。 B不正确。因为寄存器(register)是一个临时存储位置。CPU内的处理芯片仅有几平方英寸大,但却包含数以百万计的晶体管。CPU内的所有操作都是通过不同电压组合的不同的电子信号来执行的。每个晶体管都携有电压,对于计算机来讲这些电压代表着0和1。CPU包含的寄存器指向下一条要执行的指令的存储位置,这使得CPU能够维护需要被处理数据的状态信息。虽然在将构成线程的指令放入CPU之前寄存器能够存放这些指令,但它们本身却不是进程的组件。 C不正确。因为地址总线(address bus)是计算机系统内RAM 芯片和输入/输出(input/output,I/O)设备之间的硬线连接。在计算机内,指令和待处理的数据的存储器地址在CPU需要之前都装在寄存器中。CPU连接着地址总线。存储器被分为几个部分,每个部分都有与之相关联的独立地址。I/O设备(CD-ROM、USB设备、硬盘等)也都被分配了特定的独一无二的地址。如果CPU需要访问无论是存储器中还是I/O设备中的某些数据,它都会把所需数据所处的地址发出来。与存储器或者I/O设备相连的电路识别出CPU沿数据总线发送的这个地址后,便通知该存储器或设备读取这些请求的数据、再把它放到数据总线上。所以,地址总线是CPU用来指示待处理的指令的位置的,存储器或者I/O设备通过数据总线发送位于那个存储器位置上的数据。 D不正确。因为进程表(process table)是操作系统记录正在运行进程的一种方式。操作系统负责创建新进程、给这些进程分配资源、同步它们之间的通信,并确保没有发生不安全的事情。操作系统有一个进程表,其中每个进程对应一个入口。这个进程表记录着每个进程的状态、堆栈指示器、内存分配、程序计数器和正在使用的打开文件的状态等。操作系统记录所有这些状态信息的原因是CPU在需要与进程1进行交互时,需要把所有这些信息都载入它的寄存器。当进程1的CPU分时结束时,有关进程1的所有现行状态信息都被存储在这个进程表中,这样当它的分时再次开启时,所有这些状态信息再被放回CPU的寄存器中。当轮到进程2与CPU进行交互时,其状态信息将从进程表中传输到CPU寄存器上,当分时结束时状态信息仍会再传输回去。