Brief Description
ChibiOS/RT is designed for deeply embedded real time
applications
where execution efficiency and tiny code size are desiderable
features.
The system is implemented as a library to be linked with the
application code, the OS and the application code together form the
image to be loaded on the target device.
Features
The kernel provides a rich features set, it offers: preemptive
multithreading, 128 priority levels, optional round-robin
support, unified interrupts handling,
support for preemptable interrupt handlers, virtual timers,
semaphores, mutexes, condition
variables, synchronous messages, mailboxes, event
flags, Abstract Channels, I/O queues, heap
and memory pools allocators.
Of course, the above mechanisms are not always required in
most
applications, it is possible to selectively exclude the unused
subsystems reducing the total code size.
Size
The kernel is very compact, on a reference Cortex-M3 (STM32)
platform
the kernel size ranges from 1.2KiB minimum up to 5.2KiB
maximum size. Size metrics are available for all platforms, as test
reports,
into the source distribution.
Performance
On a reference STM32 platform clocked at 72MHz the kernel is
capable of
context switching in 1.41 microseconds, taking/releasing a
semaphore
takes 1.21 microseconds, spawning a thread (the whole
create-execute-terminate cycle) takes 4.64 microseconds.
The timings are measured using the internal test suite, it is
possible
to inspect the benchmarking methodology and replicate the results by
simply running the included demos. Performance metrics are available
for
all platforms, as test reports, into the source distribution.
http://chibios.sourceforge.net/
Recent Comments