Concurrency involves the simultaneous execution of multiple instruction sequences within an operating system, which can lead to issues such as resource depletion and deadlocks. Key problems include sharing global resources, optimal resource allocation, locating programming errors, and inefficient channel locking. Distributed processing, which divides complex tasks among multiple machines, is utilized in various applications including telecommunications, social networks, and online services.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
4 views12 pages
report-slide
Concurrency involves the simultaneous execution of multiple instruction sequences within an operating system, which can lead to issues such as resource depletion and deadlocks. Key problems include sharing global resources, optimal resource allocation, locating programming errors, and inefficient channel locking. Distributed processing, which divides complex tasks among multiple machines, is utilized in various applications including telecommunications, social networks, and online services.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12
LET'S LEARN!
CHRISTYL HEART M. YAMUTA
CONCURRENCY
Concurrency is the simultaneous execution of several
instruction sequences. When multiple process threads are active at once, it occurs in the operating system. The threads of the active process constantly exchange messages or share memory with one another. Due to resource sharing, concurrency can lead to issues like resource depletion and deadlocks.
It helps in techniques like coordinating execution of
processes, memory allocation and execution scheduling for maximizing throughput. PRINCIPLES OF CONCURRENCY : Both interleaved and overlapped processes can be viewed as examples of concurrent processes, they both present the same problems.
The relative speed of execution cannot be
predicted. It depends on the following:
The activities of other processes
The way operating system handles interrupts ·The scheduling policies of the operating system PROBLEMS IN CONCURRENCY : 01 ·Sharing global resources – 03 Locating programming errors –
02 Optimal allocation of resources – 04 Locking the channel –
SHARING GLOBAL RESOURCES – Sharing of global resources safely is difficult. If two processes both make use of a global variable and both perform read and write on that variable, then the order in which various read and write are executed is critical. OPTIMAL ALLOCATION OF RESOURCES –
It is difficult for the operating
system to manage the allocation of resources optimally. Locating programming errors –
·It is very difficult to locate a
programming error because reports are usually not reproducible.
Locking the channel –
It may be inefficient for the operating system to simply lock the channel and prevents its use by other processes. ·Distributed processing is a phrase used to describe a variety of computer systems that use more than one computer to run an application. This includes parallel processing, in which a single computer uses multiple MULTIPROCESSING processors to execute programs. It also refers to local- area networks designed so that a single program can run simultaneously at various sites. Distributed processing takes a complex computing task and divides it among a network of individual machines (or nodes), which then complete their part of the task and send it back to be compiled into one seamless output. TELEPHONE AND CELLULAR NETWORKS
·are also examples of distributed networks.
Telephone networks have been around for over a century and it started as an early example of a peer to peer network. Cellular networks are distributed networks with base stations physically distributed in areas called cells. SOCIAL NETWORKS, MOBILE SYSTEMS, ONLINE BANKING, AND ONLINE GAMING
ALSO USE EFFICIENT DISTRIBUTED
SYSTEMS. ADDITIONAL AREAS OF APPLICATION FOR DISTRIBUTED COMPUTING INCLUDE E-LEARNING PLATFORMS, ARTIFICIAL INTELLIGENCE, AND E-COMMERCE. THANK YOU