Unit 2
Unit 2
HARDWARE AND
SOFTWARE
UNIT-2
I/O DEVICES
• An input/output (I/O) device is any hardware used by a
human operator or other systems to communicate with a
computer. As the name suggests, input/output devices are
capable of sending data (output) to a computer and
receiving data from a computer (input).
• Input devices allow users to interact with a computer by
providing data or commands. Some common input devices
include keyboards, mice, microphones, webcams, and
scanners.
• Because I/O device data is bi-directional, such devices are
usually categorized under storage or communications.
• Examples of I/O storage devices are CD/DVD-ROM drives,
USB flash drives and hard disk drives. Examples of
communication I/O devices are network adapters,
Bluetooth adapters/dongles and modems.
DEFINITION OF SOFTWARE
• The software can be best defined as a set of instructions,
technically referred to as programs, that perform
operations and specific tasks based on the commands of
the user.
• Every single task that a user intends to perform is
regulated by software. Made of binary language (ones and
zeroes), there is a variety of software for different tasks.
With that said, here’s everything about software that you
should know.
RELATIONSHIP B/W HARDWARE
AND SOFTWARE
• In order to complete any job/task and to produce meaningful output both
hardware and software are necessary and must work together.
• It is simply that hardware is idle without a software and software cannot be
utilized without a supporting hardware. Therefore, both hardware and software
are complementary to each other.
• Software is held in physical medium, maybe on disk storage unit, and is
composed of programs structure and data arranged in logical structures (not
physical structures).
• The major difference between the two is that different sets of software
applications may be used on a particular type of hardware configuration. Thus,
hardware expenses is a one time expense and software is a continuous
expense.
TYPES OF SOFTWARE
System Software
• It is software that constantly runs in the computer
background, maintaining the computer hardware
and computer's basic functionalities, including the
operating system, utility software, and interface.
• System software is not limited to the operating system.
They also include the basic I/O system procedures, the
boot program, assembler, computer device driver, etc.
• They are the first thing that gets loaded in the system's
memory wherever you turn on your computer. System
software is also known as "low-level software" because the
end-users do not operate them.
• The further classifications of system software are as follows:
Operating System- It is a group of software that handles
the execution of programs and offers general services for
the application that runs over the computer.
INTRODUCTION TO OPERATING
SYSTEM
• An operating system or OS is software installed on a
computer's hard drive that enables the
computer hardware to communicate and operate with the
computer software.
• Without a computer operating system, a computer and its
other software would be useless.
Core Functions of OS
• Managing hardware resources: An operating system
manages resources such as CPU, memory, and disk space, and
assigns these resources to running applications.
• Running applications: An operating system provides an
environment in which applications can run and interact with the
user.
• Providing a user interface: An operating system provides a
graphical user interface (GUI) that allows users to interact with
the computer.
MULTIPROGRAMMING
• A Multiprogramming Operating System runs
multiple programs on a single processor. If a
program has to wait for an I/O operation, other
programs utilize the CPU in the meantime. These
operating systems form an important and popular
class of operating systems. Some examples are
Linux distributions, Windows, IOS, etc.
MULTI TASKING
• A multitasking operating system is a logical extension of a
multiprogramming operating system. Through this system,
users can run multiple programs and tasks simultaneously.
• Without losing data, the operating system keeps track of
each job and allows you to switch between jobs without
allowing the data to be lost. All modern operating systems
have complete multitasking capabilities, so multiple
programs can run simultaneously without any interference.
MULTI THREADING
• Multithreading in OS allows a task to break into multiple
threads. In simple terms, a thread is a lightweight process
consuming lesser resource sharing than the process.
• In multi-threads, the same process or task can be done by the
number of threads, or we can say that there is more than one
thread to perform the task in multithreading. With the use of
multithreading, multitasking can be achieved.
MULTI PROCESSING
• Multiprocessing Operating System is the type of
Operating System that uses multiple processors to
operate within a single system.
• Multiple CPUs are connected to divide and execute a
job more quickly. After the task is finished, the output
from all Processors is compiled to provide a final result.
Jobs are required to share main memory and they may
often share other system resources.
TIME SHARING
• In a time-sharing operating system, each task uses the
CPU in such a way that the response time of the CPU is
minimized. Each task takes the same amount of time to
execute.
• The time-sharing operating system is different from a
multiprogramming operating system. In a
multiprogramming operating system, the main objective is
to maximize the use of the CPU. But in Time-sharing OS,
the main aim is to minimize the response time of the CPU.
Let’s take an example to understand how the time sharing operating
system work.
• Four processes P1, P2, P3, and P4 are running on the operating
system.
• Let’s assume we have a fixed quantum time for each process is 5
nanoseconds. Now, we will see how all the processes will execute.
• First, process P1 will be executed for 5 nanoseconds.
• After 5 nanoseconds of process P1 are completed, process P2 will be
executed for the next 5 nanoseconds.
• After 5 nanoseconds of process P2 are completed, process
P3 will be executed for the next 5 nanoseconds.
• After 5 nanoseconds of process P3 are completed, process
P4 will be executed for the next 5 nanoseconds.
• The above process will continue until all processes are
completed.
REAL TIME
• The real-time operating systems are used in real-
time systems where the time constraints are fixed
and followed strictly. This means that the time for
processing and responding is very small.
Moreover, the system should perform the given
task in a fixed time otherwise, it results in a
system failure.
• Response Time is the time within which the
system takes the input, processes the data, and
gives the results. Moreover, they are used in
systems like robots, missile launches, airplanes,
etc.
Types of RTOS