If we observe properly the most Interesting Applications can no longer be executed in Isolation. Modern applications are built from many components that cooperate to get things done. Applications have changed. Every developer needs to know about distributed system before building an application.
A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passing messages.
Characteristics of distributed systems are:
• Concurrency of components
• Lack of a global ‘clock’
• Independent failures of components
• One component with non-autonomous parts
• Component shared by users all the time
• All resources accessible
• Software runs in a single process
• Single point of control
• Single point of failure
• Multiple autonomous components
• Components are not shared by all users
• Resources may not be accessible
• Software runs in concurrent processes on different processors
• Multiple points of control
• Multiple points of failure
It’s usually better to have a distributed system with least state sharing than high amount of sharing unless unavoidable. The nuts and bolts of the distribution are matters of details.
Some examples of distributed systems:
• Local Area Network and Intranet: LAN is a local network, which connects computers within a limited area just like school, university, office etc. Thus it cannot cover a bigger area and Intranet is a digital workplace within one company which can cover great locations.
• Database Management System: A distributed database management system (DDBMS) is a set of multiple, logically interrelated databases distributed over a network. They provide a mechanism that makes the distribution of data transparent to users. DDBMS is a centralized application that manages a distributed database. This database system synchronizes data periodically and ensures that any change in data made by users is universally updated in the database.
• Automatic Teller Machine Network: Automated teller machines (ATM) can now be found at most supermarkets, convenience stores and travel centers. When anybody is short on cash, he can walk over to the ATM, insert his card into the card reader, respond to the prompts on the screen, and within a minute he walks away with his money and a receipt. All the ATM machines working around the world are based on the concept of centralized database system.
• Internet/World-Wide Web: Most people have a common misconception that the Internet and World Wide Web are the same as the two terms are often used interchangeably. However, there are many subtle differences between the two terms. While the Internet is a global network comprised of computers, the World Wide Web is an extremely common application used online and it uses the hypertext transfer protocol, or http, to navigate across different.
• Mobile and Ubiquitous Computing: Ubiquitous computing is the method of enhancing computer use by making many computers available throughout the physical environment, but making them effectively invisible to the user. Mobile computing is How to handle connectedness of mobile devices.
Before going further we have to remember, Systems are always distributed by necessity. The fact is — managing distributed systems is a complex topic chock-full of pitfalls and land mines. The goal of distributed computing is to make such a network work as a single computer. Distributed systems offer many benefits over centralized systems. The system can easily be expanded by adding more machines as needed.
Operating system is developed to ease people daily life. For user benefits and needs the operating system may be single user or distributed. In distributed systems, many computers connected to each other and share their resources with each other.
For more information about the tech world keep eyes on Right Attitude. Therefore, Right Attitude.