SlideShare a Scribd company logo
Fundamentals of Computer
Softwares
Prepared by:
Neeraj Sharma (A.P, SOET)
Why Software?
• Computer Hardware is extremely fast but is
not intelligence. We need to tell the
computer hardware precisely what to do.
• So any hardware device needs user
instructions to function.
• A set of instructions that achieve a single
outcome are called program or procedure.
• Many programs functioning together to do a
task make a software.
• For example, a word-processing software
enables the user to create, edit and save
documents. A web browser enables the
user to view and share web pages and
multimedia files. There are three (two)
categories of software −
– System Software
– Application Software
– Utility Software
System Software
• Software required to run the hardware parts of the computer and other application software are
called system software.
• System software acts as interface between hardware and user applications. An interface is
needed because hardware devices (or machines) and humans speak in different languages.
• Machines understand only binary language i.e. 0 (absence of electric signal/Low Voltage) and 1
(presence of electric signal/High Voltage) while humans speak in English, French, German,
Tamil, Hindi and many other languages.
• English is the pre-dominant language of interacting with computers. Software is required to
convert all human instructions into machine understandable instructions. And this is exactly
what system software does.
• Based on its function, system software is of three types −
– Operating System
– Language Processor
– Device Drivers
System Software
• OS is the first software to be loaded into computer memory when the computer is switched on
and this is called booting.
• OS manages a computer’s basic functions like storing data in memory, retrieving files from
storage devices, scheduling tasks based on priority, etc.
System Software
• Language Processor converts all user instructions into machine understandable language.
When we talk of human machine interactions, languages are of three types −
– Machine-level language: This language is nothing but a string of 0s and 1s that the
machines can understand. It is completely machine dependent.
– Assembly-level language: This language introduces a layer of abstraction by
defining mnemonics. Mnemonics are English like words or symbols used to denote a
long string of 0s and 1s. For example, the word “READ” can be defined to mean that
computer has to retrieve data from the memory. The complete instruction will also tell the
memory address. Assembly level language is Machine Dependent (ISA).
– High level language: This language uses English like statements and is completely
independent of machines. Programs written using high level languages are easy to create,
read and understand.
System Software
• Program written in high level programming languages like Java, C++, etc. is called source
code. Set of instructions in machine readable form is called object code or machine
code. System software that converts source code to object code is called language
processor. There are three types of language interpreters−
– Assembler − Converts assembly level program into machine level program.
– Interpreter − Converts high level programs into machine level program line by line.
– Compiler − Converts high level programs into machine level programs at one go rather
than line by line.
• System software that controls and monitors functioning of a specific device on computer is
called device driver.
• Each device like printer, scanner, microphone, speaker, etc. that needs to be attached
externally to the system has a specific driver associated with it.
• When you attach a new device, you need to install its driver so that the OS knows how it needs
to be managed.
System Software
• The advantage of using an interpreter is that
they are very easy to write and they do not
require a large memory space.
• However, there is a major disadvantage in using
interpreters, i.e., interpreted programs take a
long time in executing.
• To overcome this disadvantage, especially for
large programs, Compilers were developed.
Application Software
• Application software are very specialized in their function and approach to solving a
problem.
• So a spreadsheet software can only do operations with numbers and nothing else.
• A hospital management software will manage hospital activities and nothing else. Here
are some commonly used application software −
– Word processing
– Spreadsheet
– Presentation
– Database management
– Multimedia tools
Utility Software
• Application software that assist system software in doing their work is called Utility Software.
• Thus utility software is actually a cross between system software and application software.
Examples of utility software include −
– Antivirus software
– Disk management tools
– File management tools
– Compression tools
– Backup tools
Open System Software
• A software whose source code is freely distributed with a license to study, change and further
distributed to anyone for any purpose is called open source software.
• Open source software is generally a team effort where dedicated programmers improve upon
the source code and share the changes within the community.
• Open source software provides these advantages to the users due to its thriving communities −
– Security, Affordability, Transparent, Interoperable on multiple platforms, Flexible due to
customizations, Localization is possible
• Freeware: A software that is available free of cost for use and distribution but cannot be
modified as its source code is not available is called freeware. Examples of freeware are
Google Chrome, Adobe Acrobat PDF Reader, Skype, etc.
• Shareware: A software that is initially free and can be distributed to others as well, but needs
to be paid for after a stipulated period of time is called shareware. Its source code is also not
available and hence cannot be modified.
Proprietary Software
• Software that can be used only by obtaining license from its developer after paying for it is
called proprietary software. An individual or a company can own such proprietary software. Its
source code is often closely guarded and it can have major restrictions like −
– No further distribution
– Number of users that can use it
– Type of computer it can be installed on, example multitasking or single user, etc.
• For example, Microsoft Windows is a proprietary operating software that comes in many
editions for different types of clients like single-user, multi-user, professional, etc.
Software Development and Platform Dependency
• Microprocessors understand a fairly limited set of instructions which are to be represented in
Binary.
• It is very tedious to represent everything in binary form so High Level Programing Languages
were created to ease the programing complexity.
• Most of these Languages are very close to Human Languages (Spoken Languages) but are
most structured, precise, and unambiguous.
• Just like multiple Human Languages exists there are many programing languages like C, C++,
Java, Python, C#, C#.Net, Visual Basic, Pearl etc.
• A Computer Platform is a specific combination of a Microprocessor family and Operating
System. For Ex: Wintel Platform, Macintosh Platform.
• Platform are important because Application Software are Platform dependent and tailored to a
particular platform.
• This is because different operating systems manages resources in different ways and different
microprocessors have different set of machine level instructions.
Office Tools
• Application software that assist users in regular office jobs like creating, updating and
maintaining documents, handling large amounts of data, creating presentations, scheduling,
etc. are called office tools. Using office tools saves time and effort and lots of repetitive tasks
can be done easily. Some of the software that do this are −
– Word processors
– Spreadsheets
– Database systems
– Presentation software
– E-mail tools
Word Processor
• A software for creating, storing and manipulating text documents is called word processor.
Some common word processors are MS-Word, WordPad, WordPerfect, Google docs, etc.
• A word processor allows you to −
– Create, save and edit documents.
– Format text properties like font, alignment, font color, background color, etc.
– Check spelling and grammar.
– Add images.
– Add header and footer, set page margins and insert watermarks.
Spreadsheet
• Spreadsheet is a software that assists users in processing and analyzing tabular data. It is a
computerized accounting tool.
• Data is always entered in a cell (intersection of a row and a column) and formulas and
functions to process a group of cells is easily available.
• Some of the popular spreadsheet software include MS-Excel, Gnumeric, Google Sheets, etc.
Here is a list of activities that can be done within a spreadsheet software −
– Simple calculations like addition, average, counting, etc.
– Preparing charts and graphs on a group of related data
– Data entry
– Data formatting
– Cell formatting
– Calculations based on logical comparisons
Presentation Tools
• Presentation tool enables user to demonstrate information broken down into small chunks
and arranged on pages called slides. A series of slides that present a coherent idea to an
audience is called a presentation. The slides can have text, images, tables, audio, video or
other multimedia information arranged on them. MS-PowerPoint, OpenOffice Impress, Lotus
Freelance, etc. are some popular presentation tools.
• Database Management System: One of the largest Application Software. This software
manages storage, updating and retrieval of data by creating databases. Some popular
database management tools are MS-Access, MS SQL Server, MySQL, Oracle, FoxPro, etc.
Domain Specific Tools
• Depending on its usage, software may be generic or specific.
• Generic software is a software that can perform multiple tasks in different scenarios
without being modified. For example, a word processor software can be used by anyone to
create different types of documents like report, whitepaper, training material, etc.
• Specific software is a software for a particular application, like railway reservation system,
weather forecasting, etc. Let us look at some examples of domain specific tools.
– School Management System
– Inventory Management
– Payroll Software
– Financial Accounting
– Restaurant Management
– Railway Reservation System
– Weather Forecasting System
Web Browsers
• The web browser is an application software to explore www (World Wide Web). It works as a
compiler to render HTML which is used to design a webpage.
• Whenever we search anything on the internet, Browser loads a web page written in HTML,
including text, links, images, and other items such as style sheets and JavaScript functions.
• Google Chrome, Microsoft Edge, Mozilla Firefox, Safari are examples of web browsers.
• It is installed on the client computer and requests information from the webserver such a
type of working model is called a client-server model.
• Browser receives information through HTTP protocol. Data received by Browser from server
is rendered by HTML to user-readable form and displayed on the device screen.
Website Cookies
• When we visited any website over the internet our web browser stores information about us
in small files called cookies.
• Cookies are designed to remember statefull information about our browsing history. Some
more cookies are used to remember about us like our interests, our browsing patterns, etc.
• Websites show us ads based on our interests using cookies.
Basic Input Output System (BIOS)
• BIOS (basic input/output system) is the program a computer's microprocessor uses to start
the computer system after it is powered on.
• It also manages data flow between the computer's operating system (OS) and attached
devices, such as the hard disk, video adapter, keyboard, mouse and printer.
• BIOS comes included with computers, as Firmware (permanent software programmed into a
read-only memory) on a chip on the motherboard.
• BIOS is a program that is made accessible to the microprocessor on an Erasable
Programmable Read-Only Memory (EPROM) chip.
• When users turn on their computer, the microprocessor passes control to the BIOS
program.
• When BIOS boots up a computer, it first determines whether all of the necessary
attachments are in place and operational. Any piece of hardware containing files the
computer needs to start is called a boot device. After testing and ensuring boot devices are
functioning, BIOS loads the OS -- or key parts of it -- into the computer's Random Access
Memory (RAM) from a hard disk or diskette drive (the boot device).
Basic Input Output System (BIOS)
• These tasks are each carried out by BIOS' four main functions:
– Power-on Self Test (POST): This tests the hardware of the computer before loading
the OS.
– Bootstrap Loader: This locates the OS.
– Software/Drivers: This locates the software and drivers that interface with the OS once
running.
– Complementary metal-oxide semiconductor (CMOS) setup. This is a configuration
program that enable users to alter hardware and system settings. CMOS is the name of
BIOS' non-volatile memory.
• Users can access BIOS and configure it through BIOS Setup Utility.
More will be discussed and shared soon…

