4MB Laptop How-To: How to put a “grown-up” Linux on a small-spec laptop (2000)
tldp.org
tldp.org
Using Linux in this early age had advantages but it also came with some risks. Not risks to me as a Linux user but risks to those exposed to things I produced. I managed to create a CD which was distributed with a magazine I was editor for in that period. The CD worked fine on Linux, it worked fine on OS/2 - the other system I used when not on Linux - but it failed miserably on Windows 3.1x due to the use of lower-case filenames. This was... unfortunate... as that CD had already been pressed, what to do? I ended up solving the conundrum by distributing a tailored version of MSCDEX [3] which could handle these files, affected users could order a floppy free of charge.
[1] http://www.computinghistory.org.uk/det/13145/Toshiba-T1900C/
Then I moved on from building everything from scratch - a great learning experience back in the day - to Yggdrasil, which was simply a great distro for the time. Ah, good ol' days .. I really wonder what I'd do different if I had a time machine and could go back and tell myself all the things Linux would be used for in the decades ahead, it would have really blown my mind .. Still does!
But .. nah.
;)
I do prefer `menuconfig` (combined with `oldconfig`) in any case, possibly out of habit but also because this type of text-based user interface often is much faster to use than its graphical equivalent.
I can heartily second the recommendation, and I'd love to know what the author is up to nowadays.
(I also kept the Win95 partition)
Given sufficient interest I'm sure I could produce pictures.
I recall trying to compile a 2.4ish kernel with support for my pcmcia network card on an old 486 sx25 (dx?) laptop. Never got it to work. The desktop was fine from redhat 6 onwards (under 5.2 my sis graphics card wouldn't work in graphics mode, so no X)
Its going to be dire.
My Amiga's and DOS machines are online too.
Unfortunately the Transmeta CPU in that thing was really slow.
Apparently I didn't keep the Win95 partition and instead that's on a disk image "somewhere". Probably on another computer that hasn't been booted in a decade.
https://sourceforge.net/p/mulinux/wiki/browse_pages/
https://sourceforge.net/projects/mulinux/reviews
it's pretty stupid.
There existed a driver in XFree86 for the funky Compaq AVGA graphics so I could use X, but the limited RAM made it impossibly slow to run any kind of desktop environment or even a window manager.
The setup I used on it was the zed text editor in one text console, shell for running LaTeX in another console and the gv Postscript viewer without a window manager running on a X screen. I wrote quite a lot of lab reports that way.
Documentation about that setup was one of the first web pages I made:
This was a minor inconvenience compared to swapping the 40 1.44mb disks needed to install it because I couldn't get it to use my pre-atapi cdrom drive correctly. Using the cdrom drive it would work for a little bit, and then everything would start timing out. And, a network install was some science fiction as far as I and my 9600bps modem were concerned.
Then once you got it all installed you could start trying to get X11 and ppp to work...
We had bought 40 floppy disks in a bundle, and it turns out one of them was crappy and ended corrupted. It also turned out it was the last of the set of disks for the X11 package. So we had a shiny Slackware install... without X.
Fortunately, iirc, Doom was there intact, and we could run it with the "console" svga backend (that was outside X, but before Linux had the framebuffer, I don't remember how that worked exactly)
Had to wait for the next day to re-download the corrupted image on a different floppy, and install the X11 package.
They will say computers were better then. I disagree entirely. They were horrible and had much less capacity.
I see the same thing for the Internet. People will say they miss the time when it wasn't open for commercial activity. Hogwash... I know, I was there. Content was lacking, speeds were horrible, discoverability was an arcane art, and the costs were obscene.
I'm guessing, not my domain, there is some sort of psychological reason for this sort of thing. Computers were giant, more limited, and expensive. The 'net was no better.
It happens with other things. People say cars were better. Nope. Life was better. Probably not. Etc...
Even after all that, there wasn't much it could do. I'm not sure why I insisted on running that instead of Windows 95.
My only defense is that I didn't do so out of a fake memory of a glorious past. I just like tinkering.
This was a minor inconvenience compared with recompiling the kernel overnight in order to add soundblaster support. (This was before modules.)
(Oh, and I learnt not to buy cheap no-name floppies, after the installation process failed several times, each at a different stage.)
A little later OSS came out. To get sound to work a lot of cases you had to shell out money for commercial sound drivers, or get a crack from #linuxwarez.
As of my last install of Slackware 14.1 you still have to do this.
Slackware is a wonderful distribution and keeps most important packages pretty close to up to date but Patrick seems to very much be a "if it ain't broke don't fix it" kind of developer. My first Slackware was 2.1 or 2.2 (just remember if was 1995) and other than the fact I used an ISO image of 14.1 instead of 10's of floppies the install is very much the same after all these years.
You still do with Slackware ;)
Don't we have enough garbage already?
They should be optional upgrades only at this point in their life cycle.
It's a bit of a hassle, but at east it doesn't require burning physical media.
[0]https://en.wikipedia.org/wiki/Preboot_Execution_Environment
The trickiest part was getting DOS/Windows back with a custom bootable CD after I realized how slow it was with a full linux distribution.
I remember when winquake/opengl quake or whatever it was called came out that allowed use of the DRX/opengl drivers. It was a major improvement speed wise (as well as not having to boot into DOS and it allowed higher resolutions reliably).
However Linux Quake network wise (and startup speed) was absolutely faster than both winquake and the DOS TCP/IP stack version. A lot of people/clans that played competitively would use Linux because of this reason (as well of course the server version).
Quake was one of the things that kept me on Linux most of the time (highschool circa 1997-1999).
In the absence of hardware acceleration, the Pentium 133 outperformed the Cyrix CPU by a wide margin when running Quake. You are correct that with hardware acceleration, the CPU was far less of an issue. But all I had was a crummy ATI Mach 64, which was not even a good 2D card. So for me, the CPU was the bottle neck.
Ironically, on integer workloads, the Cyrix was a lot faster than the counterparts made by Intel. But their FPU performance was rather underwhelming. On top of that, Quake had hand-rolled assembly code that took advantage of the Pentium's architecture.
I never knew that people used Linux primarily to play Quake. ;-)
Still, it's tough to fit in 256MB with a modern kernel and Xorg.
...why such a weird amount of RAM? Well, when I bought the laptop used its battery (NiCad) was dead, dead, dead - and I didn't have the money to have it properly re-built. So instead, I built my own. I scrounged a bunch of old but usable AA cell NiCad packs from cordless phones (remember those?) and soldered up my own pack, and wrapped it in a bunch of layers of electrical tape. Unfortunately, it didn't fit into the battery compartment completely...
One end was being blocked by the memory! I found that by cutting the battery pack area larger, and removing one stick of RAM (the laptop had 8 MB of RAM originally - 4 x 2 MB SIMMs) - it would fit and still boot - so that's what I did.
The laptop originally ran DOS. My first mod was to install Caldera's OpenDOS (a great version of DOS for the time, btw). Then I found and installed...Monkey Linux. This was an interesting "cut down" but fairly full-feature linux distro. It's crazy claim to fame was using the DOS filesystem for itself, instead of it having its own filesystem:
-rw------- 1 root root 7.3M May 17 16:13 vmlinuz-4.10.0-22-generic
On my machine:
$ stat -c %s /boot/vmlinuz-4.9.0-3-amd64
4204320
$ extract-vmlinux /boot/vmlinuz-4.9.0-3-amd64 > vmlinux
$ stat -c %s vmlinux
20110308
The script to uncompress the kernel comes from the kernel source:
https://raw.githubusercontent.com/torvalds/linux/master/scri...Arguably, not everything in that vmlinux is actually loaded:
$ readelf -Wl vmlinux | awk '$1 == "LOAD" { tot += strtonum($5); } END { print tot }'
13935704
Counting BSS: $ readelf -Wl vmlinux | awk '$1 == "LOAD" { tot += strtonum($6); } END { print tot }'
14824536https://en.wikipedia.org/wiki/Tomsrtbt
The website is dead now. Here's the wayback machine link: https://web.archive.org/web/20160120122627/http://www.toms.n...
I was running Slackware mid '90s and I remember beating my head on the table how slow it was compared to the Sun machines I used in uni with running X. But it beat Win3.1/95 already in my humble opinion so I stuck with it until now (although changed to Debian and then Ubuntu recently). Still allows me to, for most dev, to use laptops from 6-7 years old (my goto dev laptop is a Lenovo X220 from 2011 ; I bought a big stack for almost nothing last year and they are excellent).
Edit: Looks like you would be able to do a customized low-memory/disk install of NetBSD 7.1 on these systems if they had an FPU (either a full 80486 or an 80487 coprocessor). With 32MB RAM and 250MB disk in addition to the FPU, you wouldn't even need to do a customized install.
For the most part, the cpu in the 328 doesn't have general read-write access to the 32k flash memory (used for program storage), outside of some basic functionality mainly limited to bootloader usage (at a machine code level, and IIRC only for the first block of memory), and read-only capability otherwise (so you can store data prior to loading it into flash to be read later by the code).
The 2k static RAM (SRAM) is read-write always and anywhere, anytime - and so it used mainly for variable storage. There's also a small amount of general purpose flash memory available, which is also read-write capable (but has a limited lifespan just like any flash memory - though from testing, in general you won't reach the lifespan unless you do something really stupid) that is typically used to store configuration settings and whatnot between reboots.
Whereas on the VIC-20, the CPU had complete access to all of the RAM and ROM, and full control over the address and data lines of the bus.
Each architecture has its pluses and minuses, but in general the Harvard scheme is used when you don't want the code to be able to alter itself (either intentionally or accidentally due to a buffer overrun or something), which might cause a problem that could have consequences; for an embedded microcontroller, this makes sense, as you just want the thing to run continuously and reliably on every reboot or restart, without worry that the code will corrupt itself and lead to problems.
Note that according to the first google result for "2006 computer spec"[1], 1GB RAM was common at the time.
Oh, Firefox 1.0, we miss you so!
Disk storage grew along with it. Hundreds of KB with the earliest machines I used (on floppies and cartridges), hundreds of MB in the 90s (and like 1.1GB when Dad added a second hard drive to that machine!!), 6.4GB in my own first one, and so on.
It's amusing to think of my son saying things like "I've used a computer with only 4GB of RAM!" when he's older.
I'm thinking it results in a basic OS layer that provides access to the 'standard' I/O (parallel, serial, vga, hdd) ?
Much like a box that only has Dos 6.22 on it ?