L4Env: Difference between revisions

From TUDOS-Wiki
Jump to navigationJump to search
m (add link to manuals)
m (Reverted edits by Ogozasuta (talk) to last revision by Adam)
 
(6 intermediate revisions by 3 users not shown)
Line 11: Line 11:
===What it provides===
===What it provides===


* thread startup and termination
* [http://os.inf.tu-dresden.de/l4env/doc/html/thread/index.html L4 Threads]: thread startup and termination, thread-local storage
* task startup and termination
* [[Task server]] / [[hierarchical task interface]]: task startup and termination
* memory management (pager, malloc, free)
* [[Dataspace Managers]]: memory management (pager, malloc, free)
* services to start the system (bootstrap, roottask, etc.)
** dm_generic
* basic name service
** dm_mem
* dynamically start applications (loader, tftp, bmodfs)
** [http://os.inf.tu-dresden.de/l4env/doc/html/dm_phys/index.html dm_phys]
* C library (port of a subset of the uClibc)
* System bootup services (bootstrap, roottask, etc.)
* [http://os.inf.tu-dresden.de/l4env/doc/html/names/index.html Names]: basic name service
* Dynamic application startup (loader, ldso, tftp, bmodfs)
* [[LibC | C library]] (port of a subset of the uClibc)


More complex services are provided in additional packages:
More complex services are provided in additional packages:


* l4vfs: virtual console (vt100) support, higher level name service, basic file server, many more
* [[L4VFS]]: virtual console (vt100) support, higher level name service, basic file server, many more
* ports of different graphic libraries: qt3, qt4, sdl, etc.
* ports of different graphic libraries like [[Qt | Qt3]]
* basic window manager: nitpicker, DOpE
* console system: l4con
* basic window manager: [[Nitpicker]], [[DOpE]]
* signal: POSIX signalling mechanism


===What it does not provide===
===What it does not provide===
Line 29: Line 34:
* pthread library
* pthread library
* full file system support
* full file system support
* a full POSIX system


===Further information===
===Further information===


* [http://www.inf.tu-dresden.de/index.php?node_id=1587 L4Env manuals] (generated from current SVN sources)
* [http://www.inf.tu-dresden.de/index.php?node_id=1587 L4Env manuals] (generated from current SVN sources)

Latest revision as of 22:26, 24 November 2010

The L4 Environment, short L4Env, is a programming environment for applications that should run on the L4.Fiasco kernel. L4Env was developed to provide basic building blocks such as a C library or memory management.

Reasoning

Prior to L4Env application developer wrote their software to use the basic mechanisms provided by the L4 microkernel. These included software to provide functions, such as malloc, free, printf, etc. Because, the implementations were mostly similar and application developers should be writing applications, instead of support libraries, these software was combined into a programming environment.

Now that the L4Env provided basic functionality, more applications and more sophisticated software could be made run on L4.

L4Env might not be perfect and contain all the functionality someone might require, it has proven to be a stable basis. And, as demand requires, it grows to include more functionality.

What it provides

More complex services are provided in additional packages:

  • L4VFS: virtual console (vt100) support, higher level name service, basic file server, many more
  • ports of different graphic libraries like Qt3
  • console system: l4con
  • basic window manager: Nitpicker, DOpE
  • signal: POSIX signalling mechanism

What it does not provide

  • pthread library
  • full file system support
  • a full POSIX system

Further information