[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
[rtl] mini-HOWTO
Sorry for the crosspost, I don't know how many people are listening on
documentation@realtimelinux.org yet :-)
Attached I send a new version of the RTL-mini-HOWTO. As befor you can
visit it at
http://www-public.rz.uni-duesseldorf.de/~jochen/computer/RT-Linux/RTL-mini-HOWTO.html
This is not an official site yet, though. Please don't bookmark it or
even provide links - it will end up in a very different URL after
publication.
I want to encourage everybody to look at the doc and provide feedback.
Esp. missing links, corrections and descriptions of the various systems
are needed.
Whatever _you_ consider important is wellcome :-)
Cheers,
-- Jochen
Heinrich-Heine-Universit”t, Institut f¸r Physikalische Chemie I
Universit”tsstr. 1, Geb. 26.43.02.29, 40225 D¸sseldorf, Germany
phone 02118113681 fax 02118115195 -- www-public.rz.uni-duesseldorf.de/~jochen
Jochen@Uni-Duesseldorf.de -- Jochen.Kuepper@FernUni-Hagen.de -- Kuepper@ACM.org
#LyX 1.1 created this file. For more info see http://www.lyx.org/
# $Id: RTL-mini-HOWTO.lyx,v 1.4 1999/12/19 22:02:56 jochen Exp $
\lyxformat 2.15
\textclass linuxdoc
\language english
\inputencoding default
\fontscheme default
\graphics default
\paperfontsize default
\spacing single
\papersize a4paper
\paperpackage a4
\use_geometry 0
\use_amsmath 0
\paperorientation portrait
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\quotes_times 2
\papercolumns 1
\papersides 1
\paperpagestyle default
\layout Title
\added_space_top vfill \added_space_bottom vfill
Real-Time Linux mini-HOWTO
\layout Author
Jochen K¸pper
\layout Date
v0.2 - 19.
Dezember 1999
\layout Abstract
This document is an introduction into Real-Time Linux in general.
It is intended to help people to learn about the availability and performance
of these systems.
As such it is not intended to replace real documentation of Real-Time Linux
systems, but shall provide an entry point into Real-Time Linux world.
\layout Standard
\begin_inset LatexCommand \tableofcontents{}
\end_inset
\layout Section
Introduction
\layout Subsection
What is
\emph on
Real-Time
\emph default
Linux ?
\layout Standard
It is not an easy question to answer what a
\emph on
Real-Time
\emph default
system is in general.
A description of the main principles might include
\layout Itemize
The system is capable of performing some specific work within guaranteed
resource constraints.
\layout Itemize
Timing constraints are usually in the sub-ms area, not minutes.
\layout Itemize
The uncertainty timing is defined and low (typically < 25 us).
It is kept in any circumstances.
\layout Itemize
100% reliability.
\layout Standard
There are several Linux based approaches available that address the specific
needs of
\emph on
Real-Time
\emph default
systems - that is what we call
\emph on
Real-Time
\emph default
Linux.
\layout Standard
This document is supposed to help you find information on all the
\emph on
Real-Time
\emph default
Linux systems available.
For first descriptions of these systems, how to obtain them, and for pointers
to additional information look at section
\begin_inset LatexCommand \ref[Getting Started]{GettingStarted}
\end_inset
.
\layout Subsection
History
\layout Standard
This document was started on 16.
December 1999 by
\begin_inset LatexCommand \url[Jochen K¸pper]{mailto:jochen@uni-duesseldorf.de}
\end_inset
right after the first
\emph on
Real-Time
\emph default
Linux Workshop in Vienna.
\layout Subsection
New versions
\layout Standard
New versions of this document can be obtained from my
\begin_inset LatexCommand \url[web-page]{http://www-public.rz.uni-duesseldorf.de/~jochen}
\end_inset
and hopefully soon from the
\begin_inset LatexCommand \url[Linux Documentation project]{http://www.linuxdoc.org}
\end_inset
and
\begin_inset LatexCommand \url[realtimelinux.org]{http://www.realtimelinux.org}
\end_inset
as well.
\layout Subsection
Copyrights and Trademarks
\layout Standard
This document is Copyright (C) 1999 Jochen K¸pper.
\layout Standard
It may be reproduced in whole or in part, without fee, subject to the following
restrictions:
\layout Itemize
The copyright notice above and this permission notice must be preserved
complete on all complete or partial copies.
\layout Itemize
Any translation or derived work must be approved by the author in writing
before distribution.
\layout Itemize
If you distribute this work in part, instructions for obtaining the complete
version of this manual must be included, and a means for obtaining a complete
version provided.
\layout Itemize
Small portions may be reproduced as illustrations for reviews or quotes
in other works without this permission notice if proper citation is given.
\layout Standard
Exceptions to these rules may be granted for academic purposes: Write to
the author and ask.
These restrictions are here to protect us as authors, not to restrict you
as learners and educators.
All source code in this document is placed under the GNU General Public
License, available via anonymous FTP from the
\begin_inset LatexCommand \url[GNU archive site]{ftp://prep.ai.mit.edu/pub/gnu/COPYING}
\end_inset
.
\layout Subsection
Acknowledgements
\layout Standard
I want to thank all people involved in the development of
\emph on
Real-Time
\emph default
Linux systems, drivers and applications for providing and enhancing these
great systems.
Especially the
\emph on
Real-Time
\emph default
Linux workshop in Vienna provided a wealth of information to this document.
\layout Section
Getting Started
\begin_inset LatexCommand \label{GettingStarted}
\end_inset
\layout Subsection
Available
\emph on
Real-Time
\emph default
Linux Systems
\layout Subsubsection
NMT RT-Linux
\layout Standard
This was the very first implementation on a Linux-based hard
\emph on
real-time
\emph default
system.
\layout Standard
At the time it is at version 2.0.
It nativly offers a POSIX like API, doesn't conform completely, though.
It supports uniprocessor and SMP x86 based machines.
It is activly maintained by the group of Victor Yodaiken at the New Mexico
Institut of Technology and Mining.
\layout Subsubsection
DIAPM RTAI
\layout Standard
This Real Time Application Interface (RTAI) is a split-off of version 1
of NMT RT-Linux using a very powerfull native API similar to the NMT RT-Linux
v1 API.
A POSIX API wrapper based on the LinuxThreads package is available within
the distribution.
RTAI is activly maintained by the group of Paolo Mategazza at Dipartimento
di Ingegneria Aerospaziale Politecnico di Milano, Italy.
\layout Subsubsection
KURT
\layout Standard
The
\emph on
real-time
\emph default
modifications to the standard Linux kernel from Douglas Niehaus' group
aim at good soft
\emph on
real-time
\emph default
performance with small changes to the standard system.
\layout Subsubsection
Linux/RK
\layout Standard
This is a resource kernel implementation based on Linux.
It puts an
\emph on
portable resource kernel
\emph default
besides the standad Linux kernel and tries to guaranty access to certain
specified resources to applications.
\layout Subsubsection
RED-Linux
\layout Subsubsection
SMART
\layout Standard
A soft
\emph on
real-time
\emph default
system aiming at good multimedia-performance on heavy-loaded systems.
\layout Subsection
Obtaining RT-Linux
\layout Standard
All
\emph on
Real-Time
\emph default
Linux systems described herein can be downloaded on the Internet.
Look at section
\begin_inset LatexCommand \ref[Further Information]{FurtherInformation}
\end_inset
for the homepages of the products you are interested in.
There you will find links to their homepages, these will give you detailed
instructions how to obtain and install the respective system.
\layout Standard
Furthermore there are several companies offering paid professional support
on
\emph on
Real-Time
\emph default
Linux systems, a list of which can be found in section
\begin_inset LatexCommand \ref[Companies]{Companies}
\end_inset
.
\layout Subsection
Installation
\layout Standard
For various reasons installation instructions of the different
\emph on
Real-Time
\emph default
Linux systems are not included here!
\layout Standard
If this document would include real installation instructions, to my mind
these would need to be very comprehensive and enable any new user to install
\emph on
Real-Time
\emph default
Linux.
This would blow up this document to much though, and also would make it
very hard to maintain - therefore in here a general installation scheme
and links to individual installation instructions of all systems are given.
\layout Subsubsection
General installation scheme
\layout Standard
If you do not really understand what this section is all about, don't worry
to much - it is intended to give you a sketch of what is needed to do,
but in no way replaces comprehensive installation instructions available
at the sites listed in section
\begin_inset LatexCommand \ref[Comprehensive Installation Instructions]{InstallationLinks}
\end_inset
.
\layout Standard
To install any
\emph on
Real-Time
\emph default
Linux system you first have to obtain the respective
\emph on
Real-Time
\emph default
Linux distribution, look at the projects homepages listed in section
\begin_inset LatexCommand \ref[Web-pages]{Webpages}
\end_inset
.
You also need a fresh Linux kernel matching you
\emph on
Real-Time
\emph default
Linux distribution.
Usually that is the latest stable Linux kernel - currently
\family typewriter
2.2.13
\family default
.
After unpacking them you have modify the Linux kernel, most easily done
by some means of patching it.
Then you need to configure, build, install, and reboot the kernel as you
would do with any plain kernel.
Afterwards you need to compile the
\emph on
Real-Time
\emph default
Linux system and insert the modules providing the functionality you wish
to use.
\layout Standard
At this pointed you definitly should look at the examples provided with
all distributions and get into
\emph on
Real-Time
\emph default
Linux world, ...
.
\layout Subsubsection
Comprehensive Installation Instructions
\begin_inset LatexCommand \label{InstallationLinks}
\end_inset
\layout Standard
Well, that stuff needs to be done soon.
We should probably make a short lyx or sgml doc for every system and put
all of them onto one site - at least html and ps/pdf :-)
\layout Standard
Phil's on NMT-RTL and RTAI are a very nice starting point, I guess.
\layout Section
Further information
\begin_inset LatexCommand \label{FurtherInformation}
\end_inset
\layout Subsection
Web-pages
\begin_inset LatexCommand \label{Webpages}
\end_inset
\layout Standard
General information, documentation and links can be found at the
\begin_inset LatexCommand \url[Real-Time Linux Portal]{http://www.realtimelinux.org}
\end_inset
.
Looking for supported hardware the
\begin_inset LatexCommand \url[Comprehensive Real-Time Linux Archive Network]{http://www.realtimelinux.org/CRAN}
\end_inset
might be helpfull.
\layout Standard
Moreover there are distribution specific pages available, some of which
actually contain a lot of information for users of other
\emph on
Real-Time
\emph default
Linux systems as well.
(There is no meaning to the order of this list, but simply the time I happended
to got aware of these pages.)
\layout Itemize
\begin_inset LatexCommand \url[RT-Linux at NMT]{http://www.rtlinux.org}
\end_inset
\layout Itemize
\begin_inset LatexCommand \url[RTAI at DIAPM]{http://www.rtai.org}
\end_inset
\layout Itemize
\begin_inset LatexCommand \url[KURT]{http://hegel.ittc.ukans.edu/projects/kurt/}
\end_inset
\layout Itemize
Linux/RK - nothing on the web yet ?
\layout Itemize
\begin_inset LatexCommand \url[RED-Linux]{http://}
\end_inset
\layout Itemize
\begin_inset LatexCommand \url[SMART]{http://}
\end_inset
Scheduling Multimedia Applications for Linux.
\layout Standard
Other
\emph on
Real-Time
\emph default
Linux related sites are
\layout Itemize
\begin_inset LatexCommand \url[pk]{http://www.cornfed.com/pk}
\end_inset
: A POSIX Threads Kernel.
\layout Itemize
The
\begin_inset LatexCommand \url[EL/IX]{http://sourceware.cygnus.com/elix/}
\end_inset
API.
\layout Subsection
Mailing Lists
\layout Standard
There are several mailing lists available to discuss
\emph on
Real-Time
\emph default
Linux topics.
Non system specific lists are
\layout Itemize
\begin_inset LatexCommand \url[Real-Time Linux mailing list]{mailto:realtime@realtimelinux.org}
\end_inset
for all general discussions of
\emph on
Real-Time
\emph default
Linux systems and applications.
\begin_inset LatexCommand \url[Subscription information]{http://www.realtimelinux.org/maillist.html}
\end_inset
and an
\begin_inset LatexCommand \url[archive]{http://www.realtimelinux.org/archives/realtime}
\end_inset
are available.
\layout Itemize
\begin_inset LatexCommand \url[Real-Time Linux documentation mailing list]{mailto:documentation@realtimelinux.org}
\end_inset
for discussions related to
\emph on
Real-Time
\emph default
Linux documentation.
\layout Standard
System specific lists are
\layout Itemize
The
\begin_inset LatexCommand \url[rtlinux mailing list]{mailto:rtl@rtlinux.org}
\end_inset
for discussions of NMT
\emph on
Real-Time
\emph default
Linux.
RTAI discussions go here as well.
An
\begin_inset LatexCommand \url[archive]{http://rtlinux.cs.nmt.edu/cgi-bin/wilma/rtl}
\end_inset
is available.
\layout Itemize
The
\begin_inset LatexCommand \url[KURT mailing list]{mailto:kurt@ittc.ukans.edu}
\end_inset
.
\layout Section
Applications
\layout Standard
In here pointers to selected applications of
\emph on
Real-Time
\emph default
Linux applications are given.
Overall these projects nicely show the strength and flexibility of
\emph on
Real-Time
\emph default
Linux systems:
\layout Itemize
\begin_inset LatexCommand \url[Digital control of dynamic systems]{http://server.aero.polimi.it/projects/rtl_variant/articolo/RTLart.html}
\end_inset
.
\layout Itemize
A
\begin_inset LatexCommand \url[Biomedical Experiment interface]{http://cardiodyn.med.cornell.edu/~dchristi/rtlinux}
\end_inset
.
Christini, D.J., et al.,
\shape italic
Annals of Biomedical Engineering
\shape default
27(1999), 180.
\layout Standard
( Does it make sense to create a page with links to _all_ applications of
\emph on
Real-Time
\emph default
Linux systems ? Anybody willing to maintain that ? )
\layout Section
\emph on
Real-Time
\emph default
Linux product vendors
\begin_inset LatexCommand \label{Companies}
\end_inset
\layout Standard
Several companies provide professional development and support resources
for
\emph on
Real-Time
\emph default
Linux systems:
\layout Itemize
\begin_inset LatexCommand \url[FSM Labs]{http://www.fsmlabs.com}
\end_inset
\layout Itemize
\begin_inset LatexCommand \url[Zentropix]{http://www.zentropix.com}
\end_inset
\layout Section
FAQs
\layout Standard
( Probably just a pointer to a real FAQ in here, I guess.
There is none yet, though :-)
\the_end