<br><div class="gmail_quote">On Mon, Dec 10, 2012 at 6:55 PM, Bert Freudenberg <span dir="ltr">&lt;<a href="mailto:bert@freudenbergs.de" target="_blank">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">
<div class="im"><br>
On 2012-12-10, at 18:44, Guillermo Polito &lt;<a href="mailto:guillermopolito@gmail.com">guillermopolito@gmail.com</a>&gt; wrote:<br>
<br>
&gt; Nope, I mean preempting. When my process has the priority and is the active process, it gets preempted by higher priority processes. But my process does not make any #yield.<br>
<br>
</div>Okay. This still happens in checkForInterrupts, which gets called on a backwards jump (like in your while loop, see #longUnconditionalJump) and on various other occasions, like on message sends.<br></blockquote><div>
<br></div><div>Great! Thank you very much!!</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5"><br>
- Bert -<br>
<br>
<br>
&gt; On Mon, Dec 10, 2012 at 5:21 PM, Bert Freudenberg &lt;<a href="mailto:bert@freudenbergs.de">bert@freudenbergs.de</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt; On 2012-12-10, at 16:39, Guillermo Polito &lt;<a href="mailto:guillermopolito@gmail.com">guillermopolito@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; But somehow if I run<br>
&gt; &gt;<br>
&gt; &gt; [ [true] whileTrue: [ Transcript show: &#39;asd&#39;; cr.] ] fork.<br>
&gt; &gt;<br>
&gt; &gt; It gets preempted while it is running, and It does not make any yield...<br>
&gt;<br>
&gt; You did not ask about user interrupt handling specifically before. &quot;Preempting&quot; means any suspending of a lower-priority process by a higher-priority one.<br>
&gt;<br>
&gt; Pressing the interrupt key sets the interruptPending flag, which signals TheInterruptSemaphore (see checkForInterrupts). This resumes the interrupt watcher process.<br>
&gt;<br>
&gt; - Bert -<br>
&gt;<br>
&gt; &gt;<br>
&gt; &gt; On Mon, Dec 10, 2012 at 4:17 PM, Bert Freudenberg &lt;<a href="mailto:bert@freudenbergs.de">bert@freudenbergs.de</a>&gt; wrote:<br>
&gt; &gt;<br>
&gt; &gt; On 2012-12-10, at 14:22, Guillermo Polito &lt;<a href="mailto:guillermopolito@gmail.com">guillermopolito@gmail.com</a>&gt; wrote:<br>
&gt; &gt;<br>
&gt; &gt; &gt; Hi!<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; I was looking at the process machinery in VMMaker and I can&#39;t find where the preemption of processes takes place...<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Can someone point me a place?<br>
&gt; &gt;<br>
&gt; &gt; It happens in #transferTo:. This is called whenever a process is resumed because a semaphore got signaled (in which case the process that was waiting on the semaphore is resumed) or if the process stops working because of a wait / yield / suspend call (in which case #wakeHighestPriority determines the next process).<br>

&gt; &gt;<br>
&gt; &gt; - Bert -<br>
&gt; &gt;<br>
&gt; &gt; PS: no need to send a mail to both vm-dev and vm-beginners :)<br>
&gt; &gt;<br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; VM-beginners mailing list<br>
&gt; &gt; <a href="mailto:VM-beginners@lists.squeakfoundation.org">VM-beginners@lists.squeakfoundation.org</a><br>
&gt; &gt; <a href="http://lists.squeakfoundation.org/mailman/listinfo/vm-beginners" target="_blank">http://lists.squeakfoundation.org/mailman/listinfo/vm-beginners</a><br>
&gt; &gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; VM-beginners mailing list<br>
&gt; <a href="mailto:VM-beginners@lists.squeakfoundation.org">VM-beginners@lists.squeakfoundation.org</a><br>
&gt; <a href="http://lists.squeakfoundation.org/mailman/listinfo/vm-beginners" target="_blank">http://lists.squeakfoundation.org/mailman/listinfo/vm-beginners</a><br>
<br>
_______________________________________________<br>
VM-beginners mailing list<br>
<a href="mailto:VM-beginners@lists.squeakfoundation.org">VM-beginners@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/mailman/listinfo/vm-beginners" target="_blank">http://lists.squeakfoundation.org/mailman/listinfo/vm-beginners</a><br>
</div></div></blockquote></div><br>