<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Can anybody elaborate more on what the VMS power failure options
are? OPC$CRASH sure looks like a crash, but what happens before
the belly up?<br>
</p>
<div class="moz-cite-prefix">Some time ago (at least a decade), I
started looking at re-enabling the Tops-20's power failure code
with an eye towards making some changes to the KLH10
micro-engine. So clearly, at a minimum, I would have needed to
catch a SIGPWR and then do something useful with it, which then
meant some nosing around in APRSRV and SCHED and some other
monitor code.</div>
<div class="moz-cite-prefix">
<p>At one point, Tops-20 appears to actually have been able to
save what it was doing and cleanly resume on power up; in other
words, not crash. Some hardware was able to detect a power fail
and cause an APR generated PI. Any running process was
dismissed, the front end was notified and any disk I/O was
completed. The caches were shut off. That leaves the volatile
structures. Assuming you were running with core (MA20's), you
could survive the power outage. A power on would generate an
interrupt which checked whether the power off handling was
completed. If so, away you went.</p>
<p>I don't ever remember ever that working at Columbia, which
stands to reason since we were running semi-conductor memory.
We only had a single MA20 to increase the total memory of one
particular system to 3.75 MW (the rest was MF20).</p>
<p>However, the code itself is still there. Fully supporting the
power fail would have then involved the 20 signaling the
micro-engine (perhaps by doing a CONO to the Idler device with a
magic bit set), that it was done. KLH10 would then have had
save about 34 MB of memory and exit.</p>
<p>It wasn't clear what volatile structures in the micro-engine
needed to be preserved, so I stopped there and turned to other
things. If the host operating supported sleep, maybe not much.
You can't just 'sleep' Tops-20 because on resumption, the
keep-alive counters won't have been updated and it will
immediately crash. It has to know the power went out.</p>
<p>If you don't have a UPS, you may not have a lot of time to do
things. Depending on the power supply and capacitor usage and
discharge, you might have only milliseconds. I would imagine
that's plenty for SSD storage, it might not be enough for
rotating media.<br>
</p>
</div>
<blockquote type="cite"
cite="mid:25E057BB-1E04-489D-8F8C-94E491785E79@riseup.net">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<hr width="100%" size="2">On 5/30/20 1:14 PM, Supratim Sanyal
wrote:<br>
<div><span style="background-color: rgba(255, 255, 255, 0);"><br>
</span></div>
<span style="background-color: rgba(255, 255, 255, 0);"></span>Good
afternoon everyone,
<div><br>
</div>
<div>What are you guys doing to get something like OPC$CRASH
invoked when a UPS signals it is on battery?</div>
<div><br>
</div>
<div>I have serial connectivity to TTAx ports on a Microvax
3100-80 running OVMS 7.3. Recommendations on a UPS?</div>
<div><br>
</div>
<div>Generally how do you get a VAX to shut down immediately on
UPS going on battery?</div>
<div><br>
</div>
<div>Thanks in advance</div>
<div>Supratim <br>
<div>
<div><br>
<div id="AppleMailSignature" dir="ltr">
<div>
<div><span style="background-color: rgba(255, 255, 255,
0);"><br>
</span></div>
<div><span style="background-color: rgba(255, 255, 255,
0);">---</span></div>
<div><span style="background-color: rgba(255, 255, 255,
0);">Supratim Sanyal, W1XMT</span></div>
<div><span style="background-color: rgba(255, 255, 255,
0);">39.19151 N, 77.23432 W</span></div>
<div><span style="background-color: rgba(255, 255, 255,
0);">QCOCAL::SANYAL via <a
href="http://www.update.uu.se/~bqt/hecnet.html"
moz-do-not-send="true">HECnet</a></span></div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</body>
</html>