0% found this document useful (0 votes)
9 views

Assignment Two

Uploaded by

221155
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Assignment Two

Uploaded by

221155
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Palestine Polytechnic University

College of IT and Computer Engineering

Computer Engineering Department

• Student Name: Reem Saya’ra

• Student ID: 211058

• Supervisor: Dr.Hani Salah

• Assignment: OS Debugging Tools

1|Page
introduction
Debugging tools in an operating system are essential utilities designed to
assist developers and system administrators in identifying and resolving software
issues. These tools provide various functionalities such as code inspection,
memory analysis, performance monitoring, and error tracking. By offering
insights into program execution and system behavior, debugging tools play a
crucial role in diagnosing and fixing software bugs, optimizing performance, and
ensuring the overall reliability of the operating system and applications running
on it, The most important of these tools are Task Manager in Windows OS and
“top” command in Linux OS.

Windows Task Manager


Roles of Task Manager in troubleshooting performance issues
Task manager contains many tabs that offers comprehensive, up-to-date
insights into both software and hardware components of the PC by monitors the
usage of computer resources like CPU and Memory, and control startup
programs, so most of them plays an important role in troubleshooting
performance issues as follows.[1]
1. Processes Tab: Displays all running processes along with their CPU,
memory, disk, and network usage. This tab enables:
• sorting processes by CPU, memory, disk, or network usage to identify
which processes are consuming the most resources. This helps in
identifying misbehaving or resource-hungry applications that may be
causing performance issues.[2]
• forcefully terminating the process of an application If it becomes
unresponsive or freezing, freeing up system resources and potentially
resolving the performance issue.[2]
• identifying and disable unnecessary background processes to free up
valuable system resources.[2]

2. Performance Tab: Provides real-time graphs of CPU, memory, disk, and


network usage. So it helps in pinpointing which resource is being heavily
utilized, aiding in diagnosing performance bottlenecks, also it shows
CPU’s Temperature to determine if the performance problem in the CPU
or not.[3]

3. App History Tab: Displays resource usage statistics for Windows Store
apps, so it is useful for monitoring resource consumption of specific apps
over time, thus identify apps that are consuming excessive resources and
impacting system performance.[3]

2|Page
4. Startup Tab: Lists programs configured to start automatically when
Windows boots, so it helps identify excessive and unnecessary startup
programs, and allow disable it to reduce boot time and improve system
performance.[2]

5. Services Tab: Lists all system services along with their status and
resource usage, so helps identify services consuming excessive
resources or causing performance issues and allows users to start, stop,
or restart services to troubleshoot performance problems related to
services.[2]

Task Manager in my system

3|Page
Processes currently running and it’s CPU and Memory usage:
• Apache NetBeans IDE Launcher (CPU usage is 0.1% and memory usage
is 577.9 MB).
• Google Chrome (CPU usage is 4.7% and memory usage is 1328.8 MB).
• Microsoft Edge (CPU usage is 0.7% and memory usage is 1087.4 MB).
• Microsoft Visual Studio 2022 (CPU usage is 0.3% and memory usage is
297.3 MB).
• Microsoft word (CPU usage is 1.0% and memory usage is 77.6 MB).
• Task Manager (CPU usage is 3.1% and memory usage is 69.8 MB).
• WhatsAPP (CPU usage is 0% and memory usage is 100.6 MB).
• There is no non-responsive applications or processes

Linux Top Command


Roles of Task Manager in troubleshooting performance issues

”top” is a command shows a real-time view of running processes and


displays kernel-managed tasks, also provides a system information summary
that shows resource utilization, including CPU and memory usage, so it has a
powerful roles in troubleshooting as follows.[4]

1. Terminating Unresponsive Processes: ”top” command can be used to


kill any unresponsive or freezing process by press “k” and identify the
process id (PID) after execute ”top” command.[4]

2. Identifying Resource-Hungry Processes: ”top” command allows sorting


running processes in ascending or descending order based on their usage
of computer resources like CPU and Memory to determine Resource-
Hungry Processes that may be causing performance issues by the
command (top -o +%MEM) for Memory and (top -o +%CPU) for CPU.
[4]

3. Monitoring Resource Usage: ”top” command provides a CPU and


Memory usage graph to determine which resource being heavily utilized,
helping in diagnosing performance bottlenecks, This feature can be
obtained by press “t” for CPU and “m” for Memory after execute ”top”
command.[4]

4. Filtering Processes: “top” command allows filtering running process


based on many criteria like username or expression follow ”top”
command, For example if you want to list all running processes that use
more than 10% of the memory run (top %MEM>10.0) command ,This
helps focus on specific processes that are suspected to be causing
issues.[4]

4|Page
“top” command in my system

“top” command user interface can be divided into two main parts:

1. Dashboard part: provides sufficient information to identify system


issues.[5]
• Uptime and average load

This line tells that computer has been up for 30 minutes. The next part of
the line tells that there's currently one user logged in. The next segment
gives the average load on the CPU in the last one minute, five minutes,
and 15 minutes.[5]

