In comp.os.linux.misc The Natural Philosopher <
[email protected]d> wrote:
On 29/08/2025 07:50, Charlie Gibbs wrote:
On 2025-08-27, Alexander Schreiber <[email protected]> wrote:
I haven't tried Unix on 8086, but DOS on x86 essentially relied on applications
being reasonably correct and not too buggy. Having the reset button conveniently
accessible was effectively a requirement for any DOS PC ;-)
Unfortunately, at about that time the reset button vanished (probably due
to the DMCA or whatever preceded it).
That would require instructions that the C compiler
didn't generate.
That claim "would require instructions that the C compiler didn't generate" >>> is just not true. Without memory protection, there are plenty of ways to crash
the system - e.g. overwriting the operating system code due to a bug in an >>> application.
If you didn't want to live entirely in a 64K segment, though, you probably >> told your C compiler to generate code for the various larger memory modules, >> which gave you the ability to scribble over the entire 640K (plus system
storage).
Wasn't there a 64k data and 64k code model as well? And possibly a 64K
stack as well though that was a pain with C.
The 8086 had four segment registers, one for code, one for stack, and
two for "data". So provided one was either writing in assembly, or
one's HLL supported all four segment registers pointing to
non-overlapping addresses, one could "access" 4x64k with the 8086
without needing to change a segment register value.
Of course, if one did change a segment register value, one could access
any memory address anywhere within the 8086's 1Mib total addressable
space, as there was also no memory protection either.
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)