More Related Content

Similar to Problem Solving and Program Design in C_1.pdf

INTRODUCTION TO COMPUTER SOFTWARE
INTRODUCTION TO COMPUTER SOFTWAREINTRODUCTION TO COMPUTER SOFTWARE
INTRODUCTION TO COMPUTER SOFTWARE
abiramiabi21
 
Computer software
Computer softwareComputer software
Computer software
Maneesh Singh
 
module_1-_5_computer_software.ppt
module_1-_5_computer_software.pptmodule_1-_5_computer_software.ppt
module_1-_5_computer_software.ppt
MufarowasheBingeping
 
Introduction to Computers Lecture # 11
Introduction to Computers Lecture # 11Introduction to Computers Lecture # 11
Introduction to Computers Lecture # 11
Sehrish Rafiq
 
Introduction to computer software12 9-07
Introduction to computer software12 9-07Introduction to computer software12 9-07
Introduction to computer software12 9-07itis103
 
Software introduction
Software introductionSoftware introduction
Software introduction
Saddam Hussain Soomro
 
Computer software
Computer softwareComputer software
Computer software
Ritu Jhalani
 
Basic software
Basic softwareBasic software
Basic software
Herry Prihandoko
 
Management information system software
Management information system softwareManagement information system software
Management information system software
Online
 
