Here, we will look into the history of DOS, MS-DOS, FreeDOS and provide a FreeDOS guide. After talking a lot about the currently widespread OSs, we wrote this post for obsolete and lesser-known systems. Many of them are really important for niche uses like device firmware or are just very interesting. Some of the systems have a long history and really make us nostalgic.
Before we get to the FreeDOS guide, let us talk about lesser-known OSs. In our previous series “Desktop Operating Systems”, “What tells distros apart?” and “Linux Distros”, we have introduced the most common OSs, macOS and Windows, as well as many Linux distributions. Operating Systems we list here are mostly UNIX or UNIX-like, but strictly speaking not related to Linux, macOS or Windows. UNIX OSs have a modular OS architecture.
Aside from these popular operating systems, there is also a family of OSs called Berkeley Software Distributions (BSD). The most important BSD derivatives are FreeBSD, OpenBSD, NetBSD, DragonFly BSD, etc. FreeBSD is probably the most widely-used. They are based on the prototypical OS Unix. With BSD it is a bit different than with Linux. All Linux distros are related and use the kernel, but BSD “distros” like FreeBSD and NetBSD are completely separate systems and do not share as much code. The code they have in common are parts of the UNIX kernel they descend from, some userland packages and libraries, of which some (e.g. libc) are even included in the kernel, unlike in Linux.
These systems are really more suitable for servers and very few people use them on their desktop computer. Therefore, we do not recommend them in general, because most programs are not ported to BSD. BSD operating systems are not easy and come with a text-based installer, you can really mess up your PC, unless you know exactly what you are doing. This is a task for a system admin or an enthusiast, but not for normal users.
Aside from personal computers and servers, BSD has some interesting applications as a firmware. The OS of the Playstation 4 is based on FreeBSD, for example. That gives the PS4 both a low-level and a high-level API, so demanding games run smoothly.
The new macOS since version 10, formerly called Mac OS X, is a Unix-based system. It also uses a significant amount of code from BSD’s codebase. That was mainly done for low-level kernel parts of the OS.
There is also Oracle’s Solaris proprietary UNIX operating system, but that is extremely rare and only very few servers run it. It also has an open-source derivative called OpenSolaris, but that was discontinued.
Another proprietary OS is Hewlett Packard Enterprise’s proprietary implementation of the Unix operating system, called HP-UX. This is an OS for high-end servers and mainframes, not desktop computers.
Another UNIX OS is MINIX, but it was developed only for education purposes by computer scientist Andrew S. Tanenbaum at the Vrije Universiteit Amsterdam (Free University Amsterdam). Due to AT&T’s decision to take the original UNIX code away from educational institutions, Tanenbaum had to come up with MINIX.
Tanenbaum is also the person that heavily criticised Linus Torvalds in 1992 for his decision to build Linux with a monolithic kernel, because he thought that was “obsolete”. Today, we know that that decision actually made Linux stable, independent from hardware changes and fast. The whole Torvalds-Tanenbaum debate can be read here.
There are also operating systems for mobile devices like smartphones and tablet computers or IoT applications, but we will get to them in another chapter.
This section is only for your information. DOS is not actually a usable OS in 2019, but we have a fable for retro computers and like to explore. Therefore, we created this short section on DOS. DOS is a platform-independent disk operating system (DOS) and the most well-know DOS is MS-DOS from Microsoft. It was the main OS of desktop computers, like the IBM-PC, from 1981 to around 1995 and Microsoft’s first operating system. It is still interesting, because it did not go extinct at all. Instead, it is used for time-critical applications, bootable media/disks, Windows servers and embedded systems. On servers, it is often used in parallel with Windows Server 2003/2008.
DOS systems actually already supported many of the features of modern computers. The boot sequence has not changed much since then, they had a file system with folders and paths, a program loader and used memory management. They were only limited by hardware, so the UI was much simpler and did not use graphics like modern OSs. Things like editing documents (with the program WordPerfect) or browsing the internet (with Arachne) were already possible.
If you started using Windows in the Windows NT (New Technology) era, it can be an interesting experience to experiment with MS-DOS. You are only used to an OS with a GUI.
If you are a Linux user, you might have experience with command-line interfaces. On Windows 10, you might have used cmd.exe before, but not an OS that is only a command line.
It is therefore quite new to explore an OS that is only run with the DOS shell. You could get an MS-DOS disk for 10€ on eBay, but using FreeDOS is just as rewarding. Later, we will provide you with a short FreeDOS guide.
FreeDOS is an open-source operating system that is fully compatible with MS-DOS. It has the same command-line and the same commands. Additionally, it uses an interface similar to Microsoft’s DOS shell, which is a little more similar to modern OSs.
The shell is composed of menus and looks like a table with buttons and rows. FreeDOS is a very good choice to run legacy DOS software or games on a modern PC.
Unlike the discontinued MS-DOS, FreeDOS is optimised to function with modern PCs and runs flawlessly in virtual machines like VirtualBox. It is based upon GNU General Public License software, so it is free from license fees or royalties.
FreeDOS was started after Microsoft announced that they would end support for MS-DOS in 1994. A young student called Jim Hall was the main initiator and quickly found other programmers that liked the idea. FreeDOS is still compatible with MS-DOS for IBM-PC and maintained for years to come. Here is a site about its history.
FreeDOS comes in 2 editions. A limited one with kernel, command line and basic applications and the full one with a large selection of games, networking and text-editing software.
DOS will never die! DELL and HP still offer it on their PCs, like on the DELL n-series machines.
Non-commercial use also exists as FED-UP, XFDOS, which is a desktop OS for embedded devices like PDAs, and the operating system FUZOMA, which turns computers into educational tools for children.
This is a FreeDOS guide for the basics and we will use FreeDOS in a virtual machine. When using VirtualBox, hit Tab on the install screen, type
space (not a word, press the button) +
raw and hit Enter. Otherwise, FreeDOS will not start in VirtualBox, this is a known bug. You will have to go through the installation menu twice, because the first run formats the disk and the second run installs FreeDOS.
raw has to be used on both runs. (If you use VMWare or GNOME Boxes or if the issue has been fixed since this post, everything should work during the first installation, withor the
After the installation, you can enter commands, install additional software, get updates and play legacy games.
There are many pre-installed games and programs, here is the full list of FreeDOS software.
To run a game, for example, type
cd games to change the directory to “games”. Now list all contents of the folder with
cd to navigate to the game and then type the name of the EXE file, for example
qtetris.exe to play it. To go back to the
C:\ directory, use the command
cd \, which brings you back to the start.
Other software than games is found in
C:\FDOS\PACKAGES, there are text editors, emulators, utilities and much more.
This was just a simple introduction to FreeDOS, but there are great resources on the internet for exploring the OS. First, we would like to recommend the official installation guide that shows the step-by-step process for VirtualBox. The tutorial for the general installation (e.g. USB installs) will also be of help. It explains the options you can choose from in the installer’s menus in simple terms.
Another thing you should be aware of are the many useful changes and improvements from the original MS-DOS. These were made without affecting full binary compatibility!
Another guide is found on TrishTech (unofficial). Videos that lead you through the installation are “Installing FreeDOS 1.2 on GNOME Boxes” (official, from Jim Hall) and “Downloading and Installing FreeDOS 1.2 in VirtualBox” (unofficial). You can also read the Wikipedia article on FreeDOS.
Once you have completed the install, you can find more detailed documentation on commands and features on help.fdos.org (available in English and German). DOS command lists are also found on Wikipedia and FreeDOS.org.