==BOINC estrutura e
características==
O BOINC é uma estrutura livre para suportar projectos de computação distribuida. A maioria dos projectos que correm no Boinc não têm fins lucrativos e dependem com enorme preponderância, se não completamente, na doação voluntária de ciclos de CPU (idle) por parte de utilizadores anónimos. No entanto, isto não quer dizer que o BOINC não pode ser usado com fins lucratrivos. O BOINC consiste num servidor e num programa que comunicam entre si, para distribuição, processamento e retorno das unidades de trabalho processadas!
===Estrutura dos Servidores===
A maior parte inclui um
backend servidor, que pode ser constituído por uma ou mais máquinas, para permitir ao BOINC ajustar-se a projectos de qualquer dimensão! Os servidores do BOINC correm em Linux e utilizam Apache HTTP, PHP, MySQL como base do sistema para a internet e base de dados!
BOINC é simplesmente a estrutura para a distribuição de unidades de processamento e não realiza qualquer análise científica!
A análise científica é feita pelos computadores dos voluntários e os resultados são analisados, após terem sido validados e transferidos pelo BOINC, para a base de dados científica.
BOINC servers also provide advanced features including '''homogonous redundancy''' (sending work units only to [[computers]] of the same [[Platform (computing)|platform]]), '''work unit trickling''' (sending information to the server before the work unit completes), and '''locality scheduling''' (sending work units to [[computers]] that already have the necessary files and creating work on demand).
===Estrutura dos Clientes===
[[Image:BOINC_screenshot.png|thumb|Imagem do programa BOINC manager]]
BOINC on the client is structured into a number of separate applications. These intercommunicate using the BOINC [[remote procedure call]] (RPC) mechanism. These component applications are:
* <tt>boinc</tt> (or <tt>boinc.exe</tt>), the core client. The core client is a [[process (computing)|process]] which takes care of communications between the client and the server. It also downloads science applications, provides a unified logging mechanism, makes sure science application binaries are up-to-date, and schedules CPU resources between science applications (if several are installed). Although the core client is capable of downloading new science applications, it does not update itself; BOINC's authors felt doing so posed an unacceptable security risk. On [[UNIX]] the core client is generally run as a [[daemon (computer software)|daemon]] (or occasionally as a [[crontab|cron]] job); on Windows it is not a Windows service, but an ordinary application. Depending on how the BOINC client software was installed, it can either run in the backround like a daemon, or starts when an individual user logs in (and is stopped when the user logs out). The software version management and work-unit handling provided by the core client greatly simplifies the coding of science applications.
* One or several science applications. Science applications perform the core scientific computation. There is a specific science application for each of the distributed computation projects which use the BOINC framework. Science applications use the BOINC daemon to upload and download work units, and to exchange statistics with the server.
* <tt>boinkmgr</tt> (or <tt>boincmgr.exe</tt>), a [[graphical user interface|GUI]] which communicates with the core application over RPC. By default a core client only allows connections from the same computer, but it can be configured ot allow connections from other computers (optionally using password authentication); this mechanism allows one person to manage a farm of BOINC installations from a single workstation. The GUI is written using the cross-platform [[WxWidgets]] toolkit, providing the same user experience on different platforms. Users can connect to BOINC core clients, can instruct those clients to install new science applications, can monitor the progress of ongoing calculations, and can view the BOINC system message logs.
* The BOINC [[screensaver]]. This provides a [[framework]] whereby science applications can display graphics in the user's screensaver window. BOINC screensavers are coded using the [
http://boinc.berkeley.edu/graphics.php BOINC graphics API], [[Open GL]], and the [[OpenGL Utility Toolkit|GLUT]] toolkit. Typically BOINC screensavers show animated graphics detailing the work underway, perhaps showing graphs or charts or other data visualisation graphics. Some science applications do not provide screensaver functionality (or stop providing screensaver images when they are idle). In this circumstance the BOINC screensaver shows a small BOINC logo which bounces around the screen.
===Sistema de créditos BOINC===
{{main|BOINC Credit System}}