On 03/04/2012 15:56, Chris Angelico wrote:
On Wed, Apr 4, 2012 at 12:46 AM, Grant Edwards<invalid@invalid.invalid>  wrote:
Anybody remember DEC's VAX/VMS "patch" utility?  Apparently, DEC
thought it was a practical way to fix things.  It had a built-in
assembler and let you "insert" new code into a function by
auto-allocating a location for the new code an hooking it into the
indicated spot with jump instructions.

The mind wobbled.

Not specifically, but I _have_ heard of various systems whose source
code and binary were multiple years divergent. It's actually not a
difficult trap to fall into, especially once you start patching
running systems. I've had quite a few computers that have been unable
to reboot without assistance, because they go for months or years
without ever having to go through that initial program load. (I've had
_programs_ that were unable to load, for the same reason.) But
auto-allocating a new spot for your expanded function? That's just...
awesome. My mind is, indeed, wobbling.

ChrisA

Around 1990 I worked on Telematics kit. The patches on all their software were implemented via assembler once the original binary had been loaded into memory. They even came up with a system that let you select which patches you wanted and which you didn't, as e.g. some patches were customer specific.

--
Cheers.

Mark Lawrence.

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to