Question 1: What is the main difficulty that a programmer must overcome in writing an Operating System for a real-time environment?
Question 2: Discuss the difference between preemptive and non-preemptive scheduling. State why strict non-preemptive scheduling is unlikely to be used in a computer center.
Question 3: What resources are used when a thread is created? How do they differ from those used when a process is created?
Question 4: Is it possible to have a deadlock involving only one single process? Explain your answer.
Question 5: When virtual memory is implemented in a computing system, there are certain costs associated with the technique, and certain benefits. List the costs and benefits. Is it possible for the costs to exceed the benefits? If it is, what measures can be taken to ensure that this does not happen?
Question 6: Discuss the features of Windows Vista Operating System.
CS-13 Operating Systems
Assignment Code : MCA (6)-13/Project/2007
Note : This is a Project. Answer all the questions. You may use illustrations and diagrams to enhance explanations.
Question 1: Study and implement the following using C programming
i) RSA algorithm
ii) The Cigarette-Smokers Problem: Consider a system with three smoker processes and one agent process. Each smoker continuously rolls a cigarette and then smokes it. But to roll and smoke a cigarette, the smoker needs three ingredients: tobacco, paper, and matches. One of the smoker processes has paper, another has tobacco, and the third has matches. The agent has an infinite supply of all the three materials. The agent places two of the ingredients on the table. The smoker who has the remaining ingredient then makes and smokes a cigarette, signaling the agent on completion. The agent then puts out another two of the three ingredients, and the cycle repeats. Write a program to synchronize the agent and the smokers.