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 3-1

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