Skip to content

Both.org

News, Opinion, Tutorials, and Community for Linux Users and SysAdmins

Primary Menu
  • About Us
  • Computers 101
    • Hardware 101
    • Operating Systems 101
  • Linux
    • Why I use Linux
    • The real reason we use Linux
  • My Linux Books
    • systemd for Linux SysAdmins
    • Using and Administering Linux – Zero to SysAdmin: 2nd Edition
    • The Linux Philosophy for SysAdmins
    • Linux for Small Business Owners
    • Errata
      • Errata for The Linux Philosophy for SysAdmins
      • Errata for Using and Administering Linux — 1st Edition
      • Errata for Using and Administering Linux — 2nd Edition
  • Open Source Resources
    • What is Open Source?
    • What is Linux?
    • What is Open Source Software?
    • The Open Source Way
  • Write for us
    • Submission and Style guide
    • Advertising statement
  • Downloads
  • Home
  • Looking ahead to 30 years of FreeDOS
  • Community
  • Open Source

Looking ahead to 30 years of FreeDOS

Learn about the origins of this classic open source operating system.
Jim Hall February 10, 2024 8 minutes read
code_computer_development_programming
8

FreeDOS is an open source implementation of the DOS operating system. As an open source project, FreeDOS is one of the oldest out there. Started in 1994, FreeDOS will turn 30 years old on June 29, 2024. And as we look ahead to a milestone anniversary, I wanted to take a look back and where things started.

Early personal computers

But first, it’s important to remember what computers were like at the time. I grew up in an era when the “personal computer” was new. We had an Apple II computer at my elementary school, and my brother and I really enjoyed learning how to use it. We had a group of friends who also liked learning about computers, so we all supported each other by talking about the Apple and sharing what we learned about it.

The Apple II computers (and every “personal computer” at that time) came with a built-in programming language called BASIC (“Beginner’s All-purpose Symbolic Instruction code”) that made it really easy to write your own programs. BASIC was not a very complicated language, but you could make some neat programs with it.

My family bought an Apple II computer (actually a clone of the Apple II+ called the Franklin ACE 1000) so my brother and I could keep learning about computers at home. I wrote a lot of programs for myself, mostly games or math puzzles that I thought were fun to play.

The first IBM PC

IBM released the first IBM PC (“Personal Computer”) in 1981, and not long after that, my family replaced our Franklin ACE with an IBM PC. The PC also came with BASIC, but it also had a much more powerful command line operating system called “DOS” that could do a lot more than the Apple did. And over time, lots of companies and lots of people made programs for DOS.

I used DOS throughout the 1980s and into the 1990s. I taught myself how to write programs for DOS in a new programming language called C. I liked to make new programs that would make the DOS command line easier to use, and even replace (and enhance) certain built-in DOS commands. For example, DOS has a built-in command called TYPE that displays the contents of a text file. I made my own version of TYPE that would also display the contents in all-lowercase, all-uppercase, and do a few other things that I needed TYPE to do.

Apple had an all-graphical interface since 1984 when they released the original Macintosh computer. In response, Microsoft also made a graphical interface for the PC called Windows. But the first version of Windows wasn’t very good. Even Windows 2 wasn’t that great. Windows 3 was out by the time I went to university in 1990, but I thought Windows 3 was just ugly and slow. A poorly-behaved Windows application could crash all of Windows, for example. But my DOS programs were solid. And I could do my work faster in DOS than I could on Windows, so I kept using DOS.

Unix was pretty neat too

I discovered Unix in the campus computer lab at university. I wasn’t a computer science student, but I had a Unix account anyway because of some of the things we did in my physics major. And I thought Unix was really cool. It had a command line interface like DOS, but it could do more (like run multiple programs at the same time, called multitasking) and it had a graphical user interface that – while not as pretty as Windows – did about the same thing as Windows. So I saw Unix as being a great “next step” for me. I asked around online, and found a then-new project called Linux that was a free (open source) version of the Unix operating system, but I could run it on my computer at home.

In 1993, Linux didn’t have any desktop applications, so I still “dual-booted” into DOS to run my word processor to write papers for my classes, and to run my spreadsheet program to analyze data for my physics labs. I liked Linux, but I still “lived” in DOS.

Starting FreeDOS

In early 1994, I noticed articles in computer magazines that said Microsoft was going to stop making DOS. They said the next version of Windows wouldn’t need DOS to run. Windows versions 1, 2, and 3 all ran “on top” of DOS. But the next version of Windows would run on its own. Effectively, this meant that DOS was on the way out.

I still used DOS, and I didn’t want to stop using DOS. And I looked at what Linux had achieved: people from all over the world shared source code with each other to make this full operating system that worked just like Unix. And I thought “If they can do that with Linux, surely we can do the same thing with DOS.”

I asked around on a discussion board (called Usenet) if anyone had made an “open source” DOS, and people said “No, but that’s a good idea .. and you should do it.” So that’s why I announced on June 29, 1994, that I was starting a new project to make an open source version of DOS that would work just like regular DOS.

People liked that idea – and not long after that, a few people reached out to me with programs they had made that reproduced DOS programs. And I added the programs that I had already written to enhance my own DOS command line. So in a few weeks, we had collected a bunch of programs that reproduced much of what regular DOS could do.

How FreeDOS grew

A student, Tim Norman, at another university started writing a command shell that could replace the DOS COMMAND.COM shell. The command shell is where you type commands to do things. That new command shell became the FreeDOS FreeCOM program, our version of COMMAND.COM.

