Changeset c2153cf in rtems

02/29/08 00:23:04 (15 years ago)
Joel Sherrill <joel.sherrill@…>
4.10, 4.11, 4.9, 5, master

2008-02-28 Joel Sherrill <joel.sherrill@…>

  • shell/.cvsignore, shell/, shell/memory.t, shell/preface.texi, shell/shell.texi: Added much information the Preface. Created initial version of Configuration and Intialization chapter. Links are now complete from start to end of manual.
  • shell/confinit.t: New file.
1 added
6 edited


  • doc/ChangeLog

    rfbd6c0f rc2153cf  
     12008-02-28      Joel Sherrill <>
     3        * shell/.cvsignore, shell/, shell/memory.t,
     4        shell/preface.texi, shell/shell.texi: Added much information the
     5        Preface. Created initial version of Configuration and Intialization
     6        chapter. Links are now complete from start to end of manual.
     7        * shell/confinit.t: New file.
    192008-02-28      Joel Sherrill <>
  • doc/shell/.cvsignore

    rfbd6c0f rc2153cf  
  • doc/shell/

    rfbd6c0f rc2153cf  
    1515FILES = shell.texi preface.texi
    17 GENERATED_FILES = general.texi file.texi memory.texi rtems.texi network.texi
     17GENERATED_FILES = confinit.texi general.texi file.texi memory.texi \
     18    rtems.texi network.texi
    1920COMMON_FILES += $(top_srcdir)/common/cpright.texi
    24 general.texi: general.t
     25confinit.texi: confinit.t
    2526        $(BMENU2) -p "Preface" \
    2627            -u "Top" \
    27             -n "" < $< > $@
     28            -n "General Commands" < $< > $@
     30general.texi: general.t
     31        $(BMENU2) -p "Configuration and Initialization rtems_shell_init - initialize the shell" \
     32            -u "Top" \
     33            -n "File and Directory Commands" < $< > $@
    2935file.texi: file.t
    30         $(BMENU2) -p "" \
     36        $(BMENU2) -p "General Commands exit - exit the shell" \
    3137            -u "Top" \
    32             -n "" < $< > $@
     38            -n "Memory Commands" < $< > $@
    3440memory.texi: memory.t
    35         $(BMENU2) -p "" \
     41        $(BMENU2) -p "File and Directory Commands cd - alias for chdir" \
    3642            -u "Top" \
    37             -n "" < $< > $@
     43            -n "RTEMS Specific Commands" < $< > $@
    3945rtems.texi: rtems.t
    40         $(BMENU2) -p "" \
     46        $(BMENU2) -p "Memory Commands malloc - obtain information on C program heap" \
    4147            -u "Top" \
    42             -n "" < $< > $@
     48            -n "Network Commands" < $< > $@
    4450network.texi: network.t
    45         $(BMENU2) -p "" \
     51        $(BMENU2) -p "RTEMS Specific Commands dname - displays information about named drivers" \
    4652            -u "Top" \
    47             -n "" < $< > $@
     53            -n "Function and Variable Index" < $< > $@
    4955EXTRA_DIST = general.t file.t memory.t rtems.t network.t
  • doc/shell/memory.t

    rfbd6c0f rc2153cf  
    441 @subsection malloc - obtain information on c program heap
     441@subsection malloc - obtain information on C program heap
    443443@pgindex malloc
  • doc/shell/preface.texi

    rfbd6c0f rc2153cf  
    10 @node Preface, General Commands, Top, Top
     10@node Preface, Configuration and Initialization, Top, Top
    1111@end ifinfo
    1212@unnumbered Preface
    1414Real-time embedded systems vary widely based upon their
    15 operational and maintenance requirements. Many of these
    16 systems now include a command line interface which can
    17 be used to diagnostic
     15operational and maintenance requirements. Some of these
     16systems provide ways for the user or developer to interact
     17with them.  This interaction could be used for operational,
     18diagnostic, or configuration purposes.  The capabilities
     19described in this manual are those provided with RTEMS to
     20provide a command line interface for user access.  Some
     21of these commands will be familiar as standard POSIX utilities
     22while others are RTEMS specific or helpful in debugging
     23and analyzing an embedded system. As a simple example of
     24the powerful and very familiar capabilities that the RTEMS
     25Shell provides to an application, consider the following
     26example which hints at some of the capabilities available:
     29Welcome to rtems-
     30COPYRIGHT (c) 1989-2008.
     31On-Line Applications Research Corporation (OAR).
     33Login into RTEMS
     35login: rtems
     38RTEMS SHELL (Ver.1.0-FRC):/dev/console. Feb 28 2008. 'help' to list commands.
     39SHLL [/] $ cat /etc/passwd
     41rtems:*:1:1:RTEMS Application::/:/bin/sh
     42tty:!:2:2:tty owner::/:/bin/false
     43SHLL [/] $ ls /dev
     44-rwxr-xr-x   1  rtems   root           0 Jan 01 00:00 console
     45-rwxr-xr-x   1   root   root           0 Jan 01 00:00 console_b
     462 files 0 bytes occupied
     47SHLL [/] $ stackuse
     48Stack usage by thread
     49    ID      NAME    LOW          HIGH     CURRENT     AVAILABLE     USED
     500x09010001  IDLE 0x023d89a0 - 0x023d99af 0x023d9760      4096        608
     510x0a010001  UI1  0x023d9f30 - 0x023daf3f 0x023dad18      4096       1804
     520x0a010002  SHLL 0x023db4c0 - 0x023df4cf 0x023de9d0     16384       6204
     530xffffffff  INTR 0x023d2760 - 0x023d375f 0x00000000      4080        316
     54SHLL [/] $ mount -L
     55File systems: msdos
     56SHLL [/] $
     57@end smallexample
     59In the above example, the user @i{rtems} logs into a
     60SPARC based RTEMS system.  The first command is
     61@code{cat /etc/passwd}.  This simple command lets us
     62know that this application is running the In Memory
     63File System (IMFS) and that the infrastructure has
     64provided dummy entries for @i{/etc/passwd} and a few
     65other files.  The contents of @i{/etc/passwd} let
     66us know that the user could have logged in as @code{root}.
     67In fact, the @code{root} user has more permissions
     68than @code{rtems} who is not allowed to write into the
     71The second command is @code{ls /dev} which lets us
     72know that RTEMS has POSIX-style device nodes which
     73can be accesses through standard I/O function calls.
     75The third command executed is the RTEMS specific
     76@code{stackuse} which gives a report on the stack
     77usage of each thread in the system.  Since stack
     78overflows are a common error in deeply embedded systems,
     79this is a surprising simple, yet powerful debugging aid.
     81Finally, the last command, @code{mount -L} hints that
     82RTEMS supports a variety of mountable filesystems. With
     83support for MS-DOS FAT on IDE/ATA and Flash devices as
     84well as network-based filesystens such as NFS and TFTP,
     85the standard free RTEMS provides a robuse infrastructure
     86for embedded applications.
     88This manual describes the RTEMS Shell and its command set.
     89In our terminology, the Shell is just a loop reading user
     90input and turning that input into commands with argument.
     91The Shell provided with RTEMS is a simple command reading
     92loop with limited scripting capabilities.  It can be connected
     93to via a standard serial port or connected to the RTEMS
     94@code{telnetd} server for use across a network.
     96Each command in the command set is implemented as a single
     97subroutine which has a @i{main-style} prototype.  The commands
     98interpret their arguments and operate upon stdin, stdout, and
     99stderr by default.  This allows each command to be invoked
     100independent of the shell.
     102The described separation of shell from commands from communications
     103mechanism was an important design goal.  At one level, the RTEMS
     104Shell is a complete shell environment providing access to multiple
     105POSIX compliant filesystems and TCP/IP stack.  The subset of
     106capabilities available is easy to configure and the standard
     107Shell can be logged into from either a serial port or via telnet.
     108But at another level, the Shell is a large set of components which
     109can be integrated into the user's developed command interpreter.
     110In either case, it is trivial to add custom commands to the command
     111set available.
  • doc/shell/shell.texi

    rfbd6c0f rc2153cf  
    6868@include preface.texi
     69@include confinit.texi
    6970@include general.texi
    7071@include file.texi
    8182* Preface::
     83* Configuration and Initialization::
    8284* General Commands::
    8385* File and Directory Commands::
    98 @node Function and Variable Index, Concept Index, , Top
     100@node Function and Variable Index, Concept Index, Network Commands route - show or manipulate the ip routing table, Top
    99101@unnumbered Function and Variable Index
    100102@printindex fn
Note: See TracChangeset for help on using the changeset viewer.