Message-Id: <199911080728.JAA15875@ankara.Foo.COM> From: "S. M. Halloran" Organization: User RFC 822- and 1123-compliant To: djgpp AT delorie DOT com Date: Mon, 8 Nov 1999 09:33:25 +0200 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Subject: Re: memory CC: djgpp AT delorie DOT com References: <38235938 DOT 2C67 AT radar DOT mcgill DOT ca> In-reply-to: X-mailer: Pegasus Mail for Win32 (v3.12) Reply-To: djgpp AT delorie DOT com On 7 Nov 99, Eli Zaretskii was found to have commented thusly: > On Fri, 5 Nov 1999, Frederic Cazenave wrote: > > > What is the difference between dos memory and > > linear memory? > > DOS memory is the part of memory below the 1MB mark. It is also known > as the ``conventional memory''. > > As to ``linear memory'', I don't know what that is. Perhaps if you > explain in what context did you see that term, I could try guessing > what does that mean. He probably means "linear address" instead of "linear memory." Chapter 5 on "Memory Management" of the Intel 386 Programmer's Reference Manual (published in 1986) references this term. Here are some interesting excerpts from this chapter: The 80386 transforms logical addresses (i.e., addresses as viewed by programmers) into physical address (i.e., actual addresses in physical memory) in two steps: * Segment translation, in which a logical address (consisting of a segment selector and segment offset) are converted to a linear address. * Page translation, in which a linear address is converted to a physical address. This step is optional, at the discretion of systems-software designers. 1. A *logical* address is the combination of the selector and the offset, forming a map to a *linear* address. The selector points to the descriptor, which, among other things, provides the information (base & limit) to point to the *linear* address in the 4 GB address space. A *segment translation* is performed: the base given in the descriptor is added to the offset to give the linear address. 2. That linear address is the *physical address* if paging is not enabled. Otherwise that linear address is a three-part reference to a page table (to a directory, then to a page in the directory, then to an offset in the page), which provides the final resolution of the physical address. [....] Mitch Halloran Research (Bio)chemist Duzen Laboratories Group Ankara TURKEY