3 ms·
Also, I believe that the kernel has also grown much larger, especially in recent years (don't have data or links, just from articles I've read). Concurrency is
by 13ren 18y ago
Also, I believe that the kernel has also grown much larger, especially in recent years (don't have data or links, just from articles I've read).
Concurrency isn't really a solved problem. If someone did solve it, and formed an OS around it, that would be what I mean by intrinsically multi-core. It might also involve an entirely different CPU architecture, and view of the hardware, which the fundamental concepts of linux just didn't map to efficiently (e.g. no filesystem). Hypothetically speaking. But if you could make it look the same to webapps, it wouldn't matter.
My point isn't that linux is bad in any way, but that if your platform is the web, then the OS doesn't matter. BTW: I also don't believe that linux is the ultimate OS - it's just an OS, and it's possible to have something better. In practice, the alternative might be based on linux (or at least compatible). Not because linux is perfect, but it's there already and because of the ecosystem of software that relies on it (borrowed from unix). Linux is a market success - by which I mean many people use it.
The only alternatives I can think off the top of my head are: BSD, solaris, minix, QNX, Plan 9, AmigaOS and there are also some really "weird" OS's in academia, many no longer used.
I believe Plan 9 was written by the creators of unix... as an improvement. But it lacked market success.
EDIT BTW I'm not claiming that linux is as bloated as Windows - just that it has increased significantly in size, and due to the same cause: there is no real need not to.
- jbert 18y ago> Also, I believe that the kernel has also grown much larger, especially in recent years (don't have data or links, just from articles I've read). OK. The kernel runs happily on a 32Mbyte ARM system I have to hand. dmesg tells me the kernel usage (a 2.6.21) at boot time is ~2Mbytes: <5>Memory: 30292KB available (1912K code, 153K data, 84K init) I don't think that justifies being called 'much larger', unless you're comparing with mid-90s kernel versions or something. The source code for Linux is much larger, but I think that's mostly due to broader support for hardware and other optional components.
- 13ren 18y agoThat's pretty impressive, though I was thinking from the beginning, and "recent years" being the last 10 years, and also of the kernel size (not its RAM usage). I agree that kernel size matters less than RAM usage. But to share my perspective: My first computer was a ZX81, with 1K RAM total (i.e. 1024 bytes). 32*24=768 bytes were used for video in the worst case (it was compressed, newline style). To be fair, it didn't have a filesystem (no disks) or multitasking. In truth, I found 1K just too limiting, and went for the 16K rampack addon. Regarding my main point: I doubt the massive software base can be given up at this point (even the disruptive technology of cell phones switch to linux when they get powerful enough) - it's just my yearning for those days of daring frugality, when a byte was worth fighting for.
- jbert 18y ago> it's just my yearning for those days of daring frugality, when a byte was worth fighting for. Which I certainly share :-) I borrowed a ZX-80&ZX-81 and then got my own Spectrum... Perhaps buy yourself an NSLU-2 http://www.nslu2-linux.org/ http://www.nslu2-linux.org/, they're pretty cheap, low power devices with 1 ethernet and 2 usb ports. There's good support for plugging lots of things into the usb ports (you can stick a usb hard drive or flash stick in for storage, usb sound card for media player, printer server, etc). Just don't expect them to do too much (the CPU isn't powerful). I use one as a low-power 'always on' file/ssh/git server. And you can then once more have fun writing software which will run well in a restricted memory environment :-)
- 13ren 18y agoMy main PC is currently an eeePC, which is not all that far from that! I predict another generation which is even lighter, lower wattage and cheaper. Those dime-sized java devices appealed to me - can't find the one I mean, but here's similar: http://www.jopdesign.com/cyclone/index.jsp http://www.jopdesign.com/cyclone/index.jsp and http://wireless.sensorsmag.com/sensorswireless/Wireless+News/Worldrsquos-Smallest-Java-Based-Computers-to-Debut/ArticleStandard/Article/detail/514140 http://wireless.sensorsmag.com/sensorswireless/Wireless+News...
- 13ren 18y agoWARNING: RAVE It's the simplicity of the ZX81 that appeals to me - especially the small number of commands available, in BASIC and Z-80 machine code. It's concrete and graspable, and possible to get on top of to master some of it perfectly - a toy world, a tiny playground to play in. The small universe makes it easier to be sure you've got the best solution, and limited options make choices clearer and easier to evaluate. I've managed to get some of that feeling from Java and discrete mathematics - though that essential thrill of efficiency and certainty is missing... In my current project, I'm trying to create that kind of playground for users, where the choices are concrete and combine orthogonally. I'm aiming for it to appeal to "my people" (i.e. who appreciate what I do), instead of to the naysayers, or opinions about how you "should" do things. I think it requires a kind of genius, to make the abstract concrete. To me, it's a worthy goal. Fortunately, you can create a work of genius without actually being a genius - provided that (1) you spend a lot of time and effort; (2) you make definite progress; and (3) can link those pieces of progress together, so you build higher and higher. Well, I sure hope I can. :-)