Questions tagged [os-kernel]

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

Filter by
Sorted by
Tagged with
33
votes
2answers
44k views

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 ...
23
votes
1answer
3k views

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?
14
votes
2answers
10k views

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....
14
votes
2answers
153 views

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 ...
13
votes
3answers
1k views

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 ...
13
votes
1answer
4k views

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 ...
13
votes
1answer
4k views

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-...
10
votes
1answer
1k views

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 ...
10
votes
1answer
4k views

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 ...
9
votes
2answers
1k views

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 ...
8
votes
2answers
3k views

Microsoft Singularity : why closed [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 ...
7
votes
1answer
2k views

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 ...
6
votes
2answers
532 views

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 ...
6
votes
3answers
1k views

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 ...
5
votes
1answer
362 views

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 ...
4
votes
0answers
345 views

Are these modern operating systems monolithic or microkernel?

I know that (at least at its conception) Linux and Mac OS were both monolithic kernels. My question is, what kind of kernels are Linux, Mac OS, and Windows today and why?
3
votes
1answer
2k views

What is a student process?

According to Galvin and Silberschatz, 5 queues are maintained in multilevel queue scheduling, each for: System Process Interactive Process Interactive Editing Process Batch process Student Process ...
3
votes
2answers
1k views

Dangerous interrupts

Let's say we have a fictional operating system in the user mode. Whenever an interrupt or a trap occurs, the os would switch to the Kernel mode jumping to the address determined from the interrupt ...
3
votes
1answer
516 views

Why doesn't everyone use microkernel-based operating systems?

From what I have read on operating systems, the impression I have been receiving is that, for at least 30 years, "everybody has known" that microkernel-based operating systems are "better" than ...
3
votes
1answer
66 views

Relation between Signals and Events

There are POSIX signals (linux man), and various event-based operating systems (such as TinyOS, most seem to be targeted at embedded systems). But the mechanisms seem very similar. Are the terms '...
3
votes
1answer
49 views

A microkernel fully hardcoded in hardware?

Does there exist a (micro-)kernel of an operating system that is fully implemented in hardware? That is, a kernel that is not stored in RAM, and loaded into CPU registers after an interrupt or system ...
3
votes
1answer
206 views

Session Memory in the Windows Kernel

While reading the paper Effective Data-Race Detection for the Kernel by John Erickson and Madanlal Musuvathi. I was stuck on a slightly tricky sentence. "Similarly, a range of kernel-address space, ...
2
votes
2answers
2k views

Is there a shell between the kernel and hardware

First and foremost, i know what a shell, kernel is. Now the dilemma. Today i had my systems viva in college. The examiner asked me is there a shell between the hardware and the kernel. Obviously, i ...
2
votes
1answer
2k views

User level threads are transparent to the kernel?

Find whether given statement True or False? Explain. User level threads are transparent to the kernel? My attempt : False. Since, user level threads are managed by a user level library however, they ...
2
votes
2answers
93 views

Why doesn't everyone use distributed operating systems?

As requested by a moderator, this question as been separated from my question about microkernel-based operating systems. In the 1980's, the team that developed C and Unix developed a distributed ...
2
votes
1answer
295 views

In a kernel, what are “global constructors”?

I am a beginner developing kernels (though I have developed several Hello World programs in C and C++). I frequently see reference being made to global constructors (e.g., osdev https://wiki.osdev.org/...
2
votes
2answers
500 views

Language that system calls are implemented in

Lately, I have been reading about operating systems design. The idea that all user space programs utilize Kernel services via a "System Call Interface" have got me thinking further into this. Is ...
1
vote
1answer
217 views

Are Time-sharing and multi-tasking operating systems same or different

My question is regarding time-sharing and multi-tasking systems. Time-sharing operating system assigns time slot to each task while multi-tasking OS runs various jobs in parallel. But as I get it, ...
1
vote
2answers
59 views

Can User Level Thread read/write Kernel thread?

As far as I read in a OS text book (Operating Systems by Silberschatz) Kernel mode is for privileged task, so it it true to claim that "User Level Thread can read/write Kernel threads" ? ...
1
vote
2answers
57 views

Are Kernel Codes (which are written in C) compiled during boot time?

I have a confusion regarding how the Kernel is loaded during the boot time. The intuition I have is like following: During installation of an OS, the compiled Code of the Kernel (depending on the ...
1
vote
1answer
41 views

Is it possible for a syscall to pack together different places in memory?

While programming with buffers like uint8_t* in C++ I often arrive at situations on where I'm forced to do copies. For example, if I receive packets in chuncks from ...
1
vote
1answer
36 views

Paging only for user code. What about kernel code?

Why is paging done only for user code (user space)? I know that the basic intuition behind paging is for managing larger logical address space in smaller physical main memory space. Won't the kernel ...
1
vote
1answer
23 views

Are process-safe mutexes shared between OSes?

I understand you can use process wide mutexes, but does this still apply if you have an additional virtualized operating system provisioned? For example, take two OSes: ...
1
vote
2answers
3k views

Switching between user-level and kernel-level threads

After reading difference between user-level threads and kernel-level threads ,now I am in doubt of context switching.Context switching is managed by OS when switching between processes/threads but ...
1
vote
2answers
95 views

Handling TOCTTOU with system calls

What are some of the best practices when implementing system call functionality for handling/avoiding "Time of check to time of use" (TOCTTOU) security issues?
1
vote
2answers
125 views

Why do operating systems freeze?

I am currently writing from a computer on which a VM has just frozen due to exhausted RAM. I am obviously no expert in the field of operating systems but i know that they implement certain memory ...
1
vote
1answer
38 views

Is “capability-based security” vs “hierarchical-protection-domain based security” a false dichotomy?

The wikipedia page on capability-based security states: Capability-based security is to be contrasted with an approach that uses hierarchical protection domains. However, in order to implement ...
1
vote
0answers
22 views

Journey of a process from compilation to execution [closed]

I am reading operating system, and after reading some topics (Processes, Main Memory management) I got somewhat confused. I have knowledge about certain things but I am not able to combine and ...
1
vote
0answers
18 views

Why do we need volume as an abstraction on top of partition?

I'm curious about what do we need volume as an abstraction on top of hardware partition? What problem it tries to solve? What is the limitation of this concept?
1
vote
0answers
22 views

User-level threads and information available to the kernel

User-level threads are transparent to the kernel. How is htop able to show user-level threads running on my system? I know that those threads are user-level threads ...
1
vote
0answers
419 views

Do user level threads take advantage of multi processing?

I asked this question here on stackoverflow, but maybe because of off-topic over there, it didn't received proper response. Does user level threads take advantage of multiprocessing ? I read one such ...
1
vote
0answers
36 views

local addresses in segmentation

I'm reading "Understanding Linux Kernel 3rd edition" and it starts talking about memory segments. It says that a logical address is: Included in the machine language instructions to specify the ...
0
votes
1answer
129 views

If I write code in machine language, then I have access to the CPU in both modes (user and kernel), since the OS is bypassed, correct?

Codes written in machine language can have access to both CPU modes (Kernel and user), since the OS is bypassed, correct?
0
votes
2answers
34 views

How can the initial “booting” state of a computer be different at different time points? [closed]

In my experience, sometimes a computer boots normally, and in a time span of days, the computer won't boot, then again, it will boot normally again. I am not a computer science expert so I assume that ...
0
votes
1answer
438 views

What features should a critical section have to maximize performance?

Critical sections limit performance by constraining parallel execution and adding overhead. What features should a critical section have for improving performance?
0
votes
1answer
137 views

How are hardware interrupts handled?

I have read that a hardware interrupt is handled asynchronously by the CPU, which means that the interrupt signal may arrive at any point of time with respect to the CPU clock cycle. Now, this means ...
0
votes
1answer
63 views

Is OS mode required for accessing general purpose registers

In which of the following cases a process executing in user model is required to enter into the OS mode? (a) Decreasing the value of unsigned integer value in a register to less than 0 (b) Accessing ...
0
votes
2answers
170 views

On what abstraction is a filesystem actually built on?

Data is read in terms of a block from a storage device(magnetic, optical, flash). Size of the block depends upon the filesystem and os. The physical device may have different units of storage like ...
0
votes
1answer
113 views

How many bits are needed? Advantages/disatvantages of this configuration?

So the question is: Assume we had 15 CPU instructions and, for each instruction, we were trusting one particular component of the kernel to handle it. How many modes do we need to support (including ...
0
votes
1answer
180 views

Is my understanding of kernels correct?

System: Application OS: Scheduler, VMM, IPC, FS Drivers, dispatchers, VFS The above would be a monolithic kernel. In a monolithic kernel all core OS functions are separate from user spaaaaaace. ...