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

This commit is contained in:
gdisirio 2010-07-12 08:49:55 +00:00
parent 5a19338b10
commit 17bd98c1fa
5 changed files with 20 additions and 6 deletions

View File

@ -59,6 +59,7 @@
Platform [label="Platform"];
Kernel [label="Kernel"];
Port [label="Port"];
Board [label="Board Setup"];
HW [label="Hardware", style="filled", width="3.0", height="0.3"];
Application -> Kernel;
@ -66,9 +67,12 @@
Application -> HW [label=" (not recommended)"];
HAL -> Platform;
HAL -> Kernel;
Board -> HW;
Platform -> Kernel;
Platform -> Board;
Platform -> HW;
Kernel -> Port;
Port -> Board [label="Optional", style="dotted"];
Port -> HW;
}
* @enddot
@ -119,7 +123,7 @@
* @dot
digraph example {
node [shape=rectangle, fontname=Helvetica, fontsize=8,
fixedsize="true", width="1.0", height="0.25"];
fixedsize="true", width="1.1", height="0.25"];
edge [fontname=Helvetica, fontsize=8];
Semaphores -> Scheduler;
@ -128,6 +132,7 @@
Condvars -> Mutexes;
Events -> Scheduler;
Messages -> Scheduler;
"Binary Semaphores" -> Semaphores;
Mailboxes -> Semaphores;
}
* @enddot
@ -151,17 +156,25 @@
fixedsize="true", width="1.0", height="0.25"];
edge [fontname=Helvetica, fontsize=8];
Application [label="Application", width="2.0"];
RAM [label="RAM", style="filled", width="2.0"];
Core [label="Core Allocator"];
Dynamic [label="Dynamic Threads"];
Heaps [label="Dynamic Heaps"];
Pools [label="Memory Pools"];
C [label="C-runtime"];
Application -> Dynamic;
Application -> Heaps;
Application -> Pools;
Application -> C [label="(not recommended)"];
Application -> Core;
Dynamic -> Heaps;
Dynamic -> Pools;
Heaps -> Core;
Pools -> Core;
C -> Core;
Core -> RAM
}
* @enddot
* Please also see the article @ref article_manage_memory.

View File

@ -147,7 +147,7 @@ int main(int argc, char *argv[]) {
}
* @endcode
*
* <h2>Creating a dynamic thread using the heap allocator</h2>
* <h2>Creating a dynamic thread using the memory pool allocator</h2>
* A pool is a collection of equally sized memory blocks, creating a thread from
* a memry pool is very similar to the previous example but the memory of
* terminated threads is returned to the memory pool rather than to a heap:

View File

@ -126,7 +126,7 @@
* <br>
* When designing a system it is recommended to proceed as follow:
* -# Use static objects and initializers whenever possible.
* -# Where dynamic allocation is required without have to free the allocated
* -# Where dynamic allocation is required without having to free the allocated
* memory then use the Core Memory Manager allocation APIs.
* -# Where dynamic allocation is required evaluate if one or more memory
* pools can be used.

View File

@ -78,7 +78,7 @@
* core (a common example: ARM7) of a supported microcontroller but has
* differences in the internal peripherals.<br>
* If this is your case proceed as follow:
* -# Create a new directory under @p <tt>./os/io/platforms</tt> and
* -# Create a new directory under @p <tt>./os/hal/platforms</tt> and
* name it with the microcontroller name (or family name).<br>
* In case of the ARM-based microcontroller you also need to create a
* equally named directory under
@ -87,11 +87,11 @@
* see the existing ports as example.
* -# Copy into the newly created directory the most closely related existing
* chip port or the naked template files from
* @p <tt>./os/io/templates</tt>.
* @p <tt>./os/hal/templates</tt>.
* -# Work out the differences in the drivers or implement them if you started
* from the templates.
* -# Edit/create the documentation file @p <tt>platform.dox</tt>, this
* is required if you want to regenerate this documentation including
* is only required if you want to regenerate this documentation including
* your work.
* .
* Usually this kind of port just requires a serial driver (and those are very

View File

@ -74,6 +74,7 @@
option is not compatible with the 64 bits stack alignment now default in
the Cortex-Mx port. Note that the 64 bits alignment has a cost both as
performance and as space but it is the "standard".
- Fixed various documentation errors.
*** 2.1.0 ***
- FIX: Fixed notification order in input queues (bug 3020708)(backported in