22 votes
Accepted

What guarantees do "soft" real-time operating systems actually provide

You've got it right, and Wikipedia is as informative as can be — soft real-time is not a formal characterization, it's a value judgement. Another way to say “soft real-time” is “I wish it was real-...
user avatar
11 votes
Accepted

Does Deadlock imply Starvation

You should first state the deadlock freedom property and the starvation freedom property more precisely. I use the definition in the Book: The Art of Multiprocessor Programming; Section 2.2. Freedom ...
user avatar
  • 9,219
10 votes

How does the OS know the physical address of a process' first memory page?

The operating system performs a lot of work before executing the first instruction. The OS must set up at least two data structures, the page table and the region map. The region map is called ...
user avatar
9 votes
Accepted

The convoy effect in process scheduling

Convoy Effect is a result of using First-Come-First-Serve (FCFS) Scheduling algorithm. In this case the dispatcher (short term scheduling) feeds the processes present in ready state to the processor ...
user avatar
  • 309
7 votes
Accepted

Difficulty understanding pre-emptive vs non-preemptive CPU scheduling

In circumstances 1 and 4, the current process can't continue running. Therefore, there's no choice: the OS scheduler has to step in and select a different process. In circumstances 2 and 3, the OS ...
user avatar
  • 143k
7 votes

How are system calls handled in a virtual machine?

There are 3 common strategies to handle this: 1. Hypervisor traps system calls from guest: The hypervisor checks whether the privileged instruction(effectively system call) came from the guest OS ...
user avatar
  • 171
6 votes

What is a student process?

My best guess: a student process is a process run by a student. All users have to log in. The OS may well know various types of users, and may be able to determine from some table that a given user ...
user avatar
  • 19.1k
6 votes
Accepted

User level threads are transparent to the kernel?

As, the linked answers and the explanations provided by your textbooks describe that, user level threads are transparent to the kernel, yes they are indeed. Kernel Level threads are not transparent ...
user avatar
  • 429
6 votes
Accepted

example for weakly fair v.s. strongly fair scheduling in concurrency

If you are familiar with temporal logic, the difference is quite easy to demonstrate: Weak fairness is $FGp\to Fq$. That is, if $p$ holds from some point and on, then $q$ will hold eventually. ...
user avatar
  • 16.2k
6 votes

Is there a generic word for "thread or process"?

A process is a context with one or more threads of execution (concurrent with other threads of execution, either in the same process, or perhaps in other processes), and with its own address space (...
user avatar
5 votes

How does the OS determine the CPU burst time of a process?

Bursts values are needed for Shortest Job First (SJF) or Shortest Run Time First (SRTF) type scheduling. The burst is an estimate based on an initial starting default burst value and actual historical ...
user avatar
5 votes
Accepted

Operating system processes

50% I/O wait time means that a process is not in execution(i.e. CPU is sitting idle) for 50% of the total time a process requires from CPU to complete itself(its execution). Thus CPU Utilization turns ...
user avatar
5 votes
Accepted

How exactly does a CPU do process scheduling?

The operating system arranges for periodic timer interrupts, which only it can handle, so it periodically regains control of the CPU without requiring the co-operating of any other process. Also, when ...
user avatar
5 votes
Accepted

Reason that integers are used for priorities instead of float

Historically, floating point has been slower than integer arithmetic, though this has not been the case for about 20 years on most non-embedded architectures. The more compelling reason is to optimise ...
user avatar
  • 19.1k
4 votes

Highest Response Ratio Next (Scheduling Algorithm)

It's a variation on Shortest Job Next (SJN) and is an attempt to avoid the starvation problems for estimated long running jobs on busy systems with many short running jobs. When a job has just hit ...
user avatar
4 votes

Difficulty understanding pre-emptive vs non-preemptive CPU scheduling

yes, this is rather abstractly defined in your reference. for illustrative purpose lets take an example of what this means in practice. early mac programs say early 1990s and windows also were "non ...
user avatar
  • 10.8k
4 votes

What guarantees do "soft" real-time operating systems actually provide

To define "soft real-time," it is easiest to compare it with "hard real-time." Speaking casually, most people implicitly have an informal mental model that considers information or an event as being "...
user avatar
4 votes

What guarantees do "soft" real-time operating systems actually provide

Linux with the -rt (real time) patchset provides a scheduler that provides an interesting guarantee that seems non-vacuous. (Although I'm not clear on how the guarantee can be put to real use.) The ...
user avatar
4 votes
Accepted

Round-Robin Scheduler - What exactly is the quantum time used for?

For the Round-Robin Scheduler the quantum time is to ensure that each process has a share to the CPU and we don't have starvation problems. It's known for being fair, such that each process shares the ...
user avatar
4 votes

Two threads are waiting on a mutex. Which one is unblocked?

The short answer is "it depends". If there is truly nothing to distinguish thread B from thread C, then the answer on most scheduler implementations will likely be either "could be B or C, and you ...
user avatar
  • 19.1k
4 votes
Accepted

How can a spinlock progress when it's busy-waiting?

There might be other CPUs in the system, if one is busy waiting, another can be doing something. Furthermore, if the OS uses preemptive scheduling, the thread doing the busy wait might be preempted ...
user avatar
  • 1,151
4 votes

What is the difference between a page and thread?

You're looking at very vague descriptions and asking "What's the difference between these things that haven't been described properly?" For a more detailed understanding, you should, well, look for ...
user avatar
4 votes

How does a dual core microprocessors run so many programs?

It's great that you're curious. A simplified explanation follows with a few links to delve into: All of the programs running in parallel is actually an illusion that is created by the OS. Even if we ...
user avatar
  • 96
3 votes

Which process states exist a multi-processor machine?

More states aren't technically needed, depending on an operating system's implementation. A kernel can have a task scheduler running on each processor. This allows for the use of the same process ...
user avatar
  • 386
3 votes

Does a multi cpu system not improve the first come first serve (fcfs) cpu scheduling algorithm?

Sounds like something's very wrong. My guess is that you are testing with a load that is too small. You should be able to increase the number of processes and at some point the 4-processor system ...
user avatar
3 votes

Can you explain this exercise solution to me?

According to this article: F. J. Corbató, M. M. Daggett, R. C. Daley, An Experimental Time-Sharing System (IFIPS 1962), CTSS uses a "multi-level scheduling algorithm": The basis of the multi-level ...
user avatar
  • 9,219
3 votes
Accepted

How and which component of an Operating System is responsible for the transition of a process from the blocked state to the ready queue?

When an I/O is started, it will typically have an I/O request structure associated with it that includes items like the process ID that the I/O belonged to. When the I/O completes the device driver ...
user avatar
3 votes

Is bounded waiting ensured in given version of Dekker's solution for critical section problem?

A reasonable definition of bounded waiting is: After a process made a request to enter its critical section and before it is granted the permission to enter, there exists a bound on the number of ...
user avatar
3 votes
Accepted

A Dead-lock in an Operating System is

Your attempt "If a process is unable to change its state indefinitely because the resources requested by it are being used by another waiting process, then the system is said to be in a deadlock." is ...
user avatar
  • 25.4k
3 votes
Accepted

Characterize an OS as multiprogrammed OS

Sorry That is not a complete answer but i hope it can help you . "One of the most important aspects of operating systems is the ability to multiprogram. A single program cannot, in general, keep ...
user avatar
  • 156

Only top scored, non community-wiki answers of a minimum length are eligible