forked from Imagelibrary/rtems
2008-08-04 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1263/doc * user/part.t: Improve discussion of alignment and minimum buffer sizes.
This commit is contained in:
@@ -1,3 +1,9 @@
|
|||||||
|
2008-08-04 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||||
|
|
||||||
|
PR 1263/doc
|
||||||
|
* user/part.t: Improve discussion of alignment and minimum buffer
|
||||||
|
sizes.
|
||||||
|
|
||||||
2008-08-04 Joel Sherrill <joel.sherrill@OARcorp.com>
|
2008-08-04 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||||
|
|
||||||
PR 1288/doc
|
PR 1288/doc
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
@c
|
@c
|
||||||
@c COPYRIGHT (c) 1988-2002.
|
@c COPYRIGHT (c) 1988-2008.
|
||||||
@c On-Line Applications Research Corporation (OAR).
|
@c On-Line Applications Research Corporation (OAR).
|
||||||
@c All rights reserved.
|
@c All rights reserved.
|
||||||
@c
|
@c
|
||||||
@@ -39,9 +39,9 @@ allocated and deallocated.
|
|||||||
Partitions are managed and maintained as a list of
|
Partitions are managed and maintained as a list of
|
||||||
buffers. Buffers are obtained from the front of the partition's
|
buffers. Buffers are obtained from the front of the partition's
|
||||||
free buffer chain and returned to the rear of the same chain.
|
free buffer chain and returned to the rear of the same chain.
|
||||||
When a buffer is on the free buffer chain, RTEMS uses eight
|
When a buffer is on the free buffer chain, RTEMS uses two
|
||||||
bytes of each buffer as the free buffer chain. When a buffer is
|
pointers of memory from each buffer as the free buffer chain.
|
||||||
allocated, the entire buffer is available for application use.
|
When a buffer is allocated, the entire buffer is available for application use.
|
||||||
Therefore, modifying memory that is outside of an allocated
|
Therefore, modifying memory that is outside of an allocated
|
||||||
buffer could destroy the free buffer chain or the contents of an
|
buffer could destroy the free buffer chain or the contents of an
|
||||||
adjacent allocated buffer.
|
adjacent allocated buffer.
|
||||||
@@ -187,7 +187,7 @@ This directive creates a partition of fixed size
|
|||||||
buffers from a physically contiguous memory space which starts
|
buffers from a physically contiguous memory space which starts
|
||||||
at starting_address and is length bytes in size. Each allocated
|
at starting_address and is length bytes in size. Each allocated
|
||||||
buffer is to be of @code{buffer_size} in bytes. The assigned
|
buffer is to be of @code{buffer_size} in bytes. The assigned
|
||||||
partition id is returned in id. This partition id is used to
|
partition id is returned in @code{id}. This partition id is used to
|
||||||
access the partition with other partition related directives.
|
access the partition with other partition related directives.
|
||||||
For control and maintenance of the partition, RTEMS allocates a
|
For control and maintenance of the partition, RTEMS allocates a
|
||||||
PTCB from the local PTCB free pool and initializes it.
|
PTCB from the local PTCB free pool and initializes it.
|
||||||
@@ -197,8 +197,14 @@ PTCB from the local PTCB free pool and initializes it.
|
|||||||
This directive will not cause the calling task to be
|
This directive will not cause the calling task to be
|
||||||
preempted.
|
preempted.
|
||||||
|
|
||||||
The starting_address and buffer_size parameters must
|
The @code{starting_address} must be properly aligned for the
|
||||||
be multiples of four.
|
target architecture.
|
||||||
|
|
||||||
|
Th @code{buffer_size} parameter must be a multiple of
|
||||||
|
the CPU alignment factor. Additionally, @code{buffer_size}
|
||||||
|
must be large enough to hold two pointers on the target
|
||||||
|
architecture. This is required for RTEMS to manage the
|
||||||
|
buffers when they are free.
|
||||||
|
|
||||||
Memory from the partition is not used by RTEMS to
|
Memory from the partition is not used by RTEMS to
|
||||||
store the Partition Control Block.
|
store the Partition Control Block.
|
||||||
|
|||||||
Reference in New Issue
Block a user