How (And Why) FreeDOS Keeps DOS Alive (computerworld.com.au)
FreeDOS was originally created in response to Microsoft's announcement that after Windows 95, DOS would no longer be developed as a standalone operating system, according to a new interview about how (and why) Jim Hall keeps FreeDOS alive. For its newest version, Hall originally imagined "what 'DOS' would be like in 2015 or 2016 if Microsoft hadn't stopped working on MS-DOS in favor of Windows" -- before he decided there's just no such thing as "modern DOS". An anonymous Slashdot reader writes:
No major changes are planned in the next version. "The next version of FreeDOS won't be multitasking, it won't be 32-bit, it won't run on ARM," Hall said. "FreeDOS is still intended for Intel and Intel-compatible computers. You should still be able to run FreeDOS on your old 486 or old Pentium PC to play classic DOS games, run legacy business programs, and support embedded development."
By day, Hall is the CIO for a county in Minnesota, and he's also a member of the board of directors for GNOME (and contributes to other open source projects) -- but he still remembers using DOS's built-in BASIC system to write simple computer programs. "Many of us older computer nerds probably used DOS very early, on our first home computer..." he tells ComputerWorld. Even without John Romero's new Doom level, "The popularity of DOS games and DOS shareware applications probably contributes in a big way to FreeDOS's continued success." I'd be curious how many Slashdot readers have some fond memories about downloading DOS shareware applications.
By day, Hall is the CIO for a county in Minnesota, and he's also a member of the board of directors for GNOME (and contributes to other open source projects) -- but he still remembers using DOS's built-in BASIC system to write simple computer programs. "Many of us older computer nerds probably used DOS very early, on our first home computer..." he tells ComputerWorld. Even without John Romero's new Doom level, "The popularity of DOS games and DOS shareware applications probably contributes in a big way to FreeDOS's continued success." I'd be curious how many Slashdot readers have some fond memories about downloading DOS shareware applications.
... before he decided there's just no such thing as "modern DOS" ...
Well, there was a "modern MS DOS", it was MS OS/2 1.x.
Single user and no security what-so-ever. IBM should have used the 68000 combined with a proper OS.
Single user single tasking was just fine for the day's hardware and the user needs. *nix would just slow the hardware down for no good reason, PCs weren't for remote time sharing use. Plus *nix, and its software "ecosystem" wasn't really a good match for a 16-bit architecture.
Yes, the 68K was a much nicer processor. The segmented memory models of the x86 were a major source of bugs. 32-bit registers would have been nice.
MS and IBM had a proper OS for the hardware of that era, it was 16-bit OS/2. The market said no thank you.
I remember some of the really early DOS games that were written to basically run correctly and be playable on (IIRC) a 4.77MHz 8086/8088.
Then I remember trying to play those same games on a (again, IIRC) 12MHz 80286 system. That lunar lander would just immediately plummet into the ground or crash into the side of a mountain, and try as I might - there was nothing I could do about it.
#DeleteChrome
Yes, GW-BASIC.
Have an old legacy proprietary DOS program that you need for your business? Then throw it into /dev/null, and hire some talented programmers to write a modern free open-source replacement for GNU/Linux, that will get published on github.
Why, that just sounds like an absolutely wonderful idea. Why would anyone insist keeping on using some old software that has been paid for many moons ago, and we all by now know exactly where and when it does and doesn't work because it's been doing the same task for 20 years? Why not instead pay thousands and thousands of dollars for someone to attempt to write a replacement for it, possibly reverse-engineering a proprietary and undocumented hardware interface (costing thousands and thousands of dollars more more in time) only to give it all away to the handful of other people on the planet who also use the same version of WHATEVER.EXE that I'm using?
Yep, what a smashing idea!
Specialist Mac support for creative pros, Melbourne
I still use FreeDOS regularly to run 20 year old research software. I use DOSEMU, which lets me edit files and move data around in Linux, and then read them into the DOS program without stopping and starting a virtual machine. So I have a DOSEMU terminal open, and my favorite text editor next to it, and maybe tail the log file in another terminal, all at the same time.
That old DOS software is still superior to any new point-and-click software. The config files leave a precise record of what parameters I set, and the logs leave a precise record of the result. It's fully auditable and reproducible, which is what science should be. And it will still run just as well as the day it was bought in another 20 years from now. The director tried to get us to buy some 'modern' software to do the same task. It 'only' cost $5000 and ran in MS Access. He was surprised when I refused the offer. Does it leave a written record of what I did? No. Are the results reproducible? No. Will it still run in 20 years time? Fuck no. Some things aren't broken yet, leave them alone.
Human Rights, Article 12: Freedom from Interference with Privacy, Family, Home and Correspondence
Yeah, the problem is that the Internet is dominated by the voices of the PC generation, who somehow never learned that there actually was a long history of computing before the PC and MS-DOS.
CP/M and other precursor OSes are really only of interest to historians and nostalgic geeks, but DOS actually has some real relevance to many people and projects even today, thanks to FreeDOS and the fact that we're still running x86-compatible machines... which is sort of astounding, actually.
Sure, there was a long history of computing before the PC and MS-DOS, but it was constrained to very few people for the most part - specialists, hobbyists, professionals, academics, and so on. But it was really the PC, running MS-DOS for the most part, when the vast majority of people were introduced to computers for the first time. So, it's not all that surprising that DOS is seen - rightly, I think - as the OS most used at the beginning of the personal computer revolution.
Even so, I don't think that many people mistake that for the beginning of computing in general. If nothing else, they saw computers on TV, with walls of reel-to-reel tapes and flashing lights.
Irony: Agile development has too much intertia to be abandoned now.
It has both no security and perfect security. Security isn't in the OS, but there are also few vulnerabilities. The applications own the security. So there's no reason DOS couldn't be used, it would just need appropriately secure applications to meet your requirements.
Learn to love Alaska
Or, you know, use FreeDOS to run it on modern hardware - which is kind-of the point of the article.
Specialist Mac support for creative pros, Melbourne
I am seizing Control of this article and asking Hey, Slashdot, if there were a modern DOS, what would it be like?
I know you're posting as an AC so probably won't get seen, but I'll reply anyway because it's an interesting question.
In short, you get Linux.
We discussed this in great depth in various places, and if you try to project a "modern" DOS to today, you end up with a 32-bit multitasking kernel that provides native networking and hardware abstraction. You lose binary compatibility; applications written for the newer "modern" DOS won't run on, say, MS-DOS 6. But that wouldn't be surprising; many programs written for MS-DOS 6 wouldn't run on MS-DOS 3, either. You need to provide some method of forward compatibility, of course. To run a "classic" DOS application on the "modern" DOS would require some kind of emulation environment.
And if you want that, run Linux. Because Linux is a 32-bit multitasking kernel that provides native networking and hardware abstraction. You don't have binary compatibility; applications written for Linux won't run on MS-DOS 6. To run "classic" DOS applications on Linux requires an emulation environment like DOSemu (which requires FreeDOS, by the way).
Once you break binary compatibility, a "modern" DOS isn't really DOS anymore. What's the point in a "modern" DOS if you can't run classic DOS programs on it? Because that's not DOS, it's something else.
The number of older CNC machines I have kept running because of Freedos is huge. I have made a shto-ton of cash on smaller machine shops where "professional" IT companies have told them that they cannot fix the control system for their CNC machines.
I come in at $95 an hour and make it work again, custom is elated and trash talks the "professional" company that said it was impossible, I get more calls to fix more from other companies they spread the world on... Rinse and Repeat.
This was 10 years ago when I was almost doing 2-3 CNC repair jobs a week. Now it's maybe one every 2 months, and I don't even do IT professionally anymore.
Do not look at laser with remaining good eye.
Or just run it in DOSBox on any OS. For most software that's the obvious thing to do.
This space intentionally left blank
Yeah, the problem is that the Internet is dominated by the voices of the PC generation, who somehow never learned that there actually was a long history of computing before the PC and MS-DOS.
CP/M and other precursor OSes are really only of interest to historians and nostalgic geeks, but DOS actually has some real relevance to many people and projects even today, thanks to FreeDOS and the fact that we're still running x86-compatible machines... which is sort of astounding, actually.
Sure, there was a long history of computing before the PC and MS-DOS, but it was constrained to very few people for the most part - specialists, hobbyists, professionals, academics, and so on. But it was really the PC, running MS-DOS for the most part, when the vast majority of people were introduced to computers for the first time. So, it's not all that surprising that DOS is seen - rightly, I think - as the OS most used at the beginning of the personal computer revolution.
Even so, I don't think that many people mistake that for the beginning of computing in general. If nothing else, they saw computers on TV, with walls of reel-to-reel tapes and flashing lights.
The interview was about DOS, so I didn't talk about the other stuff before DOS (and after).
Our first "computer" was a mainframe acoustic coupler dial-up terminal my mom brought home for a week, so she could do some work at home. I wasn't very excited about it at the time; it was all business software and I was like eight years old.
I seem to remember we had another computer in the house at one point. Not a TRS-80 but something along those lines.
In 1982, my family bought an Apple clone (Franklin ACE 1000) and that was where my brother and I taught ourselves to write programs in AppleBASIC. I was fascinated by computer interfaces that we saw on TV and in the movies, so I wrote programs that emulated those, including the thermonuclear war simulator from the Wargames(1983) movie.
Some time after that, we bought an IBM (I think the XT). And that's what got me started with MS-DOS.
We used MS-DOS at home (upgrading to the '286 and '386 and '486) until I went to college with the family's old '386. During my university days, I had an account on the VAX and the Unix systems. I discovered Linux, and switched to that on my own computer (dual-boot with MS-DOS). I mostly avoided Windows at home, although I did run Windows 3.11 and Windows 95 for a short time - mostly for games. At work, I ran Apollo AEGIS/DomainOS, HP-UX, AIX, SunOS/Solaris, and Linux (RedHat 3.0.3 and later). Work also put me on a Windows NT4 desktop, which I ran for a while until they let me run Linux at work full-time. In the office, I've run either Windows (whatever was current) or Linux. At home, I just run Linux (I'm running Fedora Linux now) and use DOSemu or QEMU to run FreeDOS.
Or just run it in DOSBox on any OS. For most software that's the obvious thing to do.
Actually, it's better to run legacy business applications on an actual DOS system like FreeDOS. DOSBox is meant only for games. They don't have great compatibility with business software.
FreeDOS runs very well in PC emulators and virtual machines like QEMU, VirtualPC, VMWare, VirtualBox, and others. At home, I run QEMU and DOSemu to boot FreeDOS. (When I'm developing, I use DOSemu so I can share files easily between Linux and FreeDOS. When I want to test FreeDOS in a more traditional virtual machine, I run QEMU.) It runs great!
The biggest problem I have seen with old programs is data portability. Even several revisions out on the same programs can make it costly. In a lot of situations , more costly than keeping obsolete hardware running.
I was involved in a project to resurrect an old NetWare 3.something system for an accounting program used in a division of a company that was purchased originally as a stand alone company. It was determined years ago that it would be too costly to port the data because it would all need to be input by hand requiring several people and about a year to do so it was never updated to a modern system.
Even after getting it running again, it was still in use in parallel with a dormant version of the company wide system for several years while they had three people pulling and inputting data and validating it before going live.
Once you get out of the update cycle with proprietary software, it can sometimes even become costly to move up. But to switch to another system altogether can be really costly.
but last time I booted it up, it upgraded itself to Windows 10
I don't disagree with most of what's posted in this subthread, but I can tell you that DOSBox runs many things well. I've used it to keep Lotus Agenda alive, and to run WordStar, etc., on my Linux systems.
It does lack printing, which is an issue, but there are workarounds that can be automated.
Sure, if you want everything to work pretty much as-is, use FreeDOS[1]. But DOSBox does much more than gaming.
[1] I've found some things don't work on FreeDOS, usually those things that rely heavily on internals of memory or hardware management. For instance the task switcher Back & Forth doesn't work.