Платформа - это база компиляции (Windows/Intel, Linux/Intel, MacOS/PPC, и т.д.). Платформы содержатся с списке платформ в БД BOINC, и могут быть добавлены в этот список с помощью утилиты добавления.
Приложение состоит из запускаемой программы, которая может содержать версии для различных платформ. Проект может управлять многими приложениями. Приложения содержатся в списке приложений в БД BOINC, и могут быть добавлены в этот список с помощью утилиты добавления.
Приложение может пройти на своем пути развития ряд версий. Конкретная версия, скомпилированная для конкретной платформы, называется версией приложения. Версия приложения может состоять из множества файлов: например, серверного сценария, программ пред- и пост-обработки, и исходного кода.
Каждая версия приложения имеет целый номер версии. Проекты могут присваивать номера версий, как бы они ни были похожи; например, версия 304 представляет собой старший номер версии 3 и младший 4. Номера версий должны присваиваться согласованно для всех платформ; версия 304 для Windows должна быть идентична в вычислительном смысле версии 304 для Mac.
Каждое приложение имеет минимальную версию. Перед отправкой клиентом результатов работы приложению, он также сообщает самую последнюю версию приложения для данной платформы. Он отправляет результаты, только если эта версия минимальна или выше.
Версии приложения содержатся в таблице версий в БД BOINC, где каждая запись содержит XML документ, описывающий файлы, которые изменены или добавлены в данной версии приложения:
<file_info> ... </file_info> [ ... ] <app_version> <app_name>foobar</app_name> <version_num>4</version_num> <file_ref> <file_name>program_1</file_name> <main_program/> </file_ref> <file_ref> <file_name>library_12</file_name> </file_ref> </app_version>Утилита добавления предоставляет упрощенный интерфейс для создания версий приложения.