Allocation of objects
chrisj at rtems.org
Wed May 18 12:41:09 UTC 2005
SAUDUBRAY, Fabien wrote:
> I'm not sure of my understanding :
> Memory for objects is reserved, but is memory for objects allocated
> during Initialization. (ie during _Objects_Initialize_information calls ? )
> Because when we create an object (a task for example), the kernel calls
> the _Object_Allocate directive which returns the first object in the
> Inactive Chain of this kind of Object. But this implies that this Chain
> had been allocated before ?
Originally the configuration table defined the number of objects for
each type. The "unlimited" flag was introduced that allowed the number
of objects to grow.
A static number of objects gives a fixed deterministic time to create a
resource such as a task. The unlimited flag turns the configuration
table value into a block size. This lets you control the amount of
workspace overhead you get when the object table grows or shrinks. You
how-ever need to size the workspace to meet your needs.
You can find more details about the unlimited flag and sizing the
[ The auto-extending mode can .... ]
and a little about how it works here:
More information about the users