Toisella puolella suomeksi
Operating Systems II
Final examination 26.9.2006
Write in each answer sheet your name, signature, id-number, course name,
and page nr/total nr of pages
- [15 p] Prosesses and threads. Observe Solaris processes and threads (see
Fig. 4.15 below). Consider two applications: M and K. They all have 8 threads. Application M is of type 3 (with 3 L threads), and application K of type 4 (with 8 L-threads). Assume that the system has 4 processors.
Assume that only one of those applications (M or K) is executed in the system at any given time.
- How many threads be executing concurrently in machine language level?
Explain why. If needed, you can give a separate answer for applications M and K.
- If an executing thread will block because of I/O, will the application block or not? Explain why. If needed, you can give a separate answer for applications M and K.
- If an executing thread will block because it waits for another thread in the same application, will the application block or not? Explain why. If needed, you can give a separate answer for applications M and K.
- Let us observe one specific thread (Sj) out of 8 threads in the application. When will thread Sj start to execute in some processor? Who makes this decision and when? If needed, you can give a separate answer for applications M and K.
- Let us observe one specific processor (Pi). Who makes the decision which process and thread will execute on processr Pi next? How and when is this decision made?
- [15 p] Real time scheduling (max 2 pages).
- Goals, methods, differences to ordinary scheduling
- Example: RMS (Rate Monotonic Scheduling)
- [15 p] Virtual memory page replacement algorithms (max 2 pages).
- Basic problem, goals, solution methods with their advantages/disadvantages
- How does one know how good the solution is?
- Practical example and an environment suitable for it
- [15 p] RAID (max 2 pages).
- Basic problem, goals, solution methods with their advantages/disadvantages
- Which RAID would be most suitable for home computer? Why?