Assignment 1


  1. In a multiprogramming and time-sharing environment, several users share the system si-multaneously.  This situation can result in various security problems.  a. What are two such problems? b. Can we ensure the same degree of security in a time-shared machine as we have in a dedicated machine? Explain your answer.

  2. Under what circumstances would a user be better off using a time-sharing system, rather than a personal computer or single-user workstation?
  3. How does the distinction between monitor mode and user mode function as a rudimentary form of protection (security) system?
  4. What are the differences between a trap and an interrupt? What is the use of each function?
  5. What is the purpose of system programs?
  6. What are the main advantages of the microkernel approach to system design?
  7. What is the difference between a distributed OS and network OS?
  8. Mention some examples of application programs.
  9. What are the advantages of layered OS structure?
  10. How the RTOS (Real-time OS) would differ from a typical OS? Give examples of both OS.

12. Is the compiler part of the OS? If not, why not?

13. What issues should an OS engineer take into consideration when designing an OS?

14. Which of the following instructions should be allowed only in kernel mode:

a. Disable all interrupts

b. Read the time-of-day clock

c. Change the system memory map.

15. What are two differences between user-level threads and kernel-level threads? Under what circumstances is one type better than the other?

16. Describe the actions taken by a kernel to context switch between kernel-level threads.

17. In handling Web client requests, the Web server usually spawns off a thread per request, but not a process per request.  Explain why!

18. When suspending (i.e. swapping) a multi-threaded process, all of its threads stop running.  Explain why!

19. When performing a context switch, the old process information is saved.  Where does such information get saved?