4.11 Release Notes
From RTEMSWiki
|
|---|
Open Ideas are are: RTEMS411Ideas
This page lists the changes and improvements that are planned and/or have been made to the RTEMS development source since the 4.9 release branch was made. As usual, there will be submissions that are not expected and incorporated as ready into the 4.11 releases. In keeping with project history, the feature set of the 4.11 release series will be largely be driven by user submissions and requests.
Any snapshots made during this development effort are numbered 4.10.99.x.
The RTEMS project provides built tools sets that are available for download. For Linux the RPM package format is supported and available from the APT/Yum Repository. For Windows MinGW Executable Installers are available.
If any changes or enhancements are missing in this list, feel free to add them. After all, that's why this is a Wiki.
Tool Improvements
- TBD
- Alternative ARM tool chain configuration: arm-rtemseabi4.11
- Thanks again to Ralf, it is possible to provide target specific versions of the development tools. This is important when GCC drops support for an old architecture or we are avoiding target specific bugs in a particular tool version. Nominally, most RTEMS targets will use the same tools and they have been upgraded to the following versions:
- autoconf 2.65
- automake 1.11.1
- binutils 2.20.1
- gcc 4.5.x or C/C++ with newlib 1.18.0
- gdb 7.1
The latest patch for each tools is in rtems/contrib/crossrpms/patches.
RTEMS Improvements
In this section, we discuss public API level changes as well as improvements to the implementation of those API routines.
Public API changes usually fall into one of the following categories:
- Addition of new methods
- Modifications to prototypes
- Deletion of obsoleted methods
Implementation improvements usually fall into one of the following categories:
- Algorithm improvements in execution time or memory usage
- Critical section reduction
API Changes
- Score Chain API changed due to strict aliasing concerns. In case you have a compiler error related to RTEMS chains, you should use the appropriate API function and do not access chain control members directly.
- The loop back interface of the network stack will be initialized now during the normal initialization via rtems_bsdnet_initialize_network(). The loop back interface configurations are now obsolete and must be removed. You will notices this if you encounter a linker error of undefined references to rtems_bsdnet_loopattach().
- rtems_initialize_start_multitasking() was void and now returns the uint32_t passed to rtems_shutdown_executive(). This exit status is propagated by boot_card() to bsp_cleanup() and returned to the assembly initialization.
- RTEMS_offsetof() was removed. This macro was not documented. Use the standard offsetof() instead. See https://www.rtems.org/PR1941
- TBD
API Additions
- Constant Bandwidth Server (CBS) scheduler API added as an interface for communication with the scheduler.
- TBD
API Implementation Improvements
- POSIX semaphores make now a copy of the name string (similar to POSIX message queues). This allows dynamic creation of POSIX semaphore names.
- TBD
Configuration Changes
- Possible to use new EDF scheduler (CONFIGURE_SCHEDULER_EDF) and new CBS scheduler (CONFIGURE_SCHEDULER_CBS).
- More accurate workspace size estimate.
- TBD
RTEMS Shell Improvements
The following improvements were made to the RTEMS Shell:
- TBD
General
- Added support for the SPARC V9 (sparc64) CPU family, a 64-bit processor architecture.
- Added support for ARM Cortex-M (ARMv7-M).
- FTPFS will no longer use the BOOTP server address as default if no hostname was specified. The FTP path must specify the hostname. Applications can obtain the BOOTP server address and from the appropriate path.
- Added new two configurable single processor schedulers: Earliest Deadline First (EDF) and Constant Bandwidht Server (CBS).
- TBD
- Scheduler Refactoring Improvements
- TBD
BSPs and Device Drivers
- General
- TBD
- New BSPs
- BSPs for ARM
- lm3s69xx - ARM Cortex-M based Stellaris Microcontroller LM3S6965 (works only on Qemu)
- BSPs for bfin
- TLL6527M
- BSPs for sparc64 cpu model
- BSPs for PowerPC
- BSPs for ARM
- Significant updates to existing BSPs
- Full driver support for Milkymist SoC (video input, DMX, MIDI, USB input devices, ...)
- Removal of obsoleted BSPs
- i386ex - Removed 1 March 2011
- ts_386ex - Removed 1 March 2011
- Drivers: TBD
Test Suites
- TBD
RTEMS API Changes
This section covers the API changes between the 4.9 and 4.10 release series which are expected to have an impact on application source code. This section does NOT cover additions to the API.
- TBD
Changes Per Point Release
Release 4.11.0 Changes
When this happens, you will be the first to know. :)