Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

sdrtable(3) [debian man page]

ici::doc::pod3::sdrtable(3)				       ICI library functions				       ici::doc::pod3::sdrtable(3)

NAME
sdrtable - Simple Data Recorder table management functions SYNOPSIS
#include "sdr.h" Object sdr_table_create (Sdr sdr, int rowSize, int rowCount); int sdr_table_user_data_set (Sdr sdr, Object table, Address userData); Address sdr_table_user_data (Sdr sdr, Object table); int sdr_table_dimensions (Sdr sdr, Object table, int *rowSize, int *rowCount); int sdr_table_stage (Sdr sdr, Object table); Address sdr_table_row (Sdr sdr, Object table, unsigned int rowNbr); int sdr_table_destroy (Sdr sdr, Object table); DESCRIPTION
The SDR table functions manage table objects in the SDR. An SDR table comprises N rows of M bytes each, plus optionally one word of user data (which is nominally the address of some other object in the SDR's heap space). When a table is created, the number of rows in the table and the length of each row are specified; they remain fixed for the life of the table. The table functions merely maintain information about the table structure and its location in the SDR and calculate row addresses; other SDR functions such as sdr_read() and sdr_write() are used to read and write the contents of the table's rows. In particular, the format of the rows of a table is left entirely up to the user. Object sdr_table_create(Sdr sdr, int rowSize, int rowCount) Creates a "self-delimited table", comprising rowCount rows of rowSize bytes each, in the heap space of the indicated SDR. Note that the content of the table, a two-dimensional array, is a single SDR heap space object of size (rowCount x rowSize). Returns the address of the new table on success, zero on any error. void sdr_table_user_data_set(Sdr sdr, Object table, Address userData) Sets the "user data" word of table to userData. Note that userData is nominally an Address but can in fact be any value that occupies a single word. It is typically used to point to an SDR object that somehow characterizes the table as a whole, such as an SDR string containing a name. Address sdr_table_user_data(Sdr sdr, Object table) Returns the value of the "user data" word of table, or zero on any error. void sdr_table_dimensions(Sdr sdr, Object table, int *rowSize, int *rowCount) Reports on the row size and row count of the indicated table, as specified when the table was created. void sdr_table_stage(Sdr sdr, Object table) Stages table so that the array it encapsulates may be updated; see the discussion of sdr_stage() in sdr(3). The effect of this function is the same as: sdr_stage(sdr, NULL, (Object) sdr_table_row(sdr, table, 0), 0) Address sdr_table_row(Sdr sdr, Object table, unsigned int rowNbr) Returns the address of the rowNbrth row of table, for use in reading or writing the content of this row; returns -1 on any error. void sdr_table_destroy(Sdr sdr, Object table) Destroys table, releasing all bytes of all rows and destroying the table structure itself. DO NOT use sdr_free() to destroy a table, as this would leave the table's content allocated yet unreferenced. SEE ALSO
sdr(3), sdrlist(3), sdrstring(3) perl v5.14.2 2012-05-25 ici::doc::pod3::sdrtable(3)

Check Out this Related Man Page

IONCONFIG(5)						      ICI configuration files						      IONCONFIG(5)

NAME
ionconfig - ION node configuration parameters file DESCRIPTION
ION node configuration parameters are passed to ionadmin in a file of parameter name/value pairs: parameter_name parameter_value Any line of the file that begins with a '#' character is considered a comment and is ignored. ionadmin supplies default values for any parameters for which no value is provided in the node configuration parameters file. The applicable parameters are as follows: sdrName This is the character string by which this ION node's SDR database will be identified. (Note that the SDR database infrastructure enables multiple databases to be constructed on a single host computer.) The default value is "ion". configFlags This is the bitwise "OR" of the flag values that characterize the SDR database to use for this ION node. The default value is 1. The SDR configuration flags are documented in detail in sdr(3). To recap: 1. The SDR is implemented in a region of shared memory. [Possibly with write-through to a file, for fault tolerance.] 2. The SDR is implemented as a file. [Possibly cached in a region of shared memory, for faster data retrieval.] 3. Transactions in the SDR are written ahead to a log, making them reversible. 4. SDR heap updates are not allowed to cross object boundaries. heapKey This is the shared-memory key by which the pre-allocated block of shared dynamic memory to be used as heap space for this SDR can be located, if applicable. The default value is -1, i.e., not specified and not applicable. pathName This is the fully qualified path name of the directory in which are located (a) the file to be used as heap space for this SDR (which will be created, if it doesn't already exist), in the event that the SDR is to be implemented in a file, and (b) the file to be used to log the database updates of each SDR transaction, in the event that transactions in this SDR are to be reversible. The default value is /usr/ion. heapWords This is the number of words (of 32 bits each on a 32-bit machine, 64 bits each on a 64-bit machine) of nominally non-volatile storage to use for ION's SDR database. If the SDR is to be implemented in shared memory and no heapKey is specified, a block of shared memory of this size will be allocated (e.g., by malloc()) at the time the node is created. If the SDR is to be implemented in a file and no file named ion.sdr exists in the directory identified by pathName, then a file of this name and size will be created in this directory and initialized to all binary zeroes. The default value is 250000 words (1 million bytes on a 32-bit computer). wmKey This is the shared-memory key by which this ION node's working memory will be identified. The default value is 65537. wmAddress This is the address of the block of dynamic memory -- volatile storage, which is not expected to persist across a system reboot -- to use for this ION node's working memory. If zero, the working memory block will be allocated from system memory (e.g., by malloc()) at the time the local ION node is created. The default value is zero. wmSize This is the size of the block of dynamic memory that will be used for this ION node's working memory. If wmAddress is zero, a block of system memory of this size will be allocated (e.g., by malloc()) at the time the node is created. The default value is 5000000 (5 million bytes). EXAMPLE
configFlags 1 heapWords 2500000 heapKey -1 pathName 'usr/ion' wmSize 5000000 wmAddress 0 SEE ALSO
ionadmin(1) perl v5.14.2 2012-06-11 IONCONFIG(5)
Man Page