• Tasks

This line tells that there are 34 running tasks of which one is running, 33
are sleeping, and none are stopped or in the zombie state. [5]

• CPU

The third line is all about CPU.

This line tells that:

➢ us: 0.6 s of CPU time spent on processes in user space.


➢ sy: 0.5 s of CPU time spent on system or kernel space.
➢ ni: 0.0 s of CPU time spent on processes with manually set nice
value.
➢ id: 98.9 s of CPU time was in Idle state.

5|Page
➢ wa: 0.0 s of CPU time spent waiting for I/O operations to complete.
➢ hi: 0.0 s of CPU time spent on hardware interruptions.
➢ si: 0.6 s of CPU time spent on software interruptions.
➢ st: 0.0 s of CPU time lost because of VM steal time.[5]

• Memory

This line tells that the total amount of available memory is 7846.1 MiB, the
amount of free memory is 7003.0 MiB, the amount of used memory is
498.3 MiB, and the amount of buffered or cached memory is 344.7 MiB.[5]

• Swap memory

This line tells that the total amount of available swap memory is 2048.0
MiB, the amount of free swap memory is 2048.0 MiB, the amount of used
swap memory is 0.0 MiB, and the amount of avail Mem swap memory is
7119.2 MiB. [5]

2. Task part: contains 12 columns gives information about running


processes as follows:

• PID: The process ID.


• USER: The owner of the process.
• PR: The priority of the process.
• NI: The nice value of the process.
• VIRT: Virtual memory used by the process.
• RES: Resident memory used by the process.
• SHR: Shared memory used by the process.

6|Page
• S: Status of the process.
• %CPU: Percentage of the CPU used by the process.
• %MEM: Percentage of memory used by the process.
• TIME+: CPU time used by the process (to the hundredth of a second).
• COMMAND: Command used to run the process. [5]

Task Manager VS “top” command


Similarities
There are many similarities between Windows Task Manager and Linux
“top” command in term of functionality and usage as follows.
• They are both powerful debugging tools.
• Both displays running processes and refresh information continuously.
• Both provide the ability of terminate freezing or unresponsive processes.
• Both provide the ability of sorting processes by CPU and memory usage
to identify which processes are consuming the most resources.
• Both Provide CPU and Memory usage graphs. To determine which
resource is being heavily utilized.
Differences
As similarities there are many differences between Windows Task
Manager and Linux “top” command in term of functionality and usage as follows.
• Task Manager is built-in application has User-friendly GUI interface while
“top” is a command prompt implemented using Linux terminal so it
requires knowledge of terminal commands.
• Task Manager displays resource usage statistics for Windows Store apps
(App history) while “top” command doesn’t.
• Task Manager displays background processes and running processes
separately while “top” command displays them together.
• Task Manager displays startup processes while “top” command doesn’t.
• Task Manager displays system services while “top” command doesn’t.
• Task Manager monitors network and disk while “top” command doesn’t.
• Task Manager Provides network and disk usage graphs in addition to
CPU and memory.
• Task Manager provides the ability of sorting processes by network and
disk usage in addition to CPU and memory.
• “top” command allows filtering running process based on many criteria
while Task Manager doesn’t.
Task Manager and “top” command each has its strengths, Task Manager
(Windows) offer ease of use for basic monitoring and process management,
the command-line tool top (Linux) excels in real-time updates and granular
process filtering, making it a favorite for system health checks and

7|Page
performance debugging. Ultimately, the best tool depends on the user's
comfort level and the debugging task at hand.

Conclusion
Operating system debugging tools play a crucial role in diagnosing and
resolving software issues in diverse environments. Whether debugging kernel
modules, user-space applications, or real-time embedded systems, having the
right tools and expertise is essential for efficient troubleshooting. By leveraging
the features and best practices of these tools, developers and system
administrators can streamline the debugging process and ensure the reliability
and performance of their systems.

References
• [1] https://helpdeskgeek.com/windows-11/windows-11-task-manager-in-depth-
guide-and-overview/
• [2] https://easyseo.pro/kb-post/how-to-use-windows-task-manager-to-
improve-your-pcs-performance/
• [3] https://www.lenovo.com/us/en/glossary/task-manager/
• [4] https://phoenixnap.com/kb/top-command-in-linux
• [5] https://www.site24x7.com/learn/linux/top-command.html

• Note: All References accessed on 12 April 2024.

Contents
introduction.................................................................................................................................. 2
Windows Task Manager ............................................................................................................ 2
Roles of Task Manager in troubleshooting performance issues............................... 2
Task Manager in my system ................................................................................................ 3
Linux Top Command ................................................................................................................. 4
Roles of Task Manager in troubleshooting performance issues............................... 4
“top” command in my system ............................................................................................ 5
Task Manager VS “top” command ......................................................................................... 7
Similarities................................................................................................................................ 7
Differences ............................................................................................................................... 7
Conclusion ................................................................................................................................... 8
References ................................................................................................................................... 8

8|Page

You might also like