Q.1. Consider a computer system with a single processor with a single core. There are two processes to run in the system: P1 and P2. Process P1 has a life cycle as follows: CPU burst time of 15 units, followed by I/O burst time of minimum 10 units, followed by CPU burst time of 10 units. Process P2 has the following life cycle: CPU burst time of 10 units, followed by I/O burst time of minimum 5 units, followed by CPU burst time of 15 units. Now answer the following questions:
Q.2. Suppose that a multiprogrammed system has a load of N processes with individual execution times of t1, t2, …,tN. Answer the following questions:
Q.3. Consider a computer running in the user mode. It switches to the monitor mode (also known as kernel mode) whenever an interrupt or trap occurs, jumping to the address determined from the interrupt vector. A malicious user took advantage of a certain serious loophole in the computer's protection mechanism, by which the user could run his/her own program in the monitor mode! This can have disastrous consequences.
Q.4. Consider a preemptive operating system where processes have priorities and a running process gets preempted (i.e., forced to leave the CPU) as soon as a higher priority process is ready to run. The life cycle of a process, other than the very first process, begins with a "spawn" by another process and ends with either a regular "exit" by the process or a "terminate (process_id)" command by another process of equal or higher priority.
Each process is assigned an initial priority at spawn time and this priority remains unchanged during the entire life cycle. There are system resources, both hardware and software, for which a process can block if the resource is not free. A process can also be
suspended by another process of
equal or higher priority through the call "suspend (process_id)''. A suspended process is resumed by the call "resume (process_id)''. Note that a process can be in any state (i.e., running, blocked or ready) when suspended.
Processes communicate with one another via "send'' and "receive'' message passing primitives. "Receive'' is always blocking, i.e., the calling process blocks if the message is not available. "Send'' is always non-blocking. Illustrate the complete life-cycle of a process with the help of a process state transition diagram
Q.5. When there is a context switch from one process to another, the OS kernel invokes the function ContextSwitch which saves the context of the currently executing process into its PCB and then inserts the process to an appropriate queue (i.e., ready queue or a blocked queue). It is necessary that ContextSwitch is atomic (i.e., unbreakable: either done or not-done; nothing in between). Explain the following:
Assignment Writing Help
Engineering Assignment Services
Do My Assignment Help
Write My Essay Services