Module: xenomai-forge
Branch: master
Commit: 53feb6ab475106b587e6e0002159d15cd099cec1
URL:    
http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=53feb6ab475106b587e6e0002159d15cd099cec1

Author: Philippe Gerum <r...@xenomai.org>
Date:   Fri Mar 29 16:49:05 2013 +0100

copperplate/registry: introduce registry daemon

The registry support is managing a FUSE-based filesystem for exporting
the real-time objects created by the Xenomai core on behalf of the
application (e.g. semaphores, tasks, heaps and so on).

The hierarchy of the Xenomai registry is organized as follows:

/mount-point            /* registry fs root, defaults to /mnt/xenomai */
    /session            /* shared session name or "anon" */
        /pid            /* application pid */
           /skin        /* interface name: alchemy/vxworks/psos/... */
              /family   /* object kind (task, semaphore, ...) */
                 { exported objects... }
        /system         /* session-wide information */

Each leaf entry under a session hierarchy is normally viewable, for
retrieving the information attached to the corresponding object, such
as its state, and/or value. There can be multiple sessions hosted
under a single registry mount point. Session-less application
processes are grouped under the special "anon" hierarchy.

The /system hierarchy provides information about the current state of
the Xenomai core, transversely to all processes which belong to the
parent session. Typically, the status of all threads and heaps created
by the session can be retrieved.

The registry daemon is a companion tool managing exactly one registry
mount point, which is specified by the --root option on the command
line. The daemon monitors FUSE client mounts from applications,
removing stale process mount points as the latter come and go. It is
also in charge of exporting the /system hierarchy for each registry
mount point.

The daemon is automatically spawned by the registry support code as
required. There is normally no action required from users for managing
it.

NOTE: the implementation aims at unifying the registry support for
both Cobalt and Mercury cores. Currently, the registry fs is populated
only partially. More objects will be exported in future releases,
converging to a common hierarchy between Cobalt and Mercury.

---

 Makefile.in                                        |  135 +++--
 aclocal.m4                                         |  365 ++++++------
 config/Makefile.in                                 |    9 +-
 configure                                          |  451 ++++++++-------
 configure.in                                       |    2 +
 doc/Makefile.in                                    |  101 ++--
 doc/asciidoc/Makefile.in                           |    9 +-
 doc/docbook/Makefile.in                            |  103 ++--
 doc/docbook/custom-stylesheets/Makefile.in         |  101 ++--
 doc/docbook/custom-stylesheets/xsl/Makefile.in     |  101 ++--
 .../custom-stylesheets/xsl/common/Makefile.in      |    9 +-
 doc/docbook/custom-stylesheets/xsl/fo/Makefile.in  |    9 +-
 .../custom-stylesheets/xsl/html/Makefile.in        |    9 +-
 doc/doxygen/Makefile.in                            |    9 +-
 doc/man/Makefile.in                                |   13 +-
 doc/txt/Makefile.in                                |    9 +-
 include/Makefile.in                                |  107 ++--
 include/alchemy/Makefile.in                        |   23 +-
 include/analogy/Makefile.in                        |   23 +-
 include/asm-arm/Makefile.in                        |   97 ++--
 include/asm-arm/bits/Makefile.in                   |   23 +-
 include/asm-blackfin/Makefile.in                   |   97 ++--
 include/asm-blackfin/bits/Makefile.in              |   23 +-
 include/asm-generic/Makefile.in                    |   97 ++--
 include/asm-generic/bits/Makefile.in               |   23 +-
 include/asm-generic/ipipe/Makefile.in              |   23 +-
 include/asm-nios2/Makefile.in                      |   97 ++--
 include/asm-nios2/bits/Makefile.in                 |   23 +-
 include/asm-powerpc/Makefile.in                    |   97 ++--
 include/asm-powerpc/bits/Makefile.in               |   23 +-
 include/asm-sh/Makefile.in                         |   97 ++--
 include/asm-sh/bits/Makefile.in                    |   23 +-
 include/asm-x86/Makefile.in                        |   97 ++--
 include/asm-x86/bits/Makefile.in                   |   23 +-
 include/cobalt/Makefile.in                         |   97 ++--
 include/cobalt/nucleus/Makefile.in                 |   23 +-
 include/cobalt/sys/Makefile.in                     |   23 +-
 include/copperplate/Makefile.in                    |   23 +-
 include/copperplate/registry.h                     |   14 +-
 include/mercury/Makefile.in                        |   23 +-
 include/psos/Makefile.in                           |   23 +-
 include/rtdm/Makefile.in                           |   23 +-
 include/vxworks/Makefile.in                        |   23 +-
 lib/Makefile.am                                    |   14 +-
 lib/Makefile.in                                    |  105 ++--
 lib/alchemy/Makefile.in                            |   40 +-
 lib/analogy/Makefile.in                            |   40 +-
 lib/cobalt/Makefile.in                             |   39 +-
 lib/copperplate/Makefile.am                        |    6 +
 lib/copperplate/Makefile.in                        |  258 +++++++--
 lib/copperplate/init.c                             |   43 ++-
 lib/copperplate/internal.h                         |    3 +
 lib/copperplate/regd/Makefile.am                   |   30 +
 lib/copperplate/regd/Makefile.in                   |  632 ++++++++++++++++++++
 lib/copperplate/regd/fs-cobalt.c                   |  164 +++++
 lib/copperplate/regd/fs-common.c                   |  257 ++++++++
 lib/copperplate/regd/fs-mercury.c                  |  121 ++++
 lib/copperplate/regd/regd.c                        |  396 ++++++++++++
 lib/copperplate/regd/sysregfs.h                    |   62 ++
 lib/copperplate/registry.c                         |  321 +++++++----
 lib/include/Makefile.in                            |    9 +-
 lib/include/xeno_config.h.in                       |    3 +
 lib/psos/Makefile.in                               |   39 +-
 lib/vxworks/Makefile.in                            |   39 +-
 lib/vxworks/taskLib.c                              |    4 +-
 scripts/Makefile.in                                |    9 +-
 testsuite/Makefile.in                              |  101 ++--
 testsuite/clocktest/Makefile.in                    |   26 +-
 testsuite/cyclic/Makefile.in                       |   26 +-
 testsuite/latency/Makefile.in                      |   26 +-
 testsuite/regression/Makefile.in                   |  101 ++--
 testsuite/regression/posix/Makefile.in             |   25 +-
 testsuite/switchtest/Makefile.in                   |   26 +-
 testsuite/unit/Makefile.in                         |   26 +-
 testsuite/xeno-test/Makefile.in                    |   26 +-
 utils/Makefile.in                                  |  101 ++--
 utils/analogy/Makefile.in                          |   55 ++-
 utils/can/Makefile.in                              |   50 +-
 utils/ps/Makefile.in                               |   26 +-
 utils/slackspot/Makefile.in                        |   26 +-
 80 files changed, 4145 insertions(+), 1853 deletions(-)

Diff:   
http://git.xenomai.org/?p=xenomai-forge.git;a=commitdiff;h=53feb6ab475106b587e6e0002159d15cd099cec1

_______________________________________________
Xenomai-git mailing list
Xenomai-git@xenomai.org
http://www.xenomai.org/mailman/listinfo/xenomai-git

Reply via email to