2004-06-09 19:09:16 +00:00
|
|
|
<?php
|
2005-02-12 01:26:46 +00:00
|
|
|
require_once("docutil.php");
|
2006-07-17 16:38:53 +00:00
|
|
|
page_head("BOINC software development ");
|
2003-09-04 07:16:14 +00:00
|
|
|
|
2005-02-12 01:26:46 +00:00
|
|
|
echo "
|
2006-07-17 16:38:53 +00:00
|
|
|
<h2>Writing add-on software</h2>
|
|
|
|
<p>
|
|
|
|
BOINC's architecture is 'open';
|
|
|
|
documented interfaces making it possible to
|
|
|
|
develop various types of applications and web sites that
|
|
|
|
interact with BOINC's core components.
|
|
|
|
Examples include:
|
|
|
|
";
|
|
|
|
list_start();
|
|
|
|
list_item("<a href=gui_rpc.php>Client GUIs</a>",
|
2006-11-02 20:38:47 +00:00
|
|
|
"Application that control a local or remote core client."
|
2006-07-17 16:38:53 +00:00
|
|
|
);
|
|
|
|
list_item("<a href=stats.php>Credit statistics web sites</a>",
|
2006-11-02 20:38:47 +00:00
|
|
|
"Web sites showing credit information
|
|
|
|
(project totals, user/team/country leaderboards)
|
|
|
|
based on daily XML feeds of statistics data from BOINC projects."
|
2006-07-17 16:38:53 +00:00
|
|
|
);
|
|
|
|
list_item("<a href=acct_mgt.php>Account managers</a>",
|
2006-11-02 20:38:47 +00:00
|
|
|
"Web sites that let BOINC users create and manage accounts
|
|
|
|
on multiple projects."
|
2006-07-17 16:38:53 +00:00
|
|
|
);
|
|
|
|
list_item("<a href=server_status.php>Server status web sites</a>",
|
2006-11-02 20:38:47 +00:00
|
|
|
"Web sites showing the server status of BOINC projects."
|
2006-07-17 16:38:53 +00:00
|
|
|
);
|
|
|
|
list_item("<a href=web_rpc.php>Web RPCs</a>",
|
|
|
|
"These interfaces let a program or web site
|
|
|
|
obtain information about users and hosts from projects."
|
|
|
|
);
|
|
|
|
list_item("<a href=prefs_override.php>Local editing of preferences</a>",
|
|
|
|
"This mechanism lets you write a program local editing of preferences."
|
|
|
|
);
|
|
|
|
list_end();
|
|
|
|
echo "
|
|
|
|
<p>
|
2006-09-19 16:55:28 +00:00
|
|
|
Check the
|
|
|
|
<a href=addons.php>index of add-on software</a>
|
|
|
|
before writing anything (it may already exist).
|
|
|
|
The index has instructions for submitting new add-ons.
|
2004-12-01 05:03:53 +00:00
|
|
|
|
2006-07-17 16:38:53 +00:00
|
|
|
<h2>Developing BOINC itself</h2>
|
2005-07-27 11:59:38 +00:00
|
|
|
<p>
|
2005-02-12 01:26:46 +00:00
|
|
|
<ul>
|
2005-10-05 19:34:54 +00:00
|
|
|
<li> <a href=contact.php>Personnel and contributors</a>
|
|
|
|
<li> <a href=dev_flow.php>Development information flow</a>
|
2005-09-01 17:28:29 +00:00
|
|
|
<li> The <a href=http://bbugs.axpr.net/index.php>BOINCzilla bug database</a>.
|
|
|
|
<li> <a href=email_lists.php>boinc_dev</a>,
|
|
|
|
an email list for BOINC developers.
|
2005-06-11 19:58:57 +00:00
|
|
|
<li> <a href=compile.php>Get and compile BOINC software</a>
|
2006-02-06 21:03:36 +00:00
|
|
|
<li> <a href=impl_notes.php>Implementation notes</a>
|
2005-02-13 02:23:20 +00:00
|
|
|
<li> <a href=coding.php>BOINC coding style</a>
|
2005-02-12 01:26:46 +00:00
|
|
|
</ul>
|
2005-09-02 20:37:26 +00:00
|
|
|
<p>
|
|
|
|
BOINC is free software, distributed under the Lesser GNU Public License (LGPL).
|
|
|
|
We are in constant need of volunteers to
|
|
|
|
help with software testing and development.
|
|
|
|
If you have one or more of the relevant technical skills
|
|
|
|
(C++ system programming, PHP/MySQL web development,
|
|
|
|
WxWidgets programming, autoconf/automake expertise, etc.)
|
|
|
|
you may be able to help us maintain and enhance BOINC.
|
2006-02-25 00:21:39 +00:00
|
|
|
The University of California holds the copyright on all BOINC source code;
|
|
|
|
by contributing code to BOINC you implicitly assign the copyright
|
|
|
|
to the University of California.
|
2005-09-02 20:37:26 +00:00
|
|
|
In any case, you are welcome to browse the source code and give us feedback.
|
|
|
|
You should understand how BOINC works
|
|
|
|
(for both <a href=participate.php>participants</a>
|
|
|
|
and <a href=create_project.php>projects</a>)
|
|
|
|
before getting into the source code.
|
2005-07-27 11:59:38 +00:00
|
|
|
|
2005-09-02 20:37:26 +00:00
|
|
|
<p>
|
|
|
|
To get started, look at the BOINC bug database, fix a bug or two,
|
|
|
|
and send your patches to the appropriate area owner.
|
2005-07-27 11:59:38 +00:00
|
|
|
The following medium-to-large development projects are available:
|
|
|
|
<ul>
|
2006-03-21 06:52:30 +00:00
|
|
|
<li> Applications
|
|
|
|
<ul>
|
2006-05-15 00:27:15 +00:00
|
|
|
<li> Write an example compound application
|
|
|
|
(and suggest API revisions to make this easier).
|
2006-03-21 06:52:30 +00:00
|
|
|
</ul>
|
|
|
|
<li> Core client:
|
|
|
|
<ul>
|
2006-11-02 20:38:47 +00:00
|
|
|
<li> Extend general preferences to allow users to
|
|
|
|
specify different time-of-day restrictions for different days of the week.
|
|
|
|
<li>
|
|
|
|
Write a simulator for the CPU scheduler and work fetch policies
|
|
|
|
(Derrick Kondo is working on this).
|
2005-08-09 22:53:50 +00:00
|
|
|
|
2006-03-21 06:52:30 +00:00
|
|
|
<li> Log result start/ends (for use by 3rd-party software like BoincView).
|
2005-08-09 22:53:50 +00:00
|
|
|
|
2006-05-15 00:27:15 +00:00
|
|
|
<li> Prevent disk space usage from exceeding user preferences,
|
|
|
|
and enforce resource shares,
|
2006-03-21 06:52:30 +00:00
|
|
|
with file deletion according to project policy.
|
|
|
|
</ul>
|
2005-09-01 17:28:29 +00:00
|
|
|
|
2006-03-21 06:52:30 +00:00
|
|
|
<li> BOINC Manager:
|
|
|
|
<ul>
|
|
|
|
Change the Statistics tab to use a single graph
|
|
|
|
with lines of different colors or styles for different projects.
|
2005-09-01 17:28:29 +00:00
|
|
|
|
2006-11-02 20:38:47 +00:00
|
|
|
<li> Show progress bars for file transfers and in-progress results
|
|
|
|
(this requires changing the container class from Spreadsheet to Grid).
|
2005-09-01 17:28:29 +00:00
|
|
|
|
2006-11-02 20:38:47 +00:00
|
|
|
<li> Sortable columns in the Work tab.
|
2006-03-21 06:52:30 +00:00
|
|
|
</ul>
|
2005-09-01 17:28:29 +00:00
|
|
|
|
2005-08-09 22:53:50 +00:00
|
|
|
|
2005-07-27 11:59:38 +00:00
|
|
|
</ul>
|
2006-07-17 16:38:53 +00:00
|
|
|
Please check with <a href=contact.php>David Anderson</a>
|
2005-07-27 11:59:38 +00:00
|
|
|
before undertaking any of these.
|
2003-11-04 22:22:06 +00:00
|
|
|
";
|
2006-02-06 21:03:36 +00:00
|
|
|
|
2005-02-12 01:26:46 +00:00
|
|
|
page_tail();
|
2003-08-19 06:44:58 +00:00
|
|
|
?>
|
2003-09-04 07:16:14 +00:00
|
|
|
|