Home | Previous Page | Next Page   An Overview of the Optical Subsystem > The Optical Subsystem API >

The API Internal Layer

The internal layer of the API manages the following operations:

Outmigration is the operation through which the Optical Subsystem directs the optical-storage subsystem to store TEXT and BYTE data on an optical platter. Outmigration activity occurs in the following sequence:

  1. The Optical Subsystem stores the TEXT or BYTE data in the memory cache in 1-kilobyte pieces.
  2. The Optical Subsystem stores TEXT or BYTE data that exceeds the memory cache in the staging-area blobspace.
  3. The Optical Subsystem makes the size and cluster information about the TEXT or BYTE data available to the optical-storage subsystem.
  4. The optical-storage subsystem finds and reserves space to store the TEXT or BYTE data.
  5. The Optical Subsystem transfers the TEXT or BYTE data to the optical-storage subsystem.
  6. The Optical Subsystem signals the end of data migration. Once the outmigration process ends, the staging-area blobpages that held the migrating data are marked free. In addition, the memory cache is flushed and available for use.
  7. The family number, volume number, and byte-offset that the optical-storage subsystem uses to describe the storage location are passed back to the Optical Subsystem, where the information is stored in the TEXT or BYTE data descriptor in the data row. (The TEXT or BYTE data descriptor resides in a database table column. The descriptor is the pointer to the actual TEXT or BYTE data on the optical-storage subsystem.)

Because data cannot be rewritten to the same location on a WORM optical platter, when the Optical Subsystem updates TEXT or BYTE data, it outmigrates it to a new, clean location on the platter and updates the descriptor to reflect the new location. The optical-storage subsystem cannot reclaim space on the WORM platter after any TEXT or BYTE data on the platter is modified or deleted.

Inmigration is the operation through which the Optical Subsystem requests and gains access to TEXT or BYTE data that is stored in the optical-storage subsystem. Inmigration activity occurs in the following sequence:

  1. The Optical Subsystem requests access to TEXT or BYTE data by supplying the optical-storage subsystem with the family name, volume number, and byte offset.
  2. The optical-storage subsystem locates the TEXT or BYTE data and retrieves it in pieces. It deposits each portion of the TEXT or BYTE data in memory buffers that the Optical Subsystem can access.
  3. The optical-storage subsystem signals the end of optical data migration.

Memory for the Optical Transfer Buffer

The memory for the optical transfer buffer is allocated from a special pool called opool. The optical transfer buffer transfers BYTE and TEXT data to and from the Optical Subsystem buffer.

To track memory usage, issue the onstat -g mem opool command. Figure 5 shows the output of the onstat -g mem opool command.

Figure 5. Example of the onstat -g mem opool Option
IBM Informix Dynamic Server Version 10.00.UN105--Online-Up 00:02:08--4968 Kbytes
Pool Summary:
           name   class  addr     totalsize  freesize  #allocfrag  #freefrag
           opool  V      a2ca018  8192       8072      1           1

           Blkpool Summary:
           name   class  addr     size       #blks
Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]