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

Slide 1 - Introduction To Operating Systems

An operating system (OS) acts as an interface between computer hardware and the user. It manages computer resources like memory, processes, files and devices. Common functions of an OS include memory management, file management, security and coordinating software applications. Popular desktop OS examples are Windows, macOS and Linux, while common mobile OS are Android and iOS. Modern OS are evolving with features like cloud integration, advanced security, automated updates and support for technologies like virtualization, IoT and AR/VR.

Uploaded by

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

Slide 1 - Introduction To Operating Systems

An operating system (OS) acts as an interface between computer hardware and the user. It manages computer resources like memory, processes, files and devices. Common functions of an OS include memory management, file management, security and coordinating software applications. Popular desktop OS examples are Windows, macOS and Linux, while common mobile OS are Android and iOS. Modern OS are evolving with features like cloud integration, advanced security, automated updates and support for technologies like virtualization, IoT and AR/VR.

Uploaded by

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

Introduction

to Operating Systems
What is an Operating System?

• An Operating System (OS) is a software that acts as an interface between


computer hardware components and the user.
• An operating system (OS), program that manages a computer's resources,
especially the allocation of those resources among other applications/programs.
• A program that acts as an intermediary between a user of a computer and the
computer hardware.

• An operating system (OS) manages all other applications and programs in a


computer, and it is loaded into the computer by a boot program. It enables
applications to interact with a computer’s hardware.
• Through a designated application programme interface, the
application programs request services from the operating system
(API). The kernel is the software that contains the operating system’s
core components.
• To run other programs, every computer must to have at least one
Operating system installed on it.

Operating system goals:


• Execute user programs and make it easier to solve user problems.
• Make the computer system convenient to use
• Use the computer hardware in an efficient manner
Operating System Examples

• Windows, Linux, Apple MacOS and Android are examples of


operating systems that enable the user to use the computer system.

• Application programs like MS Office, Notepad, Web browsers and


games on the computer or mobile phone.

• It is necessary to have at least one operating system installed in the


computer to run basic programs like browsers.
Popular/Common Operating Systems
Some of the most popular operating systems in use today include:
 Windows: Windows is the most popular desktop operating system,
used by over 1 billion users worldwide. It has a wide range of
features and applications, including the Office suite, gaming, and
productivity tools.

 macOS: macOS is the desktop operating system used by Apple


Mac computers. It is known for its clean, user-friendly interface and
is popular among creative professionals.
 Linux: Linux is an open-source operating system that is available for free and
can be customized to meet specific needs. It is used by developers, businesses,
and individuals who prefer an open-source, customizable operating system.

 iOS: iOS is the mobile operating system used by Apple iPhones and iPads. It is
known for its user-friendly interface, tight integration with Apple’s hardware and
software, and robust security features.

 Android: Android is the most popular mobile operating system, used by over 2
billion users worldwide. It is known for its open-source nature, customization
options, and compatibility with a wide range of devices.
Functions of Operating System
The functions of an operating system (OS) are diverse and crucial for the efficient
operation of a computer system. These functions include:
 Memory Management: The OS manages the main memory, allocating and
deallocating it as necessary for various processes. It ensures that different
processes can coexist in memory without interfering with each other.
 Processor Management/Scheduling: This involves managing the CPU’s time
and resources among the various processes. The OS selects which processes
receive CPU time and ensures efficient and fair use of the processor.
 Device Management: The OS regulates the connection and interaction with
various input and output devices through device drivers. It allocates and
deallocates devices to different processes and keeps track of device statuses.
 File Management: The OS manages files on a computer, handling tasks like creation, deletion,
transfer, and storage. It also maintains the integrity and security of the data within these files.
 Storage Management: The OS is responsible for storing and accessing files and directories,
optimizing the use of various storage devices, and ensuring data integrity and efficient retrieval.
 Security: Modern OS’s employ security measures like firewalls to protect against unauthorized
access and intrusion. They monitor system activity and block potential threats.
 Job Accounting and System Performance Control: The OS keeps track of all system activities,
including memory, resource usage, and errors. It also monitors performance indicators to ensure
efficient operation.
 Error Detection: The OS continually checks for system errors and threats, protecting the system
from potential damage and alerting users to take appropriate action.
 Coordination Between Software and Users: It coordinates hardware components and directs
