Table of Contents

Please note, running the RI in a virtual machine is not officially supported

While it is possible to run the RI in a virtual machine, there is no official support for running the RI this configuration.  Here is some information which may be useful when running the RI in a Linux virtual machine.

Reported configurations

A number of virtual machine configurations have been reported.  All configurations report degraded video decode performance.  Please see the documentation for your virtual machine for ways to improve performance.  After further review, Fedora isn't listed for Fusion as a supported Guest OS, suggestion would be to use Ubuntu or CentOS instead: http://www.vmware.com/resources/compatibility/search.php?deviceCategory=software&testConfig=16

VirtualBox: https://www.virtualbox.org/manual/ch12.html

VMWare fusion: http://www.vmware.com/support/product-support/fusion/

Host information

Host VM

Guest OS

Notes

2.4 GHz Macbook Pro, Lion, 6G memory

VMWare Fusion

Fedora 11

Wireless didn't allow bridged mode to work, only NAT - had to use wired network in order to use bridged mode.  This appears to be a Lion/Fusion issue, as Ubuntu and other Fedora versions had the same issue.  Newer versions of Fedora performed worse , apparently due to an updated version of VLC.

Windows (version not reported)

VirtualBox

Fedora 13

No additional comments

2.66 GHz Macbook Pro, 6G memory

VMWare Fusion

Windows Vista, Fedora 12, Vista as boot camp

About 15 fps video, thread switching, event delivery, logging are all very fast, VMWare Player performance on a 3GHz Windows 7 desktop has similar performance.

Macbook Pro with 8 or 16G memory

VMWare Fusion

Ubuntu 10.04LTS

Provides adequate (smooth) FPS performance.

Additional details on setting up a Linux VM on VMware Workstation and Windows XP

Here is a description of how to run the OCAP RI and the ATE emulator in a Windows system, conversing with the UPnP simulator running in a Linux VM hosted on the Windows system via VMware Workstation. It assumes you have all necessary components installed in the appropriate places, and that you know how to operate them.

Disclaimer

This description may or may not apply to your installation. It applies to mine. Feel free to generalize this description if you can. Or correct anything that's wrong, for that matter.

Details of my installation are:

  • Dell Latitude E6400; Intel(R) Core(TM)2 Duo CPU; P8700 @ 2.53GHz; 2.53 GHZ, 3.48 GB of RAM; Physical Address Extension
  • Microsoft Windows XP; Professional; Version 2002; Service Pack 3
  • Linksys EtherFast Cable/DSL Router with 4-Port Switch
  • VMware Workstation 6.5.3 build-185404
  • Fedora 12; uname -a = 'Linux RI-4 2.6.31.9-174.fc12.i686 #1 SMP Mon Dec 21 06:24:20 UTC 2009 i686 i686 i386 GNU/Linux'

Linux Side

  1. Power off the VM.
  2. Click "Edit virtual machine settings".
  3. Click "Network Adapter".
  4. Select "Host-only: A private network shared with the host".
  5. Click "OK".
  6. Power on the VM.
  7. In a Terminal window, run ifconfig and note the eth1 IP address.
  8. Select System >Administration > Firewall.
  9. Click "Close" in the "Firewall Configuration Startup" window; enter the root password in the "Authenticate" window and click "Authenticate".
  10. In the "Firewall Configuration" window, in the column on the left, click "Trusted Interfaces".
  11. Check the checkbox on the "eth+" row.
  12. Click "Apply" (the big green checkmark).
  13. Click "Yes" in the "system-config-firewall" window.
  14. Close the "Firewall Configuration" window.
  15. In the file ~/atelite/upnp_sim/runManually.sh, ensure that IUT_NIC and ATE_NIC are both defined as eth1.

Windows Side

  1. Bring up the "Windows Firewall" control panel.
  2. Select the "Exceptions" tab.
  3. Under "Programs and Services:", check "UPnP Framework".
  4. Click "OK".
  5. In the file ~/atelite/config/main.cfg, change the IP address in the definition of atelite.upnpsim.address to the Linux VM eth1 IP address you noted earlier.
  6. In the file CServer.java, change the zero in String firstIf = HostInterface.getHostAddress(0); to the number corresponding to the appropriate VMware Network Adapter, and rebuild.

I have observed that often (for example, sometimes, when the machine comes out of hibernation) the Linux VM eth1 IP address increments. So if everything stops working, check it. If it has incremented, you will have to restart the simulator (ctrl-C should do it) and edit ~/atelite/config/main.cfg again.

  • No labels