Skip to content

VirtualBox Image

PhilippvK edited this page Apr 19, 2020 · 10 revisions

Download Link

Image available only to course participants and shared via mail. The Download will only be available for a period of 2 weeks!

Prerequisites

  • Install VirtualBox (https://www.virtualbox.org/wiki/Downloads)
  • (Additionally install 'Oracle VM VirtualBox Extension Pack' for optimal support)
  • Make sure that you have at least 10 GB of free disk storage as the disk image dynamically increases in size

Importing

  • You have to unzip the archive which is about 2 GB big.
  • Double click the file with the extension .vbox. VirtualBox should load up automatically.
    • If for some reason VirtualBox does not automatically open you will have to import it manually.
    • Do NOT use File->Import Appliance as the VM was not exported to OVF format as this does not compress as well
    • To "import" the VM go to the Machine menu and select Machine->Add, navigate to the extracted archive contents and select the .vbox file. Done.
    • If when starting the VM VirtualBox complains about the network interfaces, select Change Network Settings then change Attached to: to NAT. If you need, for example, a static IP, googling this should return a lot of hits.
    • You might get a "Failed to do..." error on the first boot. This is usually the result of a metadata missmatch and should be automatically resolved after the first boot.

Initial Steps

  • While the required software and libraries and also the recommended IDE (VSCode) is preinstalled in the image, the Codebase for the Emulator still has to be downloaded by you. Create a working directory like src, git or workspace inside the home directory (~) and clone your fork of https://github.com/alxhoff/FreeRTOS-Emulator.git to a subdirectory.
  • As you probably want to integrate changes made to the original Repository to your fork it is helpful to add another remote to the repository you have just cloned. To do so, execute
    git remote add upstream https://github.com/alxhoff/FreeRTOS-Emulator.git
    git fetch upstream
    
    inside the FreeRTOS-Emulator folder.

Details

  • Lubuntu (16.04, 64 bit)
  • As lightweight (in file size) as the toolchain allows.
  • Login should happen automatically but if you require f.e. to establish a SSH connection the default password for the user rtos-sim is rtos-sim 😉
  • Beside a few shortcuts to commonly used software you will find two scripts called ZOOM and RESET on the Guests Desktop. While ZOOM sets the screen resolution to 800x600 and hides the taskbar for a sort of "presentation mode", RESET should restore the configuration to the one recommended by VirtualBox (depending on the current window size). The scripts are automatically called when launching the emulator via a Remote Connection so you can ignore them or use them to play a scaled up version of your game. An additional shortcut called KILL may help to exit the application if the Emulator does not respond to any actions.
  • You will realize that there is a modded shell enabled by default in the Terminal windows. It is called fish and you can read more about it if you are interested.

(Optional) Configuration

  • Customize Number of CPUs/Amount of RAM to your needs.
  • For accessing the VM (Guest) from your local machine (f. e. when performing remote Development via VSCode) a "Host-only Network“ is established. As the a static IP address should be used you have to disable the DHCP Server for this network inside the VirtualBox Settings (Explanations: Available soon...). After this you can reach the VM via 192.168.57.106. (See https://gist.github.com/pjdietz/5768124 for details about static IPs in Host-Only Networks)
  • The default keyboard layout inside the prepared VM should be "Englisch (US)", but you can change it to "German (QWERTZ)" easily by clicking the flag icon in right part of the task bar. You can also add other layouts if required, by launching the panel's settings via da right click.

Performance Issues?

  • There are no official minimum requirements regarding your computers hardware, but you will experience lags when running the VM on a very low spec device in terms of CPU cores, RAM or GPU performance.
  • In the case of such a terrible performance, that the emulator is not usable at all, you have to choose an alternative solution with less overheads. Developing on a native Linux distribution will result in the best possible performance, if practicable.
  • How installing such a system (in parallel to a Windows installation) works, is well documented in the internet, but as there are some risks, it is essential that you take care of what you are doing and backup your data before.
  • Depending on your OS and graphics card, enabling 3D Acceleration in the display tab of the VirtualBox properties may improve the frame rate or even make it worse. Try out both options if you are experiencing heavy lags or similar problems.