OSPPT

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 52

PRESENTED BY

Wajeeha Habib 22017119-017


Rimsha Nazir 22017119-019
Nighat Noreen 22017119-031
Table of content

 Background of memory management


 Memory management
 Swapping
 Contiguous Memory Allocation
 CentOS
Background:
 Processes must be placed from disk(secondary storage) to main memory
before allocating CPU
 Cache sits between main memory and CPU registers
 CPU has direct connection with Main Memory,cashe and Registers
 Memory units, such as RAM, interact with the CPU through a stream of
addresses along with read or write requests:
READ operation:
CPU sends a read request along with the corresponding memory address
over the address bus
WRITE operation:
CPU sends a write request along with the data and the corresponding
memory address over the address bus
Memory Management Graphically
Background:
Case of write requests:
CPU sends both the memory address and the data to be written and
The combination of address and data allows the memory unit to identify where to
store incoming data
Register access in one CPU clock:
 Proximity to the CPU Core
 DedicatedHardware
 Parallelism
 High-Speed Bus
 Synchronized with system clock (read or write will be done in one CPU clock
 Reduced Latency
Main memory can take many cycles, causing a stall
 Stall (there is not enough available memory for graphing to
continue.)
 Memory Hierarchy( from high to low)Accessing data from lower levels of the
hierarchy (e.g., RAM) introduces higher latency
 Cache Miss(cashing data if it is not incashe)
 Longer access time compared to registers and cache
 Memory Refresh Cycles
Memory Management:

 Memory Management and Memory


 Levels of Memory Management
 Memory Allocation
 Process address space
 Address binding
 Loading
 Linking
 Swapping
Memory And Memory
Management:
Memory
 Electronic storage space that is

used to store data and


instructions that are actively
being processed by the CPU
 RAM (Random Access Memory)

 ROM (Read-Only Memory)

 Cache Memory

Memory Management
 Efficient utility of memory

 involves controlling and

coordinating the computer's


memory resources
 Controlled access to and from the

memory by the processes


Memory Management And Hierarchy
Three levels of Memory Management
Hardware Level (Physical Memory):
 hardware components are responsible for managing physical memory
 includes the interaction between the CPU, memory modules, memory buses,
and memory controllers o addressing mechanism, data transfer rates, and the
organization of physical memory (RAM)
Operating System Level (Logical/Virtual Memory):
 a layer of abstraction known as logical or virtual memory
 allows processes to use memory addresses that may not directly correspond to
physical addresses
 Use paging and segmentation to manage mapping between virtual addresses
used by processes and the actual physical addresses in RAM
Application Level (Process Memory Management):
 individual applications or processes manage their own memory space
 Each process typically has its own address space, including code, data, and
stack segments involves memory allocation and deallocation operations,
dynamic memory management
 ensuring that the program uses memory resources efficiently
Memory Allocation:
 Memory allocation in
operating systems involves
assigning portions of the
computer's memory to
different processes and
managing the utilization of
that memory.
 Includes strategies for
assigning, tracking, and
deallocating memory to
ensure optimal system
performance
Types of allocation:
Static Memory Allocation:
 memory is allocated to a program at
compile time,
 size of the memory is fixed during the
program's execution
 common for variables with a fixed size,
such as global variables and constants
Dynamic Memory Allocation:
 allows programs to request memory at
runtime.
 Languages like C and C++ provide
functions such as malloc, calloc,
realloc, and free to manage dynamic
memory.
 essential for handling data structures
whose sizes may not be known until
runtime
Memory Allocation:
Heap Allocation:
 Dynamic memory is often allocated from
a region of memory called the heap
 Managed explicitly by the programmer or
implicitly by higher-level language
runtime environments
Stack Allocation:
 Used for automatic memory allocation
and deallocation.
 It operates in a last-in, first-out (LIFO)
manner
 Used for managing function calls and
local variables.
 Memory allocated on the stack is
automatically deallocated when a
function exits
 Memory Pools ,Buddy Allocation, First
Fit, Best Fit, and Worst Fit are memory
allocation algorithms(techniques)
How memory allocation works:

 Through the process of


memory allocation, a
portion of the
computer memory is
set aside for running
programs and processes.
 How much memory is
allocated depends on the
program’s requirements
Process address space:
 Refers to the range of memory addresses
that a running program, or process, can
use during its execution
 Every process has its own isolated
address space, ensuring that processes do
not interfere with each other's memory
 isolation enhances system security and
stability
 concept of virtual memory allows
processes to have an address space larger
than the physical RAM available
 involves the use of the Memory
Management Unit (MMU) for address
translation.
 process address space is divided into
segments, each serving a specific purpose
Types of Process Address Space

Text Segment (Code):


 Contains the machine code instructions of the program.
 Typically marked as read-only to prevent the program from modifying its own instructions.
Data Segment:
 Used for storing global and static variables.
 Further divided into initialized and uninitialized sections.
Heap:
 Dynamic memory area used for dynamic memory allocation during runtime.
 Managed explicitly by the programmer or implicitly by higher level language runtime
environments.
Stack:
 Used for function call management, local variables, and storing information related to
function calls and returns.
 Operates in a last-in, first-out (LIFO) manner.
Memory-Mapped Segment:
 Used for memory-mapped files and shared memory, allowing processes to share data.
Memory Management Unit (MMU):
 Translates virtual addresses used by the process into physical addresses in RAM
 Enables the use of virtual memory and handles address translation and memory protection.
Physical and logical address space:
Physical address:
 Refers to a specific location in the physical memory hardware(RAM) of a computer.
 It is the actual ,unique address assigned to each byte of physical memory.
Physical Address space:
 Is the set of all physical addresses generated by a program
Logical address:
 A logical address ,also known as a virtual address is a memory address generated by a program
during its execution.
 It represents a location within the logical address space of a process.
 A pair of base and limit registers define the logical address space.
Logical address space:
 Is the set of all logical addresses generated by a program.
Address Binding
 refers to the process of
associating or connecting a
symbolic or logical address
generated by a program with
a physical address in
computer memory
 involves the mapping of
program addresses to actual
memory locations during
various stages of a
program's lifecycle
 occurs at different levels,
including compile time, load
time, and runtime.
Binding of Instructions and Data to Memory
Address binding of instructions and data to memory addresses can happen at
three different stages:
Load-Time (Static) Binding:
 refers to the process of associating or assigning memory addresses to
variables and instructions in a program during the program loading phase
 occurs when the program is loaded into memory before execution begins
Execution-Time (Dynamic) Binding:
 refers to the process of associating or assigning memory addresses to
variables and instructions in a program during the actual execution of the
program.
 allows for greater adaptability and flexibility during runtime
Compile-Time (Static) Binding:
q Address binding is done at compile time, and the program is generated with

fixed memory addresses.


q The physical addresses are known and fixed before the program is executed.

q The advantage is that the execution is faster because there is no need for

runtime address resolution.


q The disadvantage is that it lacks flexibility, as the program must be recompiled

for each memory configuration or relocation.


Base and Limit Register
 A pair of base and limit registers define
the logical address space
 hardware registers used in memory
management to implement the concept
of memory protection and isolation in a
computer system
 Base register specifies the starting
address
 Base register represents the offset from
the beginning of physical memory where
the process's memory space begins
 Limit register specifies the size of the
memory region accessible to the process
 Limit register specifies the range of
valid addresses relative to the base
address
Hardware address
protection
 mechanisms in memory
management are
implemented at the
hardware level to ensure
the security and integrity
of a computer system's
memory
 prevent unauthorized
access or modification of
memory locations and
contribute to the overall
stability and reliability of
the system
Multistep processing of a
user program
Refers to the various stages and steps
involved in the execution of a program
on a computer system:
 Program Creation

 Compilation

 Linking

 Loading

 Execution

 Dynamic Linking (Optional)

 Runtime Libraries (Optional)

 Termination

 Error Handling

 Debugging (Optional)
Memory
Management Unit
MMU
Hardware component within a
computer's central processing
unit (CPU) that is responsible
for managing the translation of
virtual addresses used by a
program into physical
addresses in the computer's
RAM
 Crucial role in enabling

virtual memory, ensuring


memory protection, and
facilitating efficient
memory access
MMU
 MMU translates virtual addresses generated by a program into corresponding physical
addresses in the computer's memory, translation allows for the use of virtual memory
and efficient memory utilization
 MMU enables the implementation of virtual memory
 Memory protection is a key function of the MMU, forces access control by determining
which parts of memory a program can read from or write to.
 MMU ensures that processes cannot directly access or modify the memory of other
processes, contributing to process isolation and system stability
 Page tables are data structures used by the MMU to store the mappings between virtual
addresses and physical addresses.
 To start, consider simple scheme where the value in the relocation register is
added to every address generated by a user process at the time it is sent to
memory
 Base register now called relocation register
 MS-DOS on Intel 80x86 used 4 relocation registers
 The user program deals with logical addresses; it never sees the real physical
addresses
 Execution-time binding occurs when reference is made to location in memory
 Logical address bound to physical addresses
Dynamic relocation using a
relocation register
 technique employed by operating
systems and compilers to enable the
execution of programs at different
memory locations
 relocation register, also known as a
base register, is a special register
that holds a base address
 Routine is not loaded until it is
called
 Better memory-space utilization;
unused routine is never loaded
 All routines kept on disk in
rellocatable load format
 Useful when large amounts of code
are needed to handle infrequently
occurring cases
 No special support from the
operating system is required
 Implemented through program
design
 OS can help by providing libraries
to implement dynamic loading
Linking
 Involves combining separately compiled or assembled code into a
single executable program
Dynamic linking Static linking
 occurs during the loading phase of  occurs during the compilation
the program, either at runtime or phase of the program
load time  Libraries are included in the
 Libraries are linked at runtime, and executable at compile time, and
the executable references shared the resulting executable is a
libraries external to the program file standalone, self contained file
 The executable generated through  The executable generated
dynamic linking is smaller because it through static linking tends to
only contains references to external be larger because it includes the
shared libraries, not the entire library entire code of the linked
code libraries
 Occurs at run time  Last step of compilation
 Dynamically linked files are smaller  Static linking files are larger in
in size size
Swapping:
 Temporarily transfer a process or a part of a process from main memory
(RAM) to secondary storage (usually a hard disk or SSD) and then bring
it back into memory when needed
 To optimize the use of available physical memory and ensure that the
most critical processes are active in RAM.
Purpose:
 To allow the operating system to
run more processes than can fit
into physical memory
simultaneously.
 Involves moving entire processes
or parts of processes between
main memory and secondary
storage
 The MAIN purpose of swapping
is to free up memory space in
RAM by temporarily moving idle
or less frequently used processes
to the disk.
 This allows more active processes
to reside in memory and keeps
the system running efficiently.
Swapping
Backing store :
 fast disk large enough to accommodate copies of all memory images for
all users; must provide direct access to these memory images
Roll out, roll in :
 swapping variant used for priority-based scheduling algorithms; lower-
priority process is swapped out so higher-priority process can be loaded
and executed
Transfer time:
 Major part of swap time is transfer time; total transfer time is directly
proportional to the amount of memory swapped
 System maintains a ready queue of ready-to-run processes which have
memory images on disk
 Swapping normally disabled
 Started if more than threshold amount of memory allocated
 Disabled again once memory demand reduced below threshold
Context switching time
including swapping:
 Context switch time is the time it
takes for the operating system to
switch from one process to another.
 If the next process to be put on
CPU is not in memory , the
operating system needs to swap out
a process and swap in the target
process which can take a long time.
 Example:
 If a 100MB process is swapped to
hard disk with a transfer rate of
50MB / sec , the swap out time of
the same sized process would be the
same . The total context switch
swapping component time would be
4000ms (4 seconds).
Swapping and context switching
 Context switch time can then be very high
 100MB process swapping to hard disk with transfer rate of 50MB/sec
 Swap out time of 2000 ms
 Plus swap in of same sized process
 Total context switch swapping component time of 4000ms (4 seconds)
 Can reduce if reduce size of memory swapped – by knowing how much
memory really being used
 System calls to inform OS of memory use via request_memory() and
release_memory()
 Other constraints as well on swapping
 Pending I/O – can’t swap out as I/O would occur to wrong process
 Or always transfer I/O to kernel space, then to I/O device
 Known as double buffering, adds overhead
 Standard swapping not used in modern operating systems
 But modified version common
 Swap only when free memory extremely low
Swapping on mobile system:
 Not typically supported
 Flash memory based
 Small amount of space
 Limited number of write cycles
 Poor throughput between flash memory and CPU on mobile platform
 Instead use other methods to free memory if low
 iOS asks apps to voluntarily relinquish allocated memory
 Read-only data thrown out and reloaded from flash if needed
 Failure to free can result in termination
 Android terminates apps if low free memory, but first writes application
state to flash for fast restart
 Both OSes support paging as discussed below
Contiguous memory allocation:
Contiguous memory allocation is a memory management technique in which
each process is allocated a single contiguous block of memory.
 Process occupies a continuous range of physical memory addresses
 This method simplifies memory access and management, as the entire
process can be loaded into memory in one contiguous chunks
ADVANTAGES AND DISADVANTAGES

Advantages:
 Simplicity of Implementation
 Sequential Access
 Memory Swapping
 Fixed Partitioning
 Embedded Systems
 Reduced Fragmentation Overhead
 Cache Efficiency
Disadvantages:
 Fragmentation
 Limited Flexibility
 Memory Wastage
 Difficulty in Memory Management
 Inefficient Use of Resources
 Compaction Overhead
 Fixed Partitioning Limitations
Contiguous memory allocation

 Relocation registers used to protect


user processes from each other, and
from changing operating-system code
and data
 Base register contains value of
smallest physical address
 Limit register contains range of
logical addresses – each logical
address must be less than the limit
register
 MMU maps logical address
dynamically
 Can then allow actions such as kernel
code being transient and kernel
changing size
Multiple-partition allocation
 refers to a memory management scheme where the physical memory is divided into multiple fixed-size
partitions, and each partition can hold one process
 Two main types of multiple partition allocation
A)Fixed Partition Allocation B)Variable Partition Allocation
 Multiple-partition allocation
 Degree of multiprogramming limited by number of partitions
 Variable-partition sizes for efficiency (sized to a given process’ needs)
 Hole – block of available memory; holes of various size are scattered throughout memory
 When a process arrives, it is allocated memory from a hole large enough to accommodate it
 Process exiting frees its partition, adjacent free partitions combined
 Operating system maintains information about:
