17.5.7 Fixed-sized memory pool information

The fixed-sized memory pool information defines ID number: mpfid, Attribute: mpfatr, Block count: blkcnt, Basic block size: blksz, memory area name: sec_nam, Reserved for future use: mpf for a fixed-sized memory pool.

The number of items that can be defined as fixed-sized memory pool information is limited to one for each ID number.

The following shows the fixed-sized memory pool information format.

 CRE_MPF (mpfid, { mpfatr, blkcnt, blksz[:sec_nam], mpf });


The items constituting the fixed-sized memory pool information are as follows.

1 ) ID number: mpfid

Specifies the ID number for a fixed-sized memory pool.
A value from 0x1 to 0xff, or a name, can be specified for mpfid.


Note When a name is specified, the CF850V4 automatically assigns an ID number.
The CF850V4 outputs the relationship between a name and an ID number to the system information header file in the following format:


 #define mpfid   value
2 ) Attribute: mpfatr

Specifies the task queuing method for a fixed-sized memory pool.
The keyword that can be specified for mpfatr is TA_TFIFO or TA_TPRI.


TA_TFIFO: Task wait queue is in FIFO order.

TA_TPRI: Task wait queue is in task priority order.

3 ) Block count: blkcnt

Specifies the block count for a fixed-sized memory pool.
A value from 0x1 to 0x7fff can be specified for blkcnt.


4 ) Basic block size: blksz, memory area name: sec_nam

Specifies the size per block (unit: bytes) and the name of the memory area secured for the fixed-size memory pool.
Only 4-byte boundary values from 0x1 to 0x7ffffffc can be specified for blksz, and only memory area name sec_area defined in Memory area information" can be specified for sec_nam.


Note If specification of sec_nam is omitted, the fixed-sized memory pool is allocated to ".kernel_work" section.

5 ) Reserved for future use: mpf

System-reserved area.
Values that can be specified for mpl are limited to NULL characters.