InvestorsHub Logo
Followers 2
Posts 522
Boards Moderated 0
Alias Born 09/19/2003

Re: sgolds post# 27788

Monday, 03/01/2004 2:02:10 PM

Monday, March 01, 2004 2:02:10 PM

Post# of 97595
sgolds- I'm glad we cleared all that up. It was just a different use of the semantics. A couple more notes:

'Segmentation' refers to two very different things in x86, so that further confused things. In the older form, 'segmentation' meant shifting the segment register and adding the offset to generate the 8086 physical address.

This is different from Protected Mode segmentation. In that use of the word, the segment register holds a selector which is an offset (with some lower bits masked) into a descriptor table.


Protected Mode segmentation is the more complicated version in hardware. It uses hidden registers to cache away part of descriptor tables. Loading the segment registers actually triggers loading these hidden registers from memory. The hidden registers make address translation more efficient. I still wouldn't use the word "emulation", because the segmentation logic for protected mode segmentation is exactly the same as it is on older processors. Actually it is slightly more complex, as there is an additional configuration bit in the descriptors to distinguish what mode the code is in (64-bit or compatibiliity).

This supports direct sharing of memory between two (or more) processes. Since each process has its own 64-bit flat memory area (dependent on the page table), if one process wants to share a pointer to a memory area with another process then this enables that capability.

Thanks for that tidbit. I hadn't considered that.

HailMary

Volume:
Day Range:
Bid:
Ask:
Last Trade Time:
Total Trades:
  • 1D
  • 1M
  • 3M
  • 6M
  • 1Y
  • 5Y
Recent AMD News