SlideShare a Scribd company logo
2
Most read
3
Most read
4
Most read
Prof. K. Adisesha (Ph.D.)
1 Software Concepts
Chapter-4
SOFTWARE CONCEPTS
Introduction
A computer system has three components viz.
o Hardware
o Software
o User
 Hardware: It consists of the physical components of a computer.
 Software: A set of instructions that tells the computer to perform an intended task.

Types of Software
Software is broadly classified into two categories namely,
o System Software
o Application Software

System Software
 System software is a computer program that controls the system hardware and interacts with
application software.
 System software is hardware dependent and not portable.
 System software provides a convenient environment for program development and
execution.
 Programming languages like assembly language/C/C++/Visual C++/Pascal are used to
develop the system software.
 System software is of three types:
o Language Translators
o Operating System
o Utilities Software

Application Software
 Application software that has been written to process performs a specific job.
 Application software is generally written in high level languages.
 It focus is on the application, not the computing system.
Prof. K. Adisesha (Ph.D.)
2 Software Concepts
 Application software is classified into two types:
o Application Specific
o General Purpose
 Application specific software is created to execute an exact task.
 It has a limited task. For example accounting software for maintaining accounts.
 General-purpose software is not limited to only one function.
 For example: Microsoft office (MS-Word, MS-Excel), Tally, Oracle etc.
Introduction to Computer Languages
 Programming Language is a set of rules called syntax which user has to follow, to instruct
the computer what operation are to be performed.
 Computer language are classified into two categories:
o Low-Level Languages
Machine level languages
Assembly languages
o High-Level Languages
General Purpose languages (Ex: BASIC, PASCAL, C)
Specific purpose languages (Ex: COBOL, FORTAN, C++)

Machine Level Language
 Machine level language is the fundamental language of a computer.
 It is written using binary numbers i.e. 0’s and 1’s.
 A program written in the machine level language is called Machine code.
 The instructions provided in machine language are directly understood by the computer and
converted into electrical signals to run the computer.
 For example a typical program in machine language to add two numbers:
ACTION STATEMENTS
Load the data
Add the contents
Store the results
Stop
0001 00110010
0100 10100101
1000 00101001
0000 00000000
 An instruction given in the machine language has two parts:
o OPCODE (Operation Code)
o Operand (Address/ Location)
 The first 4-bit represents Opcode denoting operation such as load, move, store etc.
 The last 8-bit represents the operand denoting the address.
 Advantages: It can be directly typed and executed and no compilation or translation is
requires.
 Disadvantage: These instructions are machine dependent and it is difficult to program,
modify and debug errors.

Prof. K. Adisesha (Ph.D.)
3 Software Concepts
Assembly Level Language:
 Assembly level language is a low-level programming language that allows a user to write
programs using letters, words and symbols called mnemonics, instead of the binary digits
used in machine level languages.
 A program written in the assembly level language is called Assembly code.
 For example a typical program in assembly language to add two numbers:
ACTION STATEMENTS
Load the data to accumulator
Add the contents of B to Accumulator
Store the results in location C
Print the results
Stop
STA
ADD B
STR C
PRT C
HLT
 However, a program in assembly language has to be converted to its equivalent machine
language to be executed on computer.
 The translator program that converts an assembly code into machine code is called an
assembler.
 Advantages: Mnemonic code are easy to remember, easy to understand, easy to modify and
debug.
 Disadvantage: These languages are the mnemonic are machine dependent and assembly
language programming takes longer to code.
High-level Languages
 A language designed to make programming easier through the use of familiar English words
and symbols.
 High-level languages used English like language, which are easier to learn and use.
 High-level languages are machine independent. Therefore, a program written for one
computer can be executed on different computers with no or only slight modifications.
 Some of the high-level languages are C, C++, JAVA, FORTRAN, QBASIC, and PASCAL.
 For example a typical program in high level language to add two numbers:
cin>>a>>b;
c = a + b;
cout<< “ Answer = “ << c;
 However a program in high-level language has to be converted to its equivalent machine
language to be executed on computer.
 The translator program that converts a high-level code into machine code is called a
compiler.

Advantage:
o HLL’s are machine independent.
o Easy to learn and understand.
o Easy to modify and debug the program.
Prof. K. Adisesha (Ph.D.)
4 Software Concepts

Disadvantage:
o HLL is slower in execution.
o HLL requires a compiler to convert source code to object code.
o HLL take more time to execute and require more memory.

Language Translators
 The translator translates the high-level language to low level language.
 There are three types of translators: Compilers, Interpreters, and Assemblers.
Assembler:
 Assembler is system software, which translates an assembly language program into its
machine language.
 It recognizes the mnemonics used in the assembly level languages and substitutes the
required machine code for each instruction.
 Example: TASM (Turbo Assembler), MASM (Microsoft Macro Assembler) etc.
Compilers:
 Compiler is system software that translates high-level language (source code) into the
machine level language (machine/object code).
 It reads the whole program and translates the entire program at once into a series of machine
