4 ms·
I will never not find this kind of project incredibly impressive. It’s interesting to think that Linux, after all, is really just the kernel — and yet getting t
by lordleft 1y ago
I will never not find this kind of project incredibly impressive. It’s interesting to think that Linux, after all, is really just the kernel — and yet getting that work done paved the way to getting an open source version of Unix installed on billions of machines. Great stuff!
- hollerith 1y agoIt is equally valid to say that Stallman's starting to write a C compiler and Unix utilities (in 1984 whereas the Linux project started in late 1991) paved the way to getting an open source version of Unix installed on billions of machines.
- kimixa 1y agoI agree - there's a number of kernels that were "open source" and released at a similar time enough time to linux (e.g. 386BSD in '92) that I could see any of those winning the "community battle" and taking that space instead, but no real credible "development toolchain" equivalent until decades later. Though I'm unsure how differing licenses might have affected this - I suspect that really early in it's development the "copyleft" nature of the GPL Linux didn't make as much of a difference, as from what I remember most commercial uses of Linux didn't come until it had already gained significant momentum.
- deleted 1y ago[deleted]
- treyd 1y agoThe copyleft nature was essential to good driver support. It set it up such that for corporations making drivers the easiest path was to get the driver upstreamed. There was a bunch of hoops they could have gone through to avoid that (as many did, like Nvidia) but that became a sorta-default. Copyleft encourages a collaborative relationship between entities because it makes trying to play it close to the chest with IP involve more legal effort (if it's possible at all).
- kimixa 1y agoYes, I can see that stalling development as (at best) it turns into a pile of private forks rather than a cohesive project, but from what I remember that was already after Linux had "won" the "Open Source Kernel" race. Commercial support for Linux was... Sparse... before the early 2000s.
- Quekid5 1y ago> [Stallman/GNU] getting an open source version of Unix installed on billions of machines. Agreed, funnily enough GNU tools/compilers also ended up getting installed on a lot of proprietary UNIXes because proprietary UNIX was mostly shit (in user space!). At least most of the ones I had the misfortune to have to work on.
- hollerith 1y agoI first came across GNU tools on NeXTSTEP, which wasn't too bad. If Stallman had started with a kernel, there would be very few people who had the legal right to run any utilities or apps on the new kernel whereas GNU's utilities and apps (e.g., Emacs) were immediately useful (i.e., without breaking any copyright law or violating any software license) to a large population, namely, anyone with an account on a proprietary Unix system, which explains why Stallman chose to start with the userland.
- amszmidt 1y ago> If Stallman had started with a kernel, there would be very few people who had the legal right to run any utilities or apps on the new kernel That is really not true, one of the most important things when it comes to the GNU project and the whole Free Software movement is the ability to run _any_ program, be it non-free software or free software. This has been parroted for more than 40 years now ...
- hollerith 1y agoThat's true in isolation, but is missing vital context. In the 1980s a user of proprietary Unix usually had no way to make the ls utility or a C compiler or a text editor run on an new Unix-like kernel. And even if he had the technical means to do it, he probably did not have the legal right, i.e., it would have been a violation of copyright law. In the Unix world, there was no tradition of binary compatibility: you couldn't just take a binary compiled for NeXTSTEP and run it on Solaris or on Linux: you needed to recompile, which means you needed a C compiler and the source code for the program you want to run, and most users of Unix in the 1980s didn't have a practical way to get the source code (and if he did have access to the source code, using to to port the program to a new kernel was probably a copyright violation). Stallman could have tried to start a tradition of binary compatibility in the Unix world. That is one of the strategies he could have chosen for the GNU project: i.e., he could have picked a proprietary Unix, Solaris, say, and make sure the kernel of his GNU system could run all (or most) binaries that run on Solaris. But that strategy ran the risk that the owner of Solaris might have sued to stop this and the courts might have sided with owner, requiring the GNU project to shut down, pay the owner (Sun) a lot of money or start over with some other strategy.
- diath 1y agoIt's even more funny and amusing when you remember that in the initial release mail for Linux, Torvals said "just a hobby, won't be big and professional like gnu". https://groups.google.com/g/comp.os.minix/c/dlNtH7RRrGA/m/SwRavCzVE7gJ https://groups.google.com/g/comp.os.minix/c/dlNtH7RRrGA/m/Sw...
- chuckadams 1y agoHe's also referred to Linux as "the GNU Emacs of all terminal emulators".
- Y_Y 1y ago> It's now the GNU Emacs of all terminal emulators. > (Linus Torvalds, regarding the fact that Linux started off as a terminal emulator.) http://neil.franklin.ch/Jokes_and_Fun/Linux_Quotes.html http://neil.franklin.ch/Jokes_and_Fun/Linux_Quotes.html That's the best reference I can find, but even if it's totally legit it doesn't make any sense to me.
- throwaway82332 1y agoPerhaps it's a reference to how Emacs does "everything" and some has also joked that Emacs is an OS with a text editor
- flykespice 1y agoBack then Emacs was considered what we call in modern software 'bloatware': resource hungry, big and full of feature creep. BTW, in early versions of Slackware emacs was bundled in its own software category due to its huge size when selecting which packages to install on first boot.
- chuckadams 1y agoProbably even had its own floppies too. Remember that install method?
- Someone 1y ago> I will never not find this kind of project incredibly impressive I wouldn’t call it incredibly impressive. The path on how to write a minimal multi-tasking kernel has been beaten decades ago. Writing a kernel that can boot and do a few things is ‘just’ a matter of being somewhat smart and have some perseverance. Doing it for RISC-V complicates things a bit compared to x86, but there, too, the information about initialising the hardware often is easily obtained (for example: https://wiki.osdev.org/RISC-V_Meaty_Skeleton_with_QEMU_virt_board https://wiki.osdev.org/RISC-V_Meaty_Skeleton_with_QEMU_virt_...; I wouldn’t know whether this project used that) I think the author agrees, given (FTA) that they wrote “This is a redo of an exercise I did for my undergraduate course in operating systems” It’s work, may be nice work, but I think everybody with a degree in software engineering could do this. Yes, the OS likely will have bugs, certainly will have rough edges, but getting something that can multi-process, with processes shielded from each other by a MMU isn’t hard anymore.
- d_sem 1y agoIs there a book one can read to learn how to create one?
- esafak 1y agohttps://en.wikipedia.org/wiki/Operating_Systems:_Design_and_Implementation https://en.wikipedia.org/wiki/Operating_Systems:_Design_and_...
- deleted 1y ago[deleted]
- andrehacker 1y agoThat is an excellent recommendation. For Operating Systems anything Andy Tanenbaum did is world class. This made me look up what he has been up to, there is a 2023 edition of "Modern Operating Systems" which covers cloud virtualization and Android along with everything that came before, hm, tempting.
- lifeline82 1y ago[dead]