This quick start applies to both OpenEPOS and the didactic version of EPOS used in the Dedicated Operating Systems course. A detailed User Guide is also available.
In order to download any version of EPOS you must first register yourself by visiting the EPOS' web site and clicking on Register.
You can download OpenEPOS releases from the download page and development versions from EPOS SVN Server.
You can download the didactic version of EPOS for the first exercise from EPOS SVN Server using an SVN client. For a command line client, use:
svn co https://epos.lisha.ufsc.br/svn/teaching/ine5424 epos
Recent versions of EPOS can go with any (recent) GCC
version. However, since EPOS is itself the operating system, the
compiler cannot rely on a libc
compiled for another
OS (such as LINUX). A cross-compiler is needed even if your
source and target machines are x86-based PCs. You can download a
precompiled GCC
for EPOS from EPOS web site or compile a newlib-based
tool-chain yourself (not recommended, since you are reading a
beginner's guide).
Simply open a release tarball or check out a version from the SVN server at the place you want EPOS to be installed. You don't need to bother about the chosen path nor set any environment variable. EPOS is fully self contained.
If you also downloaded a tool-chain tarball, open it at
/usr/local/ia32
whenever possible. If you do not have
access to that path, you'll have to adjust the makedefs
file in EPOS' main directory.
At the directory where you installed EPOS' source code, type:
make
If everything goes right, you should end with something like this:
EPOS bootable image tool EPOS mode: library Machine: pc Processor: ia32 (32 bits, little endian) Memory: 32768 KBytes Boot Length: 128 KBytes Node id: will get from the network Creating EPOS bootable image in "img/philosophers_dinner.img": Adding boot strap "img/pc_boot": done. Adding setup "img/pc_setup": done. Adding application "philosophers_dinner": done. Adding specific boot features of "pc": done. Image successfully generated (49460 bytes)!
Otherwise, here you have a simple troubleshooting list:
#as86: command not found
install the dev86 package
Ubuntu 64 bits
install the ia32-libs, lib32stdc++6, libc6-i386, and libc6-dev-i386 packages
At the directory where you installed and compiled EPOS, type:
make run
If everything goes right, qemu
gets invoked to boot from the disk image generated on successful compilations.