作者rod24574575 (天然呆)
看板NTU-Exam
标题[试题] 100下 郭大维 作业系统 期中考
时间Thu Apr 26 12:18:10 2012
课程名称︰作业系统
课程性质︰必修
课程教师︰郭大维
开课学院:电资学院
开课系所︰资工系
考试日期(年月日)︰2012.4.18
考试时限(分钟):180分钟
是否需发放奖励金:是
(如未明确表示,则不予发放)
试题:
The exam is 180 minutes long. The total score is 107pts. Please read the
questions carefully.
1. Terminologies (24pts).
a. DMA
b. Multiprogramming
c. Horizontal Cache Coherency and Consistency
d. A Module Approach In OS Designs (Hint: A Layered Approach)
e. Indirect Communication in Message Passing
f. Socket
g. Deferred Cancellation
h. Pull Migration (Hint: Multipocessor Scheduling)
2. Please answer the following questions regarding the designs of operating
systems: (23pts)
a. Please give me two resources, beside CPU, that are managed by OS.
(6pts)
b. When an interrupt arrives, a running task is interrupted, and its
context could be saved in different ways, such as "a fixed address
for all interrupts", "a fixed space for each interrupt type", and
"a stack". What is the advantage in using a stack, compared with the
approach in using a fixed space for each interrupt type? (5pts)
c. In a memory hierarchy, we have registers, cache, memory, and disk.
Which of them is managed by operating systems? Which of them is
managed by hardware? (l2pts)
3. OS services are such as those for "program execution", "file-system
manipulation", "accounting", and "resource allocation". Which of them are
for system efficiency, instead of user convenience? (8pts)
4. Famous Application Programming Interfaces (API) are such as Win 32 API and
POSIX API. What are the two major benefits in providing API, compared to
the providing of system calls only? What does POSIX API offers to
programmers, compared to the offering of ANSI C to programmers? (8pts)
5. In the ordinary virtualization design, the virtualization layer runs in the
system mode. For VMware, the virtualization layer runs in the system or
user mode? For Java, the Java virtual machine run in the system or user
mode? (6pts)
6. Please answer the following questions for process management and
scheduling. (20pts)
a. Give me two conditions for a running process to relinquish the CPU to
go back to the ready queue in preemptive CPU scheduling. (6pts)
b. Why a long-term scheduler has more time to choose a process for a
system than a short-term scheduler does in process scheduling? (5pts)
c. Please explain the main difference between a user-level thread and
a kernel thread. (5pts)
d. Is a Java thread is a user-level thread or a kernel thread? (4pts)
7. The scheduling algorithm of Solaris 9 is based on the Multilevel Feedback
Queue Scheduling algorithm. There are six priority classes. Please explain
the Fair Sharing class? Please explain how interactive threads in the Time
Sharing or Interactive class are favored in scheduling in Solaris 8 or 9?
(6pts)
8. Consider the scheduling of processes in which processes might arrive at
different times and have different deadlines to complete their execution.
Let the processes be scheduled by the preemptive Shortest-Job-First
algorithm (PSJF) and a Priority Scheduling algorithm (PS) in which
processes with urgent deadlines have higher priorities, and there is only
one processor. Can you give a set of processes such that PS can meet the
deadlines of the processes, but PSJF can not do it? (5pts)
9. Consider the Round Robin scheduling algorithm (RR) with two different time
quantums L and S, where L > S. Let the scheduling criteria be the average
waiting time, and L be larger than the largest CPU burst of all processes.
Does RR, in general, favor a small time quantum S when all processes are
ready at time 0? Please give me your answer with argument. (7pts)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.118.12