Questions tagged [os-kernel]

Questions about the fundamental component of an operating system, which manages the allocation of resources to applications.

The kernel of an operating system is the lowest-level software component, managing the allocation of resources (processor time, memory, access to peripherals, etc.) to separate applications. Use this tag in addition to for questions that are specifically about the kernel part of an operating system. Please also use more specific tags about the aspect of the kernel that your question is about when applicable: , , …

For questions about kernel functions in machine learning, use .
For questions about kernels in parametrized complexity, use .

87 questions
34
votes
2 answers

What is the difference between user-level threads and kernel-level threads?

After reading several sources I'm still confused about user- and kernel-level threads. In particular: Threads can exist at both the user level and the kernel level What is the difference between the user level and kernel level?
Sheldon
  • 803
  • 2
  • 9
  • 16
23
votes
1 answer

Can an interrupt handler be preempted?

Can a running interrupt handler be pre-empted by another interrupt handler? If this is possible, in which scenarios is this safe, and in which scenarios is it not? If this is not possible, why?
sanatana
  • 407
  • 4
  • 7
15
votes
2 answers

Performance of microkernel vs monolithic kernel

A microkernel implements all drivers as user-space programs, and implements core features like IPC in the kernel itself. A monolithic kernel, however, implements the drivers as a part of the kernel (e.g. runs in kernel mode). I have read some…
mmk
  • 386
  • 1
  • 2
  • 7
14
votes
2 answers

What are potential pitfalls with having a minimal kernel that runs managed code?

Suppose I want to build an operating system based on a very small native lower kernel that acts as a managed code interpreter/runtime and a larger upper kernel compiled to a non-native machine language (Java bytecode, CIL, etc.). Examples of similar…
14
votes
1 answer

What is the purpose of M:N (Hybrid) threading?

In other words, what advantages does Hybrid threading have over 1:1 (kernel only) and N:1 (user only) threading? This is a follow-up to What is the difference between user-level threads and kernel-level threads?
Sheldon
  • 803
  • 2
  • 9
  • 16
13
votes
1 answer

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

Google's new in-production OS which it desires to replace not only Android but many other devices utilizes a completely new kernel: The code differs from Android and Chrome OS due to its being based on the "Zircon" kernel (formerly "Magenta")…
Zhro
  • 233
  • 2
  • 5
13
votes
1 answer

Are all system calls blocking?

I was reading an article that describes the switch between user-space and kernel-space that happens upon a system call. The article says An application expects the completion of the system call before resuming user-mode execution. Now, until now…
Ankit
  • 1,337
  • 2
  • 14
  • 18
13
votes
3 answers

How does the processor find kernel code after an interrupt?

When an interrupt occurs, the processor preempts the current process and calls kernel code to handle the interrupt. How does the processor know where to enter the kernel? I understand that there are interrupt handlers which can be installed for each…
11
votes
1 answer

Writing a multitasking operating system for a processor without MMU

I've been thinking of writing a hobby operating system for some of the ARM processors. There are many popular single-board computers with ARM MPU, so I simply wanted to purchase one of those (choosing one with more open documentation). I was…
9
votes
2 answers

What is a file?

I'm looking for a formal definition of file that does not only include storage but also abstractions like procfs or /dev/null (or any fuse-based file) that do not relate to storage. So far I know that all files are abstractions that can be…
8
votes
3 answers

Why do we try to maximize Lagrangian in SVMs?

I was learning about support vector machines from MIT OpenCourseWare. I figured it out. I understand why we try to minimize $\frac{1}{2} w^2$. I just did not get why we try to maximize Lagrange expression like said at 35:56 in the YouTube video.…
8
votes
2 answers

Microsoft Singularity : why closed

I'm talking about this one research project: but MS closed it in 2008. I've read many articles about it, about high perfomance (30+% faster against tradinional monolithic kernels), much more secure etc. So it should be really a revolution in OS…
Alex Zhukovskiy
  • 237
  • 3
  • 10
7
votes
2 answers

Why operating system needs interrupt stack, if it has process control block?

I'm reading about an operating system but some concept confuses me. What doesn't confuse me: When an interrupt or system call or processor exception occurs, it happens when user mode tries to switch to the kernel mode, the operating system uses…
helsereet
  • 71
  • 2
7
votes
1 answer

Difference between hypervisor and exokernel

An hypervisor (1st type) is a software that creates and run virtual machines, managing guest's operative systems's requests to the hardware. An exokernel is an operative system kernel, that let's programs access directly to the hardware or, with the…
incud
  • 551
  • 7
  • 18
5
votes
1 answer

What is the difference between a module in a monolithic kernel and a server in a microkernel?

I´m not exactly sure what kind of impact these two things have on kernel design. Are servers more flexible because of running in user space, for instance, and does adding a module require a new build of a kernel?
1
2 3 4 5 6