a) allocated partitions b) free partitions (hole)
Dynamic Storage-Allocation Problem

How to satisfy a request of size n from a list of free holes?


 Refers to the challenge of efficiently managing the allocation and
deallocation of memory space during the execution of a program.
 Problem is particularly relevant in operating systems and programming
languages that support dynamic memory allocation, where the size of
data structures can vary at runtime
 First-fit: Allocate the first hole that is big enough

 Best-fit: Allocate the smallest hole that is big enough; must search entire
list, unless ordered by size
 Produces the smallest leftover hole

 Worst-fit: Allocate the largest hole; must also search entire list
 Produces the largest leftover hole
CentOS:
 CentOS, short for the Community Enterprise Operating System,
 is a free
 open-source platform derived from the sources of Red Hat Enterprise Linux (RHEL).
 It’s often hailed as the “enterprise-grade” Linux distribution for those who want RHEL’s reliability
without its price tag.
 Given its roots in RHEL, CentOS mirrors the robustness, security, and performance of its progenitor,
becoming an attractive choice for administrators and developers alike
 Community-Driven:
 CentOS is developed and maintained by a community of volunteers. It strives to provide a free and
open alternative to Red Hat Enterprise Linux.
 RHEL Compatibility:
 CentOS aims to be binary-compatible with RHEL, which means software packages designed for
