To: opendos AT delorie DOT com X-Comment-To: "Patrick Moran" References: <004c01c05a76$4732db90$c5881004 AT dbcooper> <2 DOT 07b7 DOT 12T7Y DOT G4UHO7 AT belous DOT munic DOT msk DOT su> <004701c05b86$1da8c940$fc881004 AT dbcooper> Message-Id: <2.07b7.19D8Q.G4XQJB@belous.munic.msk.su> From: "Arkady V.Belousov" Date: Sat, 2 Dec 2000 13:01:59 +0300 (MSK) Organization: Locus X-Mailer: dMail [Demos Mail for DOS v2.07b7] Subject: Re: BASIC & EMS (was: Optimizing CONFIG.SYS...) Lines: 120 MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8bit Reply-To: opendos AT delorie DOT com X-Comment-To: Patrick Moran Hi! 1-δΕΛ-2000 03:57 pmoran22 AT yahoo DOT com (Patrick Moran) wrote to : PM> Okay, what the hello is XMS meory? XMS is not a memory, but a specification, API to access extended memory for "real mode" programs (see below). PM> Is it ENTEDED meory or just another stupid swap em out memory? XMS is not a memory, this is a specification how to exchange data between conventional memory (for direct access) and extended memory (to store data there). PM> Extended memory does not swapping you are in PM> memory above 1MB when you use ectended memory and you are in protected mode PM> when using extended memory. Please, don't mix extended memory itself and XMS API to access this memory. When program work in "native" 386+ mode (so called "protected mode") then it have full access to all physical/virtual memory and there is no requirements to additional explicit APIs. But me talk not about "32bit" programs (286 CPU is not 32-bit but this not change the idea), we compare two specification to access additional memory (XMS and EMS) in "16bit" programs which works in "real" mode (or in "V86" mode) and have "native" access only to 1M of memory. This thread started when you prosecute EMS as very bad specification in compare with XMS. I try to show you: EMS have _only one_ contra - it cuts frame for working from 1M addressing. This have nothing common with Windows, Task manager, etc which are protected mode apps and don't require XMS and EMS to access extended memory for itself. PM> In Task manager, you are in protected mode and PM> you use EXTENDED memory. There is no swapping of memory, each task is PM> residing in a different area of memeory above 1MB and all you do when you PM> swap windows or apps is to simply jump to that area of memory. Everything is PM> running at the same time, it is multitasking, not the crap Gates came out PM> with that merely swaps things around. Check out Linux sometime and see what PM> is really, really TRUE MULITASKING. This is _not_ "true" multitasking. True multitasking arise only on multi-CPU systems, on one CPU you can have only time sharing system. And which your hatting of "MS crap" have relation to XMS/EMS "opposition"? PM> DV is not a true multi-tasker, it shares CPU time between applications PM> loaded, just like Gates' stupid WINDOZE does. Wrong. Yes, Win 3.x is an "preemtive multasking" (i.e. cooperative multitasking) but Win95 is an... hm, forget the word which describes displaced multitasking... for Win95 native apps, also as DV, Linux and... NT. PM> When you use EXTENDED memory PM> in protected mode, you actually run several processes simutaneously. In When we use extended memory in protected mode, then this _not_ mean "several process simultaneous running". PM> virtual 86 mode you actually have each process running jst as though each PM> one had it's own 8086 computer. It would be the same as running five tasks PM> on five IBM XTs. or PCs. PM> So what is XMS. And what does Task manager use. Wrong - see above. PM> I believe it uses DPMS which is DOS Protected Mode Services. That is PM> what I use for multi-tasking in DOS. PM> That is EXTENDED memory in PROTECTED MODE. I believe it is virtual 86 PM> protected mode that Task manager uses. There is no freeking memory swapping PM> with Task manager. PM> Desqview, on the other hand, uses stupid time consumming memory swapping PM> through a tiny 64K window and uses stupid EMS to do it. Each process running PM> is swapped into and out of conventional memory. If this so then I think there was the real reasons (compatability, for example) to do this. PM> Task Manager DOES NOT do this. PM> Don't get me wrong, I know that peole have an extremely hard time PM> understanding the various memory areas and memory managers used and they can PM> sit down with a comprehensive book about it and read the book half a dozen PM> times and still not know what is going on with memory in the X86 line of PM> CPUs. I never will figure out why IBM chose the X86 rather than the MC68000 PM> family or the Z8000 family or the MOS65000 family. They chose the worst PM> possible CPU when they designed the PC after already having failed twice to PM> enter the PC market. As you can clearly see IBM has a GREAT track record!!!! I also not liked the Intel architecture (after DEC's PDP this look freaky), but this have nothing with XMS/EMS opposition. PM> I do not think we are talking about the same thing here. There is absolutely PM> no swapping of memory with Task Manager. (except of course maybe some video PM> memory on your video card and other such things.) PM> But I would like to know just what XMS memory is. I thought it was extended PM> memory, period. EXTENDED, PERIOD. THIS IS NOT MEMORY. PERIOD. Both XMS and EMS are specification to access additional memory. Simply on 386+ for EMS as additional used extended memory. PM> If it is not EXTENDED memory then we are PM> deffinitely not talking about the same thing. I am talking about DPMS- DOS PM> PROTECTED MEMORY SERVICE, which is used with Task Manager. There is no PM> stupid memory swapping involved. Again: protected mode programs don't require _any_ additional API for access extended memory _for itself_. PM> Try Linux sometime and you will not even mention things like EMS, XMS, DPMS, PM> DPMI,VCPI and a ton of other crap. Because Linux not based on real mode apps/system (i.e. DOS).