0% found this document useful (0 votes)
8 views44 pages

System Software

The document outlines the essential functions and components of an operating system (OS), including its role in managing hardware, providing user interfaces (CLI and GUI), and performing key tasks like memory and process management. It also discusses utilities such as virus checkers and backup software, as well as the advantages and disadvantages of using library routines and dynamic link libraries. Overall, the OS is depicted as a crucial software platform that enables efficient operation and interaction between users and computer hardware.

Uploaded by

mhd.ali2122
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views44 pages

System Software

The document outlines the essential functions and components of an operating system (OS), including its role in managing hardware, providing user interfaces (CLI and GUI), and performing key tasks like memory and process management. It also discusses utilities such as virus checkers and backup software, as well as the advantages and disadvantages of using library routines and dynamic link libraries. Overall, the OS is depicted as a crucial software platform that enables efficient operation and interaction between users and computer hardware.

Uploaded by

mhd.ali2122
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 44

System

Software
5.1 Operating System
The Von Neumann Architecture

• Foundation for Programs: An operating system (OS) is a software


platform that provides the necessary facilities for programs to run,
which benefits users by enabling the functionality of hardware
through software applications. (The OS is like the conductor of an
orchestra, ensuring each section comes together to produce
harmonious music, i.e., a fully functional system.)
The Von Neumann Architecture
Why Use an OS
• Essential for Hardware: Without an OS, computer hardware is
unusable as it lacks the software to perform tasks or communicate
with other devices. (Just as a car without a driver, the hardware
cannot operate on its own.)
The Von Neumann Architecture
Why Use an OS
• Essential for Hardware: Without an OS, computer hardware is
unusable as it lacks the software to perform tasks or communicate
with other devices. (Just as a car without a driver, the hardware
cannot operate on its own.)
• User-Hardware Interface: The OS acts as an interface and controls
communication between the user and the hardware, translating
user commands into actions the computer can execute. (It's a
translator and mediator between the user's needs and the
computer's language.)
The Von Neumann Architecture
Why Use an OS
• Software Platform: It provides a platform for software applications to
function, managing resources so that different software can run
efficiently. (Similar to a stage that hosts various performances, the
OS provides a space where applications can 'perform' their
functions.)
Command Line Interface (CLI)
• Users type in instructions to open or launch a program, requiring direct text-
based commands.
Command Line Interface (CLI)
• Users type in instructions to open or launch a program, requiring direct text-
based commands.
• There is direct communication with the computer system, with the user
providing specific commands that the computer follows. (Think of using
precise, scripted directions to navigate a city.)
Command Line Interface (CLI)
• Users type in instructions to open or launch a program, requiring direct text-
based commands.
• There is direct communication with the computer system, with the user
providing specific commands that the computer follows. (Think of using
precise, scripted directions to navigate a city.)
• Multiple instructions are often required to open or launch a program,
necessitating a sequence of text commands for operations. (Like following a
recipe, each step must be typed out and executed one by one.)
Graphical Uer Interface (GUI)
• Users interact with the computer system using graphical icons and a pointing
device like a mouse.
Graphical Uer Interface (GUI)
• Users interact with the computer system using graphical icons and a pointing
device like a mouse.
• The user does not need to know where applications are located within the
computer's file system to operate them. (Provides a user-friendly way of
interaction, like using symbols instead of complex language to operate a
machine.)
Graphical Uer Interface (GUI)
• Applications are launched by the user with simple actions like clicking or
tapping on an icon. (This intuitive approach is akin to pressing buttons on a
modern appliance to get it to work.)
Graphical Uer Interface (GUI)
• Applications are launched by the user with simple actions like clicking or
tapping on an icon. (This intuitive approach is akin to pressing buttons on a
modern appliance to get it to work.)
• Windows OS is an example of a GUI, illustrating how most modern operating
systems allow users to interact with their devices easily. (Windows provides a
visually oriented way to control the computer, making technology accessible
to a broader audience.)
Key Tasks
Memory Management
• Allocates memory to processes, ensuring each has the space it
needs to operate. (Like assigning seats to passengers on a plane.)
Key Tasks
Memory Management
• Allocates memory to processes, ensuring each has the space it
needs to operate. (Like assigning seats to passengers on a plane.)
• Ensures fair usage of memory across processes to prevent any
single application from monopolizing system resources. (Similar to
ensuring no single app can overuse shared facilities in a co-working
space.)
Key Tasks
Memory Management
• Allocates memory to processes, ensuring each has the space it
needs to operate. (Like assigning seats to passengers on a plane.)
• Ensures fair usage of memory across processes to prevent any
single application from monopolizing system resources. (Similar to
ensuring no single app can overuse shared facilities in a co-working
space.)
• Organizes memory by utilizing virtual memory techniques,
expanding the apparent memory capacity. (Comparable to using a
filing system to handle more paper documents than can physically
fit on a desk.)
Key Tasks
Memory Management
• Keeps processes separate, maintaining a boundary between them
to prevent data corruption or interference. (Acts as a partition
between activities for privacy and security.)
Key Tasks
Memory Management
• Keeps processes separate, maintaining a boundary between them
to prevent data corruption or interference. (Acts as a partition
between activities for privacy and security.)
• Releases memory when a process stops, reclaiming resources for
other applications. (Like a hotel room being cleaned and prepared
for the next guest after one checks out.)
Process Management
• Manages the scheduling of processes, determining the order and time each
process gets to use the CPU. (Similar to an event coordinator managing a
schedule.)
Process Management
• Manages the scheduling of processes, determining the order and time each
process gets to use the CPU. (Similar to an event coordinator managing a
schedule.)
• Enables multitasking, allowing users to run multiple applications
simultaneously. (Allows for cooking while listening to music, for example.)
Process Management
• Manages the scheduling of processes, determining the order and time each
process gets to use the CPU. (Similar to an event coordinator managing a
schedule.)
• Enables multitasking, allowing users to run multiple applications
simultaneously. (Allows for cooking while listening to music, for example.)
• Handles priorities, making sure important tasks get more CPU time as needed.
(Emergency services are given priority in traffic.)
Process Management
• Manages the scheduling of processes, determining the order and time each
process gets to use the CPU. (Similar to an event coordinator managing a
schedule.)
• Enables multitasking, allowing users to run multiple applications
simultaneously. (Allows for cooking while listening to music, for example.)
• Handles priorities, making sure important tasks get more CPU time as needed.
(Emergency services are given priority in traffic.)
• Allows processes to share information safely and efficiently. (Like passing
notes in a classroom without disturbing the lecture.)
Process Management
• Prevents interference between processes, ensuring they don't negatively affect
each other. (Similar to non-interference policies in shared workspaces.)
• Manages resources required by the process, like memory, input/output, etc.
(Allocates necessary tools and space for a worker to perform their job.)
UI
• Provides a means for users to communicate with hardware, making system
navigation easier. (Like a tour guide helping tourists understand a city's
layout.)
UI
• Provides a means for users to communicate with hardware, making system
navigation easier. (Like a tour guide helping tourists understand a city's
layout.)
• Facilitates data input from users and displays output results back to them.
(Functions as a two-way communication tool between the user and the
computer's operations.)
UI
• Provides a means for users to communicate with hardware, making system
navigation easier. (Like a tour guide helping tourists understand a city's
layout.)
• Facilitates data input from users and displays output results back to them.
(Functions as a two-way communication tool between the user and the
computer's operations.)
• Examples of user interfaces include the Command Line Interface (CLI) for
direct text commands and Graphical User Interface (GUI) for more visual
interactions with icons and pointers. (CLI is like using a text-based
command prompt, while GUI is akin to the interactive interface of modern
smartphones.)
Security
• Sets up user accounts to provide personalized and secure access to the system.
(Like issuing ID cards for access to a secured facility.)
Security
• Sets up user accounts to provide personalized and secure access to the system.
(Like issuing ID cards for access to a secured facility.)
• Manages access rights to ensure users can only access files and applications
appropriate to their permissions. (Similar to a security guard checking badges
before entry.)
Security
• Sets up user accounts to provide personalized and secure access to the system.
(Like issuing ID cards for access to a secured facility.)
• Manages access rights to ensure users can only access files and applications
appropriate to their permissions. (Similar to a security guard checking badges
before entry.)
• Checks usernames and passwords to authenticate users upon login. (Acts as a
bouncer verifying IDs at the entrance of a club.)
Security
• Sets up user accounts to provide personalized and secure access to the system.
(Like issuing ID cards for access to a secured facility.)
• Manages access rights to ensure users can only access files and applications
appropriate to their permissions. (Similar to a security guard checking badges
before entry.)
• Checks usernames and passwords to authenticate users upon login. (Acts as a
bouncer verifying IDs at the entrance of a club.)
• Implements automatic backups and system restore capabilities to safeguard
against data loss. (Like an insurance policy for digital information.
File Management
• Divides storage space into file allocation units, which are the smallest amount
of disk space that can be used to hold a file. (Similar to organizing a library
into sections and shelves for different genres of books.)
• Allocates specific space for files and maintains a directory structure for easy
navigation and retrieval. (Like a filing cabinet with labeled folders for different
categories of documents.)
File Management
• Specifies logical methods of file storage and provides file naming
conventions. (Sets rules for naming and organizing files, much like a librarian
cataloging books.)
• Controls file access and defines specific tasks that can be performed on a file,
such as open, delete, copy, etc. (Like permissions in a shared document
determining who can view or edit.
Printer Management
• Installs printer drivers to allow communication between the computer and the
printer. (Serves as the interpreter between the device and the output
equipment.)
• Sends data to the printer and handles error messages if issues arise during
printing. (Manages the print queue and troubleshoots like an office manager
overseeing a print shop.)
• Sends commands to the printer, effectively translating digital documents into
printed material. (Acts as a director converting a script into a play on stage.)
Interrupt Handling
• Identifies priorities for interrupts and manages them accordingly to
ensure system responsiveness. (Functions like an air traffic
controller managing the orderly flow of planes.)
• Saves data on power outage and ensures no critical information is
lost during unexpected shutdowns. (Acts as an emergency power
generator that kicks in during a power cut.)
• Loads the appropriate interrupt service routine to handle the
interrupt efficiently. (Dispatches the right service crew to deal with
specific emergencies.)
I/O Management
• Installs and manages the appropriate drivers to facilitate communication
between the computer and peripherals
Utilities
Hard Disk Formatter
• Prepares a hard disk for data storage by creating a file system.
• Divides the disk into partitions, allowing for different file systems or dedicated
spaces for multiple operating systems.
• Scans and marks bad sectors to prevent data corruption.
• (For instance, when installing a new hard drive or repurposing an old one, you
would use a disk formatter to get the drive ready for use.)
Utilities
Hard Disk Defragmenter
• Optimizes disk space by arranging files in a contiguous sequence, improving
read/write efficiency.
• Essential for hard disk maintenance, especially for systems that frequently
modify and delete files.
• (Example: A defragmenter can significantly speed up an older system that
has slowed down due to extensive fragmentation over time.)
Disk Content Analysis / Disk Repair
• Provides a health report of the disk, detailing how space is used and what
files take up the most room.
• Recovers data from sectors that are not completely damaged and attempts
to repair disk errors.
• (An example scenario could be after a system crash, using disk repair tools
to assess and fix any resulting disk errors.)
Virus Checker (Antivirus Software)
• Scans for known malware signatures and monitors behavior to detect new,
unknown threats.
• Can be set to automatically scan when new devices are connected or files are
downloaded.
• Deletes or neutralizes threats and provides reports on detected and resolved
issues.
• (For example, if a virus attempts to encrypt your files for ransom, the antivirus
software can detect and stop it before it causes harm.)
Backup Software
• Facilitates the safeguarding of important data by creating copies that can be
restored in the event of data loss.
• Can be configured to perform backups at regular intervals or in real-time as
files change.
• Offsite backup options protect against local disasters, such as fires or floods.
• (For example, backup software can be set up to save your work every hour to
a cloud service, ensuring that you never lose more than an hour's worth of
progress.)
File Compression Utility
• Reduces file sizes for storage efficiency and faster transmission over networks.
• Enables the creation of archives, which can bundle multiple files into a single
compressed file, often in ZIP or RAR format.
• (A practical example is compressing a large presentation to send via email,
ensuring it fits within the email provider's size limits.)
Library Routines

• Functions that are ready to use (like a calculator for math operations).
• Easily inserted into programs without changes (like a USB plug-and-play device).

Benefits
• Time-Saving: Reduces coding efforts (similar to using templates).
• Reliability: Broadly tested and trusted (like a certified safety equipment).
• Language Versatility: Adaptable to various programming languages (like multi-lingual
support in software).
• Complexity Management: Manages detailed tasks without user intervention (like a car's
automatic transmission).
• Code Simplification: Only the function names are needed (like calling a contact on speed dial).
• Auto-Update Feature: Library updates automatically apply (like app updates on a
smartphone).
Drawbacks
• Compatibility Issues: May not work with existing code seamlessly (like new software on old
operating systems).
• Testing: Not immune to bugs (as in first releases of software products).
• Specificity May not fully align with unique requirements (like one-size-fits-all clothing).
• Stability Upon Changes: Updates can introduce new issues (like system updates causing
compatibility problems).
Dynamic Link Libraries
• Shared Libraries: Code segments used by multiple applications
• Separation from Executable: Independent from the main executable file

Benefits
• Efficient File Size: Smaller executable files (like zip files).
• Memory Optimization: Loaded only when needed (like on-demand video streaming).
• Update Convenience: Updates without recompiling the main program Resource Sharing:
Single DLL for multiple applications (like a communal garden).
Drawbacks
• Runtime Dependency: Programs may fail without the DLL
• Software Requirements: Specific linking software is needed
• Error Management: Absence or corruption leads to errors (like missing pages in a manual).
• Security Concerns: Vulnerable to malicious changes (like a security flaw in a home alarm
system).

You might also like