level language instructions.
 Once compiled, the program normally is saved automatically and can be executed directly.
 Examples: C, C++.
Prof. K. Adisesha (Ph.D.)
5 Software Concepts
Interpreters:
 An Interpreter reads once a statement of a high-level language program at a time, translates it
into machine level language, and executes it immediately.
 It continues to read, translate and execute the statements one by one until it reaches the end
of the program. Therefore, it is slower than a compiler.
 The machine code produced by the interpreter is not saved and hence, to execute a statement
again, it has to be interpreted again.
 Example: BASIC, PROLOG

Linker and Loader:
 A linker is system software that links (combines) smaller programs to form a single
program.
 A source program written in high-level languages may contain a number of modules or
segments. To execute properly the modules are to be linked so that execution of the program
is sequential. This operation is performed by software called as the linker.
 A loader is system software that loads machine code of a program into the system
memory and prepares these programs for execution.
 Once an executable program is generated someone will have to load the program into the
main memory of the computer so that it can be executed. This operation is performed by
software called as the loader.

Utility Software
 Utilities are those helpful programs that assist the computer by performing helpful functions
like backing up disk, scanning/cleaning viruses etc.
 Utility software is generally called as Application oriented ready-made system programs.
 Some of the important utility software is Text editor, Backup utility, Disk Defragmenter,
Antivirus software.

Operating System (OS):
Prof. K. Adisesha (Ph.D.)
6 Software Concepts
 An operating system is a set of programs, which acts as an interface between the user and the
computer.
 The main system software is the operating systems, which starts up the computer and control
its operation.
 Operating system manages the resource, resolves conflicts’ and tries to optimize the
performance of the system.
 The user communicates with the computer through operating system commands and program
instructions.
 Operating System plays an important role in loading programs from disk into memory,
displaying message, translating program and in outputting the results.
 Some examples of operating system are: UNIX, LINUX, MS-DOS, and Microsoft Windows
such as Win 95, Win 98, Win 2000, Win XP, Win 7, Win 8, Android, Mac OS etc.

Functions of Operating System(OS):
Main functions of the operating system are as follows:
o Memory Management
o Process Management
o Device Management
o File Management
o Protection and Security
o User interface or Command interpreter.
Memory Management:
The activities of memory management handled by OS are:
o Allocate memory
o Free Memory
o Re-allocate memory to a program when a used block is freed
o Keep track of memory usage.

Process Management:
The activities of process management handled by OS are:
o Control access to shared resources like file, memory I/O and CPU
o Control execution of applications
o Create, execute and delete a process
o Cancel or resume a process
o Schedule a process
o Synchronization, communication and deadlock handling for process

Device Management:
The activities of device management task handled by OS are:
o Open, close and write device drivers.
o Communication, control and monitor the device drivers.


Prof. K. Adisesha (Ph.D.)
7 Software Concepts
File Management:
The activities of file management task handled by OS are:
o Create and delete both files and directories
o Provide access to files
o Allocate space for files
o Keep back-up of files
o Secure files

Protection and Security:
 OS protects the resource of system.
 User authentication, file attributes like read, write, encryption and back-up of data are used
by OS to provide basic protection.

User Interface or Command Interpreter:
 OS provides an interface between the user and the computer hardware.
 The user interface is a set of commands or a Graphical User Interface via which the user
interacts with the application and the hardware.

Types of Operating System(OS):
 The different types of operating system are:
o Single user Operating System
o Batch Operating System
o Multiprogramming Operating System
o Multitasking Operating System
o Multiuser Operating System
o Time sharing System (Online /Multiuser)
o Real time system
o Distributed Operating System
o Network Operating System
o Multithreading Operating System



Single User Operating System:
This OS allows only one user to share the system resource including the CPU.
These are mainly the operating system configured for the use of desktop PC and laptops.
DOS and Windows- 95, Win-98, Apple Macintosh etc are example.




Prof. K. Adisesha (Ph.D.)
8 Software Concepts
Batch Operating System:
 Batch is defined as a group of job with similar needs and similar resource requirements.
 The operating system that allows users to create batches and execute each batch
sequentially, processing all jobs of batch considering them as a single process is called
“Batch Operating system”
 It allows litter or no interaction between users and executing programs.
 This is well suited for applications with large computation time and no user interaction.
 Payroll, forecasting, statistical analysis are programs example for its usage.
 Advantages:
o User need not wait during its execution.
o It will function in FIFO (First In First Out) order.
 Disadvantages:
o Non-interactive mode of execution
o Offline debugging
 IBM System/360 Operating system is an example for Batch Operating system
 In DOS, we can emulate the batch processing using .BAT file.

Multiprogramming Operating System:
 Multiprogramming is the capability of CPU to execute two or more programs concurrently.
 Two or more programs are stored concurrently in primary storage, and the CPU moves from
one program to another, partially executing each in turn.
 Early computer system and many personal computers execute program in the order in which
it is read into the system. Only one program is executed at a time.

