<br><br><div class="gmail_quote">On Thu, Jun 23, 2011 at 7:26 AM, Bert Freudenberg <span dir="ltr">&lt;<a href="mailto:bert@freudenbergs.de">bert@freudenbergs.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
I often get the Finalization process when I press Cmd-.<br>
<br>
Usually I want the UI process. But it should be possible to break into a higher-level one too, if it takes much time. Not sure if this could be made more intelligent?<br></blockquote><div><br></div><div>Seems to me that the code could check if the interrupted process was one of the system processes not to be interrupted then a different process could be chosen to interrupt. The list of processes in ProcessBrowser class&gt;&gt;registerWellKnownProcesses already has an allowStop accessor that seems to capture the desired intent.</div>
<div><br></div><div>So let&#39;s say that at least some of the list of well known processes gets moved to ProcessorScheduler and is consulted by ProcessorScheduler&gt;&gt;preemptedProcess to filter-out processes that should not be stopped by the user interrupt.</div>
<div><br></div><div>Bert, I could take a tilt at this and at the same time add the Qwaq code for the Cog VM&#39;s processpreemptionYields switch, which makes the VM behave like the VisualWorks VM such that preempting a process doesn&#39;t put it to the back of its run queue (an implicit yield) which is a much safer scheduling policy than the blue books.  And note that this is optional, but if in effect it does mean that preemptedProcess should interrupt the /first/ process on the relevant runnable list, not the /last/ :)</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><font color="#888888">- Bert -</font></blockquote></div>-- <br>best,<div>Eliot</div><br>