2004-06-09 19:09:16 +00:00
|
|
|
<?php
|
2003-08-19 06:44:58 +00:00
|
|
|
require_once("docutil.php");
|
2004-05-31 18:13:01 +00:00
|
|
|
page_head("Daemon programs");
|
2003-08-19 06:44:58 +00:00
|
|
|
echo "
|
2003-01-23 08:07:48 +00:00
|
|
|
|
|
|
|
<p>
|
2004-05-31 18:13:01 +00:00
|
|
|
A BOINC project includes of a set of daemons
|
|
|
|
(programs that run all the time).
|
2004-02-09 05:11:05 +00:00
|
|
|
Each program should be listed as a daemon in the
|
|
|
|
<a href=configuration.php>config.xml</a> file.
|
2004-06-29 04:34:55 +00:00
|
|
|
They all have the command-line option:
|
|
|
|
<pre>
|
|
|
|
-d N
|
|
|
|
</pre>
|
|
|
|
Sets the verbosity level.
|
|
|
|
1 = critical messages only,
|
|
|
|
2 = normal messages,
|
|
|
|
3 = detailed debugging info.
|
2003-01-23 08:07:48 +00:00
|
|
|
|
2005-02-01 21:11:08 +00:00
|
|
|
<h3>Work generator</h3>
|
2003-01-23 08:07:48 +00:00
|
|
|
<p>
|
2004-02-09 05:11:05 +00:00
|
|
|
There is one work generator per application.
|
|
|
|
It creates workunits and the corresponding input files.
|
2004-04-13 21:31:55 +00:00
|
|
|
It is application-specific, and uses
|
2004-05-31 18:13:01 +00:00
|
|
|
<a href=tools_work.php>BOINC library functions</a>
|
2004-02-09 05:11:05 +00:00
|
|
|
for registering the workunits in the database.
|
2004-04-13 21:31:55 +00:00
|
|
|
<p>
|
|
|
|
During testing, you can create a single workunit using
|
2005-01-10 20:46:33 +00:00
|
|
|
<a href=tools_work.php>create_work</a>,
|
2004-04-13 23:55:05 +00:00
|
|
|
then use the daemon program
|
2005-02-01 21:11:08 +00:00
|
|
|
<a href=busy_work.php>make_work</a>
|
2004-04-13 23:55:05 +00:00
|
|
|
to copy this workunit as needed to maintain a given supply of work.
|
2004-02-09 05:11:05 +00:00
|
|
|
|
2004-05-31 18:13:01 +00:00
|
|
|
<h3>Transitioner</h3>
|
2004-02-09 05:11:05 +00:00
|
|
|
<p>
|
2004-05-31 18:13:01 +00:00
|
|
|
This program is supplied by BOINC and is application independent.
|
|
|
|
It handles state transitions of workunits and results.
|
2004-02-09 05:11:05 +00:00
|
|
|
It generates initial results for workunits,
|
|
|
|
and generates more results when timeouts or errors occur.
|
2004-06-29 04:34:55 +00:00
|
|
|
It has the command-line option:
|
|
|
|
<pre>
|
|
|
|
-mod n i
|
|
|
|
</pre>
|
|
|
|
If present, this instance of the transitioner will handle
|
|
|
|
only workunits for which mod(id, n) = i.
|
|
|
|
This lets you run arbitrarily many instances of the transitioner.
|
2004-02-09 05:11:05 +00:00
|
|
|
|
2005-02-01 21:11:08 +00:00
|
|
|
<h3>Validator</h3>
|
2004-02-09 05:11:05 +00:00
|
|
|
<p>
|
|
|
|
There is one validator per application.
|
|
|
|
It compares redundant results and selects a <b>canonical result</b>
|
2003-01-23 08:07:48 +00:00
|
|
|
representing the correct output,
|
|
|
|
and a <b>canonical credit</b> granted to users and hosts
|
2004-02-09 05:11:05 +00:00
|
|
|
that return the correct output.
|
|
|
|
|
2005-02-01 21:11:08 +00:00
|
|
|
<h3>Assimilator</h3>
|
2004-02-09 05:11:05 +00:00
|
|
|
There is one assimilator per application.
|
|
|
|
It handles workunits that are 'completed':
|
2003-08-31 00:13:09 +00:00
|
|
|
that is, that have a canonical result or for which
|
2003-01-23 08:07:48 +00:00
|
|
|
an error condition has occurred.
|
|
|
|
Handling a successfully completed result might involve
|
2004-02-09 05:11:05 +00:00
|
|
|
record results in a database and perhaps generating more work.
|
2003-01-23 08:07:48 +00:00
|
|
|
|
2004-02-09 05:11:05 +00:00
|
|
|
<h3>File deletion</h3>
|
2005-02-01 21:11:08 +00:00
|
|
|
The application-independent program
|
|
|
|
<a href=file_deleter.php>file_deleter</a>
|
|
|
|
deletes input and output files when they are no longer needed.
|
|
|
|
|
|
|
|
<h3>Database purging</h3>
|
|
|
|
The application-independent program
|
|
|
|
<a href=db_purge.php>db_purge</a>
|
|
|
|
removes work-related database entries when they are no longer needed.
|
|
|
|
This keeps your database at a constant size even
|
|
|
|
when your project runs for a long time.
|
2003-08-19 06:44:58 +00:00
|
|
|
";
|
|
|
|
page_tail();
|
|
|
|
?>
|