Parallel and Concurrent Systems
Parallel and Concurrent Systems are synonyms in many fields; not so in programming, where they are used to describe fundamentally different concepts. A system is said to be concurrent if it can support two or more actions in progress at the same time. A system is said to be parallel if it can support two or more actions executing simultaneously. A concurrent programming language is defined as one which uses the concept of simultaneously executing processes or threads of execution as a means of structuring a program. A parallel language is able to express programs that are executable on more than one processor.
Parallel Systems
Parallel Systems are designed to speed up the execution of programs by dividing the program into multiple fragments and processing these fragments simultaneously. Such systems are multiprocessor systems also known as tightly coupled systems. Parallel systems deal with the simultaneous use of multiple computer resources that can include a single computer with multiple processors, a number of computers connected by a network to form a parallel processing cluster or a combination of both.
Parallel systems are more difficult to program than computers with a single processor because the architecture of parallel computers varies accordingly and the processes of multiple CPUs must be coordinated and synchronized. Several models for connecting processors and memory modules exist, and each topology requires a different programming model. The three models that are most commonly used in building parallel computers include synchronous processors each with its own memory, asynchronous processors each with its own memory and asynchronous processors with a common, shared memory.
There are multiple types of parallel processing, two of the most commonly used types include SIMD and MIMD. SIMD, or single instruction multiple data, is a form of parallel processing in which a computer will have two or more processors follow the same instruction set while each processor handles different data.
Concurrent Systems
A concurrent system is one where computation can advance without waiting for all other computations to complete. As a programming paradigm, concurrent computing is a form of modular programming, namely factoring an overall computation into sub computations that may be executed concurrently.
Concurrent Systems provides a range of intelligently designed, customer-centric, OSS/BSS products and solutions to mobile phone operators worldwide. Concurrent Systems specializes in solutions and services relating to mobile credit distribution, subscriber self-care, service provisioning, and value-added services over various channels including USSD, SMS, Smartphone Apps, IVR, and the Web.
Concurrent Systems believes in enabling mobile phone operators to empower subscribers to manage their own mobile environments. Concurrent System solutions provide operators avenues to gain customer loyalty and increase profitability while providing their subscribers with self-care options and services designed specifically to improve their lifestyles.
You may also like Introduction to 8259
Leave a Reply