mirror of https://github.com/BOINC/boinc.git
*** empty log message ***
svn path=/trunk/boinc/; revision=6270
This commit is contained in:
parent
1579cca79d
commit
3828904a84
|
@ -7180,3 +7180,52 @@ David 28 May 2005
|
|||
MainDocument.cpp,h
|
||||
ViewProjects.cpp
|
||||
ViewWork.cpp
|
||||
|
||||
David 31 May 2005
|
||||
- Add 2 new items to scheduler RPC request:
|
||||
- <other_results>
|
||||
List of other results for this project
|
||||
(besides those being reported, if any)
|
||||
This can be used by the scheduler to resend
|
||||
previously sent results that were lost somehow.
|
||||
Includes only the name of the result.
|
||||
- <in_progress_results>
|
||||
List of all results for which computation is not done.
|
||||
Includes estimated remaining CPU time, report deadline.
|
||||
This can be used by the scheduler to decide whether
|
||||
to send short-deadline results.
|
||||
|
||||
Note 1: the scheduler doesn't use the above info yet.
|
||||
Need to get this code into clients first.
|
||||
|
||||
Note 2: I used tag names <other_result> and <ip_result>
|
||||
for the results within each element.
|
||||
This will prevent the current scheduler from
|
||||
mistaking them for elements being reported.
|
||||
This is a kludge, but is fixed in new scheduler code
|
||||
(see next item)
|
||||
|
||||
- add skip_unrecognized() function to lib/parse.C
|
||||
Call this when get an unrecognized line.
|
||||
If it's a single tag "<foo>",
|
||||
this will skip all lines up to and including "</foo>"
|
||||
|
||||
- Change Win name from "BOINC Daemon" to "BOINC client"
|
||||
(let's not introduce random new terms at this point)
|
||||
|
||||
- boinc_cmd: print error messages in some cases
|
||||
(should finish this to handle other cases)
|
||||
|
||||
- fix bug in boinc_cmd: wasn't connecting to alternate port
|
||||
|
||||
client/
|
||||
cs_scheduler.C
|
||||
win/
|
||||
boinc_cli.rc
|
||||
lib/
|
||||
boinc_cmd.C
|
||||
gui_rpc_client.C,h
|
||||
parse.C,h
|
||||
util.C
|
||||
sched/
|
||||
server_types.C
|
||||
|
|
|
@ -327,6 +327,42 @@ int CLIENT_STATE::make_scheduler_request(PROJECT* p, double work_req) {
|
|||
fip->name, fip->nbytes, fip->status
|
||||
);
|
||||
}
|
||||
|
||||
// send names of results in progress for this project
|
||||
//
|
||||
fprintf(f, "<other_results>\n");
|
||||
for (i=0; i<results.size(); i++) {
|
||||
rp = results[i];
|
||||
if (rp->project == p && !rp->ready_to_report) {
|
||||
fprintf(f,
|
||||
" <other_result>\n"
|
||||
" <name>%s</name>\n"
|
||||
" </other_result>\n",
|
||||
rp->name
|
||||
);
|
||||
}
|
||||
}
|
||||
fprintf(f, "</other_results>\n");
|
||||
|
||||
// send summary of in-progress results
|
||||
// to give scheduler info on our CPU commitment
|
||||
//
|
||||
fprintf(f, "<in_progress_results>\n");
|
||||
for (i=0; i<results.size(); i++) {
|
||||
rp = results[i];
|
||||
double x = rp->estimated_cpu_time_remaining();
|
||||
if (x == 0) continue;
|
||||
fprintf(f,
|
||||
" <ip_result>\n"
|
||||
" <report_deadline>%f</report_deadline>\n"
|
||||
" <cpu_time_remaining>%f</cpu_time_remaining>\n"
|
||||
" </ip_result>\n",
|
||||
rp->report_deadline,
|
||||
x
|
||||
);
|
||||
}
|
||||
fprintf(f, "</in_progress_results>\n");
|
||||
|
||||
fprintf(f, "</scheduler_request>\n");
|
||||
|
||||
fclose(f);
|
||||
|
|
|
@ -72,12 +72,12 @@ BEGIN
|
|||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Space Sciences Laboratory"
|
||||
VALUE "FileDescription", "BOINC Daemon"
|
||||
VALUE "FileDescription", "BOINC client"
|
||||
VALUE "FileVersion", BOINC_VERSION_STRING "\0"
|
||||
VALUE "InternalName", "boinc_cli"
|
||||
VALUE "LegalCopyright", "Copyright © 2003-2005 University of California"
|
||||
VALUE "OriginalFilename", "boinc_cli.exe"
|
||||
VALUE "ProductName", "BOINC Daemon"
|
||||
VALUE "ProductName", "BOINC client"
|
||||
VALUE "ProductVersion", BOINC_VERSION_STRING "\0"
|
||||
END
|
||||
END
|
||||
|
|
|
@ -274,7 +274,7 @@ list_item("output",
|
|||
[ <error>MSG</error> ]
|
||||
[ <account>
|
||||
<url>URL</url>
|
||||
<key>KEY</key>
|
||||
<authenticator>KEY</authenticator>
|
||||
</account>
|
||||
...
|
||||
]
|
||||
|
|
|
@ -41,7 +41,6 @@ You can do this in either of two ways:
|
|||
<li>
|
||||
<a href=compile.php>Download and compile</a>
|
||||
the BOINC client software on your computer.
|
||||
client and the project's applications, and compile them on your computer.
|
||||
<li>
|
||||
If available, download BOINC executablers for your
|
||||
computer from a third-party source.
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
<?php
|
||||
require_once("docutil.php");
|
||||
page_head("Installing the core client");
|
||||
page_head("Installing the command-line core client");
|
||||
echo "
|
||||
This type of installation
|
||||
requires that you be familiar with the
|
||||
This type of installation requires that you be familiar with the
|
||||
UNIX command-line interface.
|
||||
|
||||
<p>
|
||||
|
@ -23,14 +22,24 @@ if your browser has not done it for you.
|
|||
Instructions on running the core client (command-line options, etc.) are
|
||||
<a href=client_unix.php>here</a>.
|
||||
<p>
|
||||
Mac OS X - specific instructions are
|
||||
<a href=http://boinc-doc.net/site-boinc/oman-app/inst-mac.php>here</a>.
|
||||
<p>
|
||||
You'll probably want to arrange
|
||||
to run the executable each time your machine boots or you log on.
|
||||
Some examples follow.
|
||||
|
||||
<h2>Automatic startup on Unix</h2>
|
||||
<h2> Automatic startup on Mac OS X</h2>
|
||||
<p>
|
||||
<ul>
|
||||
<li>
|
||||
Instructions from Paul Buck's
|
||||
<a href=http://boinc-doc.net/site-boinc/oman-app/inst-mac.php>BOINC Owner's Manual</a>.
|
||||
<li>
|
||||
<a href=mac_yenigun.html>Instructions from Berki Yenigun</a>,
|
||||
deadsmile at minitel.net
|
||||
<li>
|
||||
<a href=http://stegic.net/archives/2005/05/boinc_as_a_syst.html>Running
|
||||
BOINC as a system service on Mac OS X</a> by Ivan Stegic.
|
||||
</ul>
|
||||
<h2> Automatic startup on Unix</h2>
|
||||
<p>
|
||||
Users have contributed scripts for automatic
|
||||
startup of BOINC on various versions of Unix:
|
||||
|
@ -47,54 +56,6 @@ startup of BOINC on various versions of Unix:
|
|||
<a href=gentoo.txt>Gentoo Linux</a> (from Gabor Nagy)
|
||||
</ul>
|
||||
|
||||
<h2>Automatic startup on Mac OS X</h2>
|
||||
<p>
|
||||
[ The following is from Berki Yenigun, deadsmile at minitel.net ]
|
||||
<p>
|
||||
Here's a step by step guide to create a command file for Mac OS X
|
||||
Panther that will automatically launch Boinc command line client each
|
||||
time you log into your account:
|
||||
<ol>
|
||||
<li> Open TextEdit, paste and adapt the following two lines (adapt the
|
||||
path after the cd command to the folder in which you saved Boinc, and
|
||||
the name of Boinc file in the second line to the version you downloaded):
|
||||
|
||||
<pre>
|
||||
cd myapplications/boinc
|
||||
./boinc_4.19_powerpc-apple-darwin
|
||||
</pre>
|
||||
|
||||
<li> Convert this into plain text format by clicking on Format and then on
|
||||
Make Plain Text (rich text doesn't fit our needs), and save it
|
||||
with .command extension (replace the .txt) : Let's call our file
|
||||
boincscript, the file name & extension should be boincscript.command.
|
||||
Once your file is saved, you can quit TextEdit.
|
||||
|
||||
<li> Now open Terminal, using cd command go to the folder where you saved
|
||||
the script file, then type
|
||||
chmod +x boincscript.command
|
||||
to make it executable. (use help if necessary : type man or man man.)
|
||||
After that, you can quit Terminal.
|
||||
|
||||
</ol>
|
||||
|
||||
It's almost done : all you need to do now is to add boincscript.command
|
||||
|
||||
file to the login items in the 'Accounts' pane in 'System Preferences'.
|
||||
|
||||
<p>
|
||||
If you want to start Boinc manually again, you simply have to remove
|
||||
boincscript.command from the login items.
|
||||
|
||||
<p>
|
||||
PS: You can use the
|
||||
<a href=client_unix.php>core client command-line options</a> in your script.
|
||||
An example:
|
||||
<pre>
|
||||
./boinc_4.19_powerpc-apple-darwin -return_results_immediately
|
||||
</pre>
|
||||
|
||||
|
||||
";
|
||||
page_tail();
|
||||
?>
|
||||
|
|
|
@ -163,6 +163,7 @@ To get the X11 support,
|
|||
select the relevant options when you're installing Linux,
|
||||
or (Redhat) go to System Settings/Add Software.
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Notes for <a href=debian_linux_install.txt>Debian Linux</a>.
|
||||
</ul>
|
||||
|
|
|
@ -11,15 +11,15 @@ function page_head($title) {
|
|||
$d = last_mod();
|
||||
echo "<html>
|
||||
<head>
|
||||
<link rel='stylesheet' type='text/css' href='white.css'/>
|
||||
<link rel='shortcut icon' href='iconsmall.ico'/>
|
||||
<link rel=\"stylesheet\" type=\"text/css\" href=\"white.css\"/>
|
||||
<link rel=\"shortcut icon\" href=\"iconsmall.ico\"/>
|
||||
<title>$title</title>
|
||||
</head>
|
||||
<body bgcolor='ffffff'>
|
||||
<table width='100%'>
|
||||
<tr>
|
||||
<td><center><h1>$title</h1></center>
|
||||
<td align=right><a href='.'><img src='boinc.gif'></a>
|
||||
<td align=right><a href=\".\"><img src=\"boinc.gif\"></a>
|
||||
<br>
|
||||
<nobr><font size='2'>Last modified $d</font></nobr>
|
||||
</td>
|
||||
|
@ -43,7 +43,7 @@ function page_tail() {
|
|||
echo "
|
||||
<hr size=1>
|
||||
<center>
|
||||
<a href='/'>Return to BOINC main page</a>
|
||||
<a href=\"/\">Return to BOINC main page</a>
|
||||
</center><p>
|
||||
";
|
||||
copyright();
|
||||
|
|
|
@ -97,6 +97,7 @@ function show_version($pname, $i, $v) {
|
|||
$status = $v["status"];
|
||||
$path = "dl/$file";
|
||||
$s = number_format(filesize($path)/1000000, 2);
|
||||
$type = $v["type"];
|
||||
echo "<tr><td width=3%><nobr>
|
||||
$num</td><td> $status
|
||||
</nobr>
|
||||
|
@ -104,9 +105,11 @@ function show_version($pname, $i, $v) {
|
|||
<td>
|
||||
<a href=dl/$file><b>Download</b></a> ($s MB)
|
||||
</td>
|
||||
<td>
|
||||
$type
|
||||
</td>
|
||||
<td width=1%>
|
||||
<a href=download.php?platform=$pname&i=$i>
|
||||
<font size=-1>details</a>
|
||||
<a href=download.php?platform=$pname&i=$i>details</a>
|
||||
</td>
|
||||
</tr>
|
||||
";
|
||||
|
|
|
@ -4,6 +4,7 @@ require_once("boinc_news.inc");
|
|||
require_once("../html/inc/news.inc");
|
||||
|
||||
echo "
|
||||
<html>
|
||||
<head>
|
||||
<link rel=\"shortcut icon\" href=\"iconsmall.ico\">
|
||||
<link rel=\"stylesheet\" type=text/css href=white.css>
|
||||
|
@ -11,7 +12,7 @@ echo "
|
|||
<meta name=description content=\"BOINC is a software platform for developing public-participation distributed computing projects\">
|
||||
<meta name=keywords content=\"distributed scientific computing supercomputing grid SETI@home public computing volunteer computing \">
|
||||
</head>
|
||||
<body bgcolor=ffffff text=000088 link=000088 vlink=000088>
|
||||
<body bgcolor=#ffffff text=#000088 link=#000088 vlink=#000088>
|
||||
<img hspace=30 vspace=10 align=left src=boinc.gif>
|
||||
<center>
|
||||
<br>
|
||||
|
@ -141,4 +142,5 @@ echo "
|
|||
<hr>
|
||||
";
|
||||
copyright();
|
||||
echo "</html>\n";
|
||||
?>
|
||||
|
|
|
@ -75,6 +75,7 @@ language("French", array(
|
|||
site("http://boinc-quebec.org", "boinc-quebec.org")
|
||||
));
|
||||
language("German", array(
|
||||
site("http://www.boinc-halle-saale.de.vu", "BOINC@Halle/Saale"),
|
||||
site("http://www.boincfun.tk/", "BOINCfun"),
|
||||
site("http://www.setigermany.de", "SETI.Germany"),
|
||||
site("http://www.sar-hessen.de", "Team Science and Research Hessen"),
|
||||
|
|
312
doc/menubar.php
312
doc/menubar.php
|
@ -5,120 +5,274 @@ page_head("BOINC Menubar v4.43 (4)");
|
|||
echo "
|
||||
|
||||
<h1>Introduction</h1>
|
||||
<p>BOINC Menubar is a graphical front end for BOINC, a software platform developed at Berkeley which allows volunteers such as yourself to contribute unused processor cycles to help solve problems in physics, medicine, climatology, astronomy, and more. Combining tens of thousands of computers, BOINC users form what is effectively the most powerful supercomputer on the planet. </p>
|
||||
<p> BOINC Menubar provides a simple interface for BOINC, eliminating the need for any command-line typing. It does not have a main window, application menu, or dock icon. Instead, everything is controlled from a small icon which appears in the upper right hand corner of your screen. Clicking on this icon produces a menu which provides you access to all the features of BOINC Menubar.</p>
|
||||
<p> </p>
|
||||
<h1>Getting Started</h1>
|
||||
<h3>A Note About The Interface:</h3>
|
||||
<p>You will notice that BOINC Menubar does not have a main window, application menu, or dock icon. Instead everything is controlled from a small icon which appears in the upper right hand corner of your screen. Clicking on this icon produces a menu which provides you easy access to all the features of BOINC Menubar</p>
|
||||
<p>
|
||||
BOINC Menubar is a graphical front end for BOINC,
|
||||
a software platform developed at Berkeley which allows volunteers
|
||||
such as yourself to contribute unused processor cycles to help
|
||||
solve problems in physics, medicine, climatology, astronomy, and more.
|
||||
Combining tens of thousands of computers,
|
||||
BOINC users form what is effectively the most powerful supercomputer
|
||||
on the planet.
|
||||
|
||||
<p>
|
||||
BOINC Menubar provides a simple interface for BOINC,
|
||||
eliminating the need for any command-line typing.
|
||||
It does not have a main window, application menu, or dock icon.
|
||||
Instead, everything is controlled from a small icon which
|
||||
appears in the upper right hand corner of your screen.
|
||||
Clicking on this icon produces a menu which provides you
|
||||
access to all the features of BOINC Menubar.
|
||||
|
||||
<p> <img src=screenshots/menu.jpg width=299 height=474><br>
|
||||
(Figure 1)
|
||||
|
||||
<h3> </h3>
|
||||
<h1>Getting Started</h1>
|
||||
<h3>First-time BOINC Participants</h3>
|
||||
<p> If you are new to BOINC, then you need to create accounts for projects in which you would like to participate. Please visit the main BOINC site (<a href=http://boinc.berkeley.edu/>http://boinc.berkeley.edu/</a>) for a list of popular projects.
|
||||
<p>When you create an account, you will be sent an email containing a URL and Account Key. Collect this information and skip down to the 'Project Manager' section for information on how to set up BOINC Menubar to run these projects.
|
||||
<h3> </h3>
|
||||
<h3>Returning BOINC Participants</h3>
|
||||
<p>If you already have a BOINC account and have run the 'boinc' command-line on this computer, you will need to move existing files to a new location. Locate the folder which served as the launch path when you ran the 'boinc' command. It should contain such files and folders as 'client_state.xml', 'slots', and 'projects'.
|
||||
|
||||
<p> Copy all these files (not the enclosing folder itself) into '~/Library/Application Support/BOINC Data/'
|
||||
|
||||
<p> Now when you run BOINC Menubar and select 'Manage Projects...' from the status menu, you should find a list of the projects you are currently participating in.
|
||||
<p>
|
||||
If you are new to BOINC,
|
||||
then you need to create accounts for projects
|
||||
in which you would like to participate.
|
||||
Please visit the main BOINC site
|
||||
(<a href=http://boinc.berkeley.edu/>http://boinc.berkeley.edu/</a>)
|
||||
for a list of popular projects.
|
||||
<p>
|
||||
When you create an account, you will be sent an email containing a URL
|
||||
and Account Key.
|
||||
Collect this information and skip down to the 'Project Manager'
|
||||
section for information on how to set up BOINC Menubar to run these projects.
|
||||
|
||||
<h3>Returning BOINC Participants</h3>
|
||||
<p>
|
||||
If you already have a BOINC account and have run the 'boinc'
|
||||
command-line on this computer, you will need to move existing files
|
||||
to a new location.
|
||||
Locate the folder which served as the launch path when you ran the 'boinc'
|
||||
command.
|
||||
It should contain such files and folders as 'client_state.xml',
|
||||
'slots', and 'projects'.
|
||||
|
||||
<p>
|
||||
Copy all these files (not the enclosing folder itself)
|
||||
into '~/Library/Application Support/BOINC Data/'
|
||||
|
||||
<p>
|
||||
Now when you run BOINC Menubar and select 'Manage Projects...' from the
|
||||
status menu,
|
||||
you should find a list of the projects you are currently participating in.
|
||||
|
||||
<h1>Managing Projects</h1>
|
||||
<h3>Adding Projects</h3>
|
||||
<p> Before adding projects, collect the emails containing the URLs and Account Keys for each project.
|
||||
<p>
|
||||
Before adding projects, collect the emails containing the URLs
|
||||
and Account Keys for each project.
|
||||
|
||||
<p> Select 'Manage Projects...' from the status menu.
|
||||
<p>
|
||||
Select 'Manage Projects...' from the status menu.
|
||||
|
||||
<p> <img src=screenshots/menuMouseOnManageProjects.jpg width=300 height=473><br>
|
||||
<p>
|
||||
<img src=screenshots/menuMouseOnManageProjects.jpg width=300 height=473><br>
|
||||
(Figure 2)
|
||||
<p> This will open up the 'Project Manager'.
|
||||
<p> <img src=screenshots/projectManager.jpg width=499 height=262><br>
|
||||
(Figure 3)
|
||||
<p> Click the 'Add' button. This will produce a new sheet in which you can paste in a URL and Account ID.
|
||||
<p>
|
||||
This will open up the 'Project Manager'.
|
||||
<p>
|
||||
<img src=screenshots/projectManager.jpg width=499 height=262><br> (Figure 3)
|
||||
<p>
|
||||
Click the 'Add' button.
|
||||
This will produce a new sheet in which you can paste in a URL and Account Key.
|
||||
|
||||
<p> <img src=screenshots/projectManagerWithAddProjectSheet.jpg width=502 height=263><br>
|
||||
<p>
|
||||
<img src=screenshots/projectManagerWithAddProjectSheet.jpg width=502 height=263><br>
|
||||
(Figure 4)
|
||||
<p> After you have finished, click 'OK' and the project will be added.
|
||||
<p> <strong>Note: </strong>Please be patient as it can take a few moments for a project to be added.
|
||||
<p>
|
||||
After you have finished, click 'OK' and the project will be added.
|
||||
<p>
|
||||
<strong>Note: </strong>Please be patient as it can take a few moments for a project to be added.
|
||||
|
||||
<h3> </h3>
|
||||
<h3>Updating, Resetting, and Removing Projects:</h3>
|
||||
<p> Select 'Manage Projects...' from the status menu (Figure 2). This will open up the 'Project Manager' (Figure 3).
|
||||
<p> Highlight the project you wish to update, reset, or remove by clicking its name. The 'Remove', 'Reset', and 'Update' buttons at the bottom of the project manager window will be enabled.
|
||||
<p> <img src=screenshots/projectManagerButtonsEnabled.jpg width=498 height=261><br>
|
||||
<h3>Updating, Resetting, and Removing Projects:</h3>
|
||||
|
||||
<p>
|
||||
Select 'Manage Projects...' from the status menu (Figure 2).
|
||||
This will open up the 'Project Manager' (Figure 3).
|
||||
<p>
|
||||
Highlight the project you wish to update, reset, or remove
|
||||
by clicking its name.
|
||||
The 'Remove', 'Reset', and 'Update' buttons
|
||||
at the bottom of the project manager window will be enabled.
|
||||
<p>
|
||||
<img src=screenshots/projectManagerButtonsEnabled.jpg width=498 height=261><br>
|
||||
(Figure 5)
|
||||
|
||||
<p> Clicking 'Update' causes BOINC to contact a project's web site to obtain new preferences. This will also report completed results and get new work if needed.
|
||||
<p> Clicking 'Reset' clears all pending work for a project. Use this if there is a problem that is preventing your computer from working.
|
||||
<p> Clicking 'Remove' will remove the selected project.
|
||||
<p> <strong>Hint:</strong> As indicated in the project manager, double clicking a project's name or URL will take you to a projects web site. This is particularly convenient if you want to change a project's preferences or view statistics.
|
||||
<p>
|
||||
Clicking 'Update' causes BOINC to contact a project's web site
|
||||
to obtain new preferences.
|
||||
This will also report completed results and get new work if needed.
|
||||
<p>
|
||||
Clicking 'Reset' clears all pending work for a project.
|
||||
Use this if there is a problem that is preventing your computer from working.
|
||||
<p>
|
||||
Clicking 'Remove' will remove the selected project.
|
||||
<p>
|
||||
<strong>Hint:</strong> As indicated in the project manager,
|
||||
double clicking a project's name or URL will take you to a projects web site.
|
||||
This is particularly convenient if you want to change
|
||||
a project's preferences or view statistics.
|
||||
|
||||
<h2> </h2>
|
||||
<h1>The Status Menu</h1>
|
||||
<p> <img src=screenshots/menu.jpg width=299 height=474><br>
|
||||
<p>
|
||||
<img src=screenshots/menu.jpg width=299 height=474><br>
|
||||
(Figure 6)
|
||||
<h3> </h3>
|
||||
<h3>Controlling BOINC Using BOINC Menubar</h3>
|
||||
<p> Once BOINC Menubar has some projects to run, you can now use the menu to start and stop BOINC.
|
||||
<p> To start BOINC running, simply select 'Start' from the status menu. BOINC will start running in the background.
|
||||
|
||||
<p> If you wish to see exactly what BOINC is doing while it is running, select 'Display Log' from the status menu. This will display a window containing all the output produced by BOINC.
|
||||
<p> <img src=screenshots/logWindow.jpg width=685 height=332><br>
|
||||
(Figure 7)
|
||||
<p> If you want to stop BOINC running for any reason, simply select 'Stop'. Quitting BOINC Menubar automatically stops BOINC if it is running.
|
||||
<p>You may force BOINC to run CPU benchmarks by selecting 'Run CPU Benchmarks' from the status menu. Note that you only need to do this if you have recently modified your computer's hardware.
|
||||
<p>
|
||||
<h3>Menu Statistics</h3>
|
||||
<p>The status menu contains four pieces of information:
|
||||
<p> The 'Current Project' is simply the project or projects currently being run by BOINC. The current project will change from time to time as BOINC stops and starts other projects.
|
||||
<p> The 'Work Completed' indicates what percentage of the current work unit has been completed for the current project.
|
||||
<p>The 'Project Credit' is the amount of credit you have received for the project which is currently running. This is the same amount as appears on the project's web site and includes credit which you have received by running BOINC on other computers as well.
|
||||
<p> The 'Total Credit' is the amount of credit you have received for all projects which BOINC Menubar knows about. That is, if you are participating in four projects on this computer, then the total credit will be the sum of all four project credits.
|
||||
Once BOINC Menubar has some projects to run,
|
||||
you can now use the menu to start and stop BOINC.
|
||||
<p>
|
||||
To start BOINC running, simply select 'Start' from the status menu.
|
||||
BOINC will start running in the background.
|
||||
|
||||
<p> <strong>Note: </strong>The amount of credit displayed by BOINC Menubar may not be <em>exactly</em> the same as you find on project web sites. This is because credit is only updated when a computer contacts the projects web site to send results or receive new data. If the amount of credit differs from what you see on the web, the amount will be updated next time the project contacts its web site.
|
||||
<h3> </h3>
|
||||
<p>
|
||||
If you wish to see exactly what BOINC is doing while it is running,
|
||||
select 'Display Log' from the status menu.
|
||||
This will display a window containing all the output produced by BOINC.
|
||||
<p>
|
||||
<img src=screenshots/logWindow.jpg width=685 height=332><br>
|
||||
(Figure 7)
|
||||
<p>
|
||||
If you want to stop BOINC running for any reason, simply select 'Stop'.
|
||||
Quitting BOINC Menubar automatically stops BOINC if it is running.
|
||||
<p>
|
||||
You may force BOINC to run CPU benchmarks by selecting
|
||||
'Run CPU Benchmarks' from the status menu.
|
||||
Note that you only need to do this if you have recently modified
|
||||
your computer's hardware.
|
||||
|
||||
<h3>Menu Statistics</h3>
|
||||
<p>
|
||||
The status menu contains four pieces of information:
|
||||
<p>
|
||||
The 'Current Project' is simply the project or projects currently
|
||||
being run by BOINC.
|
||||
The current project will change from time to time
|
||||
as BOINC stops and starts other projects.
|
||||
<p>
|
||||
The 'Work Completed' indicates what percentage of the current work
|
||||
unit has been completed for the current project.
|
||||
<p>
|
||||
The 'Project Credit' is the amount of credit you have received
|
||||
for the project which is currently running.
|
||||
This is the same amount as appears on the project's web site
|
||||
and includes credit which you have received by running BOINC
|
||||
on other computers as well.
|
||||
<p>
|
||||
The 'Total Credit' is the amount of credit you have received
|
||||
for all projects which BOINC Menubar knows about.
|
||||
That is, if you are participating in four projects on this computer,
|
||||
then the total credit will be the sum of all four project credits.
|
||||
|
||||
<p>
|
||||
<strong>Note: </strong>The amount of credit displayed by BOINC Menubar
|
||||
may not be <em>exactly</em> the same as you find on project web sites.
|
||||
This is because credit is only updated when a computer contacts
|
||||
the projects web site to send results or receive new data.
|
||||
If the amount of credit differs from what you see on the web,
|
||||
the amount will be updated next time the project contacts its web site.
|
||||
|
||||
<h3>Menubar Statistics</h3>
|
||||
<p>The menubar contains two pieces of information:</p>
|
||||
<p>A small icon indicates the current project or projects. Listed below are the most common projects and their corresponding icons.</p>
|
||||
<p>
|
||||
The menubar contains two pieces of information:</p>
|
||||
<p>
|
||||
A small icon indicates the current project or projects. Listed below are the most common projects and their corresponding icons.</p>
|
||||
<p><img src=screenshots/CPIcon.jpg width=15 height=15> - climateprediction.net
|
||||
<p><img src=screenshots/EAHIcon.jpg width=15 height=15> - Einstein@home
|
||||
<p><img src=screenshots/PPAHIcon.jpg width=15 height=15> - Predictor@home
|
||||
<p><img src=screenshots/SAHIcon.jpg width=15 height=15> - SETI@home
|
||||
<p><img src=screenshots/BOINCIcon.jpg width=15 height=15> - Default icon for all other projects
|
||||
<p>The menubar also displays a graphical representation of the completed percentage of the current work unit as a vertical 'progress bar'.</p>
|
||||
<p> </p>
|
||||
<p>
|
||||
The menubar also displays a graphical representation of the completed percentage of the current work unit as a vertical 'progress bar'.</p>
|
||||
|
||||
<h1>Preferences</h1>
|
||||
<p> <img src=screenshots/preferencesWindow.jpg width=534 height=296><br>
|
||||
(Figure 8)
|
||||
|
||||
<h3>General Settings: </h3>
|
||||
<p>Select 'Start BOINC On Application Launch' if you which BOINC to start running every time you open BOINC Menubar. You might find this particularly useful if you want BOINC to be running all the time.
|
||||
<p>
|
||||
Select 'Start BOINC On Application Launch' if you want BOINC to
|
||||
start running every time you open BOINC Menubar.
|
||||
You might find this particularly useful if you want BOINC
|
||||
to be running all the time.
|
||||
|
||||
<p> <strong>Hint:</strong> You can set BOINC Menubar to auto-launch whenever you login by adding BOINC Menubar to the login items in the 'Accounts' pane in 'System Preferences'. Combining this with 'Start BOINC On Application Launch' will ensure that BOINC is running at all times.
|
||||
<p> Select 'Display Log On Application Launch' if you wish the Log window to open automatically every time you open BOINC Menubar.<p>Select 'Share Data With Other Users' if you wish data to be shared with other users running BOINC Menubar on your computer. The data will be moved to a location where other users can access and contribute to it.<p><strong>Note:</strong> Only admistrative users can set up BOINC Menubar to share data with other users, but all users can contribute.<p> Select 'Unlimited Scrollback' if you would like to keep all the output produced by BOINC. By default, the BOINC Menubar keeps the last 10,000 lines output by BOINC.
|
||||
</p>
|
||||
<p> </p>
|
||||
<p>
|
||||
<strong>Hint:</strong> You can set BOINC Menubar to auto-launch
|
||||
whenever you login by adding BOINC Menubar to the login items
|
||||
in the 'Accounts' pane in 'System Preferences'.
|
||||
Combining this with 'Start BOINC On Application Launch'
|
||||
will ensure that BOINC is running at all times.
|
||||
<p>
|
||||
Select 'Display Log On Application Launch' if you wish the Log window to
|
||||
open automatically every time you open BOINC Menubar.
|
||||
<p>
|
||||
Select 'Share Data With Other Users' if you wish data to be shared
|
||||
with other users running BOINC Menubar on your computer.
|
||||
The data will be moved to a location where other users can access
|
||||
and contribute to it.
|
||||
<p>
|
||||
<strong>Note:</strong> Only administrative users can set up BOINC Menubar
|
||||
to share data with other users, but all users can contribute.
|
||||
<p>
|
||||
Select 'Unlimited Scrollback' if you would like to keep all
|
||||
the output produced by BOINC.
|
||||
By default, the BOINC Menubar keeps the last 10,000 lines output by BOINC.
|
||||
|
||||
<h3>Proxy Settings:</h3>
|
||||
<p>If you need to use a proxy, first select the type of proxy you are using: HTTP or SOCKS. Next, enter the address of the proxy. If the proxy requires a username and password, click the "Set password..." button. This will produce a new sheet in which you can enter your username and password (Figure 9).</p>
|
||||
<p> </p>
|
||||
<p>
|
||||
If you need to use a proxy, first select the type of proxy you are using:
|
||||
HTTP or SOCKS.
|
||||
Next, enter the address of the proxy.
|
||||
If the proxy requires a username and password,
|
||||
click the "Set password..." button.
|
||||
This will produce a new sheet in which you can enter your username
|
||||
and password (Figure 9).
|
||||
|
||||
<p><img src=screenshots/preferencesWindowWithProxyPasswordSheet.jpg width=528 height=294><br>
|
||||
(Figure 9)</p>
|
||||
<p>Click "OK" to save</p>
|
||||
<p> </p>
|
||||
(Figure 9)
|
||||
|
||||
<p>Click "OK" to save
|
||||
|
||||
<h1>Acknowledgements and Support</h1>
|
||||
<p> BOINC Menubar was developed by <a href=http://www.greenkeepersoftware.com>GreenKeeper Software</a>, which has made BOINC Menubar freely available for all BOINC participants. If you wish, you can make a <a href=http://www.greenkeepersoftware.com/donate.html>donation</a> to GreenKeeper Software to support further development of BOINC Menubar and future GreenKeeper Software products.
|
||||
<p> If you have questions about, problems with, or comments concerning BOINC Menubar, please contact GreenKeeper Software directly by email (<a href=mailto:developer@greenkeepersoftware.com>support@greenkeepersoftware.com</a>). If you are reporting a bug, please be as specific as possible.
|
||||
<p> Also, please be aware that some problems may be a result of BOINC or projects running on the BOINC platform and not BOINC Menubar itself. If you are unsure of the source of the problem, go ahead and contact GreenKeeper Software anyway and we will do our very best to help you or refer you to people who can.
|
||||
<p><em><strong>Disclaimer:</strong></em> Every effort has been made on the part of GreenKeeper Software to fully test and debug BOINC Menubar. It should, therefore, not cause you to have any problems. However, you are using BOINC Menubar at your own risk. Any harm caused as a result of this software is not the fault of GreenKeeper Software or the BOINC developers.
|
||||
<p> </p>
|
||||
<p>
|
||||
BOINC Menubar was developed by
|
||||
<a href=http://www.greenkeepersoftware.com>GreenKeeper Software</a>,
|
||||
which has made BOINC Menubar freely available for all BOINC participants.
|
||||
If you wish, you can make a
|
||||
<a href=http://www.greenkeepersoftware.com/donate.html>donation</a>
|
||||
to GreenKeeper Software to support further development of BOINC Menubar
|
||||
and future GreenKeeper Software products.
|
||||
<p>
|
||||
If you have questions about, problems with, or comments concerning
|
||||
BOINC Menubar, please contact GreenKeeper Software directly by
|
||||
email (<a href=mailto:developer@greenkeepersoftware.com>support@greenkeepersoftware.com</a>).
|
||||
If you are reporting a bug, please be as specific as possible.
|
||||
<p>
|
||||
Also, please be aware that some problems may be a result of BOINC or
|
||||
projects running on the BOINC platform and not BOINC Menubar itself.
|
||||
If you are unsure of the source of the problem,
|
||||
go ahead and contact GreenKeeper Software anyway and we will do
|
||||
our very best to help you or refer you to people who can.
|
||||
<p>
|
||||
<em><strong>Disclaimer:</strong></em> Every effort has been made on the part
|
||||
of GreenKeeper Software to fully test and debug BOINC Menubar.
|
||||
It should, therefore, not cause you to have any problems.
|
||||
However, you are using BOINC Menubar at your own risk.
|
||||
Any harm caused as a result of this software is not the fault of
|
||||
GreenKeeper Software or the BOINC developers.
|
||||
|
||||
<h1> History </h1>
|
||||
<p><strong>Version 4.25 (1) </strong></p>
|
||||
<p>
|
||||
<strong>Version 4.25 (1) </strong>
|
||||
<ul>
|
||||
<li>First Release (Based on GreenKeeper Software's Deep Thought v1.1)</li>
|
||||
<li>First Release (Based on GreenKeeper Software's Deep Thought v1.1)</li>
|
||||
</ul>
|
||||
<p> </p>
|
||||
<p>
|
||||
<p><strong>Version 4.25 (2)</strong></p>
|
||||
<ul>
|
||||
<li>Adds support for HTTP and SOCKS proxies</li>
|
||||
|
@ -127,7 +281,7 @@ echo "
|
|||
<li>Fixes a bug which caused the application to freeze when choosing "Stop" or "Quit BOINC Menubar"</li>
|
||||
<li>Various other fixes and improvements</li>
|
||||
</ul>
|
||||
<p> </p>
|
||||
<p>
|
||||
<p><strong>Version 4.37 (3)</strong></p>
|
||||
<ul>
|
||||
<li>Includes improved BOINC client</li>
|
||||
|
@ -136,9 +290,9 @@ echo "
|
|||
<li>Fixes a bug on dual processor machines where the status of both processes was not always being displayed </li>
|
||||
<li>Adds a preference to share data between users </li><li>Improves security by hiding and encrypting proxy password</li>
|
||||
<li>Adds ability to manually run benchmarks</li>
|
||||
<li>Improved efficiency</li></ul>
|
||||
<li>Improved efficiency</li>
|
||||
</ul>
|
||||
|
||||
<p> </p>
|
||||
<p><strong>Version 4.43 (4)</strong></p>
|
||||
<ul>
|
||||
<li>Includes improved BOINC client</li></ul>
|
||||
|
@ -146,4 +300,4 @@ echo "
|
|||
";
|
||||
|
||||
page_tail();
|
||||
?>
|
||||
?>
|
||||
|
|
|
@ -15,7 +15,7 @@ echo "
|
|||
<li> <a href=win_install.php>The Windows installer</a>
|
||||
<li> <a href=client_unix.php>Command-line version (Unix, Mac OS/X)</a>
|
||||
<li> <a href=client_mac.php>Installing BOINC on Mac OS/X</a>
|
||||
<li> <a href=sea.php>Self-extracting archive (UNIX></a>
|
||||
<li> <a href=sea.php>Self-extracting archive (UNIX)</a>
|
||||
<li> <a href=screensaver.php>The BOINC screensaver</a>
|
||||
</ul>
|
||||
<li> <a href=prefs.php>Preferences</a>
|
||||
|
|
|
@ -24,9 +24,9 @@ run_client
|
|||
and runs the core client.
|
||||
</dl>
|
||||
|
||||
You will need to develop your own mechanism
|
||||
to run the executable each time your machine boots
|
||||
You may want to run the executable each time your machine boots
|
||||
or you log on.
|
||||
Information on this is <a href=bare_core.php>here</a>.
|
||||
|
||||
";
|
||||
page_tail();
|
||||
|
|
|
@ -184,7 +184,7 @@ $m443 = array(
|
|||
|
||||
$m443c = array(
|
||||
"num"=>"4.43",
|
||||
"status"=>"Recommended version (command line)",
|
||||
"status"=>"Recommended version (command line, no GUI)",
|
||||
"file"=>"boinc_4.43_powerpc-apple-darwin.zip",
|
||||
"date"=>"21 May 2005",
|
||||
"type"=>bare_core(),
|
||||
|
@ -253,8 +253,8 @@ $mac = array(
|
|||
"name"=>"Macintosh OS X",
|
||||
"versions"=>array(
|
||||
$m443,
|
||||
$m443c,
|
||||
$m437s,
|
||||
$m443c,
|
||||
$m419
|
||||
)
|
||||
);
|
||||
|
|
|
@ -316,4 +316,5 @@ Files are accessable only to the installing user.
|
|||
|
||||
|
||||
";
|
||||
page_tail();
|
||||
?>
|
||||
|
|
|
@ -37,6 +37,7 @@ using std::vector;
|
|||
|
||||
#include "gui_rpc_client.h"
|
||||
#include "error_numbers.h"
|
||||
#include "util.h"
|
||||
#include "version.h"
|
||||
|
||||
void usage() {
|
||||
|
@ -99,13 +100,7 @@ void parse_display_args(char** argv, int& i, DISPLAY_INFO& di) {
|
|||
}
|
||||
|
||||
void show_error(int retval) {
|
||||
switch(retval) {
|
||||
case ERR_AUTHENTICATOR:
|
||||
fprintf(stderr, "Authentication failure\n");
|
||||
break;
|
||||
default:
|
||||
fprintf(stderr, "Error %d\n", retval);
|
||||
}
|
||||
fprintf(stderr, "Error %d: %s\n", retval, boincerror(retval));
|
||||
}
|
||||
|
||||
char* next_arg(int argc, char** argv, int& i) {
|
||||
|
|
|
@ -966,10 +966,11 @@ int RPC_CLIENT::init(const char* host) {
|
|||
} else {
|
||||
addr.sin_addr.s_addr = inet_addr("127.0.0.1");
|
||||
}
|
||||
boinc_socket(sock);
|
||||
retval = connect(sock, (const sockaddr*)(&addr), sizeof(addr));
|
||||
if (retval) {
|
||||
BOINCTRACE("RPC_CLIENT::init connect 2 on %d returned %d\n", sock, retval);
|
||||
perror("connect");
|
||||
//perror("connect");
|
||||
boinc_close_socket(sock);
|
||||
boinc_socket(sock);
|
||||
#ifdef _WIN32
|
||||
|
@ -1190,6 +1191,15 @@ int RPC::do_rpc(const char* req) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
int RPC::parse_reply() {
|
||||
char buf[256];
|
||||
while (fin.fgets(buf, 256)) {
|
||||
if (strstr(buf, "unauthorized")) return ERR_AUTHENTICATOR;
|
||||
if (strstr(buf, "success")) return 0;
|
||||
}
|
||||
return ERR_NOT_FOUND;
|
||||
}
|
||||
|
||||
int RPC_CLIENT::get_state(CC_STATE& state) {
|
||||
char buf[256];
|
||||
PROJECT* project;
|
||||
|
@ -1424,6 +1434,7 @@ int RPC_CLIENT::show_graphics(
|
|||
int RPC_CLIENT::project_op(PROJECT& project, const char* op) {
|
||||
char buf[256];
|
||||
const char *tag;
|
||||
int retval;
|
||||
RPC rpc(this);
|
||||
|
||||
if (!strcmp(op, "reset")) {
|
||||
|
@ -1451,7 +1462,9 @@ int RPC_CLIENT::project_op(PROJECT& project, const char* op) {
|
|||
project.master_url.c_str(),
|
||||
tag
|
||||
);
|
||||
return rpc.do_rpc(buf);
|
||||
retval = rpc.do_rpc(buf);
|
||||
if (retval) return retval;
|
||||
return rpc.parse_reply();
|
||||
}
|
||||
|
||||
int RPC_CLIENT::project_attach(const char* url, const char* auth) {
|
||||
|
|
|
@ -462,4 +462,5 @@ struct RPC {
|
|||
RPC(RPC_CLIENT*);
|
||||
~RPC();
|
||||
int do_rpc(const char*);
|
||||
int parse_reply();
|
||||
};
|
||||
|
|
30
lib/parse.C
30
lib/parse.C
|
@ -375,5 +375,35 @@ void xml_unescape(string& in, string& out) {
|
|||
}
|
||||
}
|
||||
|
||||
// we got an unrecognized line.
|
||||
// If it has two <'s (e.g. <foo>xx</foo>) return 0.
|
||||
// If it's of the form <foo> then scan for </foo> and return 0.
|
||||
// Otherwise return ERR_XML_PARSE
|
||||
//
|
||||
int skip_unrecognized(char* buf, FILE* in) {
|
||||
char* p, *q, buf2[256];
|
||||
std::string close_tag;
|
||||
|
||||
p = strchr(buf, '<');
|
||||
if (!p) {
|
||||
return ERR_XML_PARSE;
|
||||
}
|
||||
if (strchr(p+1, '<')) {
|
||||
return 0;
|
||||
}
|
||||
q = strchr(p+1, '>');
|
||||
if (!q) {
|
||||
return ERR_XML_PARSE;
|
||||
}
|
||||
*q = 0;
|
||||
close_tag = string("</") + string(p+1) + string(">");
|
||||
while (fgets(buf2, 256, in)) {
|
||||
if (strstr(buf2, close_tag.c_str())) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
return ERR_XML_PARSE;
|
||||
}
|
||||
|
||||
const char *BOINC_RCSID_3f3de9eb18 = "$Id$";
|
||||
|
|
|
@ -50,5 +50,6 @@ extern void xml_escape(std::string&, std::string&);
|
|||
extern void xml_escape(char*, std::string&);
|
||||
extern void xml_unescape(std::string&, std::string&);
|
||||
extern void extract_venue(char*, char*, char*);
|
||||
extern int skip_unrecognized(char* buf, FILE*);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -882,13 +882,13 @@ const char* boincerror(int which_error) {
|
|||
case ERR_NETOPEN: return "system netopen";
|
||||
case ERR_SOCKET: return "system socket";
|
||||
case ERR_FCNTL: return "system fcntl";
|
||||
case ERR_AUTHENTICATOR: return "host id doesn't match authenticator";
|
||||
case ERR_AUTHENTICATOR: return "authentication error";
|
||||
case ERR_SCHED_SHMEM: return "scheduler shared memory contents bad";
|
||||
case ERR_ASYNCSELECT: return "system async select";
|
||||
case ERR_BAD_RESULT_STATE: return "bad result state";
|
||||
case ERR_DB_CANT_INIT: return "can't init database";
|
||||
case ERR_NOT_UNIQUE: return "state files have redundant entries";
|
||||
case ERR_NOT_FOUND: return "inconsistent client state";
|
||||
case ERR_NOT_FOUND: return "not found";
|
||||
case ERR_NO_EXIT_STATUS: return "no exit status in scheduler request";
|
||||
case ERR_FILE_MISSING: return "file missing";
|
||||
case ERR_NESTED_UNHANDLED_EXCEPTION_DETECTED: return "nested unhandled exception";
|
||||
|
|
|
@ -170,6 +170,8 @@ int SCHEDULER_REQUEST::parse(FILE* fin) {
|
|||
// do NOTHING here
|
||||
} else {
|
||||
log_messages.printf(SCHED_MSG_LOG::NORMAL, "SCHEDULER_REQUEST::parse(): unrecognized: %s\n", buf);
|
||||
retval = skip_unrecognized(buf, fin);
|
||||
if (retval) return retval;
|
||||
}
|
||||
}
|
||||
return ERR_XML_PARSE;
|
||||
|
|
Loading…
Reference in New Issue