And I think it was a year or so later that a developer named Pat Villani emailed me to say that he had written a DOS-like kernel, and he was willing to make it the FreeDOS kernel. The kernel is the core of the operating system that actually runs the programs and does a few other important things, so having an open source kernel that could replace the DOS kernel was very important. Pat’s kernel was originally called “DOS-C” (because he wrote it in the C programming language) and that’s what became the FreeDOS Kernel.

Over time, a lot of cool and smart people contributed other things to FreeDOS. Tom Ehlert wrote a lot of FreeDOS programs, and also improved the kernel. John Price and Bart Oldeman and others also worked on the kernel for a while. Steffen Kaiser also wrote several command line programs and contributed several programming libraries that made it easier to write new programs. A “library” is a collection of routines that you can use to do things in a program.

There have been a lot of people who have contributed to FreeDOS since then. FreeDOS is what it is because of a ton of people, like Pat Villani who wrote our first kernel and the long list of people who maintained the kernel and improved it, including Bart Oldeman, Tom Ehlert, John Price, Jeremy Davis. And people like Tim Norman, M. Hannibal Toal, Eric Auer, Aitor Santamaria, Tom, Paul Vojta, Joe Cosentino, Shaun, Till, Martin, Arkady, Bernd, Charles, Eduardo, Rene, Dave, Mike, Imre, Louis, Fritz, Jim Tabor, Jason, Jerome Shidel, Ron, Lucho, ror4, Steffen, Wilhelm, Rugxulo, Mateusz Viste, Gregory Pietsch, Ralf Quint, and the many many others who created programs, fixed bugs, wrote documentation, translated messages, and did a ton of other stuff to keep FreeDOS moving forward.

30 years of FreeDOS

These days, I’m really excited for all the different ways that people are using FreeDOS. For example, there’s a community of enthusiasts who restore classic computers like the IBM PC 5150, PC XT, and PC AT, and put FreeDOS on them. These are great systems that can’t run something like Linux, so running FreeDOS is a great way to make these classic computers useful again.

I like that FreeDOS (like any DOS) is so easy to understand. There aren’t a lot of moving parts in DOS: the computer boots and starts the kernel, the kernel reads FDCONFIG.SYS (or CONFIG.SYS) which defines the shell to run (usually COMMAND.COM), and COMMAND.COM runs a batch file (usually AUTOEXEC.BAT or FDAUTO.BAT) to set up the environment. And then DOS presents you with a friendly command prompt where you can run commands and start programs.

I’m excited to see FreeDOS turn 30 years old this year. There’s a lot to see and learn about FreeDOS. We use email lists to discuss FreeDOS. We have two email lists: freedos-user for questions about running FreeDOS, and freedos-devel for questions about creating new DOS programs. Both are friendly communities, and we welcome you to join us in the conversation.

You can learn more about FreeDOS at The FreeDOS Project website.

Tags: FreeDOS open source

Post navigation

Previous: Explore the cosmos from your armchair
Next: Drupal 10 is worth a fresh look

Related Stories

Photo by Scott Rodgerson on Unsplash
  • Cloud
  • Digital sovereignty
  • Linux
  • Open Source
  • Security

Digital sovereignty

Seth Kenlon May 15, 2026
browser_web_internet_website
  • Open Source
  • Web Browser

Brave: The Open-Source Alternative You Should Be Using

Don Watkins April 13, 2026
A Black femail working on a computer in an office.
  • Linux
  • Moving to Linux
  • Open Source
  • Opinion

Why choose Linux?

Don Watkins April 10, 2026

Random Quote

I do not fear computers. I fear the lack of them.

— Isaac Asimov

Why I’ve Never Used Windows

On February 12 I gave a presentation at the Triangle Linux Users Group (TriLUG) about why I use Linux and why I’ve never used Windows.

Here’s the link to the video: https://www.youtube.com/live/uCK_haOXPFM 

Why there’s no such thing as AI

Last October at All Things Open (ATO) I was interviewed by Jason Hibbits of We Love Open Source. It’s posted in the article “Why today’s AI isn’t intelligent (yet)“.

Technically We Write — Our Partner Site

Our partner site, Technically We Write, has published a number of articles from several contributors to Both.org. Check them out.

Technically We Write is a community of technical writers, technical editors, copyeditors, web content writers, and all other roles in technical communication.

Subscribe to Both.org

To comment on articles, you must have an account.

Send your desired user ID, first and last name, and an email address for login (this must be the same email address used to register) to subscribe@both.org with “Subscribe” as the subject line.

You’ll receive a confirmation of your subscription with your initial password as soon as we are able to process it.

Administration

  • Log in
  • Entries feed
  • Comments feed
  • WordPress.org

License and AI Statements

Both.org aims to publish everything under a Creative Commons Attribution ShareAlike license. Some items may be published under a different license. You are responsible to verify permissions before reusing content from this website.

The opinions expressed are those of the individual authors, not Both.org.

You may not use this content to train AI.

 

Advertising Statement

Both.org does not sell advertising on this website.


Advertising may keep most websites running—but at Both.org, we’re committed to keeping our corner of the web ad-free. Both.org does not sell advertising on the website. Nor do we offer sponsored articles at this time. We’ll update this page if our position on sponsorships changes.

We want to be open about how the website is funded. Both.org is supported entirely by David Both and a few other dedicated individuals.

 

 

Copyright © All rights reserved. | MoreNews by AF themes.