Project Research On Process Manager !!!!!!!!!

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

Project Report

Process Manager
Identifying System and User Processes
1. Introduction:

A Program does nothing unless its instructions are executed by a CPU. A


program in execution is called a process. In order to accomplish its task,
process needs the computer resources .There may exist more than one
process in the system which may require the same resource at the same time.
Therefore, the operating system has to manage all the processes and the
resources in a convenient and efficient way. Some resources may need to be
executed by one process at one time to maintain the consistency otherwise
the system can become inconsistent and deadlock may occur.

The operating system is responsible for the following activities in connection with
Process Management

1. Scheduling processes and threads on the CPUs.

2. Creating and deleting both user and system processes.

3. Suspending and resuming processes.

4. Providing mechanisms for process synchronization.

5. Providing mechanisms for process communication.


2. Purpose of Process Manager:

The Process Manager plays a vital role in resource allocation, scheduling, and
monitoring processes in an operating system. By identifying and analyzing processes,
we can gain insights into their resource usage patterns, which can help optimize
system performance and troubleshoot any potential bottlenecks.

3. System and User Processes:

A typical operating system consists of both system processes and user processes:

a. System Processes: These processes are created and managed by the operating
system to perform essential tasks such as memory management, device drivers, and
system services. They are typically long-running and critical for the proper
functioning of the operating system.
b. User Processes: User processes are created by users or applications to execute
specific tasks. They interact with the system resources and rely on system processes
for their execution. User processes may include applications, services, and
background tasks.

4. Collecting Process Information:

To implement our Process Manager, we need to collect information about each


process. The key metrics we will focus on are CPU utilization, memory utilization, and
I/O utilization. These metrics provide insights into how processes utilize system
resources.

a. CPU Utilization: CPU utilization measures the amount of time a process spends
executing on the CPU. It indicates the workload placed on the CPU by a process. We
can gather CPU utilization data by periodically sampling the CPU usage of each
process.

b. Memory Utilization: Memory utilization refers to how much memory a process


is consuming. It helps identify memory-intensive processes and potential memory
leaks. We can obtain memory utilization data by querying the memory usage of each
process.

c. I/O Utilization: I/O utilization measures the usage of input/output devices by a


process. It includes operations such as reading from or writing to disk, network
communication, and other I/O activities. I/O utilization data can be collected by
monitoring the I/O operations performed by each process.
5. Tagging Processes as CPU-bound or I/O-bound:

By analyzing the resource utilization patterns, we can classify processes as CPU-


bound or I/O-bound. These classifications help in understanding the dominant
resource usage behavior of a process.

a. CPU-bound Processes: CPU-bound processes heavily utilize the CPU and


require significant computational resources. They typically involve tasks that
involve complex calculations, algorithms, or simulations. CPU-bound processes
often have high CPU utilization and relatively lower I/O activity.
b. I/O-bound Processes: I/O-bound processes heavily rely on input/output
operations and have high I/O activity. They frequently interact with external
devices, perform disk reads/writes, network communications, or database
operations. I/O-bound processes may have lower CPU utilization compared to
CPU-bound processes.

6. Visualizing Process Information:

Process visualization provides an end-to-end overview of a process flow including all


the steps taken, sub-processes, activities, data inputs and outputs, and risk objects.

Analysts can benefit from visualization to illustrate a customer journey or a supply


chain as it is, plan a new process, or ensure that the process complies with the ideal
model.
7. Importance of Process Manager:

The Process Manager is a crucial component of an operating system responsible for


managing and monitoring processes. In this project, we will focus on developing a
Process Manager that can identify system and user processes and provide
information about their CPU, memory, and I/O utilization. Additionally, we will tag
each process as either CPU-bound or I/O-bound based on their behavior.

Conclusion:

The development of a Process Manager that identifies system and user processes
while providing information about CPU, memory, and I/O utilization is crucial for
effective process management in an operating system. It assists in resource
allocation, scheduling decisions, and performance analysis. By accurately monitoring
and categorizing processes, system administrators can optimize resource utilization
and improve overall system performance.

REFRENCES:
 Superuser.com
 Unix.stackexchange.com

You might also like