4 ms·
> It's basically an integrated redesign of all the low-level userspace of a Linux system Yes, and that's okay. Whatever it is that came before it sucked so muc
by matheusmoreira 2y ago
> It's basically an integrated redesign of all the low-level userspace of a Linux system
Yes, and that's okay. Whatever it is that came before it sucked so much I don't even remember what life was like before systemd.
Also, it's amazing that we even get to redesign Linux user space like that. That's something special. Not a single other operating system allows you to do this. You could boot Linux straight into your program if you want, without any user space at all. Linux is such a solid foundation it lets you swap out the entire user space, you can trash systemd and even the entire GNU stuff and just do your own thing. It's inspired me to start working on a redesign of my own.
- egorfine 2y ago> You could boot Linux straight into your program if you want, without any user space at all. That was possible from around day one of linux kernel existence.
- matheusmoreira 2y agoYes. However it's not at all obvious that there is a clean separation between Linux and user space. You look up the manual entry on some Linux system call and it gives you the glibc documentation. You look up the init system in the manual, expecting details on what the kernel requires of PID 1, and it just gives you systemd documentation. This stuff is completely mixed up. You look Linux up on Wikipedia and the article eventually starts telling you about standard C libraries as if they were part of Linux. In some articles there's even a diagram showing glibc wrapping the kernel, as if it was Linux's equivalent to the Win32 API. https://upload.wikimedia.org/wikipedia/commons/4/45/Linux_kernel_System_Call_Interface_and_glibc.svg https://upload.wikimedia.org/wikipedia/commons/4/45/Linux_ke... In reality, you can trash that entire thing and remake the entire user space in Rust or Zig or Lisp if you want. No libraries are necessary.