There's a famous computer joke that goes along the lines of "we needed 4K of RAM to send people to the Moon, and now we need <e.g.
-
There's a famous computer joke that goes along the lines of "we needed 4K of RAM to send people to the Moon, and now we need <e.g. 4GB to keep a grocery shopping list>".
I think it is a fine illustration of the Jevons paradox in computing, and one of the "computing Murphy laws", known as the Parkinson's Law of Data - "Data expands to fill the space available for storage". I also think it's quite intriguing to highlight observations of a similar phenomenon related to compilers, especially in the context of #permacomputing
Yesterday I read a book on a minimalist compiler written in the 00's, having a remarkable footprint of merely 424 KB of RAM.
And then I thought about Turbo Pascal for CP/M that ran with 64KB of RAM. And then various compilers that worked on micros with 16KB or less.
And then I read about things like the ALGO compiler, an ALGOL clone, for a first generation/vacuum tube computer Bendix G-15 (yes, the one Usagi Electric has): 2160 words of 29 bit RAM, no more than 370 op/s.
-
-
There's a famous computer joke that goes along the lines of "we needed 4K of RAM to send people to the Moon, and now we need <e.g. 4GB to keep a grocery shopping list>".
I think it is a fine illustration of the Jevons paradox in computing, and one of the "computing Murphy laws", known as the Parkinson's Law of Data - "Data expands to fill the space available for storage". I also think it's quite intriguing to highlight observations of a similar phenomenon related to compilers, especially in the context of #permacomputing
Yesterday I read a book on a minimalist compiler written in the 00's, having a remarkable footprint of merely 424 KB of RAM.
And then I thought about Turbo Pascal for CP/M that ran with 64KB of RAM. And then various compilers that worked on micros with 16KB or less.
And then I read about things like the ALGO compiler, an ALGOL clone, for a first generation/vacuum tube computer Bendix G-15 (yes, the one Usagi Electric has): 2160 words of 29 bit RAM, no more than 370 op/s.
Much of the bloat of modern computing is in UI. Even today a no GUI Linux is fairly small.
UI is one of those places where tech folk spend a lot of picky picky time worrying about feetch.
-
Much of the bloat of modern computing is in UI. Even today a no GUI Linux is fairly small.
UI is one of those places where tech folk spend a lot of picky picky time worrying about feetch.
@tomjennings that being said, I can use an early CLI Linux on 386/4MB fairly comfortably, but I need a P3/64MB to run a GNU libc-based modern Linux distro, and probably much more for a system with systemd...
-
@tomjennings that being said, I can use an early CLI Linux on 386/4MB fairly comfortably, but I need a P3/64MB to run a GNU libc-based modern Linux distro, and probably much more for a system with systemd...
@nina_kali_nina @tomjennings How old do you need to get to run in 4 megs? I'm running modern #NetBSD 11 in 10 megs (Mac LC II), and it's hardly usable for much, so I'm considering an older NetBSD for this machine.
NetBSD 11 running in 36 megs (Mac LC III+) is enough to compile large packages like Perl. Does Linux really need 64 megs just to run? Can you compile on it?
It is amazing to think about how much was possible in hundreds or thousands of bytes. We need to resurrect more of that magical software. -
@nina_kali_nina @tomjennings How old do you need to get to run in 4 megs? I'm running modern #NetBSD 11 in 10 megs (Mac LC II), and it's hardly usable for much, so I'm considering an older NetBSD for this machine.
NetBSD 11 running in 36 megs (Mac LC III+) is enough to compile large packages like Perl. Does Linux really need 64 megs just to run? Can you compile on it?
It is amazing to think about how much was possible in hundreds or thousands of bytes. We need to resurrect more of that magical software.@AnachronistJohn @nina_kali_nina @tomjennings
BSD 4.2 ran fairly well in 1 MiB on the VAX 11/780. -
@AnachronistJohn @nina_kali_nina @tomjennings
BSD 4.2 ran fairly well in 1 MiB on the VAX 11/780.@AnachronistJohn @nina_kali_nina @tomjennings
That worked because it wasn't running any graphical interface. Just serial terminals. A current Linux kernel, even if you configured out absolutely everything not needed for that, probably wouldn't fit in 1 MiB, though I haven't tried. However, even stripped to a minimum configuration, a current Linux kernel provides a lot of features that BSD 4.2 did not. -
@AnachronistJohn @nina_kali_nina @tomjennings
That worked because it wasn't running any graphical interface. Just serial terminals. A current Linux kernel, even if you configured out absolutely everything not needed for that, probably wouldn't fit in 1 MiB, though I haven't tried. However, even stripped to a minimum configuration, a current Linux kernel provides a lot of features that BSD 4.2 did not.@brouhaha @AnachronistJohn @tomjennings there are anecdotal reports of stripped-down Linux running on Intel Galileo with ~1MB of RAM; the minimal kernel for x86 without any initramfs was ~600 kB last time I checked, but it wasn't bootable on a real PC
-
@brouhaha @AnachronistJohn @tomjennings there are anecdotal reports of stripped-down Linux running on Intel Galileo with ~1MB of RAM; the minimal kernel for x86 without any initramfs was ~600 kB last time I checked, but it wasn't bootable on a real PC
@nina_kali_nina @brouhaha @AnachronistJohn @tomjennings As one of the unfortunate few who still have an Intel Galileo (aka the world's most crap Arduino), I can confirm that it runs Linux.
Sketches (= programs, in Arduino-speak) are compiled using an x86 toolchain, then uploaded as a binary to the board (Kermit may be involved). The Galileo reboots, and calls the binary from an init script. Sketches run very slowly and the SoC runs burning hot
-
@nina_kali_nina @brouhaha @AnachronistJohn @tomjennings As one of the unfortunate few who still have an Intel Galileo (aka the world's most crap Arduino), I can confirm that it runs Linux.
Sketches (= programs, in Arduino-speak) are compiled using an x86 toolchain, then uploaded as a binary to the board (Kermit may be involved). The Galileo reboots, and calls the binary from an init script. Sketches run very slowly and the SoC runs burning hot
@scruss @nina_kali_nina @brouhaha @AnachronistJohn @tomjennings when you go non linux the AtariST OS ran in less than 200K and featured a GUI. And AmigaOS was the same but additionally featured real multitasking.