Virtual Machine Installation (arm64, M1-M2 processor)

This page contains information about the Virtual Machine environment that will be used during the exam for arm64 processors (including M1 and M2 processors).

What does it contain?

The Virtual Machine contains a stripped-down Debian 11 image with some extras. Many of the applications that come with Debian (e.g., LibreOffice) have been removed. Firefox is the only browser and access to the internet is limited.

Note: There is a square overlayed on top-left of the display. This square is intentional and must be present on your VM. This square will be used during the exam to ensure that you are working from within the VM.

If you have a previous VM installed, make sure to download the latest version. Before the exam, make sure to remove all previous content that you might have added prior to the exam since this is checked during the exam!

The VM gets updated during the course. Be sure to follow the announcements to see whether you should download an updated version.

With respect to IS1200/IS1500, the following software is installed:

Editors:

Browsers:

  • Mozilla Firefox

VM Desktop:

  • Mars MIPS Simulator (without "Cache Simulator", "Instruction Counter", "X-Ray", and "Instruction Statistics")
  • README.pdf
  • MIPS Reference Sheet

Compilers:

  • GNU C compiler (usable from terminal)
  • Terminal

 

VirtualBox: Step-by-Step Guide on How to Install and Run the VM

  1. Start by installing UTM to run virtual machines: https://mac.getutm.app/ Links to an external site. . Click on "Download" and not "MacApp Store". 
  2. Install UTM from the .dmg as a normal program.
  3. Download the Virtual Machine by clicking here Links to an external site. (updated May 30, 2023. note, it is a large file of 3GB).
    This link will open a OneDrive folder. Click on "Ladda ned" on the top-left corner (see image below). This will download a file called "2023-05-30-IS1200-IS1500.utm.zip" (if you download multiple times, your OS will create copies of it with different names). Unzip the file, which will extract a 2023-05-30-IS1200-IS1500.utm file.
    Screenshot 2023-02-15 at 10.17.12.png
  4. Once downloaded, open UTM and on the + button (see picture below)  
    Screenshot 2023-02-15 at 01.58.46.png
  5. Click on Open...
  6. Select the file .utm file that you extracted in step 3 (not the zip file!).
  7. Now, select the VM on the left bar and click the "Play" button.

After Installing the VM

The VM will automatically log you in. You username is "student". Click on "Activities" on the top-left corner and look on the side bar on the left. These will be the programs that you will use during the exam. Note that we changed the background picture so it will look slightly different.
Screenshot 2023-02-15 at 02.05.31.png
Open the README file (with the "i" icon) for more information, and start exploring the system:

  1. Make sure all the software is installed and working
  2. Make sure you can compile C source code.
  3. Make sure there is an image overlayed on the screen (top-left corner; note that the image will change on the exam day)
  4. Make sure the fullscreen mode works (on the top bar click on "View" and "Enter full screen") since that is how we will use it during the exam.
  5. Make sure you can access "canvas.kth.se"
  6. If something does not work, write a message to is1200@ict.kth.se or  is1500@ict.kth.se
  7. Make sure you can capture the mouse cursor. This can be done by clicking on the left-most symbol on the top-right angle of your UTM VM. See figure below. You must use the "capture mouse cursor" option during the exam. To "uncapture" the mouse, click simultaneously the "control" and "option" buttons on your keyboard. 
    Screenshot 2023-02-15 at 11.16.55.png

NOTE: It is strictly forbidden to install any other application on the VM other than what is already there. It is also strictly forbidden to have any other resources installed (e.g., books etc.) which fall under prohibited aids (see KTH's Code of Honor) .

 

Frequently Asked Questions/Problems:

Question 1: Does it work on M2 processors?
Answer 1: No, it does not seem to work there. 

Question 2: When importing the VM, I get a "failed to access data from shortcut" error. What should I do?
Answer 2: This is a well known bug within UTM. It seems to arise when UTM enters an inconsistent state after removing and re-adding VMs. We solved by following the instructions on this link Links to an external site.. Replace "username" in the command with your username. You may have to re-install UTM if the previous does not work. If the above does not work for you, try to remove the VM and then delete all the plist files. If it does not work, try to re-install UTM. 

Question 3: How do I click on the right button of the mouse/touchpad? 
Answer 3: we enabled two ways: 1) keep the button pressed, it will form a blue circle. When the circle is full, it is equivalent to clicking the right button. 2) you click with two fingers.  

Question 4: My keyboard has a different layout. Can I change it? How?
Answer 4:
The Swedish and English layouts are pre-installed. You can change between them in the top-right corner. Look for the "en" text and press the nearby arrow. To add different layouts, go to "activities". Search for "region" and click on "Region & Language". Click on the + symbol at the bottom. Click on the three dots. Clic on "Other". Search for "Swedish" (or else). Click on "Add". You will now be able to change the keyboard layout from the top-right corner of your desktop. Look for the "en" text followed by a downward arrow.

Question 5: When I click a symbol on my keyboard, I get a different one. What should I do?
Answer 5: See Question & Answer 4.

Question 6: How do I insert { or } with the Swedish keyboard layout?
Answer 6:
RightOption +7 or +10 works on our VMs.

Question 7: How do I copy/paste?
Answer 7:
Use the right-click (see question 3) or use control+c/+v (do not use command+c).

Question 8: The browser does not connect to the Internet. What can I do?
Answer 8: One student had this problem where accessing canvas.kth.se would return a "The connection has timed out" message. It was solved by the student by opening the VM settings and then setting "Network -> Network Mode -> Bridge (Advanced)" and "Network -> Bridged Interface -> en0"