joey
初级用户
积分 128
发帖 4
注册 2003-1-21
状态 离线
|
『楼 主』:
A Linux guy looks at FreeDOS(原文版本)
A Linux guy looks at FreeDOS
Friday February 15, 2002 - [ 05:03 PM GMT ]
Topic - Other OSes
- By Russell C. Pavlicek -
As someone who writes about Open Source, I spend quite a bit of time considering its future in the enterprise. I don't spend much time reflecting on how Open Source can improve on the technology of yesteryear. But there are people who do just that.
Consider MS-DOS. If you are my age (old enough that it takes too long to calculate how old you really are), you remember MS-DOS. And if you think about it too long and hard, you might begin to get the shakes remembering the machinations required to manage memory, load CDROM drivers, and get the graphics to display correctly.
DOS. It's one of those things that is best left buried in the crevices of time. Or so I thought.
Believe it or not, there are Open Source developers busily building a better DOS. Why? Because DOS is a long standing platform that is still used for some embedded applications. And embedded applications need a reliable, inexpensive base. With MS-DOS no longer an important product for Microsoft and its cost relatively significant to embedded developers, some folks believed there was a need for an Open Source DOS- compatible operating system.
FreeDOS was a project started in 1994 to counteract Microsoft's stated intentions to do away with MS-DOS and move everyone to Windows. It employs no Microsoft code and is designed to be a work-alike equivalent to MS-DOS. FreeDOS does not guarantee that it does everything the same way MS-DOS does, but it attempts to get it all done nonetheless. The specification for FreeDOS is derived from public documentation describing MS-DOS. It is still in beta test, but the system is quite usable. Currently, FreeDOS is at version Ripcord Beta 7, aka "SPEARS."
I resurrected an old 120 MHz 486/DX4 12MB machine in my basement and proceeded to get to work. Because my machine is equipped with a 270 MB disk drive, it has more than enough space to install the entire operating system and its source code (when was the last time a 270 MB disk was more than enough space for anything?). In fact, the total installation took only about 35 MB of disk space.
The installation of FreeDOS was simple enough, once I got my old hardware running. I downloaded the ISO image from Freedos.org's download page, burned the CD, and cut the boot floppy. The FreeDOS CD does include a CD driver, but my 4x IDE CDROM was so old that it wasn't recognized. So I had to use an old vendor-supplied CDROM driver I had lying around. The installation requires that you stay around during the process, because it constantly asks for verification about installing various elements of the system. It is not a large burden, though, because installation only takes a few minutes.
Booting up the system looks different than MS-DOS. First, there's a neat little boot manager that allows you to boot multiple operating systems. This is very useful in a development situation. Next, the boot-up messages are very different. This is not surprising, considering the various drivers identify themselves as they load.
Once the system is booted, you are likely to notice that some things are familiar, while others have changed slightly. The output of the "dir" command looks just like I remember from MS-DOS. The "edit" command looks spookily like the MS-DOS "edit" command. Most of the normal DOS commands look about the same under FreeDOS. Some commands (like "mem" use slightly different switches. Thankfully, the "/?" switch seems to work to get a list of switches for most commands. There is also a decent "help" command that documents a number of commands.
There are several factors indicating that this is a work in progress. The installation notes warn that the floppy access is slow -- and it is. It does work fine, however. The "scandisk" utility only seems to complete the first stage of work. The "format" command only seems to do a quick format, regardless of which switches you specify.
There are a number of optional packages as well. Veterans of the Linux/Unix/BSD crowd will be thrilled to learn that versions of "vi" and "emacs" are available. There are also languages like Bywater Basic (which I hadn't touched since finding it on some of the early Linux distributions) and an assembler.
Perhaps the most interesting add-on is Seal. Seal is a GUI that gives you a Windows-y interface, if you want one. The version I installed only contains a few applications, but it shows a good deal of potential.
After checking out the software, the next step was obvious: load up some serious DOS-based software and see what happens. My choice (perhaps suggested by the code name "SPEARS" was "Spear of Destiny," the relatively unsung sequel to the classic "Wolfenstein 3D". It took some research on the freedos.org Web site to find out how to free up enough low memory to run the game (this is one area where there are some syntax changes compared to MS-DOS), but once I got the memory in shape, the game played just fine. The 486 was quite chipper (when was the last time I called a 486 "chipper?" and the game played true to form.
But, in the true spirit of Open Source, FreeDOS is not content to be an imitation of the existing technology. In addition to impressive additions like Seal, mentioned earlier, there is an effort underway to create a true 32-bit kernel. Yes, Virginia, there is a DOS Santa Claus. FreeDOS32 might someday be a DOS that doesn't require endless gyrations to manage memory. Isn't it great what motivated technical people can try to do when there is no one in the way to say "no?"
So, while I certainly hope that DOS does not experience a resurgence as a general-purpose business desktop, I do hope that the FreeDOS project thrives. Open Source talks about freedom to use, but it also means freedom to choose. FreeDOS gives people another choice. If you don't want DOS, try something else. But if DOS might be the key for that special device you are building, check out FreeDOS. It is definitely worth a look.
|
|