Changes between Version 4 and Version 5 of startstop_sol


Ignore:
Timestamp:
11/15/11 17:32:33 (10 years ago)
Author:
branden
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • startstop_sol

    v4 v5  
    103103 
    104104===== nRing ===== 
    105 '''nRing''' nRing 
     105nRing [nRing] 
    106106 
    107107Specifies the number of shared memory regions (aka transport rings) that startstop will create for "public" use by the modules of this Earthworm system. nRing should be an integer from 1 to MAX_RING (currently defined to be 50). 
     
    110110 
    111111===== Ring ===== 
    112 '''Ring''' name size 
     112Ring [name size] 
    113113 
    114114Specifies the name and size, in kilobytes, of one transport ring. There must be exactly nRing "Ring" commands following the "nRing" command in the startstop_sol.d. name is a character string (up to 19 characters long, valid strings are listed in earthworm.d) that relates (in earthworm.d) to a unique number for the key to the shared memory region. size should be an integer between 1 and 1024 (the default maximum size). When deciding how large to make a memory region, realize that the transport layer uses a portion of the memory region for its own bookkeeping. The region size is NOT required to be an even multiple of the size of the messages it will contain. However, suppose you want the region to be exactly large enough to store NUM messages of size MSGSIZE. To include space for transport bookkeeping too, the region size (in bytes) should be: 
     
    133133 
    134134===== !MyModuleId ===== 
    135 !'''MyModuleId''' mod_id 
     135!MyModuleId [mod_id] 
    136136 
    137137Sets the module id for labeling all outgoing messages. mod_id is a character string (up to 30 characters, valid strings listed in earthworm.d) that relates (in earthworm.d) to a unique single-byte number. Startstop places its outgoing messages on the shared memory ring specified by the first "Ring" command in startstop_sol.d. 
     
    140140 
    141141===== !HeartbeatInt ===== 
    142 !'''HeartbeatInt''' nsec 
     142!HeartbeatInt [nsec] 
    143143 
    144144Defines the number of seconds, nsec, between TYPE_HEARTBEAT messages issued by startstop. Startstop places its heartbeats on the shared memory ring specified by the first "Ring" command in startstop_sol.d. 
     
    147147 
    148148===== !MyClassName ===== 
    149 !'''MyClassName''' class 
     149!MyClassName [class] 
    150150 
    151151Sets the process class for startstop. class is a character string that must be set to either "RT" (for Real-Time) or "TS" (for Time- Share) on solaris. 
     
    154154 
    155155===== !MyPriority ===== 
    156 !'''MyPriority''' priority 
     156!MyPriority [priority] 
    157157 
    158158Sets the process priority for startstop. See the "!Class/Priority" command below for allowed values. After startstop reads its configuration file, it changes its own class/priority to the values specified in the "!MyClassName" and "!MyPriority" commands. 
     
    161161 
    162162===== !LogFile ===== 
    163 !'''LogFile''' switch 
     163!LogFile [switch] 
    164164 
    165165Sets the on-off switch for writing a log file to disk. If switch is 0, no log file will be written. If switch is 1, startstop will write a daily log file(s) called cfname_yyyymmdd.log where cfname is the name (without extension) of startstop's configuration file (ex: startstop_sol) and yyyymmdd is the current UTC date (ex: 19960123) on the system clock. The file(s) will be written in the EW_LOG directory (environment variable). 
     
    168168 
    169169===== !KillDelay ===== 
    170 !'''KillDelay''' nsec 
     170!KillDelay [nsec] 
    171171 
    172172Gives the number of seconds nsec that startstop will wait for modules to shutdown gracefully on termination. After this delay, startstop will force modules to shut down with the TERM signal. If module still does not stop after nsec seconds, behavior is determined by the "!HardKillDelay" command. 
     
    175175 
    176176===== !HardKillDelay ===== 
    177 !'''HardKillDelay''' nsec 
     177!HardKillDelay [nsec] 
    178178 
    179179Optional specification of number of seconds nsec that startstop will wait for modules to shutdown after being sent a KILL signal before aborting a restart of the module. If not specified, no KILL signal is issued, and any restart is aborted after sequence described in the "KillDelay" command. 
     
    182182 
    183183===== !maxStatusLineLen ===== 
    184 !'''maxStatusLineLen''' nchars 
     184!maxStatusLineLen [nchars] 
    185185 
    186186Optional specification of maximum length of a line when printing status to nchars characters; default is 80, and new value cannot be smaller. When specified, status will adjust column widths to minimize truncation of information. 
     
    189189 
    190190===== Stderr ===== 
    191 '''Stderr''' target 
     191Stderr [target] 
    192192 
    193193Optional specification of what to do with messages printed to stderr; target can be either "Console" (the screen, the default), "None" (messages are eliminated), or "File" (messages get written to a file in the Log directory, named as the log file for this module would be but with the extension .err). When specified for startstop itself, it is the default for all modules (save startstop); when specified for a specific module, it overrides the specification for all modules. In the example configuration, every module's stderr messages are surpressed except for eqproc (whose go to the screen) and binder_ew (whose go to a file). 
     
    204204 
    205205===== Process ===== 
     206Process [cmdstring] 
     207 
     208Gives the command string, cmdstring, (up to 79 characters) that will be used to start one Earthworm module. Each "Process" command must be immediately followed by a "Class/Priority" command. If the cmdstring required to start a process contains embedded blanks, it must be enclosed in double-quotes. Startstop can create up to MAX_CHILD (currently defined as 200) child processes. 
     209 
     210Example:  Process "binder_ew binder_ew.d" 
     211 
    206212===== !Class/Priority ===== 
     213!Class/Priority [class priority] 
     214 
     215Specifies the class and priority under which the module given by the previous "Process" command will be run. class is a 2-character string and priority is an integer; their values are restricted to: 
     216                      class     priority 
     217        Real-Time     "RT"      0 to 59 
     218        Time-Share    "TS"       <= 0 
     219Class RT processes run at higher priority than class TS processes. Take care not to assign known CPU hogs (binder_ew, for example) to the RT class. Such an assignment could bog down all class TS processes, causing poor Earthworm system performance. After a "!Class/Priority" line, startstop expects to find the "Process" command of the next Earthworm module it should spawn. 
     220 
     221Example:  !Class/Priority  TS  0 
     222 
    207223===== Stderr ===== 
    208224 
     
    210226 
    211227===== Agent ===== 
     228Agent [user group] 
     229 
     230Optional command to specify the user and group names under which this module will run. Normally this feature will not be used. But if you need to have the output and log files from this module owned by a user other than the one who runs startstop, then you can use Agent to do this. You cannot specify root as the user agent. If you need to have a module run with root privelege, you should set that module's file permissions to make it setuid root. Make sure that user is a valid user name and group is a valid group name for your system. 
     231 
     232Example:  Agent "eworm" "net" 
    212233 
    213234== Helpful Hints ==