various software applications, ensuring smooth operation and user interaction.
In addition to the traditional functions of an operating system (OS), there are several advanced and
evolving functions that modern OS’s are increasingly incorporating:
 Virtualization Support: Modern OSs often include support for virtualization, allowing multiple
virtual machines to run on a single physical machine. This facilitates efficient resource utilization
and isolation of different computing environments.
 Cloud Integration: Many operating systems now offer built-in cloud integration, enabling
seamless access to cloud storage and services, and facilitating data synchronization and backup
across devices.
 Energy Management: With the growing use of mobile devices, OSs are increasingly focused on
energy management to extend battery life. This includes optimizing the use of hardware resources
and managing background processes.
 Advanced Security Features: Modern OS’s are equipped with advanced security features such as
biometric authentication, encryption, advanced firewall and anti-malware systems, and continuous
security updates to protect against emerging threats.
 Automated Updates and Maintenance: OSs now often include automated system updates and
maintenance features, ensuring that the system stays up to date with the latest features and
security patches without requiring manual intervention.
 IoT Support: With the proliferation of Internet of Things (IoT) devices, operating systems are
being designed to support IoT applications, including managing and interacting with a vast array
of sensors and smart devices.
 AI and Machine Learning Integration: Incorporating AI and machine learning algorithms for
predictive analytics, personalization, and enhanced user interaction is becoming a key feature in
modern operating systems.
These additional functionalities reflect the evolving nature of operating systems as they adapt to new
technological advancements and user needs.
Features of Operating Systems
Some important features of operating systems include the following:
1. Provides a platform for running applications
2. Handles memory management and CPU scheduling
3. Provides file system abstraction
4. Provides networking support
5. Provides security features
6. Provides user interface
7. Provides utilities and system services
8. Supports application development
Types of Operating Systems
The types of operating systems (OS) have evolved significantly, adapting to technological
advancements and changing user needs. Here’s a summary of various types of operating systems:
 Batch OS: Traditionally used for executing a series of jobs without manual intervention. While
still relevant in specific contexts, modern computing has largely moved beyond batch processing
due to the rise of more interactive and real-time systems.
 Distributed OS: These systems manage a network of interconnected computers, distributing the
workload among them. They are becoming increasingly relevant with the rise of cloud
computing and edge computing. Distributed systems are critical for handling large-scale,
distributed applications efficiently.
 Multitasking OS: These systems, capable of running multiple tasks simultaneously, continue to
evolve. Modern multitasking OSs are more efficient at resource allocation, ensuring smoother
operation even with numerous applications running.
 Network OS: These are designed to manage networked computers, providing shared access to resources
like files and printers. With the proliferation of cloud services, network operating systems are increasingly
integrating cloud functionalities for enhanced connectivity and resource sharing.
 Real-Time OS (RTOS): RTOSs are crucial in scenarios where time-critical operations are necessary, such
as in embedded systems, robotics, and IoT devices. They ensure timely processing and responses, a key
requirement in autonomous systems and industrial automation.
 Mobile OS: Mobile operating systems have seen significant advancements, particularly in terms of
integration with cloud services, security features, and user interface enhancements. The focus has shifted
towards seamless synchronization across devices and platforms, providing a consistent user experience.
 IoT Integration: Modern operating systems are evolving to better manage and integrate with a growing
number of IoT devices. They are becoming central in controlling and monitoring these devices, offering
unified interfaces for diverse smart devices.
 AR/VR Support: There is an increased focus on supporting augmented reality (AR) and virtual reality
(VR) technologies. Future operating systems are expected to offer optimized environments for AR/VR
applications, with advanced capabilities in graphics rendering, motion tracking, and spatial audio.
 Enhanced Security and Privacy: With digital threats becoming more sophisticated, operating
systems are emphasizing stronger security measures and privacy controls. This includes
advanced encryption techniques, secure boot processes, and user-centric privacy features.
 Cross-Platform Compatibility: The trend is towards operating systems that provide seamless
integration and compatibility across various devices and platforms. This includes cloud storage
integration and universal app frameworks for a consistent multi-device experience.
 Edge Computing and Distributed Systems: As computing extends beyond traditional data
centers, operating systems are adapting to manage resources in distributed architectures,
including edge computing scenarios. This trend is geared towards faster and more responsive
applications.
 Machine Learning and Predictive Capabilities: Operating systems are increasingly leveraging
machine learning for predictive analytics and optimization. This includes intelligent power
management and personalized user experiences.
Single-tasking vs. multi-tasking operating systems:
Single-tasking operating systems allow only one program to run at a
time, while multi-tasking operating systems allow multiple programs
to run simultaneously.

