You are on page 1of 9

School of Business Studies – Department Information and Communication Technology: Notes by Mr.

Sianga

CHAPTER THREE: INTRODUCTION TO OPERATING SYSTEMS


Software can be categorized into various types based on its functionality, purpose, and
how it interacts with the user and the system. Here are some common types of
software:

1. Application Software
Application software refers to programs and tools designed to perform specific tasks
and provide functionality to end-users. Unlike system software, which manages and
supports the overall computing environment, application software is developed for
users to accomplish particular goals and tasks. It spans a wide range of categories,
each tailored to meet specific user needs. Examples include Microsoft Office (Word,
Excel, PowerPoint), Web Browsers, and Google Workspace.

2. System Software
System software is a category of software that provides a foundational layer for
computer systems, enabling the execution and management of application software
and interacting directly with computer hardware. It includes several essential
components designed to ensure the proper functioning of the overall computing
environment

 Operating Systems: Control and manage hardware resources and provide


services to other software applications. Examples include Windows, macOS,
and Linux.
 Device Drivers: Facilitate communication between hardware devices and the
operating system.
 Utilities: Tools that help manage and maintain the computer system, such as
antivirus software, disk cleanup tools, and system optimization utilities.

An Operating System (OS) is a fundamental software component that serves as an


interface between computer hardware and the user. It is crucial system software that
manages and coordinates the activities of the computer system, providing a platform
for executing applications and ensuring efficient utilization of hardware resources.

1
School of Business Studies – Department Information and Communication Technology: Notes by Mr. Sianga

Functions of an Operating System


 Process Management: Process management is a critical aspect of an
operating system's functionality, involving the coordination and execution of
processes. A process is a program in execution, and the operating system is
responsible for managing these processes to ensure efficient utilization of
system resources and maintain a responsive and multitasking environment.
 Memory Management: Memory management is a crucial function of an
operating system that involves the efficient allocation and deallocation of
memory resources to processes. The goal is to ensure that each process has
access to the memory it needs for execution, prevent unauthorized access to
memory regions, and optimize overall system performance.
 File System Management: File system management is a vital component of
an operating system responsible for organizing, storing, and retrieving files on
storage devices. It provides a structured way to manage data, enabling users
and applications to interact with stored information efficiently.
 Device Management: Device management is a crucial aspect of operating
system functionality that involves the control and coordination of various
hardware devices connected to a computer system. The operating system
serves as an intermediary between application software and hardware devices,
facilitating communication, managing resources, and ensuring efficient device
utilization.
 Security and Protection: Security and protection are fundamental aspects of
an operating system's functionality, aimed at safeguarding the system, its
resources, and the data it processes from unauthorized access, malicious
activities, and potential threats. These measures are essential for maintaining
the integrity, confidentiality, and availability of information within a computing
environment.

2
School of Business Studies – Department Information and Communication Technology: Notes by Mr. Sianga

Types of Operating Systems

 Single-User Operating System: A single-user operating system, as the name


implies, is an operating system designed to support and serve the needs of a
single user at a time. These operating systems are primarily used on personal
computers, workstations, and devices where the computing environment is
dedicated to a single user.
 Multi-User Operating System: A multi-user operating system is designed to
support the simultaneous operation of multiple users on a computer system.
These operating systems enable multiple users to interact with the system
concurrently, each running their processes and applications. Multi-user
operating systems are commonly used in environments where resources are
shared among different users, such as servers, mainframes, and larger-scale
computing environments.
 Multi-Tasking Operating System: A multi-tasking operating system is
designed to allow multiple tasks or processes to run concurrently on a computer
system, giving the appearance that these tasks are being executed
simultaneously. This enables users to switch between different applications and
perform various tasks without having to wait for one task to complete before
starting another. Multi-tasking enhances the overall efficiency and
responsiveness of a computer system.
 Real-Time Operating System (RTOS): A Real-Time Operating System
