ZCOM Tables and Data Structures
Memory Organization
| Memory Organization | ||
| The ZCOM Logical Device Manager (LDM driver) reserves a contiguous | ||
| block of kernel memory for tables for its use. The maximum size of this | ||
| memory block is tunable at kernel build time through the | ||
| zcom_mem_size parameter in the “system” file used to build your | ||
| kernel. The default value for this parameter is 4 Mbytes. This memory is | ||
| allocated relative to a starting pointer. The memory is organized by | ||
| function into the following groups: | ||
Figure | Memory Organization | ||
|
|
|
|
|
| ZCOM Header Structure |
|
|
|
|
|
|
| Node Table Entries |
|
|
|
|
|
|
| ZLU Tables |
|
|
|
|
|
|
| Logical Terminal Tables |
|
|
|
|
|
|
| Physical Terminal Tables |
|
|
|
|
|
|
| Interface Tables |
|
|
|
|
|
|
| Response Records |
|
|
|
|
|
|
| Queue Header Structures |
|
|
|
|
|
|
| ZCOM Data Buffers |
|
|
|
|
|
| The TTGEN configuration file describes the sizes and initial content of | ||
| these tables. When TTGEN is run, it produces a memory image file that | ||
| is the same size and in the same format as this memory layout. The | ||
| memory image file is loaded into the kernel memory by ZMON via the | ||
| LDM when the system is initialized. Most of the tables are preset up in | ||
| the file by TTGEN; however, the response headers, queue headers and | ||
| data buffers are created and initialized by the LDM. | ||
| Note that TTGEN reports the size of the memory block in the “System | ||
| Information” section of the listing (if a listing is requested). If the | ||
| tunable parameter zcom_mem_size is different from the reported size of | ||
| the memory block, the ‘ZCOM Data Buffers’ area will be increased or | ||
| reduced to fit the memory block in the kernel memory during ZCOM | ||
| subsystem startup. |
Chapter 3 | 39 |