Remix.run Logo
gpderetta 2 days ago

you explained elsewhere how the overlap is used for relocatability, which is a reasonable justification. But if that were not a concern, non overlapping segments would have provided for a larger address space. I will readily admit that I'm not aware of all the constraints that lead to the 8086 design.

386 (not sure how 286 works) did extend segments to a larger address space, by converting them to segment selectors, but it requires a significantly more complex MMU as it is a form of virtual memory.

Narishma 2 days ago | parent [-]

> 386 (not sure how 286 works) did extend segments to a larger address space, by converting them to segment selectors

The 286 did that, though they only extended the address space to 24 bits. The 386 extended it again to 32 bits.