I really wish that I was born early so I’ve could witness the early years of Linux. What was it like being there when a kernel was released that would power multiple OSes and, best of all, for free?

I want know about everything: software, hardware, games, early community, etc.

  • fubarx@lemmy.world
    link
    fedilink
    arrow-up
    23
    ·
    21 hours ago

    If you wanted to run Unix, your main choices were workstations (Sun, Silicon Graphics, Apollo, IBM RS/6000), or servers (DEC, IBM) They all ran different flavors of BSD or System-V unix and weren’t compatible with each other. Third-party software packages had to be ported and compiled for each one.

    On x86 machines, you mainly had commercial SCO, Xenix, and Novell’s UnixWare. Their main advantage was that they ran on slightly cheaper hardware (< $10K, instead of $30-50K), but they only worked on very specifically configured hardware.

    Then along came Minix, which showed a clean non-AT&T version of Unix was doable. It was 16-bit, though, and mainly ended up as a learning tool. But it really goosed the idea of an open-source OS not beholden to System V. AT&T had sued BSD which scared off a lot of startup adoption and limited Unix to those with deep pockets. Once AT&T lost the case, things opened up.

    Shortly after that Linux came out. It ran on 32-bit 386es, was a clean-room build, and fully open source, so AT&T couldn’t lay claim to it. FSF was also working on their own open-source version of unix called GNU Hurd, but Linux caught fire and that was that.

    The thing about running on PCs was that there were so many variations on hardware (disk controllers, display cards, sound cards, networking boards, even serial interfaces).

    Windows was trying to corral all this crazy variety into a uniform driver interface, but you still needed a custom driver, delivered on a floppy, that you had to install after mounting the board. And if the driver didn’t match your DOS or Windows OS version, tough luck.

    Along came Linux, eventually having a way to support pluggable device drivers. I remember having to rebuild the OS from scratch with every little change. Eventually, a lot of settings moved into config files instead of #defines (which would require a rebuild). And once there was dynamic library loading, you didn’t even have to reboot to update drivers.

    The number of people who would write and post up device drivers just exploded, so you could put together a decent machine with cheaper, commodity components. Some enlightened hardware vendors started releasing with both Windows and Linux drivers (I had friends who made a good living writing those Linux drivers).

    Later, with Apache web server and databases like MySql and Postgres, Linux started getting adopted in data centers. But on the desktop, it was mostly for people comfortable in terminal. X was ported, but it wasn’t until RedHat came around that I remember doing much with UIs. And those looked pretty janky compared to what you saw on NeXTStep or SGI.

    Eventually, people got Linux working on brand name hardware like Dell and HPs, so you didn’t have to learn how to assemble PCs from scratch. But Microsoft tied these vendors so if you bought their hardware, you also had to pay for a copy of Windows, even if you didn’t want to run it. It took a government case against Microsoft before hardware makers were allowed to offer systems with Linux preloaded and without the Windows tax. That’s when things really took off.

    It’s been amazing watching things grow, and software like LibreOffice, Wayland, and SNAP help move things into the mainstream. If it wasn’t for Linux virtualization, we wouldn’t have cloud computing. And now, with Steam Deck, you have a new generation of people learning about Linux.

    PS, this is all from memory. If I got any of it wrong, hopefully somebody will correct it.

    • trolololol@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      19 hours ago

      That’s great bit of history

      It may be useful for people reading if you could add headers about when each decade starts, since you have many of them there