Exploring Operating
Systems: From Evolution
to Security
A Comprehensive Journey Through the Functions, Types, and Management
of Operating Systems
Table of 01 Introduction to Operating Systems
02 Functions of Operating Systems
contents
03 Types of Operating Systems
04 Role of Operating Systems in Resource
Management
05
Components of Operating Systems
06
Process Scheduling in Operating Systems
07
File Systems and Virtualization
08
System Calls and APIs
09
Device Drivers and Hardware Management
10
Memory Management in Operating Systems
11
Operating System Configuration
Table of 12 z/OS and IBM i Operating Systems
13 OpenVMS Operating System
contents
14 Evolution of UNIX Operating System
15 UNIX Flavors and File Systems
16 Origins and Development of Linux
17 Maturity and Use of Linux
18 Comparison of Operating Systems
19 Failover Clustering in Operating Systems
20 Cluster Heartbeat and Monitoring
21 Application Recovery in Clusters
22 N+N Clusters and Performance
Table of 23 Quorum Disk in Cluster Environments
24 Cluster-Aware Applications
contents
25 Factors Affecting Operating System Performance
26 Benefits of a Smaller Kernel
27 Enhancing Operating System Security
28 Hardening Operating Systems
29 Implementing Host-Based Firewalls
30 User Account Limitations and Password Security
1
Introduction to Operating
Systems
Importance of Operating
01 02 Abstraction of Hardware
Systems
Operating systems are essential software Operating systems hide the technical
that manage computer hardware and complexities of the underlying hardware
provide services for computer programs. from the applications running on top of
them.
They enable multiple users, processes,
and applications to run on a single piece
of hardware.
Key Components of an Utilities in Operating
03 04
Operating System Systems
The kernel manages programs and the User interfaces, installation tools, logging
file system, schedules access to tools, editors, system update processes,
hardware, and prevents conflicts. and web browsers are integral parts of an
operating system.
Drivers connect specific hardware
devices to the kernel, ensuring seamless
operation.
Exploring Operating Systems: From Evolution to Security
2
Functions of Operating Systems
Key Functions of an Operating System
Enable multiple users, processes, and applications to run on a single
piece of hardware.
Manage a computer's internal workings, including memory, processors,
and peripheral devices.
Provide an abstraction layer between hardware and software
applications.
Handle tasks such as process management, memory management, and
file locking.
Offer services to applications through APIs, including file management,
I/O interfaces, and hardware drivers.
Exploring Operating Systems: From Evolution to Security
3
Types of Operating Systems
General-purpose operating Special-purpose operating
01 02
systems systems
Windows Firewalls
macOS Intrusion detection systems
Ubuntu Routers
iOS Phones
Android ATM machines
Real-time operating
03
systems (RTOS)
Guarantee tasks within a predefined time
Used in critical environments like
factories, power plants, and vehicles
Exploring Operating Systems: From Evolution to Security
4
Role of Operating Systems in
Resource Management
Role of Operating Systems in Resource Management
Operating systems control and manage a computer's resources,
including memory, processors, and peripheral devices.
They provide an abstraction layer between hardware and software
applications, optimizing resource utilization.
Tasks such as process management, memory management, and file
locking are handled by operating systems to ensure efficient resource
allocation.
Operating systems offer services to applications through APIs,
facilitating functions like file management, I/O interfaces, and hardware
drivers.
The evolution of operating systems has enabled them to support
multiple users and programs simultaneously, enhancing resource
management capabilities.
Exploring Operating Systems: From Evolution to Security
5
Components of Operating Systems
01 Kernel 02 Device Drivers 03 Utilities
Manages programs, file systems, and Connect specific hardware devices to the Include user interfaces, installation tools,
hardware access to prevent conflicts. kernel for proper functionality. logging tools, editors, and system update
processes.
04 Shells 05 Memory Management
Provide user interfaces like Command- Allocates and de-allocates memory,
Line Interfaces (CLIs) and Graphical User manages cache, paging, and multi-core
Interfaces (GUIs). processors.
Exploring Operating Systems: From Evolution to Security
6
Process Scheduling in Operating Systems
01 02 03 04 05
Simultaneous
Illusion of Parallel Preemptive Process
Processes on a I/O Suspension
Running Processes Multitasking Suspension
Single CPU Core
In most computer Operating systems create This scheduling principle The operating system Processes waiting for I/O
systems, multiple the illusion of parallel is known as preemptive periodically decides if a are suspended until the
processes run running processes by multitasking. running process should I/O request is finished,
simultaneously on a scheduling each process be suspended in favor of freeing the CPU for other
single CPU core. to run for a short time another process. processes.
frame.
Exploring Operating Systems: From Evolution to Security
7
File Systems and Virtualization
File Systems in Operating Journaling File Systems
01 02 Types of File Systems 03
Systems
File systems in operating systems Various types of file systems are utilized, Journaling file systems like NTFS, VxFS,
virtualize the complexities of managing such as FAT, NTFS, UFS, VxFS, and Ext, and Ext4 track changes in a journal log to
individual disk blocks and communication each serving different purposes. ensure data integrity and facilitate quick
with storage devices. recovery in case of malfunctions.
They consist of directories containing
files or other directories, with the
operating system handling file security
and permissions.
04 Mounting File Systems 05 File Sharing Functionality
File systems need to be mounted by the Operating systems provide file sharing
operating system before they can be functionality, enabling access to files on
accessed, typically assigned a drive one system by users on other systems,
letter or mount point for recognition. enhancing collaboration and data
accessibility.
Exploring Operating Systems: From Evolution to Security
8
System Calls and APIs
System Calls and APIs
System calls are interfaces provided by the operating system that allow
applications to request services from the operating system.
APIs (Application Programming Interfaces) are sets of rules and protocols that
allow one software application to interact with another, facilitating the use of
system calls.
System calls and APIs play a crucial role in enabling communication between
software applications and the operating system, providing access to various
functionalities and resources.
Developers utilize system calls and APIs to perform tasks such as file
operations, process management, memory allocation, and network
communication within their applications.
Understanding system calls and APIs is essential for software development, as
they form the bridge between applications and the underlying operating
system services.
Exploring Operating Systems: From Evolution to Security
9
Device Drivers and Hardware
Management
Hardware Management in
01 Device Drivers 02 Operating Systems
Device drivers are small applications that Hardware management in operating
connect specific hardware devices, like systems involves the kernel scheduling
printers or network cards, to the access to hardware to prevent conflicts
operating system. when multiple programs try to access the
same resource simultaneously.
Device drivers play a crucial role in
enabling communication between the Efficient hardware management by the
operating system and hardware operating system enhances system
components, ensuring proper stability and performance by coordinating
functionality. the interaction between software
applications and hardware devices.
Exploring Operating Systems: From Evolution to Security
1
0
Memory Management in
Operating Systems
Memory Management in Operating Systems
Memory management in operating systems involves the allocation and
de-allocation of memory to applications.
Modern operating systems handle tasks like cache management,
paging, and managing multi-core processors.
Memory management units (MMUs) play a crucial role in managing
memory efficiently in operating systems.
Operating systems also utilize Direct Memory Access (DMA) for efficient
data transfers.
Despite the growth in memory capacity, programs tend to utilize all
available memory, impacting system performance.
Exploring Operating Systems: From Evolution to Security
1
1
Operating System
Configuration
Operating System
Configuration
Configuration of an operating system is
stored in an operating-system specific
database or in text files.
Windows environments utilize the
Windows registry for configuration
settings.
UNIX and Linux systems rely on text-
based configuration files typically stored
in the /etc directory.
Configuration files in UNIX and Linux are
organized by functionality, with separate
files for different system aspects like
DNS or host information.
User-friendly tools are provided for
editing configuration files in UNIX and
Linux systems.
Exploring Operating Systems: From Evolution to Security
1
2
z/OS and IBM i Operating
Systems
01 z/OS Overview 02 IBM i (OS/400) Overview
z/OS is a mainframe operating system IBM i (OS/400) is an operating system used
developed by IBM, known for extreme exclusively on IBM's midrange Power
backward compatibility with programs Systems, offering features like built-in
written for MVS in 1974 still running on communications, transaction processing,
today's z/OS without modification. system security, and a relational database
manager.
z/OS is primarily used for batch
processing but can also support IBM i evolved from IBM's minicomputers,
thousands of interactive users with the OS/400 operating system designed
for AS/400 midrange systems, emphasizing
simultaneously.
ease of use for users.
03 IBM's Commitment
Both z/OS and IBM i showcase IBM's
commitment to providing robust and
specialized operating systems for
mainframes and midrange systems.
Exploring Operating Systems: From Evolution to Security
1
3
OpenVMS Operating System
OpenVMS Operating System
Developed by Digital Equipment Corporation (DEC) in the 1970s.
Known for its reliability, security features, and scalability.
Initially designed for VAX minicomputers and later expanded to Alpha
and Itanium platforms.
Notable for its clustering capabilities, allowing multiple systems to work
together seamlessly.
Used in industries requiring high availability and robust performance,
such as finance and healthcare.
Exploring Operating Systems: From Evolution to Security
1
4
Evolution of UNIX Operating
System
Creation and Early
01 02 Adoption and Adaptation
Development
Created by AT&T in 1969 at Bell Labs. UNIX versions adapted by various
computer manufacturers like Sun
Initially written in PDP assembler, later Microsystems and Hewlett-Packard.
rewritten in C programming language for
portability.
03 Ownership Changes 04 Key Features
AT&T sold UNIX System Laboratories to Known for hierarchical file system.
Novell in 1993, transferring UNIX
trademark to The Open Group. Small tools for specific tasks.
Pipes for command combination.
Exploring Operating Systems: From Evolution to Security
1
5
UNIX Flavors and File Systems
01 Different flavors of UNIX 02 Application Compatibility 03 Hierarchical File System
Specific hardware requirements. Applications running on a particular UNIX Popularized by UNIX with nested
flavor cannot run on another without subdirectories.
recompiling.
04 Small Tools 05 Pipes
UNIX uses a large set of small tools that UNIX utilizes pipes for combining
do specific tasks efficiently. commands without storing intermediate
results.
Exploring Operating Systems: From Evolution to Security
1
6
Origins and Development of
Linux
Independent Development Linux and GNU tools are licensed under
the GNU General Public License, ensuring
Linux was developed independently by a free access to the source code for all
group of developers, not derived from users.
the UNIX source code.
Creation by Linus Torvalds
Linus Torvalds created Linux as a free
operating system inspired by MINIX.
Linux Kernel and GNU Project
Linux is a kernel, with the GNU project
providing applications and tools to create
a complete operating system.
GNU Project Initiation
The GNU project, initiated by Richard
Stallman in 1984, aimed to develop a
free UNIX-like operating system.
GNU General Public License
Exploring Operating Systems: From Evolution to Security
1
7
Maturity and Use of Linux
Linux as a Mature
01 02 Similarities with UNIX
Operating System
Used in servers, workstations, mobile Shares commands, file structure, and
devices, and appliances. scripting language with UNIX.
Widely adopted in various devices, User-friendly for UNIX systems managers.
including all Android smartphones and
supercomputers.
03 Professional Support 04 Design Derived from UNIX
Available through companies like Red Hat Allows for easier porting of systems from
and Novell. UNIX to Linux.
Offers distribution and support contracts. More compatible compared to other
operating systems.
Exploring Operating Systems: From Evolution to Security
1
8
Comparison of Operating Systems
01 Windows 02 Linux 03 macOS
Known for its widespread use on personal Highly versatile Apple's proprietary operating system
computers and servers
Used in servers, workstations, mobile Designed for their laptops and desktops
Various versions like Windows 10 and devices, and even supercomputers
Windows Server 2019 Known for its user-friendly interface
Open-source nature
04 UNIX 05 z/OS
A powerful and stable operating system IBM's mainframe operating system
Has influenced the design of Linux Evolved from OS/360
Various flavors like Solaris and FreeBSD Known for its reliability and use in critical
environments
Exploring Operating Systems: From Evolution to Security
1
9
Failover Clustering in Operating
Systems
Failover Clustering
01 02 Cluster Software Control
Overview
Failover clustering is a method used to These servers are controlled by cluster
enhance the availability of an operating software running on the nodes.
system.
Examples of cluster software products
It involves a group of independent include Parallel Sysplex, HACMP,
servers running identical operating MC/Service Guard, Windows Cluster
systems connected via a network. Service, Heartbeat, and Pacemaker.
Application Management in
03
Clusters
A failover cluster manages applications
by grouping them into resource pools or
application packages.
These packages contain essential
components like application name, start
and stop scripts, monitor script, virtual IP
address, and mount points for storage.
Exploring Operating Systems: From Evolution to Security
2
0
Cluster Heartbeat and Monitoring
Cluster Heartbeat and Monitoring
Cluster heartbeat refers to the communication signal between nodes in
a failover cluster.
It ensures continuous monitoring of the health and status of each node
in the cluster.
Monitoring involves tracking the availability and performance of cluster
resources.
Heartbeat signals are crucial for detecting failures and triggering
failover processes.
Effective monitoring tools provide real-time insights into cluster
operations.
Exploring Operating Systems: From Evolution to Security
2
1
Application Recovery in Clusters
Implementing Failover Managing Applications
01 02 Cluster Software 03
Clustering
High availability in clusters Parallel Sysplex Resource pools
HACMP Application packages
MC/Service Guard
Windows Cluster Service
Heartbeat
Components of a Resource
04 05 Ensuring High Availability
Pool
Application name Monitoring application status
Start and stop scripts Initiating restarts or failovers
Monitor script
Virtual IP address
Mount points for storage
Exploring Operating Systems: From Evolution to Security
2
2
N+N Clusters and Performance
N+N Clusters in Operating
Failover Mechanism
Systems
Involve a group of independent servers Ensures that applications can seamlessly
running identical operating systems failover to another server in case of
connected via a network. hardware or software issues.
Controlled by cluster software to enhance
performance and availability.
Workload Distribution Performance Gains
Designed to distribute workloads Achieved through load balancing and
efficiently across multiple servers, redundancy, ensuring continuous
improving overall system performance. operation even if one server fails.
Exploring Operating Systems: From Evolution to Security
2
3
Quorum Disk in Cluster
Environments
Quorum Disk in Cluster Environment
Quorum disk is a shared disk in a cluster environment.
It helps in achieving a majority vote in cluster decision-making
processes.
The quorum disk ensures cluster integrity and prevents split-brain
scenarios.
It plays a crucial role in maintaining cluster stability and high
availability.
The quorum disk is essential for cluster failover and resource
management.
Exploring Operating Systems: From Evolution to Security
2
4
Cluster-Aware Applications
Cluster-Aware Applications
Cluster-aware applications are designed
to operate within a clustered
environment.
These applications are aware of the
cluster's configuration and can leverage
its resources efficiently.
They can detect changes in the cluster's
state and adjust their behavior
accordingly.
Cluster-aware applications enhance
system reliability and performance by
utilizing failover capabilities.
These applications can seamlessly
transition between cluster nodes to
ensure continuous operation.
Exploring Operating Systems: From Evolution to Security
2
5
Factors Affecting Operating System Performance
01 Memory Management 02 Process Scheduling 03 File System Efficiency
Efficient allocation and de-allocation of Proper scheduling of processes ensures Well-organized file systems contribute to
memory impact overall system optimal CPU utilization and faster data access and retrieval.
performance. responsiveness.
04 Device Driver Optimization 05 Kernel Efficiency
Well-designed drivers enhance hardware A streamlined kernel reduces overhead
performance and compatibility. and improves system responsiveness.
Exploring Operating Systems: From Evolution to Security
2
6
Benefits of a Smaller Kernel
Benefits of a Smaller Kernel
Reduced Complexity: A smaller kernel leads to a simpler and more
manageable operating system structure.
Improved Performance: With fewer components to load and manage, a
smaller kernel can enhance system performance.
Enhanced Security: Minimizing the kernel size can reduce the attack
surface, making the system more secure.
Better Stability: A streamlined kernel can result in increased system
stability and reliability.
Easier Maintenance: Smaller kernels are often easier to maintain and
update, leading to smoother operations.
Exploring Operating Systems: From Evolution to Security
2
7
Enhancing Operating System
Security
Patching Hardening
Regularly apply patches, hot-fixes, and Configure the operating system to
service packs provided by operating protect against security threats by
system vendors to fix bugs, security stripping down unnecessary services,
holes, and enhance system performance. disabling unused accounts, and applying
all relevant security updates.
Virus Scanning Host-Based Firewalls
Install a virus scanner on vulnerable Utilize built-in host-based firewalls in
operating systems like Windows and operating systems like Windows, Linux,
Linux, configuring it to scan high-risk files and UNIX to add an extra layer of
and directories to prevent malware security, protecting individual hosts from
infections. unwanted network traffic.
Exploring Operating Systems: From Evolution to Security
2
8
Hardening Operating Systems
Step 1: Step 4: Using
Step 2: Minimizing Step 3: Applying Step 5: Virus
Introduction to Configuration
Vulnerabilities Updates Scanning
Hardening Templates
Hardening an operating This process includes Applying patches, hot- Utilizing a hardened Virus scanning is essential for
vulnerable operating systems
system involves stripping down fixes, and service packs operating system
like Windows, Linux, and end-
configuring it step-by- unnecessary services and is crucial to keep the configuration template
user systems to detect and
step to enhance security. processes to minimize system secure and up-to- ensures consistency and
prevent malware.
vulnerabilities. date. optimal security across
Configuring virus scanners to
deployments.
scan high-risk files only can
improve system performance
and security.
Exploring Operating Systems: From Evolution to Security
2
9
Implementing Host-Based
Firewalls
Host-Based Firewalls
Host-Based Firewalls are software applications or hardware devices that
monitor and control incoming and outgoing network traffic based on
predetermined security rules.
They act as a barrier between a trusted internal network and untrusted
external networks, filtering traffic to prevent unauthorized access and
protect against cyber threats.
Host-Based Firewalls provide an additional layer of defense by inspecting
network packets at the application layer, offering granular control over
individual applications and processes.
These firewalls can be configured to block or allow specific network traffic
based on defined rules, enhancing the security posture of the host system.
Implementing Host-Based Firewalls is crucial for safeguarding sensitive data,
preventing unauthorized access, and mitigating potential security breaches.
Exploring Operating Systems: From Evolution to Security
3
0
User Account Limitations and Password Security
Implement User Account Enforce Strong Password Utilize Multi-Factor
Limitations Security Policies Authentication
Restrict access to sensitive information Regular password updates Add an extra layer of security to user
accounts
Restrict access to system settings Complexity requirements
Monitor and Log User Account Conduct Regular Security
Activities Audits
Detect any unauthorized access attempts Identify potential vulnerabilities
Address potential vulnerabilities in user
account management
Exploring Operating Systems: From Evolution to Security