0% found this document useful (0 votes)
10 views36 pages

1 Lecture

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)
10 views36 pages

1 Lecture

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/ 36

CSC 101

Introduction to Computing

Lecture 1

Hamza Arif
[email protected]

1
System Software
 System software is a type of computer program
designed to operate and control the computer
hardware and provide a platform for running
application software. Unlike application
software, which is designed to perform specific
tasks for the end user, system software plays a
more fundamental role in managing the
computer's resources and facilitating
communication between hardware and
software components.

2
Operating System (OS)
 An operating system (OS) is a software
program that serves as an interface between
computer hardware and the computer user. It
manages computer hardware and provides
services for computer programs. The operating
system is a fundamental component of a
computing system, and it plays a crucial role in
ensuring that various hardware and software
components work together.

3
 1. User Interface:
 Command-Line Interface (CLI): Allows users
to interact with the system by entering text
commands.
 Graphical User Interface (GUI): Provides a
visual way for users to interact with the
computer using icons, buttons, and menus

4
Operating Systems
 An operating system (OS) is a set of
programs containing instructions that work
together to coordinate all the activities
among computer hardware resources
Start and shut
Provide a user Manage Manage Coordinate
down a
interface programs memory tasks
computer

Establish an
Configure Monitor Provide Automatically
Internet
devices performance utilities update
connection

Control a Administer
network security

5
Operating System Functions (XP)
start the computer provide a user interface manage programs

administer
security

manage
memory

control a
network

provide file monitor establish an Internet schedule jobs and


management and performance connection configure devices
other utilities

6
1. Start and Shutdown a Computer
 The process of starting or restarting a computer is called booting
 When we turn on computer BIOS transfer from ROM to RAM
 Cold Boot
 Turning on a computer that has been powered off completely
 Warm Boot
 Using the operating system to restart a computer that is powered on

7
2. Providing a User Interface
 The user interface (UI)
in an operating system
(OS) is the means
through which users
interact with and control
the computer. It
provides a platform for
users to communicate
with the operating
system and its various
applications. There are
different types of user
interfaces, each with its
own characteristics.

8
Graphical User Interface
 Most common interface
 Windows, OS X, some versions of Linux and Unix
 Frees you from memorizing and typing text
commands
 Uses a mouse to control objects
 Uses a desktop metaphor
 Shortcuts open programs or documents
 Open documents have additional objects
 Task switching
 Dialog boxes allow directed input
9
Graphical User Interface

10
Command Line Interface
 Older interface
 DOS, Linux, UNIX
 With a command-line interface, a user uses the
keyboard to enter data and instructions
 User types commands at a prompt
 User must remember all commands
 Included in all GUIs

11
Command Line Interface

12
3. Manage Programs
 How an Operating system handles programs
directly affects your productivity

Single tasking
Single user and Foreground and
and
multiuser background
multitasking

Preemptive
Multiprocessing
multitasking

13
Single user/Single tasking OS
 Single user single tasking" refers to a computing
environment in which a system or user can only perform
one task at a time. In contrast, modern operating
systems and computing environments often support
multitasking, where multiple tasks or applications can
run concurrently.
 In a single user single tasking system, the computer or
user interface is designed to handle only one task at a
time. For example, early personal computers and some
embedded systems operated in a single user single
tasking mode. In such environments, users had to
complete one task before moving on to another.

14
Single user /single tasking
 MS-DOS and Palm OS
 Take up little space on disk
 Run on inexpensive computers

15
Single User Multitasking
 Working on two or
more programs that
reside in memory at
same time
 Foreground
contains program
you are using
 Background
contains programs
that are running but
are not in use

16
Real Time Operating Systems
 A real-time operating system (RTOS) is an
operating system that is designed to meet the
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. These systems have specific
timing constraints that must be met, and failure to
meet these constraints can lead to undesirable
consequences, such as system malfunction or
failure.

17
Single user Multi-tasking
 Single user multi-tasking" refers to a computing
environment in which a single user is able to perform
multiple tasks simultaneously on a computer or device.
In this setup, the operating system allows the user to run
and manage multiple applications or processes
concurrently. This is in contrast to single user single
tasking systems, where only one task can be performed
at a time.
 Task Switching: Users can switch between different
applications or tasks without having to complete one
before starting another. This is facilitated by the
operating system, which manages the scheduling and
execution of multiple tasks.
18
Single User Multitasking OS
 User performs many tasks at once
 Most common form of OS
 Windows XP and OS X
 Require expensive computers
 Tend to be complex

19
Mutli-user /Multi tasking
 "Multi-user multi-tasking" refers to a computing
environment where multiple users can interact with a
system concurrently, and each user is capable of
running multiple tasks simultaneously. This type of
system is common in networked environments and
is often found in large-scale computing scenarios
such as servers, mainframes, and certain types of
multi-user operating systems.

20
Multi-user /Multi Tasking
 User Isolation: Each user has their own set of
processes and resources, and these are isolated
from the processes of other users. This isolation
prevents one user's tasks from interfering with
another user's tasks.
 Task Scheduling: The operating system
