0% found this document useful (0 votes)
30 views13 pages

Unit1ppt 1

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views13 pages

Unit1ppt 1

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 13

Inter Process Communication (IPC)

• Interprocess communication is the mechanism


provided by the operating system that allows
processes to communicate with each other.
This communication could involve a process
letting another process know that some event
has occurred or the transferring of data from
one process to another.
• A diagram that illustrates interprocess
communication is as follows −
A process can be of two types:
Independent process.
Co-operating process.
An independent process is not affected by the execution of other processes
while a co-operating process can be affected by other executing processes.
Though one can think that those processes, which are running
independently, will execute very efficiently, in reality, there are many
situations when co-operative nature can be utilized for increasing
computational speed, convenience, and modularity. Inter-process
communication (IPC) is a mechanism that allows processes to communicate
with each other and synchronize their actions. The communication between
these processes can be seen as a method of co-operation between them.
Processes can communicate with each other through both:

Shared Memory
Message passing
Resource Management in Operating System

• Resource Management in Operating System is the


process to manage all the resources efficiently like
CPU, memory, input/output devices, and other
hardware resources among the various programs
and processes running in the computer.
• Resource management is an important thing
because resources of a computer are limited and
multiple processes or users may require access to
the same resources like CPU, memory etc. at the
same time. The operating system has to manage and
ensure that all processes get the resources they need
to execute, without any problems like deadlocks.
Here are some Terminologies related to the resource management in OS:

Resource Allocation: This terms defines the process of assigning the available
resources to processes in the operating system. This can be done dynamically
or statically.
Resource: Resource can be anything that can be assigned dynamically or
statically in the operating system. Example may include CPU time, memory,
disk space, and network bandwidth etc.
Resource Management: It refers to how to manage resources efficiently
between different processes.
Process: Process refers to any program or application that is being executed in
the operating system and has its own memory space, execution state, and set
of system resources.
Scheduling: It is the process of determining from multiple number of
processes which process should be allocated a particular resource at a given
time.
• Scheduling: It is the process of determining from multiple number of
processes which process should be allocated a particular resource at a given
time.
• Deadlock: When two or more processes are waiting for some resource but
resources are busy somewhere else and resources are also waiting for some
process to complete their execution . In such condition neither resources will
be freed nor process would get it and this situation is called deadlock.
• Semaphore: It is the method or tool which is used to prevent race condition.
Semaphore is an integer variable which is used in mutual exclusive manner by
various concurrent cooperative process in order to achieve synchronization.
• Mutual Exclusion: It is the technique to prevent multiple number of process
to access the same resources simultaneously.
• Memory Management: Memory management is a method used in the
operating systems to manage operations between main memory and disk
during process execution.
Protection mechanisms
• System protection in an operating system refers to the
mechanisms implemented by the operating system to ensure
the security and integrity of the system. System protection
involves various techniques to prevent unauthorized access,
misuse, or modification of the operating system and its
resources.
• There are several ways in which an operating system can
provide system protection:
• User authentication: The operating system requires users to
authenticate themselves before accessing the system.
Usernames and passwords are commonly used for this
purpose.
• Encryption: The operating system can use encryption to
protect sensitive data and prevent unauthorized access.
• Firewall: A firewall is a software program that monitors and
controls incoming and outgoing network traffic based on
predefined security rules.
• Antivirus software: Antivirus software is used to protect the
system from viruses, malware, and other malicious
software.
• System updates and patches: The operating system must be
kept up-to-date with the latest security patches and updates
to prevent known vulnerabilities from being exploited.
Memory Management
• Memory is the important part of the computer that is used to store the
data. Its management is critical to the computer system because the
amount of main memory available in a computer system is very limited.
• At any time, many processes are competing for it. Moreover, to increase
performance, several processes are executed simultaneously. For this,
we must keep several processes in the main memory, so it is even more
important to manage them effectively.
• Memory management is a method in the operating
system to manage operations between main memory
and disk during process execution. The main aim of
memory management is to achieve efficient utilization of
memory.
Role of Memory management

• Following are the important roles of memory management in a computer


system:
• Memory manager is used to keep track of the status of memory locations,
whether it is free or allocated. It addresses primary memory by providing
abstractions so that software perceives a large memory is allocated to it.
• Memory manager permits computers with a small amount of main memory to
execute programs larger than the size or amount of available memory. It does
this by moving information back and forth between primary memory and
secondary memory by using the concept of swapping.
• The memory manager is responsible for protecting the memory allocated to
each process from being corrupted by another process. If this is not ensured,
then the system may exhibit unpredictable behavior.
• Memory managers should enable sharing of memory space between
processes. Thus, two programs can reside at the same memory location
although at different times.
Why Memory Management is Required?

• Allocate and de-allocate memory before and after


process execution.
• To keep track of used memory space by processes.
• To minimize fragmentation issues.
• To proper utilization of main memory.
• To maintain data integrity while executing of
process.

You might also like