I wanted to learn more about systems and so I was reading about x86 global descriptor tables for memory segments as one does, and I came across this table from here:
I think I understand why all the information is needed, but I don't understand why values are broken up in this way.
In particular, why did the designers prefer the above layout over something like:
first 32-bits: base next 20-bits: limit next 12-bits: access-byte and flags
I've come across lots of places that seem to describe the table entry layout, but it seems to be harder to find information about why things turned out this way.