Changeset 2723df7 in rtems for doc/develenv/direct.t


Ignore:
Timestamp:
Nov 27, 2007, 7:31:13 PM (13 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Children:
0c62889
Parents:
4ed0280e
Message:

2007-11-27 Joel Sherrill <joel.sherrill@…>

  • develenv/develenv.texi, develenv/direct.t, develenv/intro.texi, develenv/sample.t, develenv/utils.t: Update directory tree.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • doc/develenv/direct.t

    r4ed0280e r2723df7  
    11@c
    2 @c  COPYRIGHT (c) 1988-2002.
     2@c  COPYRIGHT (c) 1989-2007.
    33@c  On-Line Applications Research Corporation (OAR).
    44@c  All rights reserved.
     
    6969                      rtems-VERSION
    7070                           |
    71    +--------+----+----+----+--+-----+---+------+-----+
    72    |        |    |    |       |     |   |      |     |
    73 aclocal automake c contrib  cpukit doc make scripts tools
     71   +--------+----+----+----+--+-----+---+-------+--------+
     72   |        |    |    |       |     |   |       |        |
     73aclocal automake c contrib  cpukit doc make testsuites tools
    7474@end group
    7575@end example
     
    110110This directory contains contributed support software.  Currently
    111111this directory contains the RPM specifications for cross-compilers
    112 hosted on GNU/Linux that target Cygwin and Solaris.  The
     112hosted on GNU/Linux that target various operating systems
     113including MinGW, Cygwin, FreeBSD, and Solaris.  The
    113114cross-compilers produced using these specifications are then
    114 used in a Canadian cross build procedure to produce the Cygwin
    115 and Solaris hosted RTEMS toolsets on a GNU/Linux host.  This
    116 directory will not be discussed further in this document.
     115used in a Canadian cross build procedure to produce the various
     116RTEMS toolsets on a GNU/Linux host. 
     117
     118This directory also contains RPM specifications for the
     119prebuilt cross-compilation toolsets provided by the
     120RTEMS project.  There are separate subdirectories
     121for each of the components in the RTEMS Cross Compilation
     122Environment unde the  @code{contrib/crossrpms/} directory.
     123This directory is configured, built, and installed separately
     124from the RTEMS executive and tests.  This directory will not
     125be discussed further in this document.
     126
    117127
    118128@item $@{RTEMS_ROOT@}/cpukit/
     
    124134for most RTEMS services reside under this directory.
    125135The contents of this directory will be discussed
    126 in the @ref{Directory Structure CPUKit Directory} section.
     136in the @ref{Directory Structure CPU Kit Directory} section.
    127137
    128138@item $@{RTEMS_ROOT@}/doc/
     
    147157and will not be discussed further in this document.
    148158
    149 @item $@{RTEMS_ROOT@}/scripts/
    150 This directory contains the RPM specifications for the
    151 prebuilt cross-compilation toolsets provided by the
    152 RTEMS project.  There are separate subdirectories
    153 for each of the components in the RTEMS Cross Compilation
    154 Environment including @code{binutils/}, @code{gcc3newlib/},
    155 and @code{gdb/}.  This directory is configured, built,
    156 and installed separately from the RTEMS executive
    157 and tests.  This directory will not be discussed further
    158 in this document.
     159@item $@{RTEMS_ROOT@}/testsuites/
     160This directory contains the test suites for the
     161various RTEMS APIs and support libraries.  This
     162contents of this directory are discussed in the
     163@ref{Directory Structure testsuites/ Test Suites} section.
    159164
    160165@item $@{RTEMS_ROOT@}/tools/
     
    189194This directory is logically the root for the RTEMS components
    190195which are CPU model or board dependent.  Thus this directory
    191 is the root for the BSPs and the various Test Suites as well
     196is the root for the BSPs and the Ada Test Suites as well
    192197as CPU model and BSP dependent libraries.  The contents of
    193198this directory are discussed in the
     
    214219
    215220@table @code
     221@item $@{RTEMS_ROOT@}/c/src/ada/
     222This directory contains the Ada95 language bindings to the
     223RTEMS Classic API.
     224
    216225@item $@{RTEMS_ROOT@}/c/src/ada-tests/
    217226This directory contains the test suite for the Ada
     
    243252controllers, and real-time clocks.
    244253
    245 @item $@{RTEMS_ROOT@}/c/src/libmisc/
    246 This directory contains support facilities which
    247 are RTEMS specific but otherwise unclassified.  In
    248 general, they do not adhere to a standard API. 
    249 Among the support facilities in this directory are
    250 a @code{/dev/null} device driver, the Stack
    251 Overflow Checker, a mini-shell, the CPU and
    252 rate monotonic period usage monitoring libraries,
    253 and a utility to "dump a buffer" in a nicely
    254 formatted way similar to many ROM monitors.
    255 
    256 @item $@{RTEMS_ROOT@}/c/src/libnetworking/
    257 This directory contains the networking components which
    258 might be tailored based upon the particular BSP.  This
    259 includes the RTEMS telnetd, httpd, and ftpd servers.
    260 
    261254@item $@{RTEMS_ROOT@}/c/src/librdbg/
    262255This directory contains the Ethernet-based remote debugging
     
    280273directive implementations in this Optional Managers
    281274return @code{E_NOTCONFIGURED}.
    282 
    283 @item $@{RTEMS_ROOT@}/c/src/tests/
    284 This directory contains the test suites for the
    285 various RTEMS APIs and support libraries.  This
    286 contents of this directory are discussed in the
    287 @ref{Directory Structure c/src/tests/ Test Suites} section.
    288275
    289276@item $@{RTEMS_ROOT@}/c/src/wrapup/
     
    349336
    350337@c
    351 @c  c/src/tests/ Test Suites
    352 @c
    353 @subsection c/src/tests/ Test Suites
     338@c  CPU Kit Directory
     339@c
     340@section CPU Kit Directory
     341
     342@c The @code{cpukit/} directory structure is as follows:
     343
     344@c
     345@c  CPU Kit Tree
     346@c
     347
     348@c @ifset use-ascii
     349@c @example
     350@c @group
     351@c                        cpukit
     352@c                          |
     353@c   +-----------+----------+-----------+----------+
     354@c   |           |          |           |          |
     355@c posix       rtems       sapi       score     wrapup
     356@c @end group
     357@c @end example
     358@c @end ifset
     359
     360The @code{cpukit/} directory contains a set of subdirectories which
     361contains the source files comprising the executive portion of
     362the RTEMS development environment as well as portable support
     363libraries such as support for the C Library and filesystems.
     364The API specific and "SuperCore" (e.g. @code{score/} directory)
     365source code files are separated into distinct directory trees.
     366
     367The following is a description of each of the subdirectories
     368under @code{cpukit/}:
     369
     370@table @code
     371
     372@item $@{RTEMS_ROOT@}/cpukit/aclocal/
     373This directory contains the custom M4 macros which are available to
     374the various GNU autoconf @code{configure.ac} scripts throughout
     375the CPU Kit portion of the RTEMS source tree.
     376GNU autoconf interprets @code{configure.ac}
     377files to produce the @code{configure} files used to tailor
     378RTEMS build for a particular host and target environment.  The
     379contents of this directory will not be discussed further in this
     380document.
     381
     382@item $@{RTEMS_ROOT@}/cpukit/automake/
     383This directory contains files which are "Makefile fragments."
     384They are included as required by the various @code{Makefile.am}
     385files throughout the CPU Kit portion of the RTEMS source tree.
     386
     387@item $@{RTEMS_ROOT@}/cpukit/ftpd/
     388This directory contains the RTEMS ftpd server.
     389
     390@item $@{RTEMS_ROOT@}/cpukit/httpd/
     391This directory contains the port of the GoAhead
     392web server to RTEMS.
     393
     394@item $@{RTEMS_ROOT@}/cpukit/include/
     395This directory contains header files which are private to
     396RTEMS and not considered to be owned by any other component
     397in the CPU Kit.
     398
     399@item $@{RTEMS_ROOT@}/cpukit/itron/
     400This directory contains the implementation of the
     401ITRON API.
     402
     403@item $@{RTEMS_ROOT@}/cpukit/libblock/
     404This directory contains support code for using
     405Block Devices such as hard drives, floppies, and
     406CD-ROMs.  It includes the generic IO primitives
     407for block device drivers, disk caching support,
     408and a RAM disk block device driver.
     409
     410@item $@{RTEMS_ROOT@}/cpukit/libcsupport/
     411This directory contains the RTEMS specific support routines
     412for the Newlib C Library.  This includes what are referred
     413to as system calls and found in section 2 of the traditional
     414UNIX manual.   In addition, it contains a thread-safe
     415implementation of the Malloc family of routines as well
     416as BSD and POSIX services not found in Newlib.
     417
     418@item $@{RTEMS_ROOT@}/cpukit/libfs/
     419This directory contains the various non-networked
     420filesystem implementations for RTEMS.  It includes
     421the In-Memory FileSystem (IMFS), the mini-IMFS,
     422and FAT filesystems.
     423
     424@item $@{RTEMS_ROOT@}/cpukit/libi2c/
     425This directory contains the RTEMS I2C framework.
     426
     427@item $@{RTEMS_ROOT@}/cpukit/libmd/
     428This directory contains a port of the standard MD5
     429checksum code.
     430
     431@item $@{RTEMS_ROOT@}/c/src/libmisc/
     432This directory contains support facilities which
     433are RTEMS specific but otherwise unclassified.  In
     434general, they do not adhere to a standard API. 
     435Among the support facilities in this directory are
     436a @code{/dev/null} device driver, the Stack
     437Overflow Checker, a mini-shell, the CPU and
     438rate monotonic period usage monitoring libraries,
     439and a utility to "dump a buffer" in a nicely
     440formatted way similar to many ROM monitors.
     441
     442@item $@{RTEMS_ROOT@}/cpukit/libnetworking/
     443This directory contains the port of the FreeBSD
     444TCP/IP stack to RTEMS.
     445
     446@item $@{RTEMS_ROOT@}/cpukit/librpc/
     447This directory contains the port of the FreeBSD
     448RPC/XDR source to RTEMS.
     449
     450@item $@{RTEMS_ROOT@}/cpukit/posix/
     451This directory contains the RTEMS implementation
     452of the threading portions of the POSIX API. 
     453
     454@item $@{RTEMS_ROOT@}/cpukit/pppd/
     455This directory contains a port of the free implementation
     456of the PPPD network protocol.
     457
     458@item $@{RTEMS_ROOT@}/cpukit/rtems/
     459This directory contains the implementation of the
     460Classic API.
     461
     462@item $@{RTEMS_ROOT@}/cpukit/sapi/
     463This directory contains the implementation of RTEMS
     464services which are required but beyond the realm
     465of any standardization efforts.  It includes
     466initialization, shutdown, and IO services.
     467
     468@item $@{RTEMS_ROOT@}/cpukit/score/
     469This directory contains the "SuperCore" of RTEMS.
     470All APIs are implemented in terms of SuperCore services.
     471For example, Classic API tasks, POSIX threads, and ITRON
     472tasks are all implemented in terms of SuperCore threads.
     473This provides a common infrastructure and a high degree
     474of interoperability between the APIs.  For example,
     475services from all APIs may be used by any task/thread
     476independent of the API used to create it.
     477
     478Within the @code{score/} directory the CPU dependent modules are found.
     479The @code{score/cpu/} subdirectory contains a subdirectory for each
     480target CPU supported by this release of the RTEMS
     481executive.  Each processor directory contains the CPU dependent
     482code necessary to host RTEMS.  The @code{no_cpu} directory provides a
     483starting point for developing a new port to an unsupported
     484processor.  The files contained within the @code{no_cpu} directory
     485may also be used as a reference for the other ports to specific
     486processors.
     487
     488@item $@{RTEMS_ROOT@}/cpukit/shttpd/
     489This directory contains the port of the Simple HTTPD
     490web server to RTEMS.
     491
     492@item $@{RTEMS_ROOT@}/cpukit/telnet/
     493This directory contains the RTEMS telnetd server.
     494
     495@item $@{RTEMS_ROOT@}/cpukit/wrapup/
     496This directory is responsible for taking the individual
     497libraries and objects built in each of the components
     498in the RTEMS CPU Kit source tree and bundling them
     499together to form the single RTEMS library @code{librtemscpu.a}.  This
     500library contains all BSP and CPU model specific software.
     501
     502@item $@{RTEMS_ROOT@}/cpukit/zlib/
     503This directory contains a port of the GNU Zlib compression
     504library to RTEMS.
     505
     506@end table
     507
     508@c
     509@c  testsuites/ Test Suites
     510@c
     511@section testsuites/ Test Suites
    354512
    355513This directory provides all of the RTEMS Test Suite
     
    364522@table @code
    365523
    366 @item $@{RTEMS_ROOT@}/c/src/tests/itrontests/
     524@item $@{RTEMS_ROOT@}/testsuites/itrontests/
    367525This directory contains the test suite for the
    368526RTEMS ITRON API.
    369527
    370 @item $@{RTEMS_ROOT@}/c/src/tests/libtests/
     528@item $@{RTEMS_ROOT@}/testsuites/libtests/
    371529This directory contains the test suite for the
    372530various RTEMS support components.
    373531
    374 @item $@{RTEMS_ROOT@}/c/src/tests/mptests/
     532@item $@{RTEMS_ROOT@}/testsuites/mptests/
    375533This directory contains the test suite for the
    376534multiprocessor support in the Classic API.
     
    379537in RTEMS.
    380538
    381 @item $@{RTEMS_ROOT@}/c/src/tests/psxtests/
     539@item $@{RTEMS_ROOT@}/testsuites/psxtests/
    382540This directory contains the test suite for the
    383541RTEMS POSIX API.
    384542
    385 @item $@{RTEMS_ROOT@}/c/src/tests/samples/
     543@item $@{RTEMS_ROOT@}/testsuites/samples/
    386544This directory provides sample application tests
    387545which aid in the testing a newly built RTEMS environment, a new
     
    390548@ref{Sample Applications}.
    391549
    392 @item $@{RTEMS_ROOT@}/c/src/tests/sptests/
     550@item $@{RTEMS_ROOT@}/testsuites/sptests/
    393551This directory contains the test suite for the RTEMS
    394552Classic API when executing on a single processor.
     
    401559by tests in the POSIX API and ITRON API Test Suites.
    402560
    403 @item $@{RTEMS_ROOT@}/c/src/tests/support/
     561@item $@{RTEMS_ROOT@}/testsuites/support/
    404562This directory contains support software and header files
    405563for the various test suites.
    406564
    407 @item $@{RTEMS_ROOT@}/c/src/tests/tmitrontests/
     565@item $@{RTEMS_ROOT@}/testsuites/tmitrontests/
    408566This directory contains the timing test suite for
    409567the RTEMS ITRON API.
    410568
    411 @item $@{RTEMS_ROOT@}/c/src/tests/tmtests/
     569@item $@{RTEMS_ROOT@}/testsuites/tmtests/
    412570This directory contains the timing test suite for
    413571the RTEMS Classic API.  This include tests that
     
    420578a side-effect of analyzing the results of these tests.
    421579
    422 @item $@{RTEMS_ROOT@}/c/src/tests/tools/
     580@item $@{RTEMS_ROOT@}/testsuites/tools/
    423581This directory contains tools which execute on
    424582the development host and aid in executing and
     
    435593
    436594@c
    437 @c  CPUKit Directory
    438 @c
    439 @section CPUKit Directory
    440 
    441 @c The @code{cpukit/} directory structure is as follows:
    442 
    443 @c
    444 @c  CPUKit Tree
    445 @c
    446 
    447 @c @ifset use-ascii
    448 @c @example
    449 @c @group
    450 @c                        CPUKit
    451 @c                          |
    452 @c   +-----------+----------+-----------+----------+
    453 @c   |           |          |           |          |
    454 @c posix       rtems       sapi       score     wrapup
    455 @c @end group
    456 @c @end example
    457 @c @end ifset
    458 
    459 The @code{cpukit/} directory contains a set of subdirectories which
    460 contains the source files comprising the executive portion of
    461 the RTEMS development environment as well as portable support
    462 libraries such as support for the C Library and filesystems.
    463 The API specific and "SuperCore" (e.g. @code{score/} directory)
    464 source code files are separated into distinct directory trees.
    465 
    466 The following is a description of each of the subdirectories
    467 under @code{cpukit/}:
    468 
    469 @table @code
    470 
    471 @item $@{RTEMS_ROOT@}/cpukit/aclocal/
    472 This directory contains the custom M4 macros which are available to
    473 the various GNU autoconf @code{configure.ac} scripts throughout
    474 the CPU Kit portion of the RTEMS source tree.
    475 GNU autoconf interprets @code{configure.ac}
    476 files to produce the @code{configure} files used to tailor
    477 RTEMS build for a particular host and target environment.  The
    478 contents of this directory will not be discussed further in this
    479 document.
    480 
    481 @item $@{RTEMS_ROOT@}/cpukit/ada/
    482 This directory contains the Ada95 language bindings to the
    483 RTEMS Classic API.
    484 
    485 @item $@{RTEMS_ROOT@}/cpukit/automake/
    486 This directory contains files which are "Makefile fragments."
    487 They are included as required by the various @code{Makefile.am}
    488 files throughout the CPU Kit portion of the RTEMS source tree.
    489 
    490 @item $@{RTEMS_ROOT@}/cpukit/include/
    491 This directory contains header files which are private to
    492 RTEMS and not considered to be owned by any other component
    493 in the CPU Kit.
    494 
    495 @item $@{RTEMS_ROOT@}/cpukit/itron/
    496 This directory contains the implementation of the
    497 ITRON API.
    498 
    499 @item $@{RTEMS_ROOT@}/cpukit/libblock/
    500 This directory contains support code for using
    501 Block Devices such as hard drives, floppies, and
    502 CD-ROMs.  It includes the generic IO primitives
    503 for block device drivers, disk caching support,
    504 and a RAM disk block device driver.
    505 
    506 @item $@{RTEMS_ROOT@}/cpukit/libcsupport/
    507 This directory contains the RTEMS specific support routines
    508 for the Newlib C Library.  This includes what are referred
    509 to as system calls and found in section 2 of the traditional
    510 UNIX manual.   In addition, it contains a thread-safe
    511 implementation of the Malloc family of routines as well
    512 as BSD and POSIX services not found in Newlib.
    513 
    514 @item $@{RTEMS_ROOT@}/cpukit/libfs/
    515 This directory contains the various non-networked
    516 filesystem implementations for RTEMS.  It includes
    517 the In-Memory FileSystem (IMFS), the mini-IMFS,
    518 and FAT filesystems.
    519 
    520 @item $@{RTEMS_ROOT@}/cpukit/libnetworking/
    521 This directory contains the port of the FreeBSD
    522 TCP/IP stack to RTEMS.
    523 
    524 @item $@{RTEMS_ROOT@}/cpukit/librpc/
    525 This directory contains the port of the FreeBSD
    526 RPC/XDR source to RTEMS.
    527 
    528 @item $@{RTEMS_ROOT@}/cpukit/posix/
    529 This directory contains the RTEMS implementation
    530 of the threading portions of the POSIX API. 
    531 
    532 @item $@{RTEMS_ROOT@}/cpukit/rtems/
    533 This directory contains the implementation of the
    534 Classic API.
    535 
    536 @item $@{RTEMS_ROOT@}/cpukit/sapi/
    537 This directory contains the implementation of RTEMS
    538 services which are required but beyond the realm
    539 of any standardization efforts.  It includes
    540 initialization, shutdown, and IO services.
    541 
    542 @item $@{RTEMS_ROOT@}/cpukit/score/
    543 This directory contains the "SuperCore" of RTEMS.
    544 All APIs are implemented in terms of SuperCore services.
    545 For example, Classic API tasks, POSIX threads, and ITRON
    546 tasks are all implemented in terms of SuperCore threads.
    547 This provides a common infrastructure and a high degree
    548 of interoperability between the APIs.  For example,
    549 services from all APIs may be used by any task/thread
    550 independent of the API used to create it.
    551 
    552 Within the @code{score/} directory the CPU dependent modules are found.
    553 The @code{score/cpu/} subdirectory contains a subdirectory for each
    554 target CPU supported by the @value{RELEASE} release of the RTEMS
    555 executive.  Each processor directory contains the CPU dependent
    556 code necessary to host RTEMS.  The @code{no_cpu} directory provides a
    557 starting point for developing a new port to an unsupported
    558 processor.  The files contained within the @code{no_cpu} directory
    559 may also be used as a reference for the other ports to specific
    560 processors.
    561 
    562 @item $@{RTEMS_ROOT@}/cpukit/wrapup/
    563 This directory is responsible for taking the individual
    564 libraries and objects built in each of the components
    565 in the RTEMS CPU Kit source tree and bundling them
    566 together to form the single RTEMS library @code{librtemscpu.a}.  This
    567 library contains all BSP and CPU model specific software.
    568 
    569 @end table
    570 
    571 @c
    572595@c  Documentation Directory
    573596@c
     
    604627CPU supplements.
    605628
     629@item $@{RTEMS_ROOT@}/doc/cpu_supplement/
     630This directory contains the source code for the
     631RTEMS CPU Supplement.
     632
    606633@item $@{RTEMS_ROOT@}/doc/develenv/
    607634This directory contains the source code for the
     
    671698This directory contains the source code for the
    672699@cite{Getting Started with RTEMS for Ada Users} manual.
    673 
    674 @item $@{RTEMS_ROOT@}/doc/cpu_supplement/
    675 This directory contains the source code for the
    676 RTEMS CPU Supplement.
    677 the
    678700
    679701@item $@{RTEMS_ROOT@}/doc/tools/
Note: See TracChangeset for help on using the changeset viewer.