<br><br><div class="gmail_quote">On Wed, Aug 26, 2009 at 10:58 AM, David Farber <span dir="ltr">&lt;<a href="mailto:dfarber@numenor.com">dfarber@numenor.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div style="word-wrap:break-word">
<br><div><div>On Aug 26, 2009, at 9:53 AM, Eliot Miranda wrote:</div><br><blockquote type="cite"><div class="gmail_quote">On Tue, Aug 25, 2009 at 3:54 PM, David Farber <span dir="ltr">&lt;<a href="mailto:dfarber@numenor.com" target="_blank">dfarber@numenor.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div><br> On Aug 25, 2009, at 2:28 PM, Eliot Miranda wrote:<br> <br> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
 One of the things the headless support in VW allows which is quite nice is taking a shapshot which can then be restarted in a headless mode for debugging.<br> </blockquote> <br></div> Eliot - Was this VM or image-side support?  Can you describe how it worked?</blockquote>
<div><br></div><div>All image side; no VM support.  <span>I can&#39;t describe it in detail as I never worked on it.  But the basic idea is to have a switchable headless system in the image so that in deployment it runs headless and when an error occurs the error handler temporarily throws the switch, saves a snapshot and resets the switch.  When the snapshot is restarted it will come up headful because the switch was thrown before the snapshot was taken.  In the resuming snapshot the error handler then does something like an on: .. do: [:ex| self shapshotHeadful. ex pass] to allow the GUI to display the debugger.</span></div>
</div></blockquote><div><br></div>I was hoping you were going to say VM side.  :)  Or, rather, I was hoping that the context of your original message was initiating a snapshot from outside a image (i.e. in response to a nightly cron job to backup the image or a system shutdown event).</div>
<div><br></div><div>But, back to headless/headfull for a moment, doesn&#39;t Squeak do this automatically already?  When I run an image in headless mode, all that happens is that no OS window is opened--but the Squeak UI objects are all there (and running) in the image. </div>
</div></blockquote><div><br></div><div>Right.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div style="word-wrap:break-word"><div> Does VW do something more, like destroy all the UI objects?</div>
</div></blockquote><div><br></div><div>No.  Its just a switch and routes to either the GUI or e.g. standard i/o.</div><div> </div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div style="word-wrap:break-word"><div></div><div><br><blockquote type="cite"><div class="gmail_quote"> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>Not quite the same, but very neat:  The other day at Qwaq Craig Latta had a VM crash while running in a Parallels Linux VM under gdb.  He was able to give me a copy of the VM snapshot at the point where gdb stopped the process, giving me the opportunity to debug the live app at my leisure.  A cool idea.<br>
 </blockquote> <br></div> In other words, he was already running the Qwaq VM under gdb, so when the Qwaq VM crashed (and left him at a gdb prompt), he simply suspended the Parallels Linux VM and sent you a copy of the suspended Parallels Linux VM.  Is that right?</blockquote>
 <div><br></div><div>Right.  Very nice, as the patient is on the table.</div></div></blockquote><div><br></div>Yeah, full OS virtualization has some pretty cool use cases.</div><div><br></div><font color="#888888"><div>David</div>
<div><br></div></font></div><br><br>
<br></blockquote></div><br>