Remix.run Logo
rep_lodsb 2 days ago

How would you have redesigned the 8086 to do this? And why, other than because of some aesthetic objection to overlapping segments?

The 286 and 386 in protected mode did allow segments with any base address (24 or 32 bits), so your argument about extending the address space doesn't make sense.

gpderetta 2 days ago | parent [-]

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.