Computer Systems Minix Lab
In this lab, we will extend the systemcall library, by adding user_send and user_receive, that allow for messages to be sent and received between user processes.
The specifications for the exercise are in the following file:

Specifications
Preamble
This document decribes how to install a virtual machine running Minix in VirtualBox.
Start by creating a directory CSlab, and move into that directory.
Minix sources
Below you will find the installation disk and sources for Minix on Intel architectures. See also the distribution site for documentation on Minix.
Download the iso file, you need it to install Minix
(see also Minix installation).
Installation of Minix within Virtual Box 4.2.18
Start up Virtual Box; you'll get a window with some buttons.
- Click [New] to go to "Name and operating system"
- Name: Minix
- Operating System: Other
- Version: Other/Unknown
- Click [Continue] to go to "Memory size"
- Choose 64Mb (or anything larger: this memory will be claimed by VirtualBox, so do not make it too large)
- Click [Continue] to go to "Hard Drive"
- Select "Create a vritual hard drive now"
- Click [Create] to go to "Hard drive file type"
- Click [Continue] to go to "Storage on physical hard drive"
- Select "Dynamically allocated"
- Click [Continue] to go to "File location and size"
- Choose 2GB (more than enough: space will only be allocated as needed, so in reality the virtual hard disk will be a lot smaller)
- Click [Create]
Control now moves back to the main window, and you will see your virtual machine appear on the left. Select it.
-
Settings:
- General:
- Basic:
- Name: Minix
- Operating System: Other
- Version: Other/Unknown
- Advanced: use the default settings
- Description: use the default settings
- System:
- Motherboard:
- Base Memory: 64Mb
- Boot Order: Tick off the Floppy box
- Chipset: PIIX3
- Extended Features: All off
- Processor:
- Processor(s): 1 CPU
- Execution Cap: 100%
- Extended Features: "Enable PAE/NX" off
- Acceleration:
- Hardware Virtualization: on
- Display:
- Video:
- Video Memory: 16 MB (Minix runs in black-and-white, so does not need much)
- Monitor Count: 1
- Extended Features: all off
- Remote Display:
- Storage:
- Disk: Minix.vdi
- DVD: Empty
Select the icon there: on the right a new interface appears
- Attributes: Select the disk icon to the right of the text box
- Select "Choose a virtual CD/DVD disk file ..."
- In the "open" interface, select Minix3.iso
Now Minix3.iso will appear on the left
- Audio
- Network, Ports, Shared Folders: use the standard settings
- Click [OK] to leave the settings.
- Click [Start], hit 1. Login as root (does not ask for a password).
In case you need to leave VirtualBox, a the right-hand bottom the exit key is displayed.
Type setup and follow the instructions: uk, option 6 for the ethernet card, full install, automatic,
return for the disk and region number, and yes for the installation, return (thrice) for the size of /home, 4K blocks.
It will start the installation, scan the disks for bad blocks, and finish writing a lot of files.
- At the end, type shutdown, and close the window.
Select "Power off the machine", and Click [OK]
- Go back to "Settings / Storage".
Select the icon in front of Minix3.iso, select the icon after IDE Secondary and select
"Remove disk from virtual drive": it was needed only for installation. Click [OK].
- Click [Start] again: this will now start the installed system.
Do not answer the first question you see, and Minix will roll towards the login prompt.
Type root; this will bring you to /root.
The sources for Minix are in /usr/src.
Recompilation of the system is achieved by typing make world there;
depending on your CPU, this will take a couple of minutes.
(See also here.)