Prof. K. Adisesha (Ph.D.)
9 Software Concepts
Multitasking Operating System:
 Multitasking operating systems allow more than one program to run at a time.
 In gives you the perception of 2 or more tasks running at the same time. It does this by
dividing system resources amongst these tasks.
 Multitasking is usually implemented by code and data of several programs in memory
simultaneously and multiplexing processor and I/O device among them.
 Multitasking is also called context switching.
 Multitasking usually refers to a single user.
 Example: Windows 98

Multi-user Operating System:
 A multi-user operating system allows multiple users on different computers or terminal to
access a single system with one OS on it.
 It creates and maintains individual user environments, individual authentication and security
level privileges, provides per user resource usage accounting.
Time-Sharing Operating System:
Time-Sharing operating system allows many users to share the computer resource
simultaneously.

 Time sharing refers to the allocation of computer resource in time slots to several programs
simultaneously.
 Large CAD and text processing systems belong to timesharing OS.
 Most of the time-sharing operating systems adopted time slicing/ round robin scheduling
algorithm. Each user/process will receive a portion of the time slot.
 UNIX, Windows Server is the example for multiprogramming, multi-use and time sharing
systems.

Real-time Operating System:
 Real time systems refer to a computer and software systems that respond to events before the
events become obsolete.
 The primary objective of real-time systems is to provide quick event – response times and
thus meeting the scheduling deadlines.
 The main applications where real time systems are used include medical imaging systems,
industrial control systems, flight control and military application.
 Windows CE, Symbian, Linux OS are example for real-time systems.
Prof. K. Adisesha (Ph.D.)
10 Software Concepts
Distributed Operating System:
 A distributed operating system is a collection of autonomous computer systems capable of
communication and cooperation via the software and hardware interconnections.
 For example: if we have ‘N’ systems in a distributed environment then the distributed OS
helps us in balancing the load by sharing processors, I/O devices etc.
 The ATM centers of a bank are example of distributed operating system.

Network Operating System:
 A network operating system is a collection of software and associated protocols that allow a
set of autonomous computer which are interconnected by a computer network.
 It can be used in a convenient and cost-effective manner.
 In a network operating system the user are aware of the existence of multiple computers and
can log in to remote machines and copy files from one machine to another machine.
 Windows NT, windows server, LINUX are example.
Multithreaded Operating System:
 A thread is a sequence of instructions within a program.
 A program or process may have many threads, which share the same code section, data
section, and other OS resources.
 It provides many logical paths through the program to be executed simultaneously.
 Sun Solaris, Windows 2000, Multithreaded UNIX, and LINUX are examples.

Functional Features of Operating System(OS):
 There are two types of user interface:
o Command-Line User Interface (CUI)
o Graphical User Interface (GUI)

CUI Interface:
 CUI interface allows the user to interact with a computer through text terminal.
 It is a Non-graphical and text-based user interface.
 MS-DOS is an operating system, which provides a CUI.
 The commands must be given at the command prompt ( C:>)
Prof. K. Adisesha (Ph.D.)
11 Software Concepts
 Both input and output are character based, the interface is also known as Character User
Interface.
GUI Interface:
 The GUI was first introduced in 1984 by Apple with Macintosh.
 GUI is an interface where the commands are selected from menus and icons rather the typing
them from the keyboard.
 It allows user to click on the required icon, with the help of Mouse.
 Windows Operating System is the most popular OS based on GUI.
Difference between CUI and GUI:
CUI Interface GUI Interface
Command-line User Interface Graphical User Interface
The user must type the commands at command
prompt to interact with the computer
The user must click on icons, menus, dialog
boxes etc. to interact with the computer.
The user must remember the commands and
their parameters
The user need not remember any commands, as
it is available in the form of menus and icons
on monitor.
Mouse operation not available for DOS Mouse operation required to select the
commands.
____________________________________________________
CHAPTER 4 – SOFTWARE CONCEPTS BLUE PRINT
VSA (1 Marks) SA (2 Marks) LA (3 Marks) Essay (5 Marks) Total
-- 01 Question 01 Question -- 05 Marks

More Related Content

What's hot (20)

PPTX
Types of Operating System
Hemant Raj
 
PPTX
Introduction to Windows
Cha Mostierra
 
PPTX
Software and its Types
Muhammad Yousuf Ali
 
PPTX
DIGITAL COMPUTERS
devasishreddy22
 
PPTX
Compiler vs interpreter
Paras Patel
 
PPT
constants, variables and datatypes in C
Sahithi Naraparaju
 
PPTX
Disk operating system
Hasnahana Chetia
 
PPTX
Memory and its types
University of Gujrat (sialkot)
 
PPT
Computer languages 11
Muhammad Ramzan
 
PDF
Introduction To Computer
Abu Bakar Soomro
 
PPTX
Operating systems
vinothinisureshbabu
 
PPTX
Operating system presentation
ashanrajpar
 
PPTX
Types of operating system
Mohammad Alam
 
PPT
Programming
Leo Simon Anfone
 
PPTX
generation of programming language
lakshmi kumari neelapu
 
PPTX
Operating System PPT
Rajneesh Chaubey
 