schedules and manages the execution of tasks for
multiple users. This involves allocating CPU time,
memory, and other resources efficiently to ensure
that each user's tasks can progress without
significant delays.

21
Multi User / Multitasking OS
 Enable two or more users to run programs
simultaneously
 Many users connect to one computer
 Each user has a unique session
 UNIX, Linux, and VMS
 Maintenance can be easy
 Requires a powerful computer

22
Multi user/Multi tasking OS

23
4. Manage Memory
 Memory management optimizes the use of RAM

 Dynamic Allocation: Allocating memory to a


program or process at run time as needed.
 Static Allocation: Allocating a fixed amount of
memory to a program or process before execution.

24
5. Coordinate Tasks
 The operating system determines the order in
which tasks are processed

25
First come First Served
 schedules processes based on their arrival time. The process that
arrives first is the one that gets executed first.
 Here's how the FCFS scheduling algorithm works:
 Arrival of Processes: When processes arrive in the ready
queue, they are arranged in the order of their arrival.
 Execution: The process that arrives first is selected for
execution. It continues to execute until it completes its execution
or enters a waiting state.
 Next Process: Once the first process finishes, the process that
arrived next in the queue is selected for execution.
 Order of Execution: The order of execution is strictly based on
the arrival time of processes. The process that arrives first gets
executed first, followed by the process that arrives next, and so
on.
26
Shortest Job First
 Shortest Job First" (SJF) is a scheduling algorithm used in operating
systems to schedule processes for execution based on the time it take to
execute. The idea is to execute the process with the shortest total
processing time first. This algorithm minimizes the waiting time for
processes and aims to improve overall system performance.
 Here's how the Shortest Job First (SJF) scheduling algorithm works:
 Arrival of Processes: When processes arrive in the ready queue, their
total CPU burst time is known or estimated.
 Selection of Next Process: The process with the shortest total CPU
burst time is selected for execution. If two processes have the same burst
time, the one that arrived first is selected.
 Execution: The selected process is allowed to execute until it completes
its CPU burst.
 Next Process: Once the current process finishes, the next process with
the shortest burst time in the ready queue is selected.

27
Priority Algorithm
 The Priority Scheduling algorithm is a process scheduling algorithm used in
operating systems. In this algorithm, each process is assigned a priority, and
the process with the highest priority is selected for execution first. If two
processes have the same priority, other scheduling algorithms, such as First
Come First Serve (FCFS) or Round Robin, may be used to break the tie.
 Priority Assignment: Each process is assigned a priority value. The priority
can be determined based on various factors, such as the type of task, its
importance, deadline constraints, or historical behavior.
 Process Selection: The process with the highest priority is selected for
execution. If multiple processes have the same priority, additional criteria, like
arrival time or another scheduling algorithm, may be used to decide the order.
 Execution: The selected process is allowed to execute until it completes its
CPU burst or enters a waiting state (e.g., I/O request).
 Priority Update: After a certain time or event, the priorities of the processes
may be reevaluated and adjusted. This ensures that new processes or those
waiting for a long time are not always preempted by high-priority processes.

28
Round Robin Strategy
 The Round Robin (RR) scheduling algorithm is
a simple and widely used time-sharing
algorithm in operating systems. It is particularly
suitable for environments where multiple users
or processes share the CPU, and each is
allocated a fixed time slice or quantum. The
basic idea behind Round Robin is to cyclically
schedule processes, giving each one an equal
share of the CPU time.
 Here's how the Round Robin scheduling
algorithm typically works:
29
Round Robin Strategy
 Time Slices (Quantum): A fixed time slice is defined, known as the
time quantum or time slice. Each process is allowed to run for this
quantum before being preempted and moved to the back of the ready
queue.
 Process Queue: Processes are placed in a circular queue. The front
of the queue is the process that is currently running or the next one to
be executed.
 Execution: The process at the front of the queue is given the CPU for
its time quantum. If the process completes before the quantum expires,
it is moved to the back of the queue. If the quantum expires, the
process is preempted and moved to the back of the queue, and the
next process in the queue is given the CPU.
 Cycle Repeats: This process continues in a cyclic manner, giving
each process an opportunity to execute for a fixed time, and then
moving on to the next process in the queue.

30
6. Setting up an Internet Connection
 Operating systems typically provide a means to
establish Internet connections

31
7. Performance Monitor
 A performance monitor is a program that
assesses and reports information about various
computer resources and devices

32
Providing File Management
 Operating systems often provide users with the
capability of:

Searching for Viewing Securing a


Managing files
files images computer

Uninstalling Cleaning up Defragmenting Diagnosing


programs disks disks problems

Backing up Setting up
files and disks screen savers

33
Search Utility
 is a program that attempts to locate a file on
your computer based on criteria you specify

34
Operating System Functions
 Each User has a account
 A user name, or user ID, identifies a specific user
 A password is a private combination of characters
associated with the user name

35
Summary
 System software
 Operating systems
 Functions of Operating System
 Start and shut down
 Providing a user interface
 Managing programs
 Managing memory
 Coordinated tasks and Configure devices
 Internet connection
 Providing Utilities and automatic Update
36

You might also like