Upload
ujjwol
View
222
Download
0
Embed Size (px)
Citation preview
8/19/2019 Computer Software and Operating System
1/43
CHAPTER 2
Computer Software
1
8/19/2019 Computer Software and Operating System
2/43
A computer system consists of two parts:
• Computer hardware, which constitutes the physical
components
• Computer software, which tells the hardware what to do
and how to do it
INTRODUCTION TO COMPUTER
SOFTWARE
2
8/19/2019 Computer Software and Operating System
3/43
COMPUTER SOFTWARE
3
Also known as programs. (Soul of Computer)
Collections of instruction for a computer.
Solve user problem and control different
operation.Computers requires program to function,
typically executing the program’s instruction in
CPU.
Software may be categorized along functionallines:-System software
Application software.
8/19/2019 Computer Software and Operating System
4/43
Computer games software
Driver software
Educational software
Media players and media development software
Productivity software
Operating systems
EXAMPLES OF COMPUTER
SOFTWARE
4
8/19/2019 Computer Software and Operating System
5/43
CLASSIFICATION OF SOFTWARE
5
Software
Application
SoftwareSystem software
Operating system Utility software
Device
Driver
Language
Translator
8/19/2019 Computer Software and Operating System
6/43
8/19/2019 Computer Software and Operating System
7/43
OPERATING SYSTEM (OS)
7
Interface between hardware and user.Responsible for the management andcoordination of activities.
Sharing of the resources of the computer thatacts as a host for computing application run onthe machine.
Application program makes the use of OS bymaking request for services.
Linux, Windows.
8/19/2019 Computer Software and Operating System
8/43
UTILITY SOFTWARE
It is also known as service program, service routine,
tools or utility routine.
It is computer software designed to help manage and
tune computer hardware, operating system or
application software by performing a single task or
small range of tasks.
Some utilities are integrated in major OS.
Examples: Disk storage Utilities (Disk Defragmenters,
Disk Checkers, Disk Cleaner, Disk Space Analyzer,
Disk Partition, file managers).
System Profiler.
Anti-virus software. etc.8
8/19/2019 Computer Software and Operating System
9/43
Disk Cleanup:
It can find files that are unnecessary to computer
operation or take up considerable amount of
space.
Disk cleanup helps the user to decide what to
delete when their hard disk is full.
Disk clean up targets:
Compression of old files.
Temporary internet files.
Downloaded program files.
Recycle BinSetup log files. etc.
9
8/19/2019 Computer Software and Operating System
10/43
Disk defragmenter:
It is a computer program in MS - Window designed to
increase access speed by rearranging files stored indisk to occupy contiguous storage location, a technique
commonly known as decrementing.
The purpose is to optimize the time it takes to read
and write files to/from the disk by minimizing head
travel time and maximizing transfer rate.
Antivirus software
Disk compression
10
8/19/2019 Computer Software and Operating System
11/43
Device DriversDevice Drivers is software that permits a computer
system to communicate with a device.We install device and its driver before using a device.
Eg. Modem driver, printer driver etc.
Language ProcessorsLanguage processors is software that converts a source
program into object program.
For example C-compiler converts a program written in
C language into object program (machine code).
11
8/19/2019 Computer Software and Operating System
12/43
APPLICATION SOFTWARE
12
It is a computer software designed to perform a
specific function directly for the user or in some case
for another application program.
They are designed to run on an operating system for
the fulfilling various purposes and functionalities.
Also called software applications, applications or
apps.
Productive software, Presentation software, graphics
software, CAD, specialized scientific application,
industry specific software.Can be Categorized intoTailored Software
Packaged Software
8/19/2019 Computer Software and Operating System
13/43
CONTD…
Tailored software is that software that are
specially designed and developed specific job or
task.
For e.g. school billing system, result processing
system, printing of certificates, etc.
Packaged Software is that software that is
generalized set of programs designed and
developed for the general purpose.
For e.g. Microsoft Office, Adobe Package, Tally,
Fact, etc.13
8/19/2019 Computer Software and Operating System
14/43
Classification of Computer Software
14
8/19/2019 Computer Software and Operating System
15/43
OPERATING SYSTEM
An operating system is a program that acts as an
interface between the software and the computer
hardware.
It is an integrated set of specialized programs
that are used to manage overall resources and
operations of the computer.
It is specialized software that controls and
monitors the execution of all other programs that
reside in the computer, including applicationprograms and other system software.
8/19/2019 Computer Software and Operating System
16/43
Relationship Between Hardware , System Software,
and Application Software
16
8/19/2019 Computer Software and Operating System
17/43
OPERATING SYSTEM
8/19/2019 Computer Software and Operating System
18/43
8/19/2019 Computer Software and Operating System
19/43
Third Generation (mid 1960 to mid 1970):
Multimode operating system is implemented in IBM
system/360 in 1964
The batch processing systems were developed to processmany jobs at a time to utilize maximum computer
resources to accomplish multiprogramming concepts
Fourth Generation (mid 1970 to present):
The design of large scale integration (LSI) had majorrole in development of advance level operating system
This generation is very efficient due to many fantastic
changes to control memory, files, input/output devices
and many peripherals.
The personal computer becomes available for all due tomicroprocessor and OS is dramatically spread over
market.
The MS-DOS and UNIX operating systems were most
dominant OS in the beginning of 4th
generation.
19
8/19/2019 Computer Software and Operating System
20/43
TYPES OF OPERATING SYSTEM
On basis of mode of useSingle user OSMulti-user OS
On basis of processing modeBatch processing
MultiprogrammingMultitaskingReal time systemDistributed OS
On basis of user interface
Command/ character based user interface (CUI)Graphical user interface (GUI)
8/19/2019 Computer Software and Operating System
21/43
ON THE BASIS OF MODE OF USE
Single user OS:It is usable by single user, at a time
It supports only one program at a time
These are used on general PC and other hand held devices
The MS-DOS, PC-DOS etc. are single user interface An example of a this kind of operating system would be
found on a mobile phone. There can only be one user using
the mobile and that person is only using one of its
applications at a time.
21
8/19/2019 Computer Software and Operating System
22/43
MULTI-USER OS:
OS that allows multiple user to access a computer
system concurrently is multi-user OSWhen more than one user is processing data at a same
time using one CPU is called multi-user or Time
sharing system
In this OS each operator has a time slice to accomplishhis/her process using processor
Time slice is small time allotted by OS to each operator
for utilization of processor
Its value is so small, so each operator feels thatprocessor is processing his/her job only
They are mostly found in supercomputer and
mainframe computer
Examples: UNIX, LINUX
22
8/19/2019 Computer Software and Operating System
23/43
ON THE BASIS OF
PROCESSING MODE
Batch Processing:
In Batch processing same type of jobs batch(BATCH- a
set of jobs with similar needs) together and execute at a
time.The OS was simple, its major task was to transfer
control from one job to the next.
The job was submitted to the computer operator in form
of punch cards. At some later time the output appeared.
Common Input devices were card readers.
Batch processing has been associated with mainframe
computers since the earliest days of electronic
computing in the 1950s23
8/19/2019 Computer Software and Operating System
24/43
8/19/2019 Computer Software and Operating System
25/43
MULTIPROGRAMMING
Multiprogramming is a technique to execute number ofprograms simultaneously by a single processor.
In Multiprogramming, number of processes reside in
main memory at a time.
The OS picks and begins to executes one of the jobs in themain memory.
If any Input/Output wait happened in a process, then
CPU switches from that job to another job.
Hence CPU in not idle at any time.
8/19/2019 Computer Software and Operating System
26/43
The main memory consists of 5 jobs at a time, the CPU
executes one by one.
Advantages:
Efficient memory utilization
Throughput increases
CPU is never idle, so performance increases.
8/19/2019 Computer Software and Operating System
27/43
MULTITASKING
Multitasking refers to term where multiple jobs areexecuted by the CPU simultaneously by switching
between them.
Operating System handles multitasking in the way that
it can handle multiple operations / executes multipleprograms at a time.
Multitasking Operating Systems are also known as Time-
sharing systems.
These Operating Systems were developed to provideinteractive use of a computer system at a reasonable cost.
A time-shared operating system uses concept of CPU
scheduling and multiprogramming to provide each user
with a small portion of a time-shared CPU.
8/19/2019 Computer Software and Operating System
28/43
8/19/2019 Computer Software and Operating System
29/43
MULTIPROCESSING
Multiprocessoroperating system refers to the
use of two or more central operating unit (CPU)
within a single computer system.
These multiple CPUs are in a close
communication sharing the computer bus,
memory and other peripheral devices.
These types of systems are used when very high
speed is required to process a large volume of
data.
8/19/2019 Computer Software and Operating System
30/43
8/19/2019 Computer Software and Operating System
31/43
REAL TIME OPERATING SYSTEM
There is also a Operating System which is known as
Real Time Processing System. In this OS Response
Time is already fixed.
It Means time to Display the Results after Possessing
has fixed by the Processor or CPU.Real Time System is used at those Places in which we
Requires higher and Timely Response
Eg: Hotel reservation, Attendance system.
There are two Types of Real Time System A Hard Real-Time System
A Soft Real Time System
8/19/2019 Computer Software and Operating System
32/43
8/19/2019 Computer Software and Operating System
33/43
Distributed systems provide the following
advantages:
1 Sharing of resources.
2 Reliability.
3 Communication.
4 Computation speedup.
8/19/2019 Computer Software and Operating System
34/43
FUNCTION OF OPERATING SYSTEM
Memory Management --keeps tracks of primary memoryi.e. what part of it is in use by whom, what part is not in use
etc. and allocates the memory when a process or program
requests it.
Processor Management --allocates the processor(CPU) to a
process and de-allocates processor when it is no longer
required.
Device Management --keeps track of all devices. This is
also called I/O controller that decides which process gets the
device, when, and for how much time.File Management --allocates and de-allocates the resources
and decides who gets the resources.
Security --prevents unauthorized access to programs and
data by means of passwords and similar other techniques.
8/19/2019 Computer Software and Operating System
35/43
Control over system performance --records delays
between request for a service and from the system.
Interaction with the operators --The interactionmay take place via the console of the computer in the
form of instructions. Operating System acknowledges
the same, does the corresponding action and informs the
operation by a display screen.
Error-detecting aids --Production of dumps, traces,
error messages and other debugging and error-detecting
methods.
Coordination between other software and users
Coordination and assignment of compilers, interpreters,
assemblers and other software to the various users of
the computer systems.
8/19/2019 Computer Software and Operating System
36/43
COMPILER• Acompiler is a special type of program that transforms the source
code written in a programming language (the source language) into
the machine language, which uses only two digits—0 and 1 (the target
language).
• The resultant code in 0s and 1s is known as the object code. The
object code is used to create an executable program.
• When executing , the compiler first parses (or analyzes) all of the
language statements syntactically one after the other and then, builds
the output code, making sure that statements that refer to other
statements are referred to correctly in the final code36
8/19/2019 Computer Software and Operating System
37/43
INTERPRETER
Like the compiler, theinterpreteralso executes
instructions written in a high-level language.
The interpreter translates the instructions into an
intermediate form, which it then executes.
An interpreter is a computer program that
directly executes, i.e. performs, instructions written in
a programming or scripting language, without
previously compiling them into a machine
language program.37
8/19/2019 Computer Software and Operating System
38/43
8/19/2019 Computer Software and Operating System
39/43
ASSEMBLER
An assembler is a program that takes basic computer
instructions and converts them into a pattern of bits
that the computer's processor can use to perform its
basic operations.
Some people call these instructions assemblerlanguage and others use the term assembly language.
39
8/19/2019 Computer Software and Operating System
40/43
LINKER AND LOADER Also calledlink editoror binder
A program that combines the object modules to form anexecutable program In case of a large program, programmers prefer to
break the code into smaller modules, as this simplifies
the programming task When the source code of all the modules have beenconverted into object code, all the modules need to be
put together, which is done by the linker Compiler automatically invokes the linker as the last
step in compiling a program Loader is a special type of program that copies
programs from a storage device to the main memory,
where they can be executed Most loaders are transparent to the users
40
8/19/2019 Computer Software and Operating System
41/43
8/19/2019 Computer Software and Operating System
42/43
Assemblers Assembly languages are more easily translated in to
machine code than high-level programs languages.
Each assembly language statement directly corresponds to
one or more machine instructions.
Another way to think about this is that assembly language
code is simply an abbreviated form of machine code.
Thus, to transform a program from an assembly language tomachine code all that must be done is that the instructions
must be converted from their mnemonic abbreviations into
their equivalent string of ones and zeroes.
This transformation process is known as assembling and is
accomplished by an assembler.
42
8/19/2019 Computer Software and Operating System
43/43
Compilers A compiler is a computer program that converts an entire
program written in a high-level language (called source
code) and translates it into an executable form (called object
code).
Interpreters An interpreter is a computer program that takes source
code and converts each line in succession. At each step it executes the high-level statement.
In other words, it doesn't have to examine the entire
program before it can begin executing code.
Thus, programs that are interpreted lend themselves to
interactive programming.
However, programs that are interpreted will generally run
much slower than programs that are compiled.43