The Page-Fault Weird Machine: Lessons in Instruction-less Computation

In case one instruction is one too many for you. A compiler which executes instructionless code through triggering pagefaults.

This is a proof by construction that the Intel MMU's fault handling mechanism is Turing complete. We have constructed an assembler that translates 'Move, Branch if Zero, Decrement' instructions to C source that sets up various processor control tables. After this code has executed, the CPU computes by attempting to fault without ever executing a single instruction. Optionally, the assembler can also generate X86 instructions that will display variables in the VGA frame buffer and will cause control to be transferred between the native (display) instructions and 'weird machine' trap instructions.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Security Swiss cheese?

This is quite a marvel!

Yeah

Good luck proving C++ code, or assembly, correct if the MMU is already Turing complete.

Beside being a technological marvel, it substantially ups the ante for people who are trying to develop correctness software.

It's a good factoid to have in the back of your mind.

Yeah. Anybody with VC money?

Please fund one of those alternative chip groups that are making things that aren't just train wrecks from a security perspective, please?