Software languages and devices
Software languages and devicesSoftware languages and devices
Software languages and devices
YogeshSorot
 
Programming for Problem Solving
Programming for Problem SolvingProgramming for Problem Solving
Programming for Problem Solving
Sukhendra Singh
 
Python-unit -I.pptx
Python-unit -I.pptxPython-unit -I.pptx
Python-unit -I.pptx
crAmth
 
System software and Application software
System software and Application softwareSystem software and Application software
System software and Application software
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 3 - MIS Applications and Relationships Presentation.pptx
Chapter 3 - MIS Applications and Relationships Presentation.pptxChapter 3 - MIS Applications and Relationships Presentation.pptx
Chapter 3 - MIS Applications and Relationships Presentation.pptx
BiancaBen3
 
2 software
2 software2 software
2 software
Veeresh Khelgi
 
Unit 1.pptx
Unit 1.pptxUnit 1.pptx
Unit 1.pptx
DeepalShah123
 
Computer - Software.pptx
Computer - Software.pptxComputer - Software.pptx
Computer - Software.pptx
JuliusECatipon
 
Softwares and Operating System.pptx
Softwares and Operating System.pptxSoftwares and Operating System.pptx
Softwares and Operating System.pptx
UsmanAhmed838004
 
unit 3.ppt
unit 3.pptunit 3.ppt
unit 3.ppt
prakashvs7
 

Similar to Problem Solving and Program Design in C_1.pdf (20)

INTRODUCTION TO COMPUTER SOFTWARE
INTRODUCTION TO COMPUTER SOFTWAREINTRODUCTION TO COMPUTER SOFTWARE
INTRODUCTION TO COMPUTER SOFTWARE
 
