VirtualLarry
No Lifer
- Aug 25, 2001
- 56,378
- 10,069
- 126
I'll just leave this here. It was "widely known" back in the day, starting with Intel i386 processors, that "real flat mode" was possible, pretty-much explicitly, because Intel didn't check the segment descriptor cache limits, when setting from protected mode back to real mode. Thus you could use the 32-bit extended index registers, to access a flat 32-bit memory space from actual REAL MODE.
They were sloppy and lazy back then (*). It was in their engineering culture. Sure did enable some neat "Demos" though.
Edit: And then once software starts using that (exploit), it becomes a feature-not-bug of the processor, and subsequent processors need to continue that behavior, to allow existing software to continue to work. Hence some of the complicated evolution of the x86/x64 architecture, as well as how Windows itself has "evolved", to maintain heavy layers of backwards-compatibility. (How many people have heard of application-specific "compatibility shims" being automagically applied by more recent Windows versions, to allow that outdated application to behave the same on newer versions of Windows?)
(*) Edit: I meant more along the lines of mitigations of hardware "exploits", that were at most, at the time, "highly theoretical".
They were sloppy and lazy back then (*). It was in their engineering culture. Sure did enable some neat "Demos" though.
Edit: And then once software starts using that (exploit), it becomes a feature-not-bug of the processor, and subsequent processors need to continue that behavior, to allow existing software to continue to work. Hence some of the complicated evolution of the x86/x64 architecture, as well as how Windows itself has "evolved", to maintain heavy layers of backwards-compatibility. (How many people have heard of application-specific "compatibility shims" being automagically applied by more recent Windows versions, to allow that outdated application to behave the same on newer versions of Windows?)
(*) Edit: I meant more along the lines of mitigations of hardware "exploits", that were at most, at the time, "highly theoretical".
Last edited: