HOWTOs: Difference between revisions

From TUDOS-Wiki
Jump to navigationJump to search
BjoernD (talk | contribs)
 
(30 intermediate revisions by 5 users not shown)
Line 1: Line 1:
How to build and run.
== Building Fiasco and L4Re components ==
 
=== Build ===


* [[Prerequisites]]
* [[Prerequisites]]
* Fiasco
* [http://os.inf.tu-dresden.de/fiasco/ Fiasco]
** [http://os.inf.tu-dresden.de/fiasco/use.html]
* [[L4Linux]]
* L4Env
* L<sup>4</sup>Linux
** [http://os.inf.tu-dresden.de/L4/LinuxOnL4/build-2.6.shtml Build instructions]
* [[Quickstart]]
* [[Quickstart]]


=== Running/Using ===
== Introduction to Fiasco.OC and L4Re ==
 
{| class="wikitable"
|-
! Topics !! colspan=2 | Material
|-
| Microkernels, Fiasco.OC, Threads || [http://os.inf.tu-dresden.de/~doebel/downloads/01-Intro.pdf Slides] || [http://www.youtube.com/watch?v=SyOcmVamsmI YouTube]
|-
| IPC, Memory, L4Re || [http://os.inf.tu-dresden.de/~doebel/downloads/02-MemoryAndIPC.pdf Slides] || [http://www.youtube.com/watch?v=1sAtnvsltIk YouTube]
|-
| Library Reuse, Device Drivers, (Para-)virtualization || [http://os.inf.tu-dresden.de/~doebel/downloads/03-AdvancedComponents.pdf Slides] || [http://www.youtube.com/watch?v=KeDyC5EcBiM YouTube]
|-
|}
 
== Running and using Fiasco and L4Re components ==


* Systems to use
* Systems to use
** hardware requirements
** hardware requirements
** virtual machines
** virtual machines
*** QEmu
*** [[QEmu]]
*** Fiasco-UX
*** Fiasco-UX
*** VMware
*** VMware
*** Virtualbox
*** Virtualbox
** Boot from [[CD image|CD]]
** Boot from [[TFTP server]]
* serial console
* serial console
* GRUB menu.lst
* Booting
* bootstrap
** [[GRUB]]
** modi
*** Enhanced GRUB1 [http://os.inf.tu-dresden.de/~adam/grub/ patches]
* Fiasco + hello
**** This GRUB1 version is maintained. You can send patches.
* L<sup>4</sup>Linux
**** Built image of [http://os.inf.tu-dresden.de/~adam/grub/0.97/pxegrub-0.97-os.8a.gz pxegrub]
* graphics modes
**** [[building patched grub]]
* loader
*** [[menu.lst]]
* network
**** [[menu.lst-Examples]]
*** [[GRUB2]]
** Images
*** Call 'make help' in the l4/ root directory to get a listing of possible image generation targets
*** See l4/conf/Makeconf.boot.example for more information on customization
*** u-boot:
**** Call 'make uimage E=entry' to generate an uImage
**** Load into u-boot (tftpboot, usb-stick, flash, ...)
**** bootm ....
*** ELF images: make elfimage E=name
**** loadable with any loader that understand ELF (including GRUB, Lauterbach, ARM RVDS, QEmu)
*** Raw images: make rawimage E=name
**** copy into RAM at the start address, set PC to start address and run
**** On ARM the images relocate itself to their linked address, i.e. they can be put anywhere in RAM (copying them to the right place will make booting faster of course).
** Qemu
*** Go to obj-dir root
*** Call 'make qemu E=entry'
*** For Qemu customization (esp. on ARM) see l4/conf/Makeconf.boot.example and add options to your l4/conf/Makeconf.boot
** Virtualbox
*** Go to obj-dir root
*** Call 'make vbox E=entry'
*** You need a configuration virtual machine in vbox for that to work. Check l4/conf/Makeconf.boot.example to see how to configuration vbox specifics.
** You may omit the E=entry which will present you a menu to choose the entry to generate/start from.
 
== Miscellaneous How-Tos ==
 
* [[gcc-stack|stacking colorgcc, ccache, distcc, and gcc]]
 
== Old L4Env Components ==
 
* [[Dice IDL compiler]]
* [[L4Env]]

Latest revision as of 10:24, 2 January 2013

Building Fiasco and L4Re components

Introduction to Fiasco.OC and L4Re

Topics Material
Microkernels, Fiasco.OC, Threads Slides YouTube
IPC, Memory, L4Re Slides YouTube
Library Reuse, Device Drivers, (Para-)virtualization Slides YouTube

Running and using Fiasco and L4Re components

  • Systems to use
    • hardware requirements
    • virtual machines
      • QEmu
      • Fiasco-UX
      • VMware
      • Virtualbox
    • Boot from CD
    • Boot from TFTP server
  • serial console
  • Booting
    • GRUB
    • Images
      • Call 'make help' in the l4/ root directory to get a listing of possible image generation targets
      • See l4/conf/Makeconf.boot.example for more information on customization
      • u-boot:
        • Call 'make uimage E=entry' to generate an uImage
        • Load into u-boot (tftpboot, usb-stick, flash, ...)
        • bootm ....
      • ELF images: make elfimage E=name
        • loadable with any loader that understand ELF (including GRUB, Lauterbach, ARM RVDS, QEmu)
      • Raw images: make rawimage E=name
        • copy into RAM at the start address, set PC to start address and run
        • On ARM the images relocate itself to their linked address, i.e. they can be put anywhere in RAM (copying them to the right place will make booting faster of course).
    • Qemu
      • Go to obj-dir root
      • Call 'make qemu E=entry'
      • For Qemu customization (esp. on ARM) see l4/conf/Makeconf.boot.example and add options to your l4/conf/Makeconf.boot
    • Virtualbox
      • Go to obj-dir root
      • Call 'make vbox E=entry'
      • You need a configuration virtual machine in vbox for that to work. Check l4/conf/Makeconf.boot.example to see how to configuration vbox specifics.
    • You may omit the E=entry which will present you a menu to choose the entry to generate/start from.

Miscellaneous How-Tos

Old L4Env Components