git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@723 35acf78f-673a-0410-8e92-d51de3d6d3f4

This commit is contained in:
gdisirio 2009-02-05 21:26:18 +00:00
parent b58126efa0
commit 9869b77a9a
6 changed files with 20 additions and 16 deletions

View File

@ -37,11 +37,11 @@
* - Asynchronous, using event sources.
* - Mix of the above models, multiple threads listening to multiple event
* sources while serving message queues.
* - PC simulator target included, the development can be done on the PC
* using MinGW.<br>
* Timers, I/O channels and other HW resources are simulated in a
* Win32 process and the application code does not need to be aware of it.
* MinGW demo available.
* - PC simulator target included, the development can be done on the PC
* using MinGW.<br>
* Timers, I/O channels and other HW resources are simulated in a
* Win32 process and the application code does not need to be aware of it.
* MinGW demo available.
* - Preemptive scheduling.
* - 128 priority levels.
* - Multiple threads at the same priority level allowed.
@ -70,11 +70,12 @@
* - Small memory footprint, unused subsystems can be excluded by the
* memory image.
* - Almost totally written in C with little ASM code required for ports.
*
* .
* <h2>Related pages</h2>
* - @subpage lic_faq
* - @subpage concepts
* - @subpage articles
* .
*/
/**
@ -212,7 +213,7 @@
* becomes negative the thread is queued in the semaphore and suspended.
* - <b>Reset</b>: The semaphore counter is reset to a non-negative value
* and all the threads in the queue are released.
*
* .
* Semaphores can be used as guards for mutual exclusion code zones (note that
* mutexes are recommended for this kind of use) but also have other uses,
* queues guards and counters as example.<br>
@ -237,7 +238,7 @@
* - <b>Unlock</b>: The mutex is released by the owner and the highest
* priority thread waiting in the queue, if any, is resumed and made owner
* of the mutex.
*
* .
* In order to use the Event APIs the @p CH_USE_MUTEXES option must be
* specified in @p chconf.h.<br>
*
@ -334,7 +335,7 @@
* - <b>Full duplex queue</b>, bidirectional queue where read and write
* operations can happen at the same time. Full duplex queues
* are implemented by pairing an input queue and an output queue together.
*
* .
* In order to use the I/O queues the @p CH_USE_QUEUES option must
* be specified in @p chconf.h.<br>
* In order to use the half duplex queues the @p CH_USE_QUEUES_HALFDUPLEX

View File

@ -27,5 +27,6 @@
* - @subpage article_interrupts
* - @subpage article_jitter
* - @subpage article_timing
* .
*/
/** @} */

View File

@ -37,6 +37,7 @@
* <b>I-Locked</b> or <b>S-Locked</b> states. See @ref system_states.
* - @anchor S-Class <b>"S"</b>, S-Class APIs are invokable only from the
* <b>S-Locked</b> state. See @ref system_states.
* .
* Examples: @p chThdCreateStatic(), @p chSemSignalI(), @p chIQGetTimeout().
*
* @section interrupt_classes Interrupt Classes
@ -57,7 +58,7 @@
* - <b>Non Maskable Interrupts</b>. Non maskable interrupt sources are
* totally out of the operating system control and have the lowest latency.
* Such sources are not supported on all the architectures.
*
* .
* The mapping of the above logical classes into physical interrupts priorities
* is, of course, port dependent. See the documentation of the various ports
* for details.
@ -98,7 +99,7 @@
* an infinite loop. This state can be reached if the debug mode is activated
* <b>and</b> an error is detected <b>or</b> after explicitly invoking
* @p chSysHalt().
*
* .
* Note that the above state are just <b>Logical States</b> that may have no
* real associated machine state on some architectures. The following diagram
* shows the possible transitions between the states:
@ -216,7 +217,7 @@
* @p HIGHPRIO but the numerical values above @p HIGHPRIO up to @p ABSPRIO
* (inclusive) are reserved. This is the highest numerical value of the
* priorities space.
*
* .
* @section warea Thread Working Area
* Each thread has its own stack, a Thread structure and some preemption
* areas. All the structures are allocated into a "Thread Working Area",
@ -233,7 +234,7 @@
* - External Context.
* - Interrupt Stack.
* - Internal Context.
*
* .
* See the @ref Core documentation for details, the area may change on
* the various ports and some structures may not be present (or be zero-sized).
*/

View File

@ -48,6 +48,7 @@ CH_IRQ_HANDLER(myIRQ) {
* <h2>Important Notes</h2>
* - There is an important application note about ARM7 interrupt handlers,
* please read about it in the ARM7 port section: @ref ARM7_IH
* .
*/
/** @} */

View File

@ -37,7 +37,7 @@
* - OS overhead. Any operating system requires to run some extra code
* in interrupt handlers in order to handle correct preemption and Context
* Switching.
*
* .
* <h2>Interrupt Response Time</h2>
* The Interrupt Response Time is the time from an interrupt event and the
* execution of the handler code. Unfortunately this time is not constant
@ -67,7 +67,7 @@
* can be preempted by higher priority sources.
* - Longest time in a kernel lock zone that can delay interrupt servicing.
* This value is zero for fast interrupt sources, see @ref system_states.
*
* .
* <h2>Threads Flyback Time</h2>
* This is the time between an event, as example an interrupt, and the
* execution of the thread that will process it. Imagine the following

View File

@ -43,7 +43,7 @@
* - <b>I don't want to be bound by any of the above restriction, is this
* possible?</b><br>
* You may contact us about a commercial license.
*
* .
* @section exception_text GPL Exception Text
<center><b>GPL Exception Text</b></center>