RHEL can generally be used on CentOS without modification.
 Stability and Reliability:
 CentOS is known for its stability and reliability, making it a popular choice for servers and enterprise
environments where a robust and dependable operating system is crucial.
 Long-Term Support (LTS):
 CentOS provides long-term support for its releases, with updates and security patches delivered for
an extended period, typically around 10 years for major releases.
 Use of RPM Packages:
 Like RHEL, CentOS uses the Red Hat Package Manager (RPM) for software package management.
Users can install, update, and remove software packages using the package manager.
 Enterprise Features:
 CentOS incorporates enterprise-level features found in RHEL, including security enhancements,
Centos
 No Commercial Support:
 While CentOS provides a stable and reliable platform, it does not
come with official commercial support. Organizations seeking
professional support may opt for RHEL or explore third-party
support options.
 CentOS Stream:
 CentOS Stream is a rolling-release distribution that serves as a
preview of the next RHEL release. It allows users to access newer
software packages and features before they are included in the
stable RHEL release.
 Server and Enterprise Focus:
 CentOS is widely used as a server operating system, powering web
servers, database servers, and various enterprise-level applications.
 Compatibility with EPEL:
 The Extra Packages for Enterprise Linux (EPEL) repository is often
used in conjunction with CentOS to provide additional software
packages not included in the base distribution.
 Migration to CentOS Stream (CentOS Linux 8):
 In December 2020, the CentOS Project announced a shift in its
