Allocation of objects

Chris Johns chrisj at
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 
workspace here:

  [ The auto-extending mode can .... ]

and a little about how it works here:

  Chris Johns

More information about the users mailing list