60 votes

Why do we need full-fledged workstations running massive OSes with massive software?

You are conflating a number of issues here. Why does my software have all these features to begin with? Because other computers' software has those features, and network effects punish any software ...
Aaron Rotenberg's user avatar
30 votes
Accepted

What is a GPU year?

That means, one year of computation time on a single GPU (or half a year on two GPUs, or a quarter of a year on four GPUs, etc.). If you are thinking of using this term in your own writing, I ...
D.W.'s user avatar
  • 156k
23 votes

Difference between bare metal hypervisor and operating system

I think you're right to notice this strong connection. At a high level, there is a strong similarity between a hypervisor and a microkernel operating system. There are also some differences. ...
D.W.'s user avatar
  • 156k
20 votes

What threads share in general?

In general each thread has its own registers (including its own program counter), its own stack pointer, and its own stack. Everything else is shared between the threads sharing a process. In ...
Wandering Logic's user avatar
17 votes

Do system calls always means a context switch?

A system call does not necessarily require a context switch in general, but rather a privilege switch. This is because the kernel memory is mapped in each process memory. The user process cannot ...
Amaury Pouly's user avatar
  • 1,181
16 votes

Difference between bare metal hypervisor and operating system

The term "operating system" is actually a fairly loose one, and many arguments can be had about its definition. For instance, is Linux (the kernel) an operating system, or do you need GNU/...
IMSoP's user avatar
  • 501
14 votes
Accepted

What does "map" mean?

So, there are two distinct uses of the word "map", that I'll unpack here. The first is very generic, where map means "to associate," particularly by way of a function. If we say "$f$ maps each $x$ to ...
jmite's user avatar
  • 29.7k
13 votes

Why do we need full-fledged workstations running massive OSes with massive software?

Since the other answers go pretty well into why companies just buy general purpose computers, I wanted to give an answer about security. In a lot of ways, it's easier to secure a system you know is ...
IllusiveBrian's user avatar
12 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 ...
hengxin's user avatar
  • 9,501
12 votes

Since programs are swapped from backing store to main memory why don't they get lost when the computer is suddenly turned off?

Because it isn't moved: it's copied.
David Richerby's user avatar
12 votes
Accepted

What is the real advantage of Google's new Fuchsia operating system kernel?

From what I understand you are asking what are the technical benefits of zircon over linux? First of all zircon is a micro kernel as opposed to the linux monolithic kernel. So lets look at some of ...
Oxygen's user avatar
  • 136
11 votes
Accepted

Are multiple interrupts generated when I hold down a key on my keyboard?

TL;DR: No. It depends on the OS and the keyboard. I'll show you how to determine this yourself on a Linux machine. I'm using Ubuntu 16.04 on an x86 processor. So if you are using a fairly modern ...
Hadi Brais's user avatar
11 votes
Accepted

Why is copy speed periodic? (or seems to be)

Here's a possibility: Every transfer copies one megabyte and takes 0.4 seconds. The display is updated every second. The counter for "data transferred" is updated when a transfer is complete....
gnasher729's user avatar
  • 28.4k
10 votes
Accepted

Minimum number of processes for the deadlock?

I agree that no deadlock is possible here. If there are three or fewer processes, there clearly cannot be a deadlock because there are enough resources for every process to just hold two resources the ...
David Richerby's user avatar
10 votes
Accepted

How does the TLB identify a particular process?

In the most basic setup, the TLB doesn't determine that. Instead, the TLB only maintains mappings for the pages that are accessible to the current process. If process A is currently running, the TLB ...
D.W.'s user avatar
  • 156k
10 votes

Difference between bare metal hypervisor and operating system

If you wanted a definition of an "operating system" it could be something like: a system of software that runs on a machine and manages its resources, providing an environment for other ...
Ben's user avatar
  • 1,674
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 ...
Ugnes's user avatar
  • 311
9 votes

What threads share in general?

Threads come up in two perspectives: operating systems, and programming languages. In both case, there is some variation in what attributes a thread has. A minimal definition of a thread is that it's ...
Gilles 'SO- stop being evil''s user avatar
9 votes

A multi-user, multi-processing operating system cannot be implemented on hardware that does not support

I remember a counter-example from the 1980s: OS-9/68000 was quite popular then: a multi-user, multi-processing real-time operating system for the Motorola 68K processor family, loosely patterned ...
R. Kleberhoff's user avatar
9 votes

Why does Computer Science need so much math?

The activities you mention are not computer science but hardware maintenance and system administration. Computer science is about inventing new algorithms and data structures tailored to new ...
Andrej Bauer's user avatar
8 votes
Accepted

Does a simple calculator require an operating system?

No. Operating systems have several purposes, such as interfacing with the hardware and, managing multiple concurrent or sequential applications and providing protection between different users. A ...
David Richerby's user avatar
8 votes

What does "map" mean?

In the following I am going to be less than accurate in a number of ways, sacrificing technical accuracy to provide a basic understanding. It is obvious that you have read a number of technical ...
Richard Chambers's user avatar
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 ...
D.W.'s user avatar
  • 156k
7 votes
Accepted

Why there must be a relationship between user threads and kernel threads?

This section of the book appears to be talking about how the details of the threading and scheduling are implemented for a user mode program. When threading first became popular, most operating ...
Brian Hibbert's user avatar
7 votes
Accepted

Why is word-addressable the exception, not the rule?

Byte operations will always be important because a lot of a modern workload involves bytes. Text processing and bytecode interpretation (including emulation of other CPUs) are obvious examples, but ...
Pseudonym's user avatar
  • 21.7k
7 votes

Why does the interrupt disable method to achieve mutual exclusion not work for multiprocessor systems?

Mutual exclusion means that during some time, a certain piece of code (called a critical section) has exclusive control over a resource. Interrupts can break that because they cause control to be ...
Gilles 'SO- stop being evil''s user avatar
7 votes
Accepted

what is the need for valid/invalid bit in paged memory technique?

In a typical multilevel page table implementation on a typical modern operating system, any attempt to access memory for a page whose page table entry set to "invalid" (typically 0) causes a page ...
Pseudonym's user avatar
  • 21.7k
7 votes

Difference between page table and inverted page table

An inverted page table is just a hash map. An inverted page table always fits in DRAM because it is proportional in size to the DRAM. A DRAM total space is divided into $N$ page frames. If the size ...
Wandering Logic's user avatar
7 votes
Accepted

Does mutual exclusion hold in this case?

Your friend is correct. In your context, mutual exclusion holds if at most one process is at a critical section at any given time. You state that you feel that this interpretation is wrong, but you ...
Yuval Filmus's user avatar

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