真题总结2
16年 单周期数据通路 单周期数据通路是一种简单的数据通路设计,每个时钟周期执行一条完整的指令,即每条指令的CPI为1,要考虑比较慢的指令,所以处理器的时钟频率较低。 这意味着每条指令执行过程中任何数据通路单元都只能被用一次,如果需要使用多次则必须将该数据通路单元复制多份。 控制信号是CU根据指令操作码发出的信号,对于单周期处理器来说,每条指令的执行只有一个时钟周期,而在一个时钟周期内控制信号并不会变化。 单周期数据通路必须有独立的指令存储器和数据存储器,因为处理器在一个周期内只能操作每个部件一次,而在一个周期内不可能对一个单端口存储器进行两次存取。且无法使用单总线数据通路,因为单总线数据通路将所有寄存器的输入出端都连接在一条公共通路上,一个时钟内只允许一次操作,无法完成指令的所有操作。 TSL指令实现互斥 1 2 3 4 5 6 do { while (TSL(&lock)); critical section; lock = FALSE; ...... } while (TRUE); 退出临界区的进程负责唤醒就绪态进程? 因为在TSL方法下,一个进程只有两种状态: 运行态:用户处于了do{ }中,那么不管是是在其中的while (TSL(&lock))不断地循环,还是在访问临界资源,都是占用着CPU的,也就是处于运行态; 就绪态:若是在执行过程中由于并发所需要(如时间片到了),被其他进程占用了CPU,就变成了就绪态; 但是不会处于阻塞态,因为若是在等待临界资源,则会一直处于while (TSL(&lock));中,而且不会主动放弃CPU变成阻塞态(阻塞是一个主动的过程)。故不存在阻塞态的进城来给退出临界区的进程唤醒。 等待进入临界区的进程不会主动放弃CPU,故上述代码不满足“让权等待”的同步准则。因为会一直停留在执行while(TSL(&lock))的循环中,该语句应在开中断下进行,否则一直处于该循环且不被其他进程中断可能会导致系统终止。 操作系统的发展 手工发展阶段(无操作系统): 所有工作都要人干预,用户独占全机。 特点:用户独占全机、CPU等待手工操作; 缺点:人机矛盾及 CPU 和 I/O 设备之间速度不匹配的矛盾,因此发展出了批处理系统。 批处理阶段(开始出现操作系统): 单道批处理:系统对作业的处理是成批进行的,但内存中始终保持一道作业。 特点:单道性、自动性、顺序性。 缺点:每次主机内存中仅存放一道作业,每当它在运行时发出I/O请求后,高速的 CPU 便处于等待低速的 I/O 完成的状态。 为了进一步提高资源的利用率和系统的吞吐量,引入了多道程序技术。 多道批处理:多道程序设计技术允许多个程序同时进入内存并允许它们在 CPU 中交替地运行。 特点:多道、宏观上并行、微观上串行。 优点:资源利用率高,多道程序共享计算机资源,从而使各种资源得到充分利用;系统吞吐量大, CPU 和其他资源保持“忙碌”状态。 缺点:用户响应的时间较长;不提供人机交互能力,用户既不能了解自己的程序的运行情况,又不能控制计算机。 因此发展出了分时操作系统。 分时操作系统: 分时操作系统是指多个用户通过终端同时共享一台主机,这些终端连接在主机上,用户可以同时(同时性)与主机进行交互(交互性)操作而互不干扰(独立性)。分时系统采用时间片轮转方式使一台计算机同时为多个终端服务,使用户能够对系统的及时响应感到满意(及时性)。分时系统也是支持多道程序设计的系统,但它不同于多道批处理系统。多道批处理是实现作业自动控制而无须人工干预的系统,而分时系统是实现人机交互的系统。 特点:同时性、交互性、独立性、及时性。 优点:较好地解决了人机交互问题。 缺点:在一些应用场合,需要系统能对外部的信息在规定的时间(比时间片的时间还短)内做出处理(比如飞机订票系统或导弹制导系统),因此,实时操作系统应运而生。 描述 特点 优点 缺点 手工操作阶段 所有工作都要人干预 用户独占全机、CPU等待手工操作; 不会出现因资源己被其他用户占用而等待的情况 资源利用率低,人机矛盾及 CPU 和 I/O 设备之间速度不匹配的矛盾,因此发展出了批处理系统。 单道批处理 系统对作业的处理是成批进行的,但内存中始终保持一道作业。 单道性、自动性、顺序性。 (开始出现操作系统) 每次主机内存中仅存放一道作业,每当它在运行时发出I/O请求后,高速的 CPU 便处于等待低速的 I/O 完成的状态。 为了进一步提高资源的利用率和系统的吞吐量,引入了多道程序技术。 多道批处理 多道程序设计技术允许多个程序同时进入内存并允许它们在 CPU 中交替地运行。 多道性、宏观上并行、微观上串行。 资源利用率高,多道程序共享计算机资源,从而使各种资源得到充分利用;系统吞吐量大, CPU 和其他资源保持“忙碌”状态。 用户响应的时间较长;不提供人机交互能力,用户既不能了解自己的程序的运行情况,又不能控制计算机。 因此发展出了分时操作系统。 分时操作系统 用户可以同时(同时性)与主机进行交互(交互性)操作而互不干扰(独立性)。分时系统采用时间片轮转方式使一台计算机同时为多个终端服务,使用户能够对系统的及时响应感到满意(及时性)。 同时性、交互性、独立性、及时性。 较好地解决了人机交互问题。 在一些应用场合,需要系统能对外部的信息在规定的时间(比时间片的时间还短)内做出处理(比如飞机订票系统或导弹制导系统),因此,实时操作系统应运而生。 实时操作系统 为了能在某个时间限制内完成某些紧急任务而不需要时间片排队,诞生了实时操作系统。资源利用率不是其主要追求目标。 及时性、可靠性 管程 管程是由一组数据以及定义在这组数据之上的对这组数据的操作组成的软件模块,这组操作能初始化并改变管程中的数据和同步进程。管程不仅能实现进程间的互斥,而且能实现进程间的同步。...