Why is it that the logical address used in the real mode is the physical address, but the protected mode is not? Aren't the logical addresses of real mode and protected mode also offsets?

take a look at the operating system Truth Restoration and find that the logical address used in the real mode above is the physical address, isn"t it necessary to add the segment base address? Why does the protection mode avoid this problem?

Mar.09,2021

the real model is the previous 8086 (40 years ago, it seems that Intel sent a commemorative version of Core? 808640). It's also naughty.) The memory addressing mode used is characterized by where to hit, because 8086 does not even give segments directly to what address is what address, so the biggest feature of this mode is that if anything goes wrong with the application mode, the whole system will be finished together.
the protection mode is different. The user rights are separated from the system permissions, and the user process maps you to a separate space, and everyone has a cubicle, which will not affect the process of history. Ah, no, it's the process of the system. This offset is not the memory address, but the offset in the table, because it has to be looked up in the table before it is translated into a specific address.


Real mode, an address (segmented base address), such as 0x09, is the 0x09 byte pointing to memory, so the logical address is the physical address.

protected mode, an address 0x09, you have to go through the page table to get the address of the memory, the logical address and the physical address are different.

Menu