PDP-10 / its

Incompatible Timesharing System
Other
834 stars 80 forks source link

Chaosnet shutdown service #2243

Closed larsbrinkhoff closed 8 months ago

larsbrinkhoff commented 9 months ago

There is a potential problem, especially with use cases like the PiDP-10, that people might turn off their computer without shutting down ITS cleanly. See e.g. #1683. FYI @ashkitten

Part of the problem is that it's difficult to automatically grab hold of the PDP-10 console teletype, log in, and execute the shutdown sequence. It's fraught with problems, e.g. what if someone is already using the console teletype.

One possible way would be to have a Chaosnet service to shut down. Of course, there's no guarantee that the network is up, or that the service will work 100% of the time. But it seems more likely to work than the console teletype. Making a host-side Chaosnet client should be easy enough.

I believe @eswenson1 did some work on forcibly logging out all users in order to shut down quickly.

larsbrinkhoff commented 9 months ago

Another way for the PiDP-10 case is to simulate toggling 37 to -1. See below ITS label ALCR6: SKIPGE 37 ;CHECK FOR PLANNED SYSTEM DEATH

drboone commented 9 months ago

Do the -10 sims have any support for powerfail actions?

larsbrinkhoff commented 9 months ago

I don't think they do. I have contemplated SIGPWR and mapping that to the power fail interrupt in the PDP-10. I don't think ITS handles the interrupt, although that could be changed.

drboone commented 9 months ago

Including SIGPWR would be elegant, but I'm betting that's not the signal that will arrive if someone shuts down the host machine without first shutting down the emulator(s).

ams commented 8 months ago

I would also welcome such a Chaosnet service, please add support for not just power-off / halt, but also cold boot and warm boot.

This would aid in remote CADRs on the Global Chaosnet.

larsbrinkhoff commented 8 months ago

Ok, the mode of shutting down could be e.g. a character: H for halt, C for cold boot, W for warm boot.

Another possible parameter is time, something like number of minutes to wait until shutting down.

I'm also considering some security token to restrict who can shut down.

larsbrinkhoff commented 8 months ago

Fixed by #2246.