* src/extensionident.c: Added ID to name lookup service and changed
name of id/name translation status code. This propagated to multiple
functions. The user API service added was rtems_object_id_to_name()
* Jump table for single entry point removed.
* include/rtems/directives.h, src/entrytable.c: Removed.
* include/Makefile.am, src/Makefile.am, src/exinit.c: Modified to
reflect above.
* Mega patch merge to change the format of the object IDs to
loosen the dependency between the SCORE and the various APIs.
There was considerable work to simplify the object name management
and it appears that the name_table field is no longer needed.
This patch also includes the addition of the internal mutex
which is currently only used to protect some types of allocation
and deallocation. This significantly can reduce context
switch latency under certain circumstances. In particular,
some heap/region operations were O(n) and had dispatching
disabled. This should help enormously. With this merge,
the patch is not as clean as it should be. In particular,
the documentation has not been modified to reflect the new object
ID layout, the IDs in the test screens are not updated, and
_Objects_Get_information needs to be a real routine not inlined.
As part of this patch a lot of MP code for thread/proxy blocking
was made conditional and cleaned up.
* include/confdefs.h, src/exinit.c, src/extension.c, src/itronapi.c,
src/posixapi.c, src/rtemsapi.c: Modified as part of above.
* src/exinit.c: Slightly rework initialization so there
is a valid thread as _Thread_Executing when the pre_tasking
hook is called. This allows one directives and malloc
to potentially use mutex protection.
* PR132 requested some tinkering ot lower memory.
* include/confdefs.h: Lowered footprint of device driver table
and statically configure user extensions. Now if no static
extensions are configured, then the table is not instantiated.
* optman/, optman/.cvsignore, optman/Makefile.am, optman/no-ext.c,
optman/no-io.c: Removed entire contents of optman/ directory since
it has been moved.
* include/confdefs.h, include/rtems/config.h, include/rtems/io.h,
optman/no-io.c, src/exinit.c, src/io.c: Added a device driver
register/unregister interface to allow device drivers to be
installed and removed at runtime. This means you do not need devices
present in the device table when you build.
* include/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
* include/Makefile.am: Use 'PREINSTALL_FILES ='.
* inline/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
* macros/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
* POSIX include files merged into newlib. This resulted in
some definitions moving to other files and thus some secondary
effects in RTEMS source code.
* include/confdefs.h: Replaced include of <sys/siginfo.h> with
<signal.h> since that file no longer exists.
* include/confdefs.h: Modified code that accounts for initialization
task/threads with greater than minimum stack sizes so it would
compile even if optional APIs are disabled.