PPT
Types of software
latifah2001
 
PPTX
Word processing
Sania Khalid
 
PPTX
Translators(Compiler, Assembler) and interpreter
baabtra.com - No. 1 supplier of quality freshers
 
PPTX
Algorithms and Flowcharts
Deva Singh
 
Types of Operating System
Hemant Raj
 
Introduction to Windows
Cha Mostierra
 
Software and its Types
Muhammad Yousuf Ali
 
DIGITAL COMPUTERS
devasishreddy22
 
Compiler vs interpreter
Paras Patel
 
constants, variables and datatypes in C
Sahithi Naraparaju
 
Disk operating system
Hasnahana Chetia
 
Memory and its types
University of Gujrat (sialkot)
 
Computer languages 11
Muhammad Ramzan
 
Introduction To Computer
Abu Bakar Soomro
 
Operating systems
vinothinisureshbabu
 
Operating system presentation
ashanrajpar
 
Types of operating system
Mohammad Alam
 
Programming
Leo Simon Anfone
 
generation of programming language
lakshmi kumari neelapu
 
Operating System PPT
Rajneesh Chaubey
 
Types of software
latifah2001
 
Word processing
Sania Khalid
 
Translators(Compiler, Assembler) and interpreter
baabtra.com - No. 1 supplier of quality freshers
 
Algorithms and Flowcharts
Deva Singh
 

Similar to Software Concepts Notes (20)

PDF
computer Unit 6
Aqeel Rehman
 
DOCX
PPS UNIT 1- R18.docx
Uzma1102
 
PPTX
Unit i (part2) b.sc
Hepsijeba
 
PPTX
Software and its Types use of software types
dheeraj658032
 
PDF
Software concepts ppt
Prof. Dr. K. Adisesha
 
PPTX
introductiontocomputerprogramming.pptx
HazardRhenz1
 
DOC
Richa garg itm
richagarg16
 
PPTX
1.Overview of Programming.pptx
Vishwas459764
 
PPTX
Programming Fundamental Slide No.1
Arslan Hussain
 
PPTX
Software and its types
Ahmad Hussain
 
DOC
Algorithm and flowchart(1)
Suneel Dogra
 
DOCX
Computer software and operating system
sonykhan3
 
PPTX
Introduction to system programming
sonalikharade3
 
PPTX
SOFTWARE
Hasannor
 
PDF
Introduction to Computer Programming (general background)
Chao-Lung Yang
 
PDF
AERO_PROGRAMMING_FOR_PROBLEM_SOLVING_LECTURE_NOTES.pdf
ssuserb3a23b
 
PPTX
introductiontocomputerprogramming-140713205433-phpapp02.pptx
ummeafruz
 
PDF
Unit2_1.pdf
JatinSharma586255
 
PPTX
Ppt 1
Mohit Saini
 
PPT
CISY 105 Chapter 1
Jackie Marshall
 
computer Unit 6
Aqeel Rehman
 
PPS UNIT 1- R18.docx
Uzma1102
 
Unit i (part2) b.sc
Hepsijeba
 
Software and its Types use of software types
dheeraj658032
 
Software concepts ppt
Prof. Dr. K. Adisesha
 
introductiontocomputerprogramming.pptx
HazardRhenz1
 
Richa garg itm
richagarg16
 
1.Overview of Programming.pptx
Vishwas459764
 
Programming Fundamental Slide No.1
Arslan Hussain
 
Software and its types
Ahmad Hussain
 
Algorithm and flowchart(1)
Suneel Dogra
 
Computer software and operating system
sonykhan3
 
Introduction to system programming
sonalikharade3
 
SOFTWARE
Hasannor
 
Introduction to Computer Programming (general background)
Chao-Lung Yang
 
AERO_PROGRAMMING_FOR_PROBLEM_SOLVING_LECTURE_NOTES.pdf
ssuserb3a23b
 
introductiontocomputerprogramming-140713205433-phpapp02.pptx
ummeafruz
 
Unit2_1.pdf
JatinSharma586255
 
CISY 105 Chapter 1
Jackie Marshall
 
Ad

More from Prof. Dr. K. Adisesha (20)

PDF
MACHINE LEARNING Notes by Dr. K. Adisesha
Prof. Dr. K. Adisesha
 
PDF
Probabilistic and Stochastic Models Unit-3-Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Genetic Algorithm in Machine Learning PPT by-Adi
Prof. Dr. K. Adisesha
 
PDF
Unsupervised Machine Learning PPT Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Supervised Machine Learning PPT by K. Adisesha
Prof. Dr. K. Adisesha
 
PDF
Introduction to Machine Learning PPT by K. Adisesha
Prof. Dr. K. Adisesha
 
PPSX
Design and Analysis of Algorithms ppt by K. Adi
Prof. Dr. K. Adisesha
 
PPSX
Data Structure using C by Dr. K Adisesha .ppsx
Prof. Dr. K. Adisesha
 
