On Jun 22, 2016, at 7:15 PM, Chuck Guzis <cclist at
sydex.com> wrote:
...
Could you roll them back in by just re-populating
memory with the
dump and hooking back to whatever the equivalent of PC and EIP were
on that system and re-launching the job?
The rolled-out job didn't lose its files or place in the running job
queue; it just got represented by a placeholder bit of memory (usually
the exchange package) and then read back in when its turn came up.
Slightly different. A rolled out job was a file, containing the whole job state,
including stuff like currently attached files, memory content, exchange package (program
registers). Like any other "local file" it would show up in memory as an entry
in the file table -- just 2 60-bit words if I remember right. When selected by one of the
scheduler components to be run again, it would be assigned a control point, memory, rolled
back in, and execution resumed.
Jobs could also be moved in memory without being rolled out; this could happen if they or
some other job changed memory size, forcing something to move to make room. PPU programs
would have to watch out for that to happen and "pause for storage relocation".
Getting that wrong was a great way to wedge the OS; I've got that t-shirt...
paul