Review Board 2.0.15


VNC: Add support for capturing frame buffer to file each time it is changed.

Review Request #903 - Created Nov. 3, 2011 and submitted

Information
Ali Saidi
gem5
Reviewers
Default
ali, gblack, nate, stever
VNC: Add support for capturing frame buffer to file each time it is changed.

When a change in the frame buffer from the VNC server is detected, the new
frame is stored out to the m5out/frames_*/ directory.  Specifiy the flag
"--frame-capture" when running configs/example/fs.py to enable this behavior.

   
Posted (Nov. 5, 2011, 6:12 p.m.)



  
configs/example/fs.py (Diff revision 1)
 
 
Won't this create an enormous number of images? It's not wrong to do that, but I wonder if this is a very practical thing to do in most circumstances.
  1. ~30 frames per simulated second, but since a second can take hours, not really a problem. 
src/base/vnc/convert.cc (Diff revision 1)
 
 
Don't add commented out code.
src/base/vnc/vncserver.cc (Diff revision 1)
 
 
Isn't this the function that's commented out above? I'm sure I've seen this patch before, because I remember commenting that this comparing hashes thing seemed like overkill. We know *exactly* when the contents of the framebuffer are modified because we are the only ones that could have changed it. Why don't we just set a dirty flag when that happens?
  1. We do know when we're active and the device is told to read a frame from simulated memory, however we don't know if the os actually changed the underlying image. Either way 30fps means we do this once every few minutes of execution, so it's not a performance worry.