[back to L4 home page]
 

The L4 µ-Kernel Family

Back to L3 main page

Navigate L3 Section:


Site Navigation:

(* = offsite link)

Quick links:

L3 FAQ

Questions answered in this FAQ


Questions and Answers

I'm really interested in L4, not L3. When will L4 become available?
A preliminary (and somewhat tested) version of L4 has been made available by GMD at ftp://borneo.gmd.de/pub/rs/L4/.

We've also made available a source/binary distribution of the version of the L4 microkernel we're using locally. Please see the L4 Developer's page for instructions on how to get it. (96/08/12)

Which of the cross development tools you have developed will be possible to use for L4, too, when it becomes available?
Please see the L4 Developer's Resources page. (96/07/26)

I can make very little out of the L3 shell instructions in German.
I understand that this must be difficult to you... It's difficult for me, too. Part of the problem is that we don't have a language reference manual for L3's embedded ELAN interpreter/compiler (i.e., the shell you're seeing), not even a German one. (Well, the German L3 User's manual contains an introduction to ELAN.)

The (German) L3 reference handbook might be kind of a help to you as it lists all existing ELAN procedures alphabetically.

I also find the help command useful. For instance, help("*copy*") lists all ELAN procedures that contain "copy". (Leave the editor that's being popped up with ESC Q.) This helps you to find the correct syntax for a command once you've guessed its name. :-) (96/03/31)

When I try to link a program using `i386-l3-gcc -g' I get an "-lg not found", if I remove the -g flag I get a "-lc not found". Do I need a libc.a?
No, you don't need libc.a (there is no libc.a). Either specify "-nostartfiles -nostdlib" on the gcc command line, or link using `i386-l3-ld' directly. (96/03/22)

I've set up the cross compiler, and I've compiled/linked a binary, now what are the steps that I need to take to get this to run under L3 (on the PC)?
Try this:
  • Make sure the l3/l3_env/elan/runx ELAN program (from the libl3 snapshot) has DOS line endings (CR LF)... (The snapshot's version comes with Unix line endings...) Otherwise, L3's ELAN compiler will get confused.

  • Put `runx' and the program binary, say `hello', on a DOS floppy.

  • Create a task on the L3 system in the PUBLIC branch. If you have configured your L3 console using `configurator.new', this can be done by moving the cursor to "PUBLIC" and then typing "ESC e"; you will be prompted for the new task's name, and after you've entered it (e.g., "user"), the new task will be started. You should see the new task's ELAN prompt. (To return back to the console's task list, you may type "ALT-PrtScr" at any time.)

  • Insert the floppy. At the ELAN prompt, type:
      reserve(archive)
    
    This will bind the floppy manager to your task. (You may later release the binding using "release(archive)".)

  • Type
      fetch all (archive)
    
    This should copy the floppy's contents into the task.

  • Type
      insert("runx")
    
    This will define some new ELAN procedures required to run a.out binaries.

  • Typing
      runx("hello")
    
    will launch your `hello' program in a new task "hello".

  • Type
      link(/"hello")
    
    to bind your terminal to the "hello" task. (You may also do this using the terminal manager's task list.)

For more information, read the corresponding section of the L3 documentation. (96/03/20)

Are the L3 sources available anywhere (kernel or OS)?
Currently, most of the OS' ELAN environment's sources are freely available. They're part of the L3Frei distribution, and they're also available (in .tar.gz format) from the L3 sources archive.

ACI (the commercial L3 distributor) plans to release both kernel and (full) OS sources publicly, but hasn't done that yet; you may want to ask Werner Metterhausen of ACI about that.

However, the kernel sources should be available on request from Jochen Liedtke.

A word of warning, however: The compilers/assembler to build the kernel and some of the OS subsystems are not freely available. Work has been planned to port the kernel to another assembler, but this hasn't been done yet, either. (96/03/22)


Last modified: Thu Aug 12 19:08:45 1999


Operating Systems Group