Home

  Buffer Manager

The AMX Buffer Manager provides fast, efficient access to multiple pools of buffers, each buffer representing a fixed size block of memory. This form of memory management meets the requirements of most typical applications. It is best suited for real-time use when memory block availability must be predictable and the execution time penalties and memory fragmentation imposed by dynamic allocation schemes cannot be tolerated.

Application modules can request the Buffer Manager to get a buffer from a pool. When released, the buffer is automatically returned by the Buffer Manager to the buffer pool to which the buffer belongs. Buffer ownership can be increased so that more than one task can simultaneously own a shared buffer. Special facilities are provided to assure that if a buffer is owned by more than one task, it is only returned to its pool when the slowest owner finally releases it.

The Buffer Manager offers the advantage that speed of execution is not dependent on the number of buffer pools or the number of buffers in each pool. The number of buffers in a pool and the number of pools which can be supported is limited only by memory availability. However, for some processors which use memory segmentation, all buffers in one pool must reside in the same segment.


Buffer Manager
Function Service
cjbmcreate Create a buffer pool
cjbmdelete Delete a buffer pool
cjbmget Get a buffer from a specific buffer pool
cjbmfree Free a buffer
cjbmsize Get the size of a buffer
cjbmuse Add to a buffer's use count
cjbmstatus Get status of a buffer pool


Copyright © 1996-2007

















































RTOS
TCP/IP
Graphics
File System
License
Showcase
Targets
Toolsets
Memory
Timing
Manuals
Demos
Support
What's New
Press
Newsletters
White Papers
Tools
Alliances
Dealers
Contractors
Site Map
Company
Support
Home
FAQ
Get Info