focus, with CentOS Linux 8 transitioning to CentOS Stream. This
change sparked discussions in the open-source community.
 Alternative Distributions:
 Given the changes in CentOS Linux 8, some users have explored
alternative distributions, such as CentOS clones or other RHEL-
based distributions.
History of centos :
 Creation (2004):
 CentOS (Community ENTerprise Operating System) was created in 2004 by Lance Davis, as a free
and open-source alternative to Red Hat Enterprise Linux (RHEL).
 RHEL Source Code:
 CentOS is built from the publicly released source code provided by Red Hat for its enterprise
distribution, RHEL.
 Binary Compatibility:
 CentOS aims to maintain binary compatibility with RHEL, allowing users to run RHEL-compiled
applications on CentOS without modification.
 Versioning:
 CentOS version numbers correspond to the RHEL version they are based on. For instance, CentOS
7 is based on RHEL 7.
 Community-Driven Development:
 The project is driven by a community of volunteers and contributors who work together to develop,
maintain, and support CentOS.
 Acquisition by Red Hat (2014):
 In 2014, Red Hat officially announced its acquisition of the CentOS project. CentOS became a part
of the Red Hat ecosystem.
 Shift to CentOS Stream (2020):
 In December 2020, the CentOS Project announced a shift in focus from CentOS Linux 8 to CentOS
