[[PageOutline]] = BOINC Design Documents = == Design docs for current development == * [DesignKeywords Keywords] * [SimpleAttach Simplified attach process] * BOINC on Android * [AndroidGuiDiscuss GUI discussion] * [AndroidBoincTodo GUI development items] * [AndroidBoincImpl Current implementation] * [AndroidBuildApp Building apps] * [AndroidBoinc Original planning document] == Design docs for proposed development == * [CreditGeneralized Generalized credit] * [UploadStatistics Maintaining upload statistics] * [LocalityNew Locality scheduling redesign] * [OpenId Support for OpenID] * [PrefsRemodel Remodel of computing prefs ] * [GpuSync support for synchronous GPU apps] * [WebTemplateProposal rewrite of HTML code using a Web Template Engine] * [WindowsIssues Windows Issues] == Design docs for completed development * [PrefsUnification Unifying Web and GUI Prefs] * [ManagerMenus Manager menu reorganization ] * [PortalFeatures Scheduling for multi-user projects] * [JobPrioritization Job prioritization] == Implementation notes == === Client: general === * [ClientDataModel Client data model] * [ClientFiles File structure] * [ClientFsm FSM structure] * [ClientLogic Main loop logic] * [HostMeasurement Host measurements] * [HostId Host identification] * [MemoryManagement Memory management] * [wiki:Notifications GUI notices] * [ClientAppConfig Client app configuration] === Client: scheduling === * [ClientSched Client scheduling policies] === Client: packaging === * [//sandbox.php Sandbox implementation] * [ClientSetupLogicWin Windows installer (V5) ] * [UnixClientPackage Client package layout for Unix] * [ClientSetupWinSix Version 6 Windows installer, design] * [ClientSetupLogicWinSix Version 6 Windows installer, implementation] * [UnixClientPackage Unix client packaging] * [RpmSpec Spec info for RPMs] === Client: screensaver === * [ScreensaverEnhancements Screensaver enhancements] === Client: Manager === * [ManagerImpl BOINC Manager] * [ProjectSelect Redesign of Choose Project page] === Server: general === * [JobSizeMatching Job size matching] * [MultiUser Multi-user project features] * [RemoteJobs APIs for remote job submission] * [HomogeneousAppVersion Homogeneous app version] * [RuntimeEstimation job runtime estimation] * [CreditNew Credit system as of 5/2010 ] * [DataBase The BOINC database] * [BackendState Backend state transitions] * [BackendLogic The logic of backend programs] * [ServerDebug Debugging server components] * [ServerSecurity Notes on BOINC server security] * [DbDump Export statistics for 3rd-party sites] * [SingleJobImpl Single-job submission] * [AdaptiveReplication Adaptive replication] * [ValidationLowLevel Low-level validator framework] === Server: scheduler === * [SchedMatch Scheduler job matchmaking] === Server: Packaging === * [UnixProjectPackage Unix project packaging] === PHP code (web pages and RPCs) === * [PhpDb PHP database abstraction layer] * [StyleSheets Style Sheets] === Protocols === * [CommIntro Protocol overview] * [RpcProtocol The scheduling server protocol] * [RpcPolicy Scheduling server timing and retry policies] * [FileUpload Data server protocol] * [PersFileXfer Persistent file transfers ] * [XmlNotes XML notes] === Simulation === * [http://boinc.berkeley.edu/dev/sim_web.php The BOINC Client Emulator] * [http://gcl.cis.udel.edu/projects/emboinc/index.php EmBoinc BOINC server emulator] === Source code documentation (in progress) === * [//doxygen/api/html/index.html API] * [//doxygen/client/html/index.html Client] * [//doxygen/manager/html/index.html Manager] * [//doxygen/server/html/index.html Server components] * [//doxygen/web/html/index.html PHP code] === Miscellaneous === * [VolunteerDataArchival Volunteer data archival] * [CondorBoinc BOINC/Condor integration] * [LowLatency Low latency computing] * [CreditProposal Credit system proposal] * [OrgGrid Organizational Grid Management] * [PythonAppDev Python-based simplified app development] * [PythonMw Python master/worker system] * [CrossProjectUserId Cross-project user identification] * [//loc_sim/ Simulator of a project using locality scheduling] * [PrefsImpl Preferences] * [TrickleImpl Trickle messages] * [VersionDiff How to see what has changed between two versions of an executable] * [XmlFormat XML formats] * [DiagnosticsApi Diagnostics API] * [Proposal/ProjectSimpleAccountCreation Simple Account Creation] * [wiki:BOINConPhones BOINC on Phones] == Historical == Design docs for old versions, or for ideas that never happened. * [VmApps Virtual machine apps (deprecated)] * [ClientSchedOld Old client scheduling policies] * [ClientSchedOctTen Client scheduling changes] * [GpuSched Client CPU/GPU scheduling] * [GpuWorkFetch Work fetch and GPUs] * [AutoUpdate Automatic update] * [AutoFlops Automated estimation of job characteristics] * [PythonFramework Python testing framework] * [//api_v4.php Version 4 runtime system] * [//mac_intel.php Mac/Intel plan] * [//mac_devgroup.php Old Mac project plan] * [//new_setup.php Design of version 5 setup] * [//menubar.php Mac Menubar] * [//suggestions.php Usability discussion] * [ScreensaverLogic Screensaver logic]