150 likes | 182 Views
Microprocessor-based Systems. Course 12 Distributed Systems. Distributed Systems v.s. Centralized Systems. Advantages of distribution:
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