Computer Memoery help

Thread Starter

biferi

Joined Apr 14, 2017
390
I do not know if anybody can help me but I will Ask?

I wanted to Understand how Computer Memory Works with the CPU?

I do know this.

When the 8088 CPU came out it could only See 1. MB of Memory.
So Memory from 640 kB to 752 kB was Called High Memory Area.

And the 752 kB to 816 kB was not used yet this would be the EMS Window.

And 816 kB to 976 kB is the Upper Memory Area not used yet.

Then the 976 kB to 1. MB was for the BIOS Area and this is the Limit.

Then they came out with an Expanded Memory Driver to Add More Memory on a Board that came with a Driver.

Now the Driver could Cut up the Memory you just Added on the Board into 64 kB Chunks.
And move it in and out of the Bass Memory so Programs could use it.

I get how all of this works.

Then they came out with the 80286 CPU.

And this had an Extended Memory Driver.
So at this Time you now could Add a SIMM Card with 16 MB of Memory.

This Driver would use the Memory from 640 kB to 1. MB and call it Upper Memory Area.
Now the First 64 kB of Memory After the 1. MB was called High Memory Area.

Now I understand as Years go on and new CPUs come out things change on how they use Memory.
But all this Time 640 kB to 752 kB was called High Memory Area.

So how can they just call the Little 64 kB After the 1. MB High Memory Area?

And the same thing with the Upper Memory Area why Rename all the Areas again?

Why not just keep the Names for all the Memory Areas the same and just Add new Names as they came out with new was to use the Memory?

I just always wanted to know?
 

MrChips

Joined Oct 2, 2009
30,803
I want to scream!

What you are describing is a legacy that should have been buried a long time ago.
Intel, Microsoft, and IBM set back the computer evolution by about 25 years with their retarded designs.

The design of the IBM PC was riddled with numerous hardware design flaws that was perpetrated with the design of the Intel CPU. Holes were intentionally created in the memory map creating the 640KB limitation. Expanded Memory and Extended Memory were gobbledygook terms (that only geeks could understand) to patch design failures that should have been scrapped in the first place.

Intel implemented this asinine concept of segment registers because they could not see the need for anything beyond 64KB. I supervised graduate student work and every time they encountered a bug in asm code it led to a problem with wrong usage of segment registers.

This is analogous to the Y2K bug which existed (and still exists in some reincarnation) because humans are too lazy to do something right in the first place.

So don't get me started because I can go on for pages with all the things that were wrong with the IBM PC.
 

Papabravo

Joined Feb 24, 2006
21,225
They abandoned all that crap when they had enough address lines and could implement an insanely huge flat address space with a handful of chips.
 

Papabravo

Joined Feb 24, 2006
21,225
I want to scream!

What you are describing is a legacy that should have been buried a long time ago.
Intel, Microsoft, and IBM set back the computer evolution by about 25 years with their retarded designs.

The design of the IBM PC was riddled with numerous hardware design flaws that was perpetrated with the design of the Intel CPU. Holes were intentionally created in the memory map creating the 640KB limitation. Expanded Memory and Extended Memory were gobbledygook terms (that only geeks could understand) to patch design failures that should have been scrapped in the first place.

Intel implemented this asinine concept of segment registers because they could not see the need for anything beyond 64KB. I supervised graduate student work and every time they encountered a bug in asm code it led to a problem with wrong usage of segment registers.

So don't get me started because I can go on for pages with all the things that were wrong with the IBM PC.
Aw. Mr Chips -- go ahead and scream you have our collective permission!
 

ronsimpson

Joined Oct 7, 2019
3,037
Memory evolved. No one knew what memory would look like in 2021. You should not look back 40 years and say "you should have know better". I took computers that could only read 64k of memory and tricked them into reading 8 banks of 64k. It was hard. We were desperate.

This is much like a very large town. It is typical for a large town to have grown over the top of several small towns. I remember a town that had three "second streets". Because each town (now one) each had a second street. Many towns have streets running North-South, East-West, but some towns have the streets running at 45 degrees off. When the towns grow together it is a real mess. In the map you can see many different street plans all pushed together. Some streets follow the river, some run at 45 off of North. There actually was a plan but no one knew this would happen.
1622777441776.png
 

Thread Starter

biferi

Joined Apr 14, 2017
390
Well when Extended Memory Driver came out you could Install up to 16 MB of Memory on a SIMM Card into your System.

But am I Right that the System still could only use 1 kB to 640 kB for Programs?
So the XMS Driver wouls Cut up the 16 MB Memory on the SIMM Card into 16 kB Chunks?

And the XMS Driver would move these 16 kB Chunks in and out of the EMS Window and into the 640 kB of Bass Memory?
 

Thread Starter

biferi

Joined Apr 14, 2017
390
Am I Right when Expanded Memoery came out the Memory Driver would Cut Up the Extra Memory You Added to the System into 64kB Blocks.
Then move these Blocks in and out of the EMS Window.

And when Extended Memory came out it Cut Up the Extra Memory You Added to the System into 16kB Blocks.
And move these Blocks in and out of the EMS Window.

Do I have just this Right?
 
Top