Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!purdue!bu-cs!mirror!prism!rob From: rob@prism.TMC.COM Newsgroups: comp.sys.ibm.pc Subject: Re: Why is DOS limited to 640K? Message-ID: <206900131@prism> Date: 16 Oct 89 18:18:00 GMT References: <10253@cbnews.ATT.COM> Lines: 16 Nf-ID: #R:cbnews.ATT.COM:-1025300:prism:206900131:000:791 Nf-From: prism.TMC.COM!rob Oct 16 14:18:00 1989 There are basically two reasons for the 640K limitation. First, DOS was designed to run on the Intel 8088, which is limited to addressing 1Mb of memory. When running on newer Intel CPUs (80286, 386, etc.), DOS runs them in 8088 emulation (or 'real') mode, so that they are bound by the same 1Mb constraint. Due to the design of most PC's, only the first 640K of that 1Mb can be used by DOS. The remaining area is reserved for such things as BIOS code, video buffers, and so on. It's possible to make a larger memory available to DOS by remapping the memory used by the BIOS or the video adapter. But there are serious difficulties with this approach (for example, most PC programs make assumptions about the address of the video buffer), and relatively few PC vendors do this.