Computer software
Computer softwareComputer software
Computer software
 
module_1-_5_computer_software.ppt
module_1-_5_computer_software.pptmodule_1-_5_computer_software.ppt
module_1-_5_computer_software.ppt
 
Introduction to Computers Lecture # 11
Introduction to Computers Lecture # 11Introduction to Computers Lecture # 11
Introduction to Computers Lecture # 11
 
Introduction to computer software12 9-07
Introduction to computer software12 9-07Introduction to computer software12 9-07
Introduction to computer software12 9-07
 
Software introduction
Software introductionSoftware introduction
Software introduction
 
Computer software
Computer softwareComputer software
Computer software
 
Basic software
Basic softwareBasic software
Basic software
 
Management information system software
Management information system softwareManagement information system software
Management information system software
 
Software languages and devices
Software languages and devicesSoftware languages and devices
Software languages and devices
 
Programming for Problem Solving
Programming for Problem SolvingProgramming for Problem Solving
Programming for Problem Solving
 
Python-unit -I.pptx
Python-unit -I.pptxPython-unit -I.pptx
Python-unit -I.pptx
 
System software and Application software
System software and Application softwareSystem software and Application software
System software and Application software
 
Richa garg itm
Richa garg itmRicha garg itm
Richa garg itm
 
Chapter 3 - MIS Applications and Relationships Presentation.pptx
Chapter 3 - MIS Applications and Relationships Presentation.pptxChapter 3 - MIS Applications and Relationships Presentation.pptx
Chapter 3 - MIS Applications and Relationships Presentation.pptx
 
2 software
2 software2 software
2 software
 
Unit 1.pptx
Unit 1.pptxUnit 1.pptx
Unit 1.pptx
 
Computer - Software.pptx
Computer - Software.pptxComputer - Software.pptx
Computer - Software.pptx
 
Softwares and Operating System.pptx
Softwares and Operating System.pptxSoftwares and Operating System.pptx
Softwares and Operating System.pptx
 
unit 3.ppt
unit 3.pptunit 3.ppt
unit 3.ppt
 

Recently uploaded

TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSETECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
DuvanRamosGarzon1
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation & Control
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
LIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.pptLIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.ppt
ssuser9bd3ba
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
Pipe Restoration Solutions
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
Osamah Alsalih
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
Amil Baba Dawood bangali
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
Jayaprasanna4
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
Massimo Talia
 
Event Management System Vb Net Project Report.pdf
Event Management System Vb Net  Project Report.pdfEvent Management System Vb Net  Project Report.pdf
Event Management System Vb Net Project Report.pdf
Kamal Acharya
 
Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
Kamal Acharya
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
Robbie Edward Sayers
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
AhmedHussein950959
 

Recently uploaded (20)

TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSETECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
LIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.pptLIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.ppt
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
 
Event Management System Vb Net Project Report.pdf
Event Management System Vb Net  Project Report.pdfEvent Management System Vb Net  Project Report.pdf
Event Management System Vb Net Project Report.pdf
 
Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 

