>My name is David Noack and I'm a computer correspondent with Investor's >Business Daily, a national business newspaper. I'm doing this story for a >daily feature called "Computers Made Plain" which is pretty much like it >sounds. The stories seek to give computer users an overview of a particular >computer topic or issue, in plain English as much as possible. > >I'm doing a story on alternative operating systems, what they are, how they >work, how are they different from Windows, Mac, Unix and its versions. > >I would like to get some examples of different operating systems that while >maybe borrowing kernel structure from the main three flavors of OS, are >somehow unique and special in their own way, maybe created to work on a >distributed environment, rather than as a stand alone OS. > >So, if any is aware of or is working on some of these OS projects, tell me >what you're working on. Also, if there are any users of these OS's tell me >about your experience in using them. In case you're not an OS developer, >maybe you can just give me some general thoughts about alternative OS's and >see what questions below you can answer. I shall do the best I can. Glad to help! Feel free to email back with any further questions you may have. >Here are some questions for your consideration. Some of the questions may >overlap to an extent, since I'm trying to hit both developers and users of >these systems. > >Here are the questions: > >1. Give me some history/background about your OS. How you come about giving >the OS its name. In 1994, I was a physics student at the University of Wisconsin-River Falls. Most of my work for school had been done using DOS - writing programs, dialing up to the university computer, network, analysing lab data, etc. I really loved DOS; I felt I could do anything with it. But that year, there was an announcement that Microsoft would stop support for DOS, that a new version of Windows was going to be released that completely removed DOS from the picture. Of course, this was Windows 95, and it still did have DOS, but at that time we all had the vision that Microsoft was trying to kill our favorite operating system. I use the word "we" because I was a member of several USENET news groups that discussed DOS. Everyone was pretty shocked. We didn't want to be forced to use Windows, which completely removes the command line. In DOS, everything is done on the command line, and a true command line "guru" can do amazing things there. In Windows, you are stuck with the mouse, and if the menus don't let you do something, it pretty much can't be done. So things were looking pretty bleak. We were all very upset about Microsoft's decision to ditch the DOS platform. Then, I saw a news posting on the DOS groups asking "hey, why doesn't someone write their own free version of DOS?" Remember, this was about three years after Linus Torvalds announced his work on the Linux kernel, and by 1993 Linux had shown that free software can achieve incredible results. So in 1994, the suggestion that we could write our own free version of DOS, and give it away with the source code so others could work with it and improve it, really didn't sound all that far-fetched. Unfortunately, no one seemed to pick up the ball. The idea sort of sat there, waiting. I didn't have much experience in writing C or Assembly programs (most of my analytical work in physics was limited to FORTRAN) but I had written some C programs. So I sat down one weekend and hacked out code for a bunch of DOS file utilities. The following week, I posted what I had done to the DOS newsgroups, and announced that I intended to form a group on the Internet to write our own free version of DOS. The name was obvious: we simply called it "Free-DOS". Actually, that's not entirely accurate. We initially called it "PD-DOS", since I thought it would be best if we released code in the public domain, hence "PD". However, we quickly realized that not everyone was releasing code in the public domain, and we had several different free licenses. So we quickly changed the name to "Free-DOS" to indicate that we were all free. And soon after that, I switched all my code to use the GNU GPL. But anyway... To cement my ideas, I created a Free-DOS Manifesto. I have long since lost the original file (I probably didn't think it was worth holding on to the original) but I have reproduced it as best I can at http://www.freedos.org/fd-doc/manifesto/manifesto1.html and a more recent one from later that year is at http://www.freedos.org/fd-doc/manifesto/manifesto2.html It immediately became a popular idea. Within a few weeks, I had several coders from various parts who contacted me, wanted to take on this or that part of the new Free-DOS. Weeks after that, the number had doubled. Within months, I was contacted by Pat Villani, who had already written a functional DOS kernel called DOS/NT, and who was willing to release it under the GNU GPL for us to use! At about that time, Tim Norman also started work on his version of the Free-DOS command.com, which is the heart of the DOS command line interface. I think the fact that, early on, we had access to a working DOS kernel and command.com really helped get the Free-DOS project in motion. Two years later, Free-DOS had become so popular, that R+D Books agreed to publish a book about Pat Villani's DOS kernel, entitled "The FreeDOS Kernel". The name change has become a bit of a FreeDOS myth: the story says that Pat's editor thought the dash wouldn't look right on a book cover, so he dropped it! And we've been called "FreeDOS" ever since! >2. Is the OS available for standalone Intel machines or does it run over a >network over some other configuration. What kind of machines/systems will >the OS run on? FreeDOS will run on pretty much any Intel or Intel-clone PC. This includes even the XT and AT. When we started the FreeDOS Project back in 1994, I had a '386 desktop system in my dorm room and an XT laptop that I would carry around with me to do work "on the go". My FreeDOS programs were, for the most part, written and debugged on the XT, with some work carrying over to the '386 when I had time to sit at my desk by myself. However, not everyone runs FreeDOS on a standalone PC. Many people use FreeDOS from within a DOS emulator, such as Linux DOSEmu, or VMWare, or Plex86, or MacBochs. The Linux DOSEmu project has chosen FreeDOS as their official DOS, since DOSEmu can't do much for you unless you have a copy of DOS to boot into! These days, many Linux distributions come with a "disk image" that you can install onto your Linux system and immediately be able to boot DOSEmu and run FreeDOS. However, these seem to be getting old, and it is time that these images were updated. The disk image included in my copy of Red Hat Linux 6.1 (current release is RHL 6.2) uses FreeDOS kernel build 1937; we recently released kernel build 2020. > >3. Why the need to develop another OS? What is lacking in the current crop >of OS's that a new OS was needed. Would it be correct to say that these are >niche or specialty OS's that would probably not be used by the masses >anyway? Would most computer users use these OS's or they are geared to >technical computer users? Well, for us, the need to create FreeDOS was pretty obvious: Microsoft was going to drop support for DOS, but we all still used and loved the DOS platform. If Microsoft wasn't going to continue with DOS, we needed to create and support our own DOS platform. A lot of "general" users are using FreeDOS these days. Often, I hear about someone who has installed FreeDOS on an old PC they brought home from work, or on a PC that a friend gave to them. These systems are often too slow or don't have enough memory to run Windows or even Linux, but they will run FreeDOS just fine. I believe a good number of these systems are used to access the Internet (using DOSPPP to dial the Internet provider) or as a system to write letters to friends/family with a DOS-based word processor. >4. What are the advantages/disadvantages to developing a new OS? The idea of DOS is not new - in order to meet our original goals of hanging on to DOS so we could continue to use DOS apps that we have grown accustomed to, we realized that we needed to emulate the MS-DOS "API" as closely as possible. We didn't have a lot of freedom to say, "That was a dumb thing for MS-DOS to do ... let's completely drop that and go this way". Sometimes we could say that - if we were dealing with a DOS utility or some obscure part of the operating system kernel. But for the "core" part of the FreeDOS kernel, we had to stick to the way Microsoft did it. Fortunately, Ralph Brown has created a huge list of what functions are supported by the different versions of MS-DOS. This is the ubiquitous "Ralph Brown's Interrupt List" (http://www.cs.cmu.edu/afs/cs.cmu.edu/user/ralf/pub/WWW/files.html). So we had a very detailed map of what needed to be supported, and how to get there. >5. How does a developer go about getting the OS installed on systems? What >kind of promotion or marketing is done, if any? We don't do much for marketing - we have become popular on our own merit and through "word of mouth". FreeDOS is actually quite easy to install. The most difficult part for most users is figuring out how to create a bootable install floppy so that they can run the Install program. There are instructions for how to do this on our web site, but not everyone is as good at reading the instructions. :) But if you run some variant of Linux, chances are that your distributor has provided an installable package that includes a full, bootable copy of FreeDOS with their distribution of Linux DOSEmu. So all you need to do under these circumstances is install the package, and then run DOSEmu. >6. I would image that most new OS are open source, where more people can >collaborate on its development, rather than anything Windows or Mac-related. Definitely yes! I would point your readers to "The Cathedral and the Bazaar" (http://www.tuxedo.org/~esr/writings/cathedral-bazaar/) to read about how open source can bring the programming expertise of many developers to bear on one project. >7. What is the biggest obstacle/headache in creating a new OS? Is there any >money to made doing this or is more a labor of love or a hobby? One can make money at free software, but that's not why I started the FreeDOS Project. We just did it because we wanted to have our own, free version of DOS with source code. For me, it's a labor of love. When I'm having a bad day, it's just a hobby. :) The biggest obstacle is getting programmers to become interested in you. Without enough programming talent behind any open source project, the project will die due to lack of interest. FreeDOS was fortunate in that we were quickly able to drum up support to start work on it. >8. With any new OS, what kinds of applications run on it and is that part of >the problem with a new OS, no apps, so people don't use it, the chicken and >the egg problem. FreeDOS was able to dodge this by supporting the original DOS interrupts, so that very early in the project most DOS applications were supported. As time went on, we supported more interrupts and our kernel acted (to the program running on it, at least) began to behave more like MS-DOS. >9. Please feel free to add any additional comments about OS's that I >probably missed in my questioning. I think we got it all. :) >Also, include a little info about yourself, name, where you live >(state/city) will do, how long you've been developing OS projects, and maybe >a generic job description or business name. > I've been using DOS since I was small - my family bought one of the IBM XT home computers, the one with dual floppy drives and no hard disk. That must have been DOS 1.1. I have been working on open source projects since late 1993, when I wanted to contribute back to the world of free software. My first contribution in '93 was to provide a few patches to GNU Emacs so that it would run on an Apollo Aegis/UNIX system. I live in St. Paul, Minnesota, with my wife (Sara) and four cats (Midnight, Murphy, Vita, and Linus.) At work, I am Web Production Manager for the University of Minnesota.