Changes between Version 5 and Version 6 of WrapperApp


Ignore:
Timestamp:
Apr 28, 2007, 12:26:18 PM (17 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WrapperApp

    v5 v6  
    11= Legacy applications =
    22
    3 A '''legacy application''' is one for which an executable is available, but not the source code. Therefore it cannot use the BOINC API and runtime system. However, such applications can be run using BOINC. Here's an example:
     3A '''legacy application''' is one which is difficult to modify to use the BOINC API
     4(for example, because an executable is available, but not the source code).
     5Such applications can be run under BOINC using a 'wrapper application' supplied by BOINC.
     6The wrapper handles all communication with the core client,
     7and runs the legacy application as a subprocess:
     8
     9[[Image(http://boinc.berkeley.edu/wrapper.png)]]
     10
     11Here's an example that shows how to set this up:
    412 * Compile the program 'worker' from the [ExampleApps boinc_samples] tree, producing (say) 'worker_5.10_windows_intelx86.exe'. This is the legacy app. If reads from stdin and writes to stdout; it also opens and reads a file 'in', and opens and writes a file 'out'. It takes one command-line argument: the number of CPU seconds to use.
    513 * Compile the program 'wrapper' from the [ExampleApps boinc_samples] tree, producing (say) 'wrapper_5.10_windows_intelx86.exe'. This program executes your legacy application, and acts as a proxy for it (to report CPU time etc.).
     
    1018    <task>
    1119        <application>worker_5.10_windows_intelx86.exe</application>
    12         <stdin_filename>stdin_file</stdin_filename>
    13         <stdout_filename>stdout_file</stdout_filename>
    14         [ <stderr_filename>stderr_file</stderr_filename> ]
    15         [ <command_line>--foo bar</command_line> ]
     20        <stdin_filename>stdin</stdin_filename>
     21        <stdout_filename>stdout</stdout_filename>
     22        <command_line>10</command_line>
    1623    </task>
    1724</job_desc>
     
    8895 * TODO: provide a way for projects to supply an animated GIF which is shown (with user/team credit text) as screensaver graphics.
    8996 * If the wrapper itself has command-line arguments (e.g., specified in the workunit template) these are passed to the application, after those specified in the job file.
    90 
     97 * The general form of the job file is:
     98{{{
     99<job_desc>
     100    <task>
     101        <application>worker_5.10_windows_intelx86.exe</application>
     102        <stdin_filename>stdin_file</stdin_filename>
     103        <stdout_filename>stdout_file</stdout_filename>
     104        [ <stderr_filename>stderr_file</stderr_filename> ]
     105        [ <command_line>--foo bar</command_line> ]
     106    </task>
     107</job_desc>
     108}}}
    91109To understand how all this works: at the beginning of execution, the file layout is:
    92110