GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> PBS_DB / V0-0-1 > pbs_db_default / rhel5-64


Interface   Data Structures   File List   Data Fields   Globals  

PBS_DB_schema.h File Reference

CDM database schema: settings for PBS. More...


Classes

struct  _PBS_DB_wut
 Parameters used to configure the WUT subsystem. More...
struct  _PBS_DB_mba_badBlock
 Definition of a bad block of memory. More...
struct  _PBS_DB_mba
 Parameters controlling the construction of the MBA memory pool. More...
struct  _PBS_DB_schema
 The PBS configuration schema. It is a pointer to this structure that is returned by the CDM lookup routine. More...

Defines

#define PBS_DB_SCHEMA   (0x10)
#define PBS_DB_VERSION   (0)

Typedefs

typedef struct _PBS_DB_wut PBS_DB_wut
 Typedef for struct _PBS_DB_wut.
typedef struct _PBS_DB_mba_badBlock PBS_DB_mba_badBlock
 Typedef for struct _PBS_DB_mba_badBlock.
typedef void *(* PBS_DB_mba_create_cb )(void *prm)
 Function signature for a user definition initialization routine.
typedef struct _PBS_DB_mba PBS_DB_mba
 Typedef for struct _PBS_DB_mba.
typedef struct _PBS_DB_schema PBS_DB_schema
 Typedef for struct _PBS_DB_schema.


Detailed Description

CDM database schema: settings for PBS.

Author:
J.J. Russell
   CVS $Id: PBS_DB_schema.h,v 1.1.1.1 2005/08/01 18:20:20 russell Exp $

Defines the schema used to define the configuration constants for PBS. The only practical reason to define such a set wuold be to map around bad memory. Until that need arises, this package is more or less a placeholder. An example of such a configuration file is given in the src directory, but it should be used only for reference and testing purposes. It sets the configuation parameters so that each requests PBS_configure to use the built-in defaults.


Typedef Documentation

Typedef for struct _PBS_DB_mba.

If both these parameters are specified as NULL, the MBA partition will be constructed with default parameters.

Typedef for struct _PBS_DB_mba_badBlock.

A bad block is defined as a starting address and a length, in bytes. Typically one will specify a list of bad blocks. By convention, the list is terminated with a block specified with a beginning address of 0 and a length of 0.
On embedded systems, MBA will remove bad blocks that fall within the range of its pool. This will be done at system initialization time. Unforturnately, there is no easy way to do this if the bad blocks fall within the system partition. It appears the only method here is to rebuild the kernel.
Note:
This should have been an easy job. One would have used the memory mapping registers to remap around the bad blocks. But, alas, the page registers do not work on the RAD750, hence this method.

void *(* PBS_DB_mba_create_cb)(void *prm)

Function signature for a user definition initialization routine.

Returns:
The partition id
Parameters:
prm Arbitrary user parameter
While this function will get called back on non-VxWorks targets, it has no effect and is here simply for portability.


Generated on Tue Nov 29 17:37:54 2011 by  doxygen 1.5.8