Stream. CentOS Stream serves as a rolling-release distribution and a preview of the next RHEL
release.
 Community Response and Controversy:
 The announcement of the shift to CentOS Stream generated controversy within the community, as
Key Features:
CentOS is a reputable Linux distribution, famed for its remarkable blend of
performance, security, and reliability. When diving deep into its foundational
structure and features, it’s evident why CentOS is a top choice for many server
administrators, IT professionals, and businesses.
Main features:
 High Performance & Availability: Built for both speed and uptime, CentOS ensures that
your applications run seamlessly and your servers exhibit minimal downtime.
 Stable Linux Distribution: Despite being free, CentOS matches the reliability and
stability of its premium counterparts, often used for critical infrastructures and business
solutions.
 Regular Updates & Support: With a proactive approach to patches and upgrades,
CentOS keeps itself updated against potential vulnerabilities, always offering the latest
features.
 High Level of Security: Boasting features such as SELinux and consistent security
updates, CentOS protects user data and provides peace of mind in an era of rampant cyber
threats.
 Comprehensive Repositories: These centralized storage locations house an array of
software packages, allowing for easy installation and updates.
 Efficient Package Manager: The YUM tool (Yellowdog Updater, Modified) simplifies
software management, ensuring easy installations and automatic updates.
 Structured Release Cycle: Prioritizing stability, CentOS’s release cycles are well-timed,
User Interface:
Command-Line Interface (CLI):
 Terminal Emulator: Users interact with the system through a terminal emulator,
such as GNOME Terminal, Konsole, or xterm.
 Bash Shell: The default shell is usually Bash (Bourne Again SHell), providing a
powerful command-line environment.
 Command-Line Tools: Users can perform various tasks using command-line
utilities and tools.

Desktop Environments:
 CentOS supports multiple desktop environments, and users can choose one
during the installation process. Common desktop environments include:
 GNOME: The default desktop environment in recent CentOS releases.
 KDE Plasma: Another popular desktop environment, known for its
configurability.
 Xfce: A lightweight and fast desktop environment suitable for lower-
resource systems.
 LXQt: Another lightweight desktop environment designed for better
performance.
User Interface
 Graphical Login Manager:
 After the installation of a desktop environment, CentOS displays a
graphical login manager where users can log in using their username
and password.
 Graphical System Tools:
 CentOS includes graphical tools for system configuration and
administration, such as control panels and settings managers. These
tools vary depending on the desktop environment chosen.
 Package Managers with GUIs:
 CentOS provides graphical package management tools, such as:
 GNOME Software Center: A user-friendly tool for installing,
updating, and removing software.
 KDE Discover: Similar to GNOME Software Center but designed
for KDE Plasma.
 Yum Extender (dnfdragora): A graphical frontend for the DNF
package manager.
User Interface
 File Managers:
 Graphical file managers provide an interface for users to navigate and
