Talk:User space and kernel space

Latest comment: 3 years ago by 72.174.71.134 in topic Rename?

Using program language safety edit

I'm pretty sure that JX proposed using language-based protection instead of VM separation in a kernel before Unununium (operating system) did, but then I don't actually know when work on the latter started, so I'm not going to change it. JulesH 10:56, 10 October 2006 (UTC)Reply

early user space edit

How does user space relate to early user space?

Catleeball (talk) 22:42, 6 June 2017 (UTC) I'd argue that initramfs and early user space fall under the user space umbrella. While it's mainly used for mounting the rootfs, kernel modules, LVM logical volumes, etc, it operates as user space would. [1]Reply

References

Rename? edit

I suggest this article should be renamed to kernel space and user space. --Octra Bond (talk) 03:17, 18 April 2011 (UTC)Reply

I second this.72.174.71.134 (talk) 22:14, 24 September 2020 (UTC)Reply

Userland edit

The term Userland usually refers to the various programs and libraries that the rest of the operating system uses to interact with the kernel The Template:Infobox OS contains the term userland. An example from Debian are the GNU Core Utilities. But what about libraries to interact with the Kernel? Is D-Bus such an IPC? Or the C standard library or uClibc? — Preceding unsigned comment added by Echinacin35 (talkcontribs) 09:40, 12 May 2013 (UTC)Reply

Utter Bullshit edit

This article is totally hosed and utter bullshit. — Preceding unsigned comment added by 96.47.97.42 (talk) 20:21, 30 August 2016 (UTC)Reply

Fixed lede. User:Dreamer (aka Mark) — Preceding unsigned comment added by 96.47.97.42 (talk) 20:37, 30 August 2016 (UTC)Reply
How so? -- Evilninja (talk) 21:48, 30 August 2016 (UTC)Reply

"User land", "User mode", "User space" edit

What's the difference between these three things? The lead section should clarify this. This article is really poorly written at the moment anyway, too.

104.228.101.152 (talk) 05:29, 22 December 2016 (UTC)Reply

User space is an area of memory. Userland is a context within which code executes. "User mode" might be some value that a particular operating system attaches to how it keeps track of programs maybe. — Preceding unsigned comment added by 2605:6000:3AC3:8E00:4825:47AD:FFA:D039 (talk) 20:52, 10 June 2017 (UTC)Reply

As I understand it, the fundamental concept is user mode and kernel mode, which are states that a processor can be put into with different behaviors. Kernel mode is more locked-down for security. To my knowledge, memory is usually physically undifferentiated, however it is can be logically segregated into kernel and user areas. The kernel memory is usually inaccesible to user mode software. Enforcement of these policies can be done in software or hardware, but the approaches vary considerably.

The system "environment" or "runtime environment" is also marked by the distinction between kernel and user modes, since all code will be in one of these two states. Code that runs entirely in user mode is said to be in "user land" or "user space". code that runs entirely in kernel mode is usually said to be in "kernel space". Some code switches these contexts, but this is usually stated explicitly. A window manager might be a good example of code that needs to do this. The general push is to have software run in user mode, as this minimizes security risk. Most application software runs in user space. Most system software runs in kernel space. 47.32.217.164 (talk) 18:37, 20 August 2017 (UTC)Reply

Kernelspace redirect edit

Kernel space currently redirects here. Can we also please have kernelspace redirect here? 47.32.217.164 (talk) 18:21, 20 August 2017 (UTC)Reply

  Done -- intgr [talk] 18:29, 20 August 2017 (UTC)Reply

Lunix bias edit

"The term userland (or User Space) refers to all code that runs outside the operating system's kernel.[1]"

The citation is to Eric Raymond, so it's not going to be an inclusive definition. In Windows, user space refers to code running above the executive. Below the executive the kernel is one piece. The discrepancy is because of basic differences in the microkernel/monolithic kernel approaches. In any case, this entire article does a disservice to non-Linux architectures including other forms of Unix. SchmuckyTheCat (talk) 05:30, 1 January 2019 (UTC)Reply

@SchmuckyTheCat: Do you have any better OS-independent or Windows-specific sources? I don't think these terms are used much in the Windows world although the concepts are analogous. -- intgr [talk] 17:28, 2 January 2019 (UTC)Reply
Russonivich (sp?) books on Windows Internals might have a definition. The concepts are analogous and several Windows architecture articles point to this article, so it's important to get it right and neutral. SchmuckyTheCat (talk) 09:55, 4 January 2019 (UTC)Reply
My key issue with this article is its reliance on Linux as the only example. This implies that "user space" is a feature of Linux and not a concept. The table, using only Linux as its example, drives home this impression. It might be helpful if the table were either clearly labeled to indicate that Linux is being used as but one example, or the table should include non-Linux examples. Both microkernels and monolithic kernels have the concept of "user space" and "kernel space;" the only difference is scope. Similarly, Windows may not use the term "user space" but the concept exists nonetheless. I also take issue with the "Notes" section. One could argue that "user space" is/is not an architectural element of OS design; however, conceptually, CP/M, DOS, Windows, etc. do have the (more rudimentary) concept of "user space" and "kernel space" through the use of services, interrupt hooks, TSRs, etc. @Intgr: There may not be OS-independent sources to cite; as a matter of fact, many different OSes may need to be cited to provide a more rounded impression of the concept. I'm not comfortable with the primary citation being a personal website defining jargon. Rusty.pole (talk) 12:39, 26 February 2019 (UTC)Reply