Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

12
  • 84
    \$\begingroup\$ Sir, if I may interrupt you for a few cycles so I may fini.... \$\endgroup\$
    – Luminous
    Commented Oct 20, 2015 at 12:57
  • 6
    \$\begingroup\$ So what if the first instruction of my inserted code is cli, and then I fix the interrupt table, and go on to compute some primes, etc? \$\endgroup\$ Commented Oct 21, 2015 at 16:22
  • 4
    \$\begingroup\$ @NateEldredge: the next step is to jail the rest of the code to ring 3 with no trampoline back to ring 0; I'll see if I manage to put together a working example (another possibility would be to scan the whole address space and NOP-out all the cli (and inp and outp just for good measure), but I don't know if that would be allowed by the rules. \$\endgroup\$ Commented Oct 21, 2015 at 19:19
  • 3
    \$\begingroup\$ At least as it stands, this won't stop a program from writing directly to the screen buffer (which was pretty common under DOS). \$\endgroup\$ Commented Oct 21, 2015 at 20:28
  • 1
    \$\begingroup\$ @NateEldredge: the rules aren't really clear on this, and if you look around most answers actually consist in modifications to the environment that generate a runtime error of some type on trivial instructions (the JS clear(this);, the memory limit in PHP, the recursion limit in Python, the sandboxed environment in Python and many others), I wouldn't see this as a problem. \$\endgroup\$ Commented Oct 22, 2015 at 5:54