Advanced Operating Systems ETHZ
Go to file
2022-03-28 15:33:53 +00:00
.devcontainer Added commands for handling Toradex build&run 2022-03-25 08:37:21 +00:00
.vscode Pass init EP to spawn child 2022-03-28 07:58:55 +00:00
capabilities Main handout 2022-03-03 14:57:51 +01:00
devices Main handout 2022-03-03 14:57:51 +01:00
doc Main handout 2022-03-03 14:57:51 +01:00
errors Extra/pass paging state 2022-03-24 14:18:15 +00:00
hake Add PIDs and Milestone 3 preparation 2022-03-25 15:51:38 +00:00
include Working Init Channel 2022-03-28 15:33:53 +00:00
kernel Implemented killing a process + test 2022-03-23 15:24:37 +00:00
lib Working Init Channel 2022-03-28 15:33:53 +00:00
platforms Add PIDs and Milestone 3 preparation 2022-03-25 15:51:38 +00:00
report Main handout 2022-03-03 14:57:51 +01:00
tools Clean up docker container after it stops 2022-03-04 17:40:50 +01:00
trace_definitions Main handout 2022-03-03 14:57:51 +01:00
usr Working Init Channel 2022-03-28 15:33:53 +00:00
.clang-format Main handout 2022-03-03 14:57:51 +01:00
.gitignore Main handout 2022-03-03 14:57:51 +01: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