Distributed computingA distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another. Distributed computing is a field of computer science that studies distributed systems. The components of a distributed system interact with one another in order to achieve a common goal. Three significant challenges of distributed systems are: maintaining concurrency of components, overcoming the lack of a global clock, and managing the independent failure of components.
OwnershipOwnership is the state or fact of legal possession and control over property, which may be any asset, tangible or intangible. Ownership can involve multiple rights, collectively referred to as title, which may be separated and held by different parties. The process and mechanics of ownership are fairly complex: one can gain, transfer, and lose ownership of property in a number of ways. To acquire property one can purchase it with money, trade it for other property, win it in a bet, receive it as a gift, inherit it, find it, receive it as damages, earn it by doing work or performing services, make it, or homestead it.
Social ownershipSocial ownership is the appropriation of the surplus product, produced by the means of production, or the wealth that comes from it, to society as a whole. It is the defining characteristic of a socialist economic system. It can take the form of community ownership, state ownership, common ownership, employee ownership, cooperative ownership, and citizen ownership of equity.
Remote procedure callIn distributed computing, a remote procedure call (RPC) is when a computer program causes a procedure (subroutine) to execute in a different address space (commonly on another computer on a shared network), which is written as if it were a normal (local) procedure call, without the programmer explicitly writing the details for the remote interaction. That is, the programmer writes essentially the same code whether the subroutine is local to the executing program, or remote.
Fault toleranceFault tolerance is the property that enables a system to continue operating properly in the event of the failure of one or more faults within some of its components. If its operating quality decreases at all, the decrease is proportional to the severity of the failure, as compared to a naively designed system, in which even a small failure can cause total breakdown. Fault tolerance is particularly sought after in high-availability, mission-critical, or even life-critical systems.
Show more