PDF
Operating System-4 "File Management" by Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Operating System-3 "Memory Management" by Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Operating System Concepts Part-1 by_Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Operating System-2_Process Managementby_Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Software Engineering notes by K. Adisesha.pdf
Prof. Dr. K. Adisesha
 
PDF
Software Engineering-Unit 1 by Adisesha.pdf
Prof. Dr. K. Adisesha
 
PDF
Software Engineering-Unit 2 "Requirement Engineering" by Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Software Engineering-Unit 3 "System Modelling" by Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Software Engineering-Unit 4 "Architectural Design" by Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Software Engineering-Unit 5 "Software Testing"by Adi.pdf
Prof. Dr. K. Adisesha
 
PDF
Computer Networks Notes by -Dr. K. Adisesha
Prof. Dr. K. Adisesha
 
PDF
CCN Unit-1&2 Data Communication &Networking by K. Adiaesha
Prof. Dr. K. Adisesha
 
MACHINE LEARNING Notes by Dr. K. Adisesha
Prof. Dr. K. Adisesha
 
Probabilistic and Stochastic Models Unit-3-Adi.pdf
Prof. Dr. K. Adisesha
 
Genetic Algorithm in Machine Learning PPT by-Adi
Prof. Dr. K. Adisesha
 
Unsupervised Machine Learning PPT Adi.pdf
Prof. Dr. K. Adisesha
 
Supervised Machine Learning PPT by K. Adisesha
Prof. Dr. K. Adisesha
 
Introduction to Machine Learning PPT by K. Adisesha
Prof. Dr. K. Adisesha
 
Design and Analysis of Algorithms ppt by K. Adi
Prof. Dr. K. Adisesha
 
Data Structure using C by Dr. K Adisesha .ppsx
Prof. Dr. K. Adisesha
 
Operating System-4 "File Management" by Adi.pdf
Prof. Dr. K. Adisesha
 
Operating System-3 "Memory Management" by Adi.pdf
Prof. Dr. K. Adisesha
 
Operating System Concepts Part-1 by_Adi.pdf
Prof. Dr. K. Adisesha
 
Operating System-2_Process Managementby_Adi.pdf
Prof. Dr. K. Adisesha
 
Software Engineering notes by K. Adisesha.pdf
Prof. Dr. K. Adisesha
 
Software Engineering-Unit 1 by Adisesha.pdf
Prof. Dr. K. Adisesha
 
Software Engineering-Unit 2 "Requirement Engineering" by Adi.pdf
Prof. Dr. K. Adisesha
 
Software Engineering-Unit 3 "System Modelling" by Adi.pdf
Prof. Dr. K. Adisesha
 
Software Engineering-Unit 4 "Architectural Design" by Adi.pdf
Prof. Dr. K. Adisesha
 
Software Engineering-Unit 5 "Software Testing"by Adi.pdf
Prof. Dr. K. Adisesha
 
Computer Networks Notes by -Dr. K. Adisesha
Prof. Dr. K. Adisesha
 
CCN Unit-1&2 Data Communication &Networking by K. Adiaesha
Prof. Dr. K. Adisesha
 
Ad

Recently uploaded (20)

PPTX
20250924 Navigating the Future: How to tell the difference between an emergen...
McGuinness Institute
 
PPTX
Unlock the Power of Cursor AI: MuleSoft Integrations
Veera Pallapu
 
PPTX
How to Track Skills & Contracts Using Odoo 18 Employee
Celine George
 
PPTX
Python-Application-in-Drug-Design by R D Jawarkar.pptx
Rahul Jawarkar
 
PPTX
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
DOCX
pgdei-UNIT -V Neurological Disorders & developmental disabilities
JELLA VISHNU DURGA PRASAD
 
PDF
EXCRETION-STRUCTURE OF NEPHRON,URINE FORMATION
raviralanaresh2
 
PPTX
Applications of matrices In Real Life_20250724_091307_0000.pptx
gehlotkrish03
 
PPTX
Rules and Regulations of Madhya Pradesh Library Part-I
SantoshKumarKori2
 
PDF
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
PPTX
INTESTINALPARASITES OR WORM INFESTATIONS.pptx
PRADEEP ABOTHU
 
PDF
Virat Kohli- the Pride of Indian cricket
kushpar147
 
PPTX
Sonnet 130_ My Mistress’ Eyes Are Nothing Like the Sun By William Shakespear...
DhatriParmar
 
PPTX
I INCLUDED THIS TOPIC IS INTELLIGENCE DEFINITION, MEANING, INDIVIDUAL DIFFERE...
parmarjuli1412
 
PPTX
How to Close Subscription in Odoo 18 - Odoo Slides
Celine George
 
PPTX
Applied-Statistics-1.pptx hardiba zalaaa
hardizala899
 
PDF
Tips for Writing the Research Title with Examples
Thelma Villaflores
 
PPTX
Digital Professionalism and Interpersonal Competence
rutvikgediya1
 
PDF
John Keats introduction and list of his important works
vatsalacpr
 
PPTX
Continental Accounting in Odoo 18 - Odoo Slides
Celine George
 
