Operating Systems and Networking
Total Page:16
File Type:pdf, Size:1020Kb
Test 1 CS-330 Operating Systems and Networking Spring 2013
Answer any 5 questions from below
Test modality: Closed book, no laptop, cell-phone in sleep mode Time: 1hr. and 50 mins. Class precept: Thou shalt not be tempted to write a thesis when a short succinct answer would suffice!!
1. What are open systems? Why is the trend toward open systems so strong? What effect will open systems have on the massive installed bases of proprietary hardware, software and communication systems? 2. What are the differences and similarities between a multiprogramming system and a timesharing system in a multiuser environment? What would be the most likely systems objective in each case? 3. What is a real-time system? Could processes in such an environment be endowed with different priorities? State you reason. What kind of queue discipline (for example, FCFS, SJF, etc.) would be most appropriate for the ready queue in a real-time system environment? State your reason. 4. In a single user dedicated system, it is generally obvious when a program goes into an infinte loop. Perhaps, and I might be just a guess, in a multiuser systems running a number of processes, it cannot easily be determined that an individual process is not progressing.
a. Can the operating system determine that a process in an infinite loop? If so, how?
b. What reasonable safeguard might be built into an operating system to prevent processes in infinte loops from running indefinitely?
5. In an operating system context, system performance could be measured using one or more of the following metrics. Explain their meaning and their relevance as possible performance measures in specific system environment
a. Residence time b. Response time c. Turnaround time d. Throughput e. Utilization
6. What does it mean for a process to be preemptive? What does it mean to be nonpreemptive? Can the processor handle interrupts while a nonpreemptive process is running? Explain. Give an example of a process that might be preemptive. What type of processes would probably nonpreemptive?
7. The following assertions made here are about User Level Threads (ULT) only. Explain why they are all valid points.
a. Thread creation and termination are simpler than process creation and termination. b. ULTs are transparent to kernel. c. ULTs are portable. d. Kernel cannot dispatch the multiple ULTs to multiprocessors.
8. The following assertions made here are about Kernel Level Threads (KLT). Explain why they are all valid points.
a. Kernel threads are expensive and not portable. b. Kernel threads are slow. c. System-wide synchronization and scheduling of processes and threads are more efficiently handled by KLTs.
9. What is context switching? Under what conditions does a context-switch take place? What must be done when a context-switch is warranted?
[Bonus] True, or False. Mark the assertion T if it is always true, else mark F. (3 points each for correct answer).
A. Each thread has its own address space. B. Processes waiting in the ready state are waiting for CPU, while processes in the blocked state are generally waiting for some event like I/O to complete. C. Time loss in context switching is purely overhead. D. Average turnaround time could be at least as large as average waiting time. E. A PCB block for a process would be recreated by the system if it’s lost.