manage files. Examples include Nautilus (GNOME), Dolphin (KDE),
Thunar (Xfce), and PCManFM (LXQt).
 Web Browsers and Office Suites:
 CentOS supports popular graphical applications, including web browsers
like Firefox and Chrome, as well as office suites like LibreOffice.
 Remote Desktops and Virtualization:
 CentOS supports remote desktop solutions, such as VNC (Virtual
Network Computing), and virtualization platforms like Virt-Manager.
 Customization:
 Users can customize the appearance and behavior of the desktop
environment by changing themes, wallpapers, and settings.
System Architecture:
 As of version 8, CentOS fully supports x86-
64, POWER8and 64-bit ARM
architectures, while the following architectures
are not supported:
 IA-32 in all variants, not supported since
CentOS 7
 IA-32 without Physical Address
Extension (PAE), not supported since CentOS 6
 IA-64 (Intel Itanium architecture), was supported
in CentOS 3 and 4
 32-
bit PowerPC (Apple Macintosh and PowerMac r
unning the G3 or G4 PowerPC
processor), beta support was available in
CentOS 4
 IBM Mainframe (eServer zSeries and S/390), not
supported since CentOS 5
 Alpha, support was available in CentOS 4
 SPARC, beta support was available in CentOS 4
System Ecosystem:
CentOS, short for Community enterprise Operating System, is a free and open-source
Linux distribution that is based on the sources of Red Hat Enterprise Linux (RHEL). As
of my last knowledge update in January 2022, CentOS 8 was the latest stable release.
Keep in mind that the software ecosystem may have evolved since then. The CentOS
ecosystem typically includes the following elements:
 Linux Kernel:
 Package Management:
 RPM (Red Hat Package Manager):
 Desktop Environments:
 Server Software:
 Development Tools:
 Security Tools:
 System Administration Tools:
 Networking Tools:
 Virtualization and Containerization:
 File Systems:
 Firewall and Security Tools
 Monitoring and Performance Tools:
 Database Management System
 Documentation and Community Resources
Device and Platform Support
CentOS is primarily used as a server operating system, and its support for desktop hardware and
development tools is based on the needs of server environments.
Hardware Support:
 Servers: CentOS is well-suited for server environments and supports a wide range of server
hardware.
 Desktops/Laptops: While CentOS is not as focused on desktop use as some other Linux
distributions, it does support a variety of desktop and laptop hardware. However, you may
encounter differences in hardware support compared to desktop-oriented distributions.
Server Platforms:
 CentOS is well-suited for various server platforms, including x86_64 (64-bit), ARM, and other
architectures.
 It's commonly used on servers from various vendors, and its compatibility with x86_64
architecture is particularly strong.
Virtualization:
 CentOS supports virtualization technologies, including KVM (Kernel-based Virtual Machine)
and other virtualization solutions.
 It is commonly used as a guest operating system in virtualized environments.
Cloud Platforms:
 CentOS is often used in various cloud environments, including those provided by Amazon Web
Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP).
 Cloud providers may offer CentOS as a pre-configured image for easy deployment.
Developer Platforms:
 CentOS provides a range of development tools and libraries, making it suitable for software
development.
 Developers can use CentOS as a platform for building and testing applications.
Some centos commands
ls
 Lists files and directories in the current directory.
 pwd
 Prints the current working directory.
 cd
 Changes the current directory.
 cp
 Copies files or directories.
 mv
 Moves or renames files or directories.
 rm
 Removes (deletes) files or directories.
 mkdir
 Creates a new directory.
 cat
 Displays the content of a file.
 more or less
 Allows scrolling through the content of a file.
 nano or vim
 Text editors for creating or editing files.
 top
 Displays a dynamic, real-time view of the system's processes.
free Commands
 Shows information about system memory usage.
 df
 Displays information about disk space usage.
 yum or dnf
 Package managers for installing, updating, and removing
software packages.
 yum list or dnf list
 Lists available packages.
 yum install or dnf install
 Installs a package.
 yum update or dnf update
 Updates installed packages
 ifconfig or ip addr
 Displays network interface configuration.
 ping
 Sends ICMP echo requests to test network connectivity.
 traceroute or tracepath
 Traces the route that packets take to reach a dest
 shutdown
 Shuts down the system.
 reboot
 Restarts the system.

You might also like