20250924 Navigating the Future: How to tell the difference between an emergen...
McGuinness Institute
 
Unlock the Power of Cursor AI: MuleSoft Integrations
Veera Pallapu
 
How to Track Skills & Contracts Using Odoo 18 Employee
Celine George
 
Python-Application-in-Drug-Design by R D Jawarkar.pptx
Rahul Jawarkar
 
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
pgdei-UNIT -V Neurological Disorders & developmental disabilities
JELLA VISHNU DURGA PRASAD
 
EXCRETION-STRUCTURE OF NEPHRON,URINE FORMATION
raviralanaresh2
 
Applications of matrices In Real Life_20250724_091307_0000.pptx
gehlotkrish03
 
Rules and Regulations of Madhya Pradesh Library Part-I
SantoshKumarKori2
 
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
INTESTINALPARASITES OR WORM INFESTATIONS.pptx
PRADEEP ABOTHU
 
Virat Kohli- the Pride of Indian cricket
kushpar147
 
Sonnet 130_ My Mistress’ Eyes Are Nothing Like the Sun By William Shakespear...
DhatriParmar
 
I INCLUDED THIS TOPIC IS INTELLIGENCE DEFINITION, MEANING, INDIVIDUAL DIFFERE...
parmarjuli1412
 
How to Close Subscription in Odoo 18 - Odoo Slides
Celine George
 
Applied-Statistics-1.pptx hardiba zalaaa
hardizala899
 
Tips for Writing the Research Title with Examples
Thelma Villaflores
 
Digital Professionalism and Interpersonal Competence
rutvikgediya1
 
John Keats introduction and list of his important works
vatsalacpr
 
Continental Accounting in Odoo 18 - Odoo Slides
Celine George
 

