KolibriOS: The Operating System That Fits On A 1.44 MB 3.5″ Floppy Disk

While most operating systems are written in C and C++, KolibriOS is written in pure x86 assembly and as a result small and lightweight enough to run off a standard 1.44 MB floppy disk, as demonstrated in a recent video by [Michael].

Screenshot of the KolibriOS desktop on first boot with default wallpaper.
Screenshot of the KolibriOS desktop on first boot with default wallpaper.

As a fork of 32-bit MenuetOS back in 2004, KolibriOS has since followed its own course, sticking to the x86 codebase and requiring only a modest system with an i586-compatible CPU, 8 MB of RAM and VESA-compatible videocard. Unlike MenuetOS’ proprietary x86_64 version, there’s no 64-bit in KolibriOS, but at this level you probably won’t miss it.

In the video by [Michael], the OS boots incredibly fast off both a 3.5″ floppy and a CD-ROM, with the CD-ROM version having the advantage of more software being provided with it, including shareware versions of DOOM and Wolfenstein 3D.

Although web browsers (e.g. Netsurf) are also provided, [Michael] did not get Ethernet working, though he doesn’t say whether he checked the hardware compatibility list. Quite a few common 3Com, Intel and Realtek NICs are supported out of the box.

For audio it was a similar story, with the hardware compatibility left unverified after audio was found to be not working. Despite this, the OS was fast, stable, runs DOOM smoothly and overall seems to be a great small OS for x86 platforms that could give an old system a new lease on life.

28 thoughts on “KolibriOS: The Operating System That Fits On A 1.44 MB 3.5″ Floppy Disk

      1. A family member had it run on a 386DX-40 in the 90s, but with 16MB of RAM.

        In my opinion, running Windows 95 or OS/2 on a weak processor was fine back in the day, but running them on low memory was just dumb*.
        Because of heavy swap file usage. Complex OSes need RAM in order to be able to think.
        Windows 95 stops exzessive swapping past 32 MB or so.

        (*lack of money was no excuse, because it apparently was somehow available for other things; fat graphics cards, games, big monitors, wavetable sound cards etc.
        And yes, I saw PCs suffering at crawling Windows 95 back in the 90s, on as low as 4 MB. It was horrible, the HDDs screamed.).

          1. Exactly! I remember this with Windows 98SE on a Pentium 75 with 24 MB of RAM, I think.
            It worked “okay”, but HDD usage was still noticeable (32, 48 or 64 MB would have been wiser).
            Clicking on the start menu caused the hard disk to whirr and it caused an 0,5 to 1,5 sec delay until the start menu had folded open.
            The real “struggling” started when clicking start -> programs, though..
            That’s when Windows 98SE was checking for all the start menu entries of the installed programs.
            Looking back I was lucky that Windows 98 had the ability to execute code from VCache, otherwise it could have been even worse.

          2. What I may should mention to the younger readers here ist that vintage AT-Bus aka IDE HDDs with 80, 150 and 250 MB were still installed in 386/486 PCs when when Windows 95 RTM was new.

            These HDDs ran at about 3600 RPM (60 revolutions per second because of 60 Hz AC), had about 8 to 64 KB cache and supported PIO-0 to 2 (?) and Multi Word DMA.

            They may have a look for specs of an “Conner CP30084E” or any other CP30 model.
            Transfer speed was 1,5 MB per second. Via ISA Bus.

            If you had Windows 95 using swap file here, it really wasn’t fun.
            Any meaningful application besides calc.exe had to be swapped in and out.

            Even Windows 3.1x shouldn’t have run with less than 4MB of RAM here (4MB was needed even moreso on a 286, because of lack of virtual memory in Standard-Mode).

            6 MB of total RAM allowed for having SmartDrive running in background in addition to just running Windows 3.1x (with Double Buffer setting).

            So yeah, the bottom line is that most PC users had underpowered RAM expansion.
            It was common to have 2 or 4MB of RAM, yes, but still wrong.

            Windows didn’t function as intended, because of lack of RAM.
            Users short on RAM should have used Geoworks Ensemble on such PCs back then. Or Windows /386 from the 80s.

            OS/2 Warp had it worse, though. It rarely saw more than 4 MB, while needing 8 MB minimum to function properly. Sigh. 😞

          3. Had 98se running pretty well on an AMD “P75” 133mhz 486 cpu. Overclocked to 160! 512kb opti svga, some sound blaster compatible thing with ide control built in, and an opti usb 1.1 card. Netgear 10/100 nic. 56mb memory! Played starcraft fairly well (some vsync like issues when videos played, but they played fine with no audio issues) and of course red alert, some gbc emulation and snes/nes with some frame skip. Handled mpeg2 playback decently. Winamp! And media player classic.

          4. I’ve been using computers since the C64 when I was about 3 years old so I remember the DOS days and while they ended with Windows 3.1 for most people my parents couldn’t afford a newer computer so I used Windows 1.1 and DOS until probably about Christmas of 1996 when my dad found a $100 Packard Bell system that ran Windows 3.1 and I souped it up the next summer by mowing yards and buying parts from the store at the front of the neighborhood.

            Despite nearly 4 decades of using them daily, I’m still amazed that Windows 95 ran on so little compared to what it “needs” now.

    1. I used to run QNX as a desktop OS at home, and carried the 1.44 demo on a floppy to testboot dumpster finds with.
      In fact my kids used the QNX computer as their first computer, and they made friends with the staff and users on the QNX irc channel, all suprised that some kid in Sweden was using QNX to do their homework…

  1. Hi, also notable are ports of OpenGL Gears (Tiny GL Gears), CHIP-8, DOSBox, FAR Manager (Norton Commander replica), ScummVM, FCE (NES/Famicom emu), gngb (GB emu), 8086 Tiny, psx4all, DGEN (Sega Genesis emu), ZSNES..

    In short, KolibriOS has many ports or implementations of things that people remember from 16-Bit and 32-Bit era.
    Not bad for such a small system, really.
    Especially SDL based projects can be ported over, I think.

    DOSBox (20y old port): https://www.vogons.org/viewtopic.php?t=9510
    FCE Ultra screenshot: https://tinyurl.com/2aae6ech
    KolibriOS stored on DNA: https://www.osnews.com/story/29697/kolibrios-stored-on-dna/

  2. 1)
    https://distrowatch.com/weekly.php?issue=20090831#feature
    (note that this review was written in 2009)

    2)
    https://distrowatch.com/table.php?distribution=kolibri
    (2024 update; ≈120 hits/day on Distrowatch)

    (“KolibriOS is a tiny open-source operating system with a monolithic preemptive kernel and video drivers for 32-bit x86 architecture computers. KolibriOS is a fork of MenuetOS, written entirely in FASM (assembly language). However, C, C++, Free Pascal, Forth, among other high-level languages and compilers, can also be used in application development. KolibriOS features a rich set of applications that include a word processor, image viewer, graphical editor, web browser, and over 30 games.“)

    1. I’ve tried this on modern(ISH) hardware.
      On a thin client booting from USB Flash this boots in 3 seconds it’s BLAZING fast, unfortunately it’s not quite up to many websites I’m guessing it will be able eventually? Installing DOOM wasn’t easy and I didn’t actually get it to run after several attempts,

      I’ll be watching this as it matures

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.