Operating Systems Questions

Q:

Explain Belady's Anomaly?

Answer

Also called FIFO anomaly. Usually, on increasing the number of frames allocated to a process virtual memory, the process execution is faster, because fewer page faults occur. Sometimes, the reverse happens, i.e., the execution time increases even when more frames are allocated to the process. This is Belady's Anomaly. This is true for certain page reference patterns.

Report Error

View answer Workspace Report Error Discuss

11 9351
Q:

What is page cannibalizing?

Answer

Page swapping or page replacements are called page cannibalizing.

Report Error

View answer Workspace Report Error Discuss

17 7312
Q:

What is the cause of thrashing? How does the system detect thrashing? Once it detects thrashing, what can the system do to eliminate this problem?

Answer

Thrashing is caused by under allocation of the minimum number of pages required by a process, forcing it to continuously page fault. The system can detect thrashing by evaluating the level of CPU utilization as compared to the level of multiprogramming. It can be eliminated by reducing the level of multiprogramming.

Report Error

View answer Workspace Report Error Discuss

10 5598
Q:

List out some reasons for process termination.

Answer

- Normal completion


- Time limit exceeded


- Memory unavailable


- Bounds violation


- Protection error


- Arithmetic error


- Time overrun


- I/O failure


- Invalid instruction


- Privileged instruction


- Data misuse


- Operator or OS intervention


- Parent termination.

Report Error

View answer Workspace Report Error Discuss

9 5203
Q:

What are the typical elements of a process image?

Answer

User data: Modifiable part of user space. May include program data, user stack area, and programs that may be modified.


User program: The instructions to be executed.


System Stack: Each process has one or more LIFO stacks associated with it. Used to store parameters and calling addresses for procedure and system calls.


Process control Block (PCB): Info needed by the OS to control processes.

Report Error

View answer Workspace Report Error Discuss

6 5082
Q:

A UNIX user named Bob wants to replace his chess program with a new one, but he is not sure where the old one is installed. Bob is currently able to run a Java chess program starting from his home directory /home/bob using the command: java -classpath /test:/home/bob/downloads/*.jar games.Chess Bob's CLASSPATH is set (at login time) to: /usr/lib:/home/bob/classes:/opt/java/lib:/opt/java/lib/*.jar What is a possible location for the Chess.class file?

 

A) /test/Chess.class B) /home/bob/Chess.class
C) /test/games/Chess.class D) /user/lib/games/Chess.class
 
Answer & Explanation Answer: D) /user/lib/games/Chess.class

Explanation:

/user/lib/games/Chess.class could be the possible location of the file

Report Error

View Answer Workspace Report Error Discuss

Filed Under: Operating Systems

6 4412
Q:

What are the disadvantages of context switching?

Answer

Time taken for switching from one process to other is pure over head. Because the system does no useful work while switching. So one of the solutions is to go for threading when ever possible.

Report Error

View answer Workspace Report Error Discuss

16 4166
Q:

Explain the popular multiprocessor thread-scheduling strategies.

Answer

  1. Load Sharing: Processes are not assigned to a particular processor. A global queue of threads is maintained. Each processor, when idle, selects a thread from this queue. Note that load balancing refers to a scheme where work is allocated to processors on a more permanent basis.

  2. Gang Scheduling: A set of related threads is scheduled to run on a set of processors at the same time, on a 1-to-1 basis. Closely related threads / processes may be scheduled this way to reduce synchronization blocking, and minimize process switching. Group scheduling predated this strategy.

  3. Dedicated processor assignment: Provides implicit scheduling defined by assignment of threads to processors. For the duration of program execution, each program is allocated a set of processors equal in number to the number of threads in the program. Processors are chosen from the available pool.

  4. Dynamic scheduling: The number of thread in a program can be altered during the course of execution.

Report Error

View answer Workspace Report Error Discuss

7 2789