Desktop vs. mobile operating systems:


Desktop operating systems, such as Windows and macOS, are designed
for use on desktop and laptop computers, while mobile operating
systems, such as iOS and Android, are designed for use on
smartphones and tablets.

Open-source vs. proprietary operating systems:


Open-source operating systems are developed by a community of
developers and are available for free, while proprietary operating
systems are developed by a single company and must be purchased.
Components of Operating System
 Shell
 Kernel
What is Shell?
Shell handles user interactions. It is the outermost layer of the OS and manages
the interaction between user and operating system by:
 Prompting the user to give input
 Interpreting the input for the operating system
 Handling the output from the operating system.
Shell provides a way to communicate with the OS by either taking input from the
user or the shell script. A shell script is a sequence of system commands that are
stored in a file.
What is Kernel?
The kernel is the core component of an operating system for a
computer (OS). All other components of the OS rely on the core to
supply them with essential services.

• It serves as the primary interface between the OS and the hardware


and aids in the control of devices, networking, file systems, and
process and memory management.
Functions of kernel
The kernel is the core component of an operating system which acts as an
interface between applications and the data, that is processed at the hardware level.

• When an OS is loaded into memory, the kernel is loaded first and remains in
memory until the OS is shut down. After that, the kernel provides and manages
the computer resources and allows other programs to run and use these
resources.

• The kernel also sets up the memory address space for applications, loads the
files with application code into memory, and sets up the execution stack for
programs.
The kernel is responsible for performing the following tasks:
 Input-Output management
 Memory Management
 Process Management for application execution.
 Device Management
 System calls control
Types of Kernel
Linus Torvalds introduced the concept of a monolithic kernel in 1991 as a part of
the Linux kernel. A monolithic kernel is a single large program that contains all
operating system components. However, the Linux kernel evolved over the years
and now consists of different types of kernels, as listed below.

1. Monolithic Kernel - A monolithic kernel is a single large program that


contains all operating system components. The entire kernel executes in the
processor’s privileged mode and provides full access to the system’s hardware.
Monolithic kernels are faster than microkernels because they do not have the
overhead of message passing. This type of kernel is generally used in embedded
systems and real-time operating systems.
2. Microkernel - A microkernel is a kernel that contains only the
essential components required for the basic functioning of the
operating system. All other components are removed from the
kernel and implemented as user-space processes.

The microkernel approach provides better modularity, flexibility,


and extensibility. It is also more stable and secure than monolithic
kernels.
3. Hybrid Kernel A hybrid kernel is a kernel that combines the best
features of both monolithic kernels and microkernels. It contains a
small microkernel that provides the essential components for the basic
functioning of the OS. The remaining components are implemented as
user-space processes or as loadable kernel modules.

This approach provides the best of both worlds, namely, the


performance of monolithic kernels and the modularity of microkernels.
4. Exokernel An exokernel is a kernel that provides the bare
minimum components required for the basic functioning of the
operating system. All other components are removed from the kernel
and implemented as user-space processes.

The exokernel approach provides the best possible performance


because there is no kernel overhead. However, it is also the most
difficult to implement and is not widely used.
Types of operating systems
32-bit OS versus 64-bit OS
Parameter 32-Bit OS 64-Bit OS
In contrast, the 64 bit OS
The 32 bit OS can store and has a larger data handling
manage less data than the capacity than the 32 bit OS.
64 bit OS, as its name
would imply.
Data and Storage It addresses a maximum of It indicates that a total of
4,294,967,296 bytes (4 GB) 264 memory addresses, or
of RAM in more detail. 18 quintillion gigabytes of
RAM, can be addressed.
A 32-bit processor system A 64-bit processor system
Compatibility of System will run only on 32-bit OS can run either a 32-bit or
and not on 64 bit OS. 64-bit OS

Application Support The 32-bit OS support The 64-bit OS do not


applications with no hassle. support applications.
Performance of 32- bit OS Higher performance than
Performance
is less efficient. the 32-bit processor.
These support Windows XP
These support Windows 7,
Professional, Windows 7,
Windows XP, Windows
Systems Available Windows 8, Windows 10,
Vista, Windows 8, and
Windows Vista, Linux, and
Linux.
Mac OS X.
Choosing the Right Operating System

When choosing an operating system, there are several factors to consider, including:

 Cost: Some operating systems, such as Linux, are free, while others, such as
