Jeff Arnold wrote:I think you will find prior art all the way back to the PDP-8 (or 11) and if memory serves DTSS, which was in the 1960's. I think MULTICS allowed that as well, by patching the library dispatch table (sort of like TLB) to map a virtual address of the entry point to a new location.
I've put together an automatic system for applying kernel security patches to the Linux kernel without rebooting it, and I wanted to share this system with the community in case others find it useful or interesting.
Hmm, the idea seem to be patented by Microsoft, i.e. this patent from December 2002:
http://www.google.com/patents?id=cVyWAAAAEBAJ&dq=hotpatching
(and other patents by Microsoft if you search for "hotpatching").
And those patent descriptions, by the way, remind the way kexec works ("A software module is hotpatched by loading a patch into memory and modifying an instruction in the original module to jump to the patch"), which was released much earlier... In essence, they patented kexec ;)