Does Parallels support any APIs?

Discussion in 'General Questions' started by coxcu, Oct 30, 2006.

  1. coxcu

    coxcu Bit poster

    Messages:
    7
    Hi,

    I'm interested in developing tools on top of Parallels. Does Parallels support any APIs, and if so where are they documented? To make this more concrete, one of the things I'm interested in doing is developing a remote user interface to an image running in Parallels. So, I'm interested in the APIs that would be required to capture commands sent to the "video card" as well as those required to generate keyboard and mouse events.

    Thanks,
    Curt
     
  2. David Corrales

    David Corrales Hunter

    Messages:
    189
    Probably not. It's not even bug free or feature complete yet.
     
  3. joem

    joem Forum Maven

    Messages:
    1,247
    Try VNC.
    It's already done.
     
  4. coxcu

    coxcu Bit poster

    Messages:
    7
    "Try VNC. It's already done."

    VNC is a nice tool. It's improved a bit over the years, but still has several flaws.
    1) A VNC server is required for an OS. Many operating systems have them, but some don't.
    2) If a server is available for an OS, it has to be configured through the OS. There is no way to keep the configuration external.
    3) RFB doesn't work well over high latency connections.
    4) All RFB clients and servers that I know of are only moderately adaptive to bandwidh.

    RFB is admirably simple and performs adequately for many uses, but there are much better protocols for performance. See this page for some papers that detail more:
    http://www.ncl.cs.columbia.edu/research/thinc/
    http://www1.cs.columbia.edu/~ricardo/thinc/
     
  5. David Corrales

    David Corrales Hunter

    Messages:
    189
    How about FreeNX, I heard it's a lot faster than VNC.
     
  6. coxcu

    coxcu Bit poster

    Messages:
    7
    NX/FreeNX are much better than VNC as far as latency and bandwidth go. Unfortunately, client and server implementations are less available than with VNC. I'm looking for something more like this:

    "Net2Displayâ„¢: A Proposed VESA Standard for Remoting
    and I/O Devices over Networks

    Abstract: The proposed Net2Displayâ„¢ VESA standard is
    intended for remoting displays and USB I/O devices with
    responsiveness, performance and motion video user
    experience comparable to a local PC. This proposed
    standard will enable client displays to connect over wired
    or wireless networks to host computers located centrally in
    businesses or homes or remotely at service facilities."

    http://www.ncl.cs.columbia.edu/publications/adeac2006_fordist.pdf
     

Share This Page