From a7c85f047fd2dc2d67a438e44b09f4a91e92ff57 Mon Sep 17 00:00:00 2001 From: Michael Gielda Date: Tue, 8 Apr 2014 23:23:32 +0200 Subject: Divided docs into chapters, closes #5 --- doc/source/appendix-b.rst | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 doc/source/appendix-b.rst (limited to 'doc/source/appendix-b.rst') diff --git a/doc/source/appendix-b.rst b/doc/source/appendix-b.rst new file mode 100644 index 0000000..49da58e --- /dev/null +++ b/doc/source/appendix-b.rst @@ -0,0 +1,46 @@ +Appendix B: POSIX and µITRON compatibility +========================================== + +By default, eCos allows the user to enable POSIX or µITRON compatibility, which may be beneficial for many applications. +This Appendix explains briefly how to use them with this eCos port. + +For more information refer to the `eCos Reference Guide`_, Chapters XIII and XIV. + +.. _eCos Reference Guide: http://ecos.sourceware.org/docs-3.0/pdf/ecos-3.0-ref-a4.pdf + +POSIX +----- + +:abbr:`POSIX (Portable Operating System Interface)`, is a well-known family of OS standards. +:abbr:`POSIX` defines the primitives, nomenclature and API which makes it easier to provide software compliance between operating systems. + +This is especially useful with regard to programming heterogeneous devices like the Colibri VF61, +where (especially with the :abbr:`POSIX` compatibility layer enabled), +the programming style for eCos applications dedicated for the Cortex-M4 core can vastly resemble that of Linux programs running on the Cortex-A5 core, +lowering the entry barrier for programmers. + +.. todo:: + + Describe how to enable POSIX compatibility, and point to a sample program. + +µITRON +------ + +µITRON is a the name of an Japanese open standard for RTOS, originally undertaken in 1984 under the guidance of Ken Sakamura. +eCos supports the µITRON version 3.02 specification, with complete "Standard functionality" (level S), plus many "Extended" (level E) functions. + +More about ITRON and µITRON can be read in the following sources: + +* `introduction to ITRON project `_ +* `µITRON3.0 specification `_ +* Dr. Sakamura’s book: uITRON 3.0, An Open and Portable Real Time Operating System for Embedded Systems + +Since eCos was designed with the µITRON guidelines in mind, it is not strictly necessary to "activate" this compatibility layer, as an eCos application may fulfill the standard anyway. +However, eCos provides a package named ``CYKPKG_UITRON`` setting some additional constraints, and adding it to the kernel is recommended for applications meant to be µITRON compliant. +To activate this package, use either :program:`ecosconfig` (``ecosconfig add CYGPKG_UITRON``) or :program:`configtool`: + +#. Choose :menuselection:`Build --> Packages` +#. Select :guilabel:`uITRON compatibility` and click :guilabel:`Add >>`, then :guilabel:`OK` +#. A new package, ``uITRON compatibility layer`` should appear in the package list - save your :abbr:`.ecc` file and exit. + +A sample application, verified to work as expected using the port can be found inside the port code, in the subdirectory :file:`compat/uitron/current/tests/test3.c` -- cgit v1.2.3