Advanced Operating Systems ETHZ
Go to file
2022-05-31 12:28:45 +00:00
.devcontainer Container USB mount should be disabled by default 2022-05-31 09:19:25 +00:00
.vscode Performance measurement framework 2022-05-05 21:23:01 +00:00
capabilities Main handout 2022-03-03 14:57:51 +01:00
devices enet: Implement driver 2022-05-27 19:11:22 +02:00
doc Main handout 2022-03-03 14:57:51 +01:00
errors Add file system 2022-05-31 09:52:28 +00:00
hake Add file system tests 2022-05-31 09:52:41 +00:00
include Added tests for the file system 2022-05-31 12:20:40 +00:00
kernel Tiny improvements while writing the report 2022-05-31 09:52:58 +00:00
lib Cleanup 2022-05-31 12:28:45 +00:00
performance Added block driver client and server 2022-05-31 09:50:06 +00:00
platforms Add file system tests 2022-05-31 09:52:41 +00:00
report Main handout 2022-03-03 14:57:51 +01:00
tools Merge remote-tracking branch 'handout/main' 2022-04-05 16:15:08 +02:00
trace_definitions Main handout 2022-03-03 14:57:51 +01:00
usr Cleanup 2022-05-31 12:28:45 +00:00
.clang-format Main handout 2022-03-03 14:57:51 +01:00
.gitignore Bug fixes 2022-04-04 15:16:17 +02:00
AUTHORS Main handout 2022-03-03 14:57:51 +01:00
default.nix Main handout 2022-03-03 14:57:51 +01:00
lab_env.sh Main handout 2022-03-03 14:57:51 +01:00
LICENSE Main handout 2022-03-03 14:57:51 +01:00
README.Barrelfish Main handout 2022-03-03 14:57:51 +01:00
README.md Main handout 2022-03-03 14:57:51 +01:00
shell.nix Main handout 2022-03-03 14:57:51 +01:00

AOS Code Repository

Welcome to AOS. This is the code handout repository.

The code in this repository is a simplified version of the Barrelfish OS.

License

see the LICENSE file.

Dependencies

Before you can start, make sure you have installed the following dependencies:

apt-get install build-essential bison flex ghc libghc-src-exts-dev \
                libghc-ghc-paths-dev libghc-parsec3-dev libghc-random-dev \
                libghc-ghc-mtl-dev libghc-async-dev picocom cabal-install freebsd-glue \
                libelf-freebsd-dev git gcc-aarch64-linux-gnu g++-aarch64-linux-gnu \
                qemu-efi-aarch64 qemu-system-arm qemu-utils python3 parted wget mtools

wget -P $HOME/bin https://github.com/NXPmicro/mfgtools/releases/download/uuu_1.4.165/uuu
chmod 755 $HOME/bin/uuu

Docker

Use the following command to obtain and start a Docker container with all dependencies.

./tools/bfdocker.sh

Building

To build Barrelfish, create a build directory, and execute Hake to generate the Makefile

mkdir build
cd build
../hake/hake.sh -s ../ -a armv8

Then you can use make to build Barrelfish. To obtain an overview of all targets execute

make help

Likewise, for all platforms that can be build

make help-platforms

and finally the boot targets with

make help-boot