(RTOS) is an operating system specifically designed to meet the stringent
requirements of real-time systems. Real-time systems are those in which the
correctness of the system depends not only on the logical result of computation
but also on the time at which the results are produced. RTOS is crucial in
applications where tasks must be completed within specific time constraints to
ensure reliable and predictable operation.
 Distributed Operating System: A Distributed Operating System (DOS) is an
operating system that runs on multiple machines and enables them to work
together as a single integrated computing system. In a distributed system,
resources such as processors, memory, and storage are shared across multiple
nodes, allowing for better scalability, fault tolerance, and resource utilization.

3
School of Business Studies – Department Information and Communication Technology: Notes by Mr. Sianga

Key Components of an OS

An operating system (OS) is a complex software system that manages and facilitates
communication between hardware and software components in a computer system.
The key components of an operating system work together to provide essential
services and functions. Here are the essential components of an operating system:

 Kernel: The kernel is the core component of an operating system, serving as


the bridge between the hardware and the software layers. It is responsible for
managing system resources and providing essential services to applications
and other parts of the operating system. The kernel operates in privileged
mode, allowing it direct access to the hardware and critical system functions.
The kernel is the backbone of the operating system, and its proper functioning
is crucial for the stability and performance of the entire system. It operates at
the lowest level of the software stack, directly interacting with hardware
components and providing a foundation for higher-level software layers and
applications.
 Shell: A shell is a command-line interface (CLI) or a graphical user interface
(GUI) that allows users to interact with the operating system by entering
commands. The shell acts as an intermediary between the user and the kernel,
interpreting user commands and executing them. There are two main types of
shells: command-line shells and graphical shells.
Shells are a fundamental part of the user experience in operating systems,
providing a means for users to interact with and control the system. They offer
flexibility, efficiency, and automation through both command-line and graphical
interfaces.

4
School of Business Studies – Department Information and Communication Technology: Notes by Mr. Sianga

Evolution of Operating Systems

The evolution of operating systems spans several decades, marked by significant


advancements in technology, changes in computing paradigms, and the development
of new functionalities. Here's an overview of the key phases in the evolution of
operating systems:

1940s - 1950s: Batch Processing Systems

Characteristics:
 Early computers operated using batch processing systems.
 Programs were submitted in batches, and jobs were processed sequentially.
 No direct interaction with users during program execution.

1950s - 1960s: Simple Operating Systems

Characteristics:

 Introduction of simple operating systems to manage hardware resources.


 Execution of multiple programs in memory using basic scheduling.
 Limited user interaction and command-line interfaces.

1960s - 1970s: Time-Sharing Systems

Characteristics:

 Time-sharing operating systems allow multiple users to interact with the


system simultaneously.
 Introduction of interactive user interfaces.
 IBM's OS/360 and Multics were notable examples.

1970s: Rise of Microcomputers and Personal Computers

Characteristics:

 The advent of microprocessors and personal computers.


 Operating systems like CP/M and early versions of MS-DOS for personal
computers.

5
School of Business Studies – Department Information and Communication Technology: Notes by Mr. Sianga

1980s: Graphical User Interfaces (GUIs)

Characteristics:

 GUIs were introduced, providing a visual interface with icons and windows.
 Apple's Macintosh System Software and Microsoft Windows gained popularity.
 Rise of networking with the development of TCP/IP protocols.

1990s: Client-Server Architecture and Networked Systems

Characteristics:

 Widespread adoption of client-server architecture.


 Networked systems became more prevalent.
 Development of Windows NT, Linux, and macOS.

Late 1990s - Early 2000s: Mobile Operating Systems

Characteristics:

 Emergence of mobile operating systems for smartphones.


 Android and iOS became dominant in the mobile ecosystem.

2000s - Present: Cloud Computing and Virtualization

Characteristics:

 Cloud computing gained prominence, with operating systems supporting


virtualization.
 Increased focus on security measures and features.
 Continued development of Linux distributions, Windows versions, and
macOS.

2010s - Present: Convergence of Technologies