Software Concepts Notes

  • 1. Prof. K. Adisesha (Ph.D.) 1 Software Concepts Chapter-4 SOFTWARE CONCEPTS Introduction A computer system has three components viz. o Hardware o Software o User  Hardware: It consists of the physical components of a computer.  Software: A set of instructions that tells the computer to perform an intended task.  Types of Software Software is broadly classified into two categories namely, o System Software o Application Software  System Software  System software is a computer program that controls the system hardware and interacts with application software.  System software is hardware dependent and not portable.  System software provides a convenient environment for program development and execution.  Programming languages like assembly language/C/C++/Visual C++/Pascal are used to develop the system software.  System software is of three types: o Language Translators o Operating System o Utilities Software  Application Software  Application software that has been written to process performs a specific job.  Application software is generally written in high level languages.  It focus is on the application, not the computing system.
  • 2. Prof. K. Adisesha (Ph.D.) 2 Software Concepts  Application software is classified into two types: o Application Specific o General Purpose  Application specific software is created to execute an exact task.  It has a limited task. For example accounting software for maintaining accounts.  General-purpose software is not limited to only one function.  For example: Microsoft office (MS-Word, MS-Excel), Tally, Oracle etc. Introduction to Computer Languages  Programming Language is a set of rules called syntax which user has to follow, to instruct the computer what operation are to be performed.  Computer language are classified into two categories: o Low-Level Languages Machine level languages Assembly languages o High-Level Languages General Purpose languages (Ex: BASIC, PASCAL, C) Specific purpose languages (Ex: COBOL, FORTAN, C++)  Machine Level Language  Machine level language is the fundamental language of a computer.  It is written using binary numbers i.e. 0’s and 1’s.  A program written in the machine level language is called Machine code.  The instructions provided in machine language are directly understood by the computer and converted into electrical signals to run the computer.  For example a typical program in machine language to add two numbers: ACTION STATEMENTS Load the data Add the contents Store the results Stop 0001 00110010 0100 10100101 1000 00101001 0000 00000000  An instruction given in the machine language has two parts: o OPCODE (Operation Code) o Operand (Address/ Location)  The first 4-bit represents Opcode denoting operation such as load, move, store etc.  The last 8-bit represents the operand denoting the address.  Advantages: It can be directly typed and executed and no compilation or translation is requires.  Disadvantage: These instructions are machine dependent and it is difficult to program, modify and debug errors. 
  • 3. Prof. K. Adisesha (Ph.D.) 3 Software Concepts Assembly Level Language:  Assembly level language is a low-level programming language that allows a user to write programs using letters, words and symbols called mnemonics, instead of the binary digits used in machine level languages.  A program written in the assembly level language is called Assembly code.  For example a typical program in assembly language to add two numbers: ACTION STATEMENTS Load the data to accumulator Add the contents of B to Accumulator Store the results in location C Print the results Stop STA ADD B STR C PRT C HLT  However, a program in assembly language has to be converted to its equivalent machine language to be executed on computer.  The translator program that converts an assembly code into machine code is called an assembler.  Advantages: Mnemonic code are easy to remember, easy to understand, easy to modify and debug.  Disadvantage: These languages are the mnemonic are machine dependent and assembly language programming takes longer to code. High-level Languages  A language designed to make programming easier through the use of familiar English words and symbols.  High-level languages used English like language, which are easier to learn and use.  High-level languages are machine independent. Therefore, a program written for one computer can be executed on different computers with no or only slight modifications.  Some of the high-level languages are C, C++, JAVA, FORTRAN, QBASIC, and PASCAL.  For example a typical program in high level language to add two numbers: cin>>a>>b; c = a + b; cout<< “ Answer = “ << c;  However a program in high-level language has to be converted to its equivalent machine language to be executed on computer.  The translator program that converts a high-level code into machine code is called a compiler.  Advantage: o HLL’s are machine independent. o Easy to learn and understand. o Easy to modify and debug the program.
  • 4. Prof. K. Adisesha (Ph.D.) 4 Software Concepts  Disadvantage: o HLL is slower in execution. o HLL requires a compiler to convert source code to object code. o HLL take more time to execute and require more memory.  Language Translators  The translator translates the high-level language to low level language.  There are three types of translators: Compilers, Interpreters, and Assemblers. Assembler:  Assembler is system software, which translates an assembly language program into its machine language.  It recognizes the mnemonics used in the assembly level languages and substitutes the required machine code for each instruction.  Example: TASM (Turbo Assembler), MASM (Microsoft Macro Assembler) etc. Compilers:  Compiler is system software that translates high-level language (source code) into the machine level language (machine/object code).  It reads the whole program and translates the entire program at once into a series of machine level language instructions.  Once compiled, the program normally is saved automatically and can be executed directly.  Examples: C, C++.
  • 5. Prof. K. Adisesha (Ph.D.) 5 Software Concepts Interpreters:  An Interpreter reads once a statement of a high-level language program at a time, translates it into machine level language, and executes it immediately.  It continues to read, translate and execute the statements one by one until it reaches the end of the program. Therefore, it is slower than a compiler.  The machine code produced by the interpreter is not saved and hence, to execute a statement again, it has to be interpreted again.  Example: BASIC, PROLOG  Linker and Loader:  A linker is system software that links (combines) smaller programs to form a single program.  A source program written in high-level languages may contain a number of modules or segments. To execute properly the modules are to be linked so that execution of the program is sequential. This operation is performed by software called as the linker.  A loader is system software that loads machine code of a program into the system memory and prepares these programs for execution.  Once an executable program is generated someone will have to load the program into the main memory of the computer so that it can be executed. This operation is performed by software called as the loader.  Utility Software  Utilities are those helpful programs that assist the computer by performing helpful functions like backing up disk, scanning/cleaning viruses etc.  Utility software is generally called as Application oriented ready-made system programs.  Some of the important utility software is Text editor, Backup utility, Disk Defragmenter, Antivirus software.  Operating System (OS):
  • 6. Prof. K. Adisesha (Ph.D.) 6 Software Concepts  An operating system is a set of programs, which acts as an interface between the user and the computer.  The main system software is the operating systems, which starts up the computer and control its operation.  Operating system manages the resource, resolves conflicts’ and tries to optimize the performance of the system.  The user communicates with the computer through operating system commands and program instructions.  Operating System plays an important role in loading programs from disk into memory, displaying message, translating program and in outputting the results.  Some examples of operating system are: UNIX, LINUX, MS-DOS, and Microsoft Windows such as Win 95, Win 98, Win 2000, Win XP, Win 7, Win 8, Android, Mac OS etc.  Functions of Operating System(OS): Main functions of the operating system are as follows: o Memory Management o Process Management o Device Management o File Management o Protection and Security o User interface or Command interpreter. Memory Management: The activities of memory management handled by OS are: o Allocate memory o Free Memory o Re-allocate memory to a program when a used block is freed o Keep track of memory usage.  Process Management: The activities of process management handled by OS are: o Control access to shared resources like file, memory I/O and CPU o Control execution of applications o Create, execute and delete a process o Cancel or resume a process o Schedule a process o Synchronization, communication and deadlock handling for process  Device Management: The activities of device management task handled by OS are: o Open, close and write device drivers. o Communication, control and monitor the device drivers.  
  • 7. Prof. K. Adisesha (Ph.D.) 7 Software Concepts File Management: The activities of file management task handled by OS are: o Create and delete both files and directories o Provide access to files o Allocate space for files o Keep back-up of files o Secure files  Protection and Security:  OS protects the resource of system.  User authentication, file attributes like read, write, encryption and back-up of data are used by OS to provide basic protection.  User Interface or Command Interpreter:  OS provides an interface between the user and the computer hardware.  The user interface is a set of commands or a Graphical User Interface via which the user interacts with the application and the hardware.  Types of Operating System(OS):  The different types of operating system are: o Single user Operating System o Batch Operating System o Multiprogramming Operating System o Multitasking Operating System o Multiuser Operating System o Time sharing System (Online /Multiuser) o Real time system o Distributed Operating System o Network Operating System o Multithreading Operating System    Single User Operating System: This OS allows only one user to share the system resource including the CPU. These are mainly the operating system configured for the use of desktop PC and laptops. DOS and Windows- 95, Win-98, Apple Macintosh etc are example.    
  • 8. Prof. K. Adisesha (Ph.D.) 8 Software Concepts Batch Operating System:  Batch is defined as a group of job with similar needs and similar resource requirements.  The operating system that allows users to create batches and execute each batch sequentially, processing all jobs of batch considering them as a single process is called “Batch Operating system”  It allows litter or no interaction between users and executing programs.  This is well suited for applications with large computation time and no user interaction.  Payroll, forecasting, statistical analysis are programs example for its usage.  Advantages: o User need not wait during its execution. o It will function in FIFO (First In First Out) order.  Disadvantages: o Non-interactive mode of execution o Offline debugging  IBM System/360 Operating system is an example for Batch Operating system  In DOS, we can emulate the batch processing using .BAT file.  Multiprogramming Operating System:  Multiprogramming is the capability of CPU to execute two or more programs concurrently.  Two or more programs are stored concurrently in primary storage, and the CPU moves from one program to another, partially executing each in turn.  Early computer system and many personal computers execute program in the order in which it is read into the system. Only one program is executed at a time. 
  • 9. Prof. K. Adisesha (Ph.D.) 9 Software Concepts Multitasking Operating System:  Multitasking operating systems allow more than one program to run at a time.  In gives you the perception of 2 or more tasks running at the same time. It does this by dividing system resources amongst these tasks.  Multitasking is usually implemented by code and data of several programs in memory simultaneously and multiplexing processor and I/O device among them.  Multitasking is also called context switching.  Multitasking usually refers to a single user.  Example: Windows 98  Multi-user Operating System:  A multi-user operating system allows multiple users on different computers or terminal to access a single system with one OS on it.  It creates and maintains individual user environments, individual authentication and security level privileges, provides per user resource usage accounting. Time-Sharing Operating System: Time-Sharing operating system allows many users to share the computer resource simultaneously.   Time sharing refers to the allocation of computer resource in time slots to several programs simultaneously.  Large CAD and text processing systems belong to timesharing OS.  Most of the time-sharing operating systems adopted time slicing/ round robin scheduling algorithm. Each user/process will receive a portion of the time slot.  UNIX, Windows Server is the example for multiprogramming, multi-use and time sharing systems.  Real-time Operating System:  Real time systems refer to a computer and software systems that respond to events before the events become obsolete.  The primary objective of real-time systems is to provide quick event – response times and thus meeting the scheduling deadlines.  The main applications where real time systems are used include medical imaging systems, industrial control systems, flight control and military application.  Windows CE, Symbian, Linux OS are example for real-time systems.
  • 10. Prof. K. Adisesha (Ph.D.) 10 Software Concepts Distributed Operating System:  A distributed operating system is a collection of autonomous computer systems capable of communication and cooperation via the software and hardware interconnections.  For example: if we have ‘N’ systems in a distributed environment then the distributed OS helps us in balancing the load by sharing processors, I/O devices etc.  The ATM centers of a bank are example of distributed operating system.  Network Operating System:  A network operating system is a collection of software and associated protocols that allow a set of autonomous computer which are interconnected by a computer network.  It can be used in a convenient and cost-effective manner.  In a network operating system the user are aware of the existence of multiple computers and can log in to remote machines and copy files from one machine to another machine.  Windows NT, windows server, LINUX are example. Multithreaded Operating System:  A thread is a sequence of instructions within a program.  A program or process may have many threads, which share the same code section, data section, and other OS resources.  It provides many logical paths through the program to be executed simultaneously.  Sun Solaris, Windows 2000, Multithreaded UNIX, and LINUX are examples.  Functional Features of Operating System(OS):  There are two types of user interface: o Command-Line User Interface (CUI) o Graphical User Interface (GUI)  CUI Interface:  CUI interface allows the user to interact with a computer through text terminal.  It is a Non-graphical and text-based user interface.  MS-DOS is an operating system, which provides a CUI.  The commands must be given at the command prompt ( C:>)
  • 11. Prof. K. Adisesha (Ph.D.) 11 Software Concepts  Both input and output are character based, the interface is also known as Character User Interface. GUI Interface:  The GUI was first introduced in 1984 by Apple with Macintosh.  GUI is an interface where the commands are selected from menus and icons rather the typing them from the keyboard.  It allows user to click on the required icon, with the help of Mouse.  Windows Operating System is the most popular OS based on GUI. Difference between CUI and GUI: CUI Interface GUI Interface Command-line User Interface Graphical User Interface The user must type the commands at command prompt to interact with the computer The user must click on icons, menus, dialog boxes etc. to interact with the computer. The user must remember the commands and their parameters The user need not remember any commands, as it is available in the form of menus and icons on monitor. Mouse operation not available for DOS Mouse operation required to select the commands. ____________________________________________________ CHAPTER 4 – SOFTWARE CONCEPTS BLUE PRINT VSA (1 Marks) SA (2 Marks) LA (3 Marks) Essay (5 Marks) Total -- 01 Question 01 Question -- 05 Marks