Operating Systems · Institute for System Architecture · Dept. of CS · TU Dresden

Open Trusted Computing (OpenTC)




Using the snapshot

To get started with the snapshot you can

If you want to use the EMSCB addon, please refer to the EMSCB instructions or to the EMSCB website.

Additional questions are answered in the FAQ.


Compiling from source

In order to build the provided source code, you should follow these instructions:

Required additional packages on OpenSUSE 10.2

In OpenSUSE, you can use the software management component of the Yast2 control center to install the following additional packages:
autoconf
automake
bison
doxygen
flex
gcc
gcc-c++
latex2html
ncurses-devel
python-curses
tetex / latex
transfig
zlib-devel

Required additional packages on Debian or Ubuntu

automake1.9
bison
build-essential
flex
gawk
latex2html
protoize
tcl8.4
tetex-extra
transfig
zlib1g-dev

Unpacking the source code

Create a new directory (e.g., ~/opentc/src/) and unpack the source tarball into it. The tarball contains the snapshot directory, which is structured as follows:
Makefile
Creates the default configuration for Fiasco, L4Linux 2.6 and L4 Environment L4Env.
l4
This directory contains the sources of the L4 Environment L4Env, uClibc and some tools needed for the build environment.
l4/pkg
The L4 Environment.
l4/pkg/uclibc
The uClibc.
l4/pkg/tool
Tools for L4Env.
tools
Additional tools.
kernel/fiasco
The microkernel L4 Fiasco source tree.
l4linux-2.6
The L4 Linux 2.6 source tree.
build
The directory containing the build directories of L4Env, Fiasco and L4Linux. The related binaries will be created here.
dice
This directory contains the sources of DICE.

Building the snapshot

Default configuration

You can install in one step the whole snapshot by calling 'make' in the root of the extracted source tree. This is the same as executing both following commands:

'make configure-all': configure the whole snapshot with the default configuration.
'make build-all': build the snapshot.

Customized configuration
Alternatively, you can customize the configuration by calling 'make config' and 'make' in the following build directories:
build/l4
Contains the overall L4 configuration for the userland.
build/fiasco_ia32
Contains the configuration for the L4 Fiasco kernel.
build/linux
Contains the configuration of L4Linux to build without device drivers.
build/linux_drv
Contains the configuration of L4Linux to build with device drivers (Network etc.).
Be careful! Your changes in the configuration of Fiasco, L4Env or L4Linux are made at your own risk! Only limited support is provided!

Prebuilt binaries of Fiasco, L4Env and L4Linux 2.6

We also provide prebuilt binaries for IA-32/i586 and Fiasco ABI version v2. The structure of the unpacked directory tree looks like this:
build/l4/bin/x86_586/l4v2/
This directory contains the binaries of the supported and translated L4Env services.
build/fiasco_ia32/
This directory contains the Fiasco binary.
build/l4/lib/x86_586/, build/l4/lib/x86_586/l4v2/
These directories contain L4Env libraries.
build/linux_drv/
L4Linux compiled with device drivers.
build/linux/
L4Linux compiled without device drivers.

Testing with the demo framework.

Unpack the demo tarball in the root directory of your OpenTC source tarball. In the created demo directory, call 'make' to start the demo.

If you want to try the ORe example with arping, please refer to the ore_howto.txt file in the config directory of the demo tarball.

Using the disk image

The demo tarball contains the disk image l4-demo-image-20060630 that can be used as virtual harddisk in an emulator like qemu.

The image contains a partition table and a 256MB ext2 partition. The provided Makefile will automatically update the image with your newly compiled binaries. If you want to modify the contents of the image manually, you need to mount it with:

mount -o loop,offset=32256 image mnt/
The L4 binaries reside in /boot/bin/ and the grub config file is /boot/grub/menu.lst.


FAQ

Where can I download patches?

Patches are available in the download directory. Please note that only critical bugfixes are available through this mechanism. Big changes and most feature requests are available with a next snapshot.

Can I download already patched sources?

Yes, all tarballs and also the disk image will be updated whenever we release a patch. However, this is only true for patches that have been officially announced on the web page. The filenames of the tarballs and the image also reflect the patchlevel as stated in the corresponding announcement in order to avoid confusion.
6. Jul 2007
· Copyright © 2001-2022 Operating Systems Group, TU Dresden | Impressum ·