Windows and macOS, must be purchased.

 Compatibility: Some software and hardware may only work with certain
operating systems, so choosing an operating system compatible with your needs
is important.
 Ease of use: Some operating systems, such as macOS and iOS, are
known for their user-friendly interfaces, while others, such as Linux,
may have a steeper learning curve.

 Security: Some operating systems, such as macOS and iOS, are


known for their robust security features, while others, such as
Windows, may be more vulnerable to security threats.
Operating System Generations
Operating systems have evolved over time through different generations, each marked by distinct
characteristics and advancements. Let us explore these generations along with real-time examples:
1. First Generation:
 Time Period: 1940s to early 1950s
 Characteristics: Vacuum tubes and machine language programming.
 Example: ENIAC (Electronic Numerical Integrator and Computer) – One of the earliest
computers that used vacuum tubes for calculations.
2. Second Generation:
 Time Period: Late 1950s to mid-1960s
 Characteristics: Transistors and assembly language programming.
 Example: IBM 1401 – Used transistors, enabling faster and more reliable processing than vacuum
tubes.
3. Third Generation:
 Time Period: Mid-1960s to mid-1970s
 Characteristics: Integrated circuits (ICs) and high-level programming languages.
 Example: IBM System/360 – Introduced a family of computers using compatible software and peripheral
devices.
4. Fourth Generation:
 Time Period: Late 1970s to 1990s
 Characteristics: Microprocessors, personal computers, and graphical user interfaces (GUI).
 Example: Apple Macintosh – Introduced GUI and mouse-driven interface, making computers more user-
friendly.
5. Fifth Generation:
 Time Period: 1990s to present (continuing)
 Characteristics: Artificial Intelligence (AI), natural language processing, and parallel processing.
 Example: IBM’s Deep Blue – Defeated world chess champion Garry Kasparov in 1997, showcasing the
power of AI in complex decision-making.
6. Sixth Generation (Speculative):
 Characteristics: Advanced AI, quantum computing (utilizes quantum mechanics
to solve complex problems faster than on classical computers), brain-computer
interfaces.
 Example: Quantum computers being developed by companies like IBM and
Google, potentially revolutionizing complex calculations.
7. Future Generations (Hypothetical):
 Characteristics: Even more advanced AI, integration with human cognition, new
computing paradigms.
 Example: A future generation could involve computers that seamlessly interface
with the human brain, enabling direct thought-based interactions.
These generations demonstrate how operating systems have evolved from basic
machine-level instructions to sophisticated systems that can handle complex tasks
and interactions with users. Each generation builds upon the achievements of the
previous one, incorporating new technologies and capabilities.

Conclusion
As the need for technology grows day by day in the coming days and as younger
generations grow up and join the workforce, good and efficient operating systems
will be the topmost priority of every business setting.
Practical Session

How to install Windows on a hard drive

1.Insert the Windows disc into the CD-ROM/DVD drive/ USB flash drive.
2.Power down the computer.
3.Mount and connect the hard drive.
4.Power up the computer.
5.Choose language and region and then to Install Operating System.
6.Follow the on-screen prompts.
7.On the Install Windows page, enter your language and other preferences,
and click Next.
8.Click on Install Windows and follow on-screen prompts.
9.During the installation check if the drive listed as unallocated with the
respective capacity listed (see example), or if the drive is partitioned, when
selecting the partition to install Windows, make sure it has the required
capacity to proceed with proper installation.

10.If you want to delete a partition, Click on Drive options (advanced).


11.Highlight the partition you want to delete, click on Delete and on Next,
when a prompt message appears click OK.

12.At this point the partition will show as Unallocated Space and is ready to
proceed with Windows installation.
How to install an application program

Installing from a CD-ROM


From the mid-1990s through the late 2000s, the most common way to
get new software was to purchase a CD-ROM. You could then insert
the disc, and the computer would walk you through the installation.

Now, almost all software has moved away from this model. Many
new computers no longer include a CD-ROM for this reason.
However, if you do need to install software from a CD-ROM, simply
insert the disc into your computer, then follow the instructions.
Installing software from the Web

You can follow the steps below to install an application from an .exe
file.
1.Locate and download an .exe file.
2.Locate and double-click the .exe file. (It will usually be in your
Downloads folder.)
3.A dialog box will appear. Follow the instructions to install the
software.
4.The software will be installed.

You might also like