Xvfb
Let's sit in on a conversation between a couple of techies named Remus and Romulus on the subject of Xvfb and learn what Remus eventually does: that Java boosts the importance of this old utility
REMUS: Hey, Romulus, I was just reading about this thing called Xvfb. Have you ever heard of it?
ROMULUS: Yeah. It's actually an acronym; it stands for X virtual frame buffer.
REMUS: And that is...?
REMUS: A dummy load. The X Window graphical user interface (GUI) defines an architecture of client applications that send graphical instructions to a display server.
REMUS: A punching bag that just hangs there and takes it? What's the good in that?
ROMULUS: Lots of good. There are plenty of useful tests you can run on a graphical application without ever seeing its display: timing tests, tests that make sure that it adjusts to different color depths and environment parameters, tests of command-line arguments and other external interfaces, load testing, code-coverage profiles, and so on. Smart quality-assurance engineers certainly know about Xvfb.
REMUS: So testers like it. Is that all?
ROMULUS: Only the beginning. Here's where it comes up most often: Someone says to his buddy at work, "I've got this cool image converter/graph generator/network monitor/whatever that I want to use to generate daily reports for my boss. I've got it all figured out, and it runs automatically, but when I put it in crontab it doesn't work. Now what?" That person probably needs Xvfb. There are a lot of situations like that: an application insists on a DISPLAY, but doesn't really require anyone to see what's there. Xvfb is great for such jobs.
REMUS: Sounds cool. What else?
ROMULUS: Well, it's not precisely true that Xvfb simply throws away all the graphical messages it receives. In fact, it can be configured to render its data into a kind of image that's kept in a specific location in memory. An engineer could start a big headless aerodynamic calculation (i.e., one without a display), walk away from it for a week, then connect the memory area to a real display screen to peek at a snapshot of the calculation in progress.
REMUS: Cool. That sounds a little like virtual network computing (VNC).
ROMULUS: You're right; users get some of the same benefits -- persistence and relocatability across processes -- from VNC. In fact, many administrators also recommend VNC for automation. When someone has an application that insists on a DISPLAY, one solution is to configure VNC as a dummy X server. Even in domains such as this, where the capabilities of VNC and Xvfb overlap, each also has unique features. They're both valuable.
REMUS: You make it sound as though there's something wrong with using VNC in a crontab.
ROMULUS: If it works for you, I'm all in favor of
Essential JavaFX
Get started building rich Web apps quickly with an introduction to the power of JavaFX key features -- scene node graphs, nodes as components, the coordinate system, layout options, colors and gradients, custom classes with inheritance, animation, binding, and event handlers.Enter now!
The Nomadic Developer
Consulting can be hugely rewarding, but it's easy to fail if you are unprepared. To succeed, you need a mentor who knows the lay of the land. Aaron Erickson is your mentor, and this is your guidebook. Enter now!












