作者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