We've tried this with our servers, and we find VNC support on Macs (servers and clients) to be pretty buggy. The same client worked fine on one PowerMac, but not on the next. Some of our mac servers worked as VNC servers, some only showed part of a screen. We gave up.
Mark
I have run Squeak over VNC. As far as I can tell, as long as Morphic doesn't change any bits on-screen, it doesn't generate any traffic and it doesn't matter how much updating it does internally.
You may find the encoder at http://www.tightvnc.org/ helpful: it compresses better and uses less CPU to do so. It falls back on regular VNC if needed.
Cheers, Thomas.
On Mon, Apr 02, 2001 at 10:23:56AM -0500, Les Tyrrell wrote:
----- Original Message ----- From: Kevin Fisher kgf@golden.net To: squeak@cs.uiuc.edu Sent: Monday, April 02, 2001 7:19 AM Subject: Dumb question about headless & Nebraska
Hi:
This is probably a dumb question but...is it possible to set up
a headless
Squeak that runs a Nebraska server? I was thinking about
running a headless
Swiki server and being able to use Nebraska to administer it
would be kinda
cool. :)
If not, and you have the bandwidth to support it, give VNC a try. VNC used to be called a frame-buffer protocol, and for things that don't
update their
contents frequently it is usable even over relatively slow
connections. But I
believe that Morphic may have enough updates going on in the background that this approach would be unusable over a slow connection. It's easy enough to
find out, anyway.
For the more ambitious, try implementing the VNC server protocol in Squeak.
- les
-------------------------- Mark Guzdial : Georgia Tech : College of Computing : Atlanta, GA 30332-0280 Associate Professor - Learning Sciences & Technologies. Collaborative Software Lab - http://coweb.cc.gatech.edu/csl/ (404) 894-5618 : Fax (404) 894-0673 : guzdial@cc.gatech.edu http://www.cc.gatech.edu/gvu/people/Faculty/Mark.Guzdial.html
Also, I would not recommend the VNC server on Windows...it doesn't catch all of the updates and it's very difficult to operate Squeak. The X based VNC server on the other hand seems to work very well with Squeak (at least it does on Linux).
To be fair, this is probably due to the graphics architecture (or lack thereof) of Windows (not VNC itself) and the unreliable way of hooking into the graphics subsystem (to do it reliably, you probably need to build your own implementation of the GDI libraries (ick!)...I think Citrix Winframe does exactly that). My suspicion is that a similar situation exists on Mac. With X windows, you have a guaranteed mechanism for receiving all graphics updates.
- Stephen
-----Original Message----- From: Mark Guzdial [mailto:guzdial@cc.gatech.edu] Sent: Monday, April 02, 2001 2:51 PM To: squeak@cs.uiuc.edu Subject: Re: Dumb question about headless & Nebraska
We've tried this with our servers, and we find VNC support on Macs (servers and clients) to be pretty buggy. The same client worked fine on one PowerMac, but not on the next. Some of our mac servers worked as VNC servers, some only showed part of a screen. We gave up.
Mark
I have run Squeak over VNC. As far as I can tell, as long as Morphic doesn't change any bits on-screen, it doesn't generate any traffic and it doesn't matter how much updating it does internally.
You may find the encoder at http://www.tightvnc.org/ helpful: it compresses better and uses less CPU to do so. It falls back on regular VNC if needed.
Cheers, Thomas.
On Mon, Apr 02, 2001 at 10:23:56AM -0500, Les Tyrrell wrote:
----- Original Message ----- From: Kevin Fisher kgf@golden.net To: squeak@cs.uiuc.edu Sent: Monday, April 02, 2001 7:19 AM Subject: Dumb question about headless & Nebraska
Hi:
This is probably a dumb question but...is it possible to set up
a headless
Squeak that runs a Nebraska server? I was thinking about
running a headless
Swiki server and being able to use Nebraska to administer it
would be kinda
cool. :)
If not, and you have the bandwidth to support it, give VNC a
try. VNC used
to be called a frame-buffer protocol, and for things that don't
update their
contents frequently it is usable even over relatively slow
connections. But I
believe that Morphic may have enough updates going on in the
background that this
approach would be unusable over a slow connection. It's easy enough to
find out, anyway.
For the more ambitious, try implementing the VNC server
protocol in Squeak.
- les
Mark Guzdial : Georgia Tech : College of Computing : Atlanta, GA 30332-0280 Associate Professor - Learning Sciences & Technologies. Collaborative Software Lab - http://coweb.cc.gatech.edu/csl/ (404) 894-5618 : Fax (404) 894-0673 : guzdial@cc.gatech.edu http://www.cc.gatech.edu/gvu/people/Faculty/Mark.Guzdial.html
Also, I would not recommend the VNC server on Windows...it doesn't catch all of the updates and it's very difficult to operate Squeak. The X based VNC server on the other hand seems to work very well with Squeak (at least it does on Linux).
Has anybody considered compiling/linking the Windows VM with the X client libraries? The end result is an app running under Windows that wants to talk to an X server, either locally or remotely.
There clearly is Squeak source code to talk to X client libraries, although the make file and #ifdef's may make assumptions about X and Win32 being mutually exclusive.
- Jan
That's a great idea...I think Tom mentioned doing exactly that for the Mac (and he brought up the idea in a private email).
I think it would be nice if all VMs could support displaying to an X server (ideally as a VM plugin).
- Stephen
Also, I would not recommend the VNC server on Windows...it
doesn't catch all
of the updates and it's very difficult to operate Squeak. The X
based VNC
server on the other hand seems to work very well with Squeak (at least it does on Linux).
Has anybody considered compiling/linking the Windows VM with the X client libraries? The end result is an app running under Windows that wants to talk to an X server, either locally or remotely.
There clearly is Squeak source code to talk to X client libraries, although the make file and #ifdef's may make assumptions about X and Win32 being mutually exclusive.
- Jan
On Mon, Apr 02, 2001 at 02:50:57PM -0400, Mark Guzdial wrote:
We've tried this with our servers, and we find VNC support on Macs (servers and clients) to be pretty buggy. The same client worked fine on one PowerMac, but not on the next. Some of our mac servers worked as VNC servers, some only showed part of a screen. We gave up.
Those are not problems with the VNC protocol and don't reflect on the feasibility of running Squeak over VNC.
I don't know why the Mac clients would be buggy other than that it may not be well maintained. Given that MacOS X supposedly has a good Java implementation, you could just use the Java client, which works reliably and reasonably efficiently.
The Mac server probably tries to grab bits from the frame buffer. That's hard if the graphics system can't be instrumented. That's the reason why putting VNC directly into Squeak (at the same level as the current X11 support) would be nice.
However, another way of getting decent VNC support for Squeak under MacOS is to do the same thing people do on UNIX: run Xvnc on MacOS and compile Squeak not with the MacOS graphics stuff but with an X11 interface under MacOS.
Cheers, Thomas.
squeak-dev@lists.squeakfoundation.org