Characteristics:

 Convergence of mobile, cloud, and desktop computing.


 Proliferation of containerization technologies (e.g., Docker).
 Advances in AI and machine learning integrated into operating systems.

6
School of Business Studies – Department Information and Communication Technology: Notes by Mr. Sianga

2020s - Onwards: Continued Advancements and Integration

Predicted Characteristics:

 Integration of AI-driven features for automation and personalization.


 Continued emphasis on security and privacy.
 Evolution of operating systems to support emerging technologies like edge
computing and quantum computing.

Throughout this evolution, operating systems have adapted to the changing needs of
users, businesses, and technological advancements. The focus has shifted from batch
processing to interactive user interfaces, networked systems, mobile computing, and
the integration of advanced technologies. Operating systems continue to play a central
role in shaping the computing landscape, providing a foundation for software
applications and services.

Importance of Operating Systems

 Facilitate efficient hardware utilization: One of the critical roles of an


operating system is to facilitate efficient hardware utilization. This involves
managing and optimizing the use of various hardware resources to ensure that
they are utilized effectively.
an operating system ensures that the hardware components of a computer
system are utilized optimally, leading to improved performance,
responsiveness, and overall efficiency. This efficient hardware utilization is
crucial for providing a seamless user experience and supporting the diverse
requirements of modern computing environments.
 Provide a user-friendly interface: Providing a user-friendly interface is a
crucial aspect of an operating system's design as it directly impacts the user
experience and accessibility. The user interface serves as the bridge between
the user and the complex functionalities of the computer system.
A user-friendly interface is essential for making computers accessible to a wide
range of users, regardless of their technical expertise. By incorporating
graphical elements, intuitive controls, and thoughtful design, operating systems
aim to simplify complex computing tasks and enhance the overall user
experience.

7
School of Business Studies – Department Information and Communication Technology: Notes by Mr. Sianga

 Ensure System Stability and Security: System stability and security are
paramount considerations for any operating system (OS) to ensure the reliable
and protected operation of a computer system.
By integrating these stability and security measures, operating systems aim to
provide users with a reliable and protected computing environment. Regular
updates, proactive security measures, and user education contribute to the
ongoing effort to mitigate potential risks and ensure the stability and security of
computer systems.
 Support the execution of various applications: Supporting the execution of
various applications is a fundamental function of operating systems. Operating
systems provide an environment in which software applications can run
efficiently and interact with the underlying hardware.
By providing these essential services and functionalities, operating systems
create a platform that enables diverse applications to run efficiently, ensuring a
seamless and responsive computing experience for users.

Conclusion

The goals of an operating system revolve around providing a convenient and efficient
computing environment for users and applications. Here's how these goals are
achieved:

1. Convenience:

 User-Friendly Interfaces: Designing intuitive graphical user interfaces (GUIs)


and command-line interfaces (CLIs) that are easy to navigate and understand.

 Application Accessibility: Ensuring that applications are easily accessible,


with features like a start menu, desktop icons, and a centralized location for
managing applications.

 Help and Documentation: Providing built-in help systems, tooltips, and


documentation to assist users in understanding and using the system
effectively.

 Automated Updates: Offering automated system updates to keep the


operating system and applications current without requiring significant user
intervention.

8
School of Business Studies – Department Information and Communication Technology: Notes by Mr. Sianga

2. Efficiency:

 Resource Optimization: Efficiently managing hardware resources, including


CPU, memory, and storage, to ensure optimal performance.

 Process Scheduling: Implementing intelligent process scheduling algorithms


to maximize CPU utilization and responsiveness.

 Memory Management: Allocating and deallocating memory efficiently to


prevent wastage and fragmentation.

 I/O Management: Optimizing input/output operations for efficient data transfer


between applications and peripherals.

 Power Management: Implementing power-saving mechanisms to optimize


energy consumption, particularly in portable devices.

 Security Measures: Implementing security features efficiently to protect the


system without causing excessive overhead.

You might also like