150 likes | 184 Views
Explore the advantages, challenges, and criteria for distributed computing systems, including types, forms, classes, and services required. Learn how distributed systems can enhance performance, fault tolerance, and productivity while addressing issues like concurrency and system state awareness. Discover the significance of services like name, time, replication, transaction, and group communication in distributed environments, and delve into the application of microprocessor-based and computer-controlled systems for precision, immunity to noise, data processing, and interconnectivity. Understand the complexities, benefits, and drawbacks of implementing distributed systems in various contexts.
E N D
Microprocessor-based Systems Course 12 Distributed Systems
Distributed Systems v.s. Centralized Systems • Advantages of distribution: • the possibility to adapt the structure of the Information system to the distributed nature of an application (e.g. banking system, monitoring and supervision systems, etc.) • increase of reliability and fault tolerance • increase of the performance/price ration (the use of cheep computers instead of an expensive central one) • improve the interactivity through multiple intelligent terminals (including mobile devices) • new facilities: electronic information transfer/exchange, remote control of industrial processes, e-mail, e-publications, teleconferencing, etc. • facilities for working in groups • use of common resources (databases, expensive peripheral equipments, etc.) • Problems: • the human thinking is sequential; it is difficult to write applications as a parallel set of threads/tasks • there are not enough tools for expressing concurrency, synchronization, parallel execution, etc. • the network generate delays and transmission errors • the global state of the system is not exactly known because of the relativistic effect caused by the limited communication speed
Distribution forms • Multiprocessor systems: • Parallel systems • nodes are strongly correlated at physical and logical level • the communication time can be neglected compared with the execution time • Distributed systems • nodes are weakly connected at physical level but strongly connected at logical level (remote cooperation) • the transmission time is comparable with the execution time of tasks • nodes perform together a given functionality (e.g. banking service) • Computers on a network • nodes are weakly connected at physical and logical level • small cooperation between nodes • What should be distributed? • Distribution of equipment (hardware) • Distribution of data • Distribution of control (program)
Distribution forms • Classification of systems based on the distribution of physical resources: • - uni-processor systems • - multiprocessor systems with a common/shared buss • - parallel systems • - computers connected through a network • Classification of systems based on the distribution of data: • - systems with a single database • - system with distributed files but a single directory • - system with replicated/duplicated database • - system with partitioned database and decentralized directory • Classification of systems based on distribution of control: • - single control point system • - hierarchical system (with master/slave relations) • - multiple control points that execute parallel threads of a single task • - multiple autonomous points that execute tasks of a common service
Criteria to establish if a system is distributed: • must have multiple physical and logical resources • resources must be physically distributed • there should be a global vision of the whole system • cooperation and independence between the system’s components • the distribution should be transparent for the users or the system interface
Services required in a distributed system • Name service • Goal: to offer a unique addressing mechanism for all the resources in the distributed system • find resources (e.g. data, files, applications or equipments) based on symbolic names. • Example: DNS (Domain Name Server) service in the Internet • Time service • synchronization of local clocks • Example: NTP (Network Time Protocol) • Replication service • Replication is necessary for: • efficient/fast access to shared resources • fault tolerance • Problem: preserving the consistency of data • Transaction service • Goal: concurrent access to shared resources • Transparent access to distributed resources • Group communication
Computer-based Control systems • The use of computers in control applications: • Advantages: • Higher precision in data acquisition and processing • Higher immunity regarding different noise sources (ex: electro-magnetic noise, variations of environment parameters, variations of the power supply, variations of component values, etc.); can be implemented auto-calibration methods • Can implement complex data processing procedures with the same hardware (only the program becomes more complex); examples: non-linear control algorithms, adaptive algorithms, • Simple data storage possibilities • Various data visualization possibilities • Correlation of a complex system’s components through (network) communication • The possibility to build hierarchical and distributed systems • Drawbacks: • The process signals are digitized in time (not followed continuously) • Values are digitized; • Too expensive for simple control systems; • The control solution is hide in the program (not visible for the simple user), • Debugging and maintenance requires specialized personnel ;
Computer-based control – Specific issues • Acquisition of process signals • Digital signals: • open / closed, on / off, • controled frequency, • Pulse Train • PWM - Pulse Width Modulation • Analog signals: • Voltage, current, • complex signals - the sum of sine waves • The followings must be establishes: • Sampling frequency (reading) • The number of bits allocated for a signal - a signal variation domain • Acquisition mode: Continuous or on request
Analog input and output channel • Input analog channel: • Output analog channel: CNA EE
Data processing • Off-line • Processing is not done during signal acquisition • No time conditions; processing can be as complex • On-line • Processing occurs during signal acquisition • Constraints of time (sampling period = processing time of a data set) • Implementation modes for a control application: • Control loop • Time driven- activation of acquisition and processing tasks from time to time • Event-driven – activation of acquisition and processing tasks as a respns to some events or interrupts • A real-time scheduler activates tasks in an order given by the deadline fulfillment requirements • Static scheduling – before the applications starts • Dynamic scheduling – during the execution of the application
Special requirements for computers working in an industrial environment • Reliability and fault tolerance • Through spatial and temporal replication • Higher immunity to electromagnetic noise • Work under severe environment conditions • High temperature variationshigh humidity • Less qualified service personnel • Restrictions: • Dimensional and shape • Cost • Power consumption
Solutions • Dedicated and enbeded systems • Industrial communication networks • Processors specialized for control applications (microcontrollers) and digital signal processors (DSPs) • Semiconductor non-volatile memories (eg flash disks instead) • Robust cases, protected from dust and moisture