On 17 Sep 98, at 8:27, Michael A. Stone wrote:
> the 640K issue deals with a trick the early x86 microprocessors used to
> manage memory. processors use binary addresses to identify locations in
> memory, so the amount of memory visible to the processor is directly
> related to the size of the addresses it can generate. the size of an
> address is restricted by the number of physical circuits on the chip
> dedicated to handling that job.
> therefore, the bigger your effective address space, the more microacreage
> you have to burn for address handling circuitry. that costs money,
> increases the complexity of the chip, and breeds other (expensive) changes
> in the electronics of the motherboard.
> Intel's way of dealing with the problem was to use a mid-sized (at the
> time) address space, with enough circuitry to handle 64K of distinct
> addresses, which became known as a 'page'. then it added another batch of
> (smaller, cheaper) circuitry that allowed the chip to hop from page to
> page, giving the effect of a much larger address space than it actually had.
OH yes I forgot this one... but it wasn't a so expensive problem to
solve since 8086 (not to mention 8088 8 bit external bus... what a
pain) has 16 bit registers but it has 20 lines to address memory so
it used 2 16 bit register to address a byte in the 1Mb addressable
memory. But 16x2=32 ??? not 20???
BTW 286 had 24 lines... = 16Mb of addressable memory. And
here things go even worse, but this is another horror story...
The result was a real monster...
The memory was virtually divided in blocks of 64Kb =16bits.
But there wasn't a 1 to 1 correspondence from contents of the two
register and memory (bijective) there were many ways to refer to
the same memory location.
Suppose you live in Joe Street at 9 but also at 17 and at 34 but
Joe Street 9 is the same place of Joe Street 17 and 34
(surjective). What a mess.
Today we've got big problems with cache, branch prediction, out of
order execution, prefetching etc... and Intel/Intel clone are the most
diffused processor just because they are a sort of monopoly
(software diffusion) but there are really better way to do processors.
How fast can a processor run if it read the memory at 100MHz
but it's running at 300MHz and spend 90% of is time copying
memory from one place to another ??? (It seems I've tryed out of
order execution with my English!!!)
Finally... 640Kb aren't too few if you do good coding...
Spreadsheet, Word processor, browser, editor etc...
If you are doing image editing (very memory hungry
1024x768x16Millions color= 2.5Mb) I'm sure you can do very
interesting work with 6Mb (oops how many Mb are required for
w98???)
N.d.R. register are a sort of micro internal processor memory.
P.S. Is this the WC list? Not the electronic geeks list? ooops sorry
:-)
-------------------------------------------
Ivan Sergio Borgonovo [EMAIL PROTECTED]
Webmaster Gorilla Bookstore http://www.gorilla.it
Tel. +39 2 3311105/34530455 Fax. +39 2 34531591
Via Mac Mahon 9, Milano, Italy
-------------------------------------------
____________________________________________________________________
--------------------------------------------------------------------
Join The Web Consultants Association : Register on our web site Now
Web Consultants Web Site : http://just4u.com/webconsultants
If you lose the instructions All subscription/unsubscribing can be done
directly from our website for all our lists.
---------------------------------------------------------------------