Problem Solving and Program Design in C_1.pdf

  • 1. Fundamentals of Computer Softwares Prepared by: Neeraj Sharma (A.P, SOET)
  • 2. Why Software? • Computer Hardware is extremely fast but is not intelligence. We need to tell the computer hardware precisely what to do. • So any hardware device needs user instructions to function. • A set of instructions that achieve a single outcome are called program or procedure. • Many programs functioning together to do a task make a software. • For example, a word-processing software enables the user to create, edit and save documents. A web browser enables the user to view and share web pages and multimedia files. There are three (two) categories of software − – System Software – Application Software – Utility Software
  • 3. System Software • Software required to run the hardware parts of the computer and other application software are called system software. • System software acts as interface between hardware and user applications. An interface is needed because hardware devices (or machines) and humans speak in different languages. • Machines understand only binary language i.e. 0 (absence of electric signal/Low Voltage) and 1 (presence of electric signal/High Voltage) while humans speak in English, French, German, Tamil, Hindi and many other languages. • English is the pre-dominant language of interacting with computers. Software is required to convert all human instructions into machine understandable instructions. And this is exactly what system software does. • Based on its function, system software is of three types − – Operating System – Language Processor – Device Drivers
  • 4. System Software • OS is the first software to be loaded into computer memory when the computer is switched on and this is called booting. • OS manages a computer’s basic functions like storing data in memory, retrieving files from storage devices, scheduling tasks based on priority, etc.
  • 5. System Software • Language Processor converts all user instructions into machine understandable language. When we talk of human machine interactions, languages are of three types − – Machine-level language: This language is nothing but a string of 0s and 1s that the machines can understand. It is completely machine dependent. – Assembly-level language: This language introduces a layer of abstraction by defining mnemonics. Mnemonics are English like words or symbols used to denote a long string of 0s and 1s. For example, the word “READ” can be defined to mean that computer has to retrieve data from the memory. The complete instruction will also tell the memory address. Assembly level language is Machine Dependent (ISA). – High level language: This language uses English like statements and is completely independent of machines. Programs written using high level languages are easy to create, read and understand.
  • 6. System Software • Program written in high level programming languages like Java, C++, etc. is called source code. Set of instructions in machine readable form is called object code or machine code. System software that converts source code to object code is called language processor. There are three types of language interpreters− – Assembler − Converts assembly level program into machine level program. – Interpreter − Converts high level programs into machine level program line by line. – Compiler − Converts high level programs into machine level programs at one go rather than line by line. • System software that controls and monitors functioning of a specific device on computer is called device driver. • Each device like printer, scanner, microphone, speaker, etc. that needs to be attached externally to the system has a specific driver associated with it. • When you attach a new device, you need to install its driver so that the OS knows how it needs to be managed.
  • 7. System Software • The advantage of using an interpreter is that they are very easy to write and they do not require a large memory space. • However, there is a major disadvantage in using interpreters, i.e., interpreted programs take a long time in executing. • To overcome this disadvantage, especially for large programs, Compilers were developed.
  • 8. Application Software • Application software are very specialized in their function and approach to solving a problem. • So a spreadsheet software can only do operations with numbers and nothing else. • A hospital management software will manage hospital activities and nothing else. Here are some commonly used application software − – Word processing – Spreadsheet – Presentation – Database management – Multimedia tools
  • 9. Utility Software • Application software that assist system software in doing their work is called Utility Software. • Thus utility software is actually a cross between system software and application software. Examples of utility software include − – Antivirus software – Disk management tools – File management tools – Compression tools – Backup tools
  • 10. Open System Software • A software whose source code is freely distributed with a license to study, change and further distributed to anyone for any purpose is called open source software. • Open source software is generally a team effort where dedicated programmers improve upon the source code and share the changes within the community. • Open source software provides these advantages to the users due to its thriving communities − – Security, Affordability, Transparent, Interoperable on multiple platforms, Flexible due to customizations, Localization is possible • Freeware: A software that is available free of cost for use and distribution but cannot be modified as its source code is not available is called freeware. Examples of freeware are Google Chrome, Adobe Acrobat PDF Reader, Skype, etc. • Shareware: A software that is initially free and can be distributed to others as well, but needs to be paid for after a stipulated period of time is called shareware. Its source code is also not available and hence cannot be modified.
  • 11. Proprietary Software • Software that can be used only by obtaining license from its developer after paying for it is called proprietary software. An individual or a company can own such proprietary software. Its source code is often closely guarded and it can have major restrictions like − – No further distribution – Number of users that can use it – Type of computer it can be installed on, example multitasking or single user, etc. • For example, Microsoft Windows is a proprietary operating software that comes in many editions for different types of clients like single-user, multi-user, professional, etc.
  • 12. Software Development and Platform Dependency • Microprocessors understand a fairly limited set of instructions which are to be represented in Binary. • It is very tedious to represent everything in binary form so High Level Programing Languages were created to ease the programing complexity. • Most of these Languages are very close to Human Languages (Spoken Languages) but are most structured, precise, and unambiguous. • Just like multiple Human Languages exists there are many programing languages like C, C++, Java, Python, C#, C#.Net, Visual Basic, Pearl etc. • A Computer Platform is a specific combination of a Microprocessor family and Operating System. For Ex: Wintel Platform, Macintosh Platform. • Platform are important because Application Software are Platform dependent and tailored to a particular platform. • This is because different operating systems manages resources in different ways and different microprocessors have different set of machine level instructions.
  • 13. Office Tools • Application software that assist users in regular office jobs like creating, updating and maintaining documents, handling large amounts of data, creating presentations, scheduling, etc. are called office tools. Using office tools saves time and effort and lots of repetitive tasks can be done easily. Some of the software that do this are − – Word processors – Spreadsheets – Database systems – Presentation software – E-mail tools
  • 14. Word Processor • A software for creating, storing and manipulating text documents is called word processor. Some common word processors are MS-Word, WordPad, WordPerfect, Google docs, etc. • A word processor allows you to − – Create, save and edit documents. – Format text properties like font, alignment, font color, background color, etc. – Check spelling and grammar. – Add images. – Add header and footer, set page margins and insert watermarks.
  • 15. Spreadsheet • Spreadsheet is a software that assists users in processing and analyzing tabular data. It is a computerized accounting tool. • Data is always entered in a cell (intersection of a row and a column) and formulas and functions to process a group of cells is easily available. • Some of the popular spreadsheet software include MS-Excel, Gnumeric, Google Sheets, etc. Here is a list of activities that can be done within a spreadsheet software − – Simple calculations like addition, average, counting, etc. – Preparing charts and graphs on a group of related data – Data entry – Data formatting – Cell formatting – Calculations based on logical comparisons
  • 16. Presentation Tools • Presentation tool enables user to demonstrate information broken down into small chunks and arranged on pages called slides. A series of slides that present a coherent idea to an audience is called a presentation. The slides can have text, images, tables, audio, video or other multimedia information arranged on them. MS-PowerPoint, OpenOffice Impress, Lotus Freelance, etc. are some popular presentation tools. • Database Management System: One of the largest Application Software. This software manages storage, updating and retrieval of data by creating databases. Some popular database management tools are MS-Access, MS SQL Server, MySQL, Oracle, FoxPro, etc.
  • 17. Domain Specific Tools • Depending on its usage, software may be generic or specific. • Generic software is a software that can perform multiple tasks in different scenarios without being modified. For example, a word processor software can be used by anyone to create different types of documents like report, whitepaper, training material, etc. • Specific software is a software for a particular application, like railway reservation system, weather forecasting, etc. Let us look at some examples of domain specific tools. – School Management System – Inventory Management – Payroll Software – Financial Accounting – Restaurant Management – Railway Reservation System – Weather Forecasting System
  • 18. Web Browsers • The web browser is an application software to explore www (World Wide Web). It works as a compiler to render HTML which is used to design a webpage. • Whenever we search anything on the internet, Browser loads a web page written in HTML, including text, links, images, and other items such as style sheets and JavaScript functions. • Google Chrome, Microsoft Edge, Mozilla Firefox, Safari are examples of web browsers. • It is installed on the client computer and requests information from the webserver such a type of working model is called a client-server model. • Browser receives information through HTTP protocol. Data received by Browser from server is rendered by HTML to user-readable form and displayed on the device screen. Website Cookies • When we visited any website over the internet our web browser stores information about us in small files called cookies. • Cookies are designed to remember statefull information about our browsing history. Some more cookies are used to remember about us like our interests, our browsing patterns, etc. • Websites show us ads based on our interests using cookies.
  • 19. Basic Input Output System (BIOS) • BIOS (basic input/output system) is the program a computer's microprocessor uses to start the computer system after it is powered on. • It also manages data flow between the computer's operating system (OS) and attached devices, such as the hard disk, video adapter, keyboard, mouse and printer. • BIOS comes included with computers, as Firmware (permanent software programmed into a read-only memory) on a chip on the motherboard. • BIOS is a program that is made accessible to the microprocessor on an Erasable Programmable Read-Only Memory (EPROM) chip. • When users turn on their computer, the microprocessor passes control to the BIOS program. • When BIOS boots up a computer, it first determines whether all of the necessary attachments are in place and operational. Any piece of hardware containing files the computer needs to start is called a boot device. After testing and ensuring boot devices are functioning, BIOS loads the OS -- or key parts of it -- into the computer's Random Access Memory (RAM) from a hard disk or diskette drive (the boot device).
  • 20. Basic Input Output System (BIOS) • These tasks are each carried out by BIOS' four main functions: – Power-on Self Test (POST): This tests the hardware of the computer before loading the OS. – Bootstrap Loader: This locates the OS. – Software/Drivers: This locates the software and drivers that interface with the OS once running. – Complementary metal-oxide semiconductor (CMOS) setup. This is a configuration program that enable users to alter hardware and system settings. CMOS is the name of BIOS' non-volatile memory. • Users can access BIOS and configure it through BIOS Setup Utility.
  • 21. More will be discussed and shared soon…