Hi, On Fri, May 4, 2012 at 8:17 AM, Michael B. Brutman <mbbrut...@brutman.com> wrote: > > Analogies are a slippery slope. > > By many definitions, DOS is not even an operating system. It is a > device driver, file system, and rudimentary memory manager that stays > resident while a user program is running. When the user program stops a > simple command shell replaces it.
No reason that more things can't be improved. As it is, most things are add-ons to that via TSRs or shell improvements or drivers or 3rd party tools (e.g. memory managers). If you unified more things inside the kernel itself (even if keeping them as loadable modules), it would be more flexible, IMO. > BSD comes from something that is more substantial in nature - Unix. > Linux might not be Unix, but it was heavily influenced by it and has all > of the same major design points and attributes. Wasn't BSD a spinoff of the original AT&T UNIX (tm)? POSIX was a compromise, and VAX was where 32-bit and virtual memory became popular. 64-bit came later with various things, including DEC Alpha. In other words, original UNIX (tm) didn't have all the GUIs, multi-threading, 64-bit, job control, networking, tons of memory, etc. that we take for granted today. Heck, the PDP was 16-bit! > The bad analogy to use here would be that Unix and the variants endure > because the foundation of the building was good. You see anybody still writing K&R C? Using the ed editor? Even plain vi has been replaced by huge additions like VIM or VILE. GNU prefers Emacs, which alone is bigger than the first UNIX (tm). Nobody uses a.out or a.outb anymore, only ELF (or barely, COFF). The original Bourne shell is not supported by most as it's not POSIX compliant (as most assume Korn or Bash extensions). So a lot has changed. > In comparison, DOS is > the hut out in the woods - primitive and good at the time when you > needed shelter, but it was never designed to compete with full operating > systems that do multitasking, demand paging for memory management, > decent network stack hooks, device driver/module support, etc. The original PCs only had like 64k RAM! I know you of all people know that. Try porting Linux to that. Even ELKS can barely do anything useful in 640k. Compilers (and authors) just aren't dedicated enough to waste hours trying to cram things into small amounts of RAM. So the increase continues. And when your kernel demands 128 MB or more just to boot up, you have no reason to use uber lean and mean things like DOS (though you can barely use anything else either these days, sheesh). It was the 286 that had hardware support for task switching, not the 8088 (though a limited 8086 Desqview version existed, right?). You did have device drivers for DOS, but they too were limited in RAM and features depending on which hardware extensions you had. Demand paging? Did even the 286 have an MMU? Can't remember, doubt it. That's why EMM386 exists at all. Face it, the 386 is a monster machine. It doesn't make everything else crap, but it does support a lot of things. But so-called "386" OSes these days ... ugh. Even 386BSD could run in a handful of RAM originally. Linux too used to run in 2 MB. Well not anymore, sadly. GCC alone probably won't work anymore with less than 256 MB without heavy paging. And BTW, networking ... what networking? In 1981? At best you could maybe dial up a BBS, heh. Those were fun (during mid '90s for me), and they were well-supported for DOS, but that was a far cry from what we have today (as you know). You can't blame DOS for not supporting what didn't exist. > Windows is not a relative of DOS. Even something primitive like Win 31 > or Win 95 basically looks at DOS like a boot loader. They are not in > the same league. Both of those 100% relied on DOS to do various calls behind the scenes. They would not run without DOS. It's already been proven that Win 3.1 could run atop DR-DOS (and even run Win95 GUI with a small, proprietary hack). There is more stuff going on, yes, but it's still heavily dependent on DOS proper. Was it perfect? No, but it worked. Win 3.0 was originally going to be a DPMI client, I think, but that idea was later abandoned. However, internally their Win16 apps (not counting the very few that were 8086-based, which was soon abandoned) used DPMI themselves! BTW, the bugs in NT's DPMI were never fixed by MS (e.g. for Quake 1) because they didn't intend NT (at that time) for home users or games. Of course that target (but without bugfix) was changed later with Win2000 (added FAT32, LFNs) because they decided to abandon Win9x. When WinXP came out for home users, they officially declared DOS dead (as it didn't use DOS at all at bootup, only a patched v5 version for its buggy old NTVDM). > Here is the crux of my argument - if you need modern hardware support > and modern features, you probably should use something that is current > and maintained. Everything fades, so you can't rely on anybody, sadly. DEC was long ago bought out by Compaq (which got bought by HP), for instance. Novell bought and sold Digital Research, which spun off a bunch of times. Even your beloved IBM no longer messes with home computers directly as it spunoff to Lenovo. It's quite a brittle industry. > It is not feasible to "grow" DOS to do all of these > other things; It's already been done, more or less. > what would be left would be something that barely runs any > DOS applications and doesn't do all of the new stuff well either. There > is not enough demand or qualified people with free time. Probably not enough demand, no, but qualified people always find a way to extend Linux. Nothing is stopping those same people (or similar) from improving things. If I said, "Linux will never support xyz", I'd be short-sighted and probably proven wrong. But if I say the same about FreeDOS, somehow I'm being fair? Why are people so stubborn? > Want to keep DOS relevant? We need applications ... today. Yes, but our bigger problem is the entire architecture is dying. Not x86, that's thriving big time, but just 16-bit in general. They want to replace the BIOS with UEFI, and who knows how long before cpus no longer support legacy mode. VT-X is better than nothing, I guess, but that isn't universal yet. > (Different topic: In an earlier note you misinterpreted me. I said you > could re-implement DOS with the int 21 interface easily, and some well > behaved code might even run. But if you don't have the direct access to > all of the hardware, TSRs, device drivers, segmented memory tricks, > etc., it's not really DOS anymore - it would run so few applications.) VMs are too slow and buggy. Maybe we should focus on improving those (VirtualBox, Bochs, QEMU, DOSBox). But I doubt that will be easy. Long story short: you think the answer to everything is "more apps"?? DOS already has 30 years of apps, and it didn't phase MS (of all people) one bit. Win64 still doesn't support it, they didn't even try (and yes, they do know how). DOSEMU isn't in most distros at all. DOSBox is only treated as a lark for rare games. So much good stuff seems to be thrown out the window. :-( Could we use more apps? Sure. Would I be willing to help? Of course, in whatever little way I can. But will it solve anything long-term? No. The kernel isn't the problem (though it can always be improved), it's the ecosystem, the world, developers, everything has changed so much. Everybody has their own (incompatible) solutions to everything, which sadly often doesn't involve FreeDOS at all, not even when appropriate. Saying we can't fix or improve anything is very pessimistic. No, I don't see any technical reason to drop compatibility, and I don't want anybody to do so, but I don't necessarily think we should rest on our laurels. ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Freedos-devel mailing list Freedos-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-devel