0% found this document useful (0 votes)
6 views57 pages

Understanding System and Application Software

Uploaded by

huilima86
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views57 pages

Understanding System and Application Software

Uploaded by

huilima86
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

Chapter 4- Software

Dr S. Khan
Aims and Objectives
• Difference between system software and application
software
• The Role and basic function of an operating system
• The need for hardware, firmware and operating systems
when running application software
• Role and operation of Interrupts
• Types of programming language, translators and IDEs
• Advantages and disadvantages of high level and low level
• Advantages and disadvantages of compilers and
interpreters

System Software and
Application Software
Software

• A program that is designed to perform a


task
System Software
• System Software is set of programs to control
and manage the operation of computer
hardware
• Provides a platform on which other software
can run
• Required to allow hardware and software to
run without problems
• Provides a human computer interface (HCI)
• Controls the allocation and usage of hardware
resources
Application Software

• Used to perform various application (apps)


on a computer
• Allows a user to perform specific tasks
using the computer resources
• May be a single program or a suite of
program
• User can execute the software as and when
they require
Types of Application Software
• Word Processor- Software is used to
manipulate a text document, create, edit text
and spell checkers
• Spreadsheet – Software is used to organize
and manipulate numerical data, integer, real
and date. Cells uniquely number B6
• Database – Software is used to organize,
manipulate and analyze data. Tables consist of
rows and columns
Types of Application Software
• Photo Editing Software- Software allows a
user to manipulate digital photography stored
on a computer. Change brightness, alter color.
• Video Editing- Software is the ability to
manipulate videos to produce a new video
• Graphics Manipulation- Software allow
bitmap and vector images to be changed.
Bitmap images are made up of pixels
System Software
• Compilers – Computer program that translates
a program written in a high-level language
(HLL) into machine code (code which is
understood by the computer)
• Directly used by a computer to perform a
required task
• Original program is called the source code and
the code after compilation is called the Object
Code
Compilers

• Once a program is compiled the machine


code can be used again to perform the
sane task without re-compilation
• Example of high-level languages include
Java, Python, Visual Basic
Linkers
• Linker is a computer program that takes one or
more object file produced by compiler and
combines them into a single program which can
be run on a computer
• Programming language allows programmers to
write different pieces of code called modules.
• A program is broken up into small and more
manageable sub-tasks
• Final program can be put together by placing all
the modules
Device Driver
• Name given to software that enables one or more
hardware devices to communicate with the computer’s
operating system
• Without driver, a hardware device would be unable to
work with the computer
• All hardware devices requires drivers
• As soon as a device is plugged into the USB port of a
computer the operating system looks for the driver
• An error message will be produced if the driver cant find
Utilities
• Utility programs are software that are designed to carry
out specific tasks on a computer
• Programs help to manage, maintain and control
computer resources
• Examples include:-
• Anti-spyware
• Back-up files
• Disk repair and analysis
• Security
• Disk Defragmenter
Research Task
• Investigate and find information for the following
Utility Software (Pg- 150)
• 1. Virus Check
• 2: Defragmentation software
• 3: Disk contents analysis and repair
• 4: File Compression and File management
• 5. Back-up software
• 6. Security
• 7. Screensavers
Operating System
• Software running in the background of a
computer system.
• Operating systems allow
• 1. Input/ Output operations
• 2. Users to communicate with the computer
• Error handling to take place
• Loading and running of programs to occur
• Managing of user account security- Pssword
Operating System
Operating System

• Human Computer Interface (HCI)- Users


can choose options from menus, options.
GUI allows the user to interact with a
computer using pictures, symbols and
number of commands
Operating System- GUI vs CLI
CLI Vs GUI

• CLI- A programmer, analyst or technicians


who needs to have direct communication
with a computer and new software with
various commands. More technical
experience
• GUI- End user don’t need to have a
knowledge of how the computer works
Operating System – Memory
Management
• Manages the primary storage (RAM) and
allows data to be moved between RAM
and HDD/SSD
• Keep track of all memory location
• Carries out memory protection to ensure
that two competing applications cannot use
the same memory location at the same
time
Memory Management

• If the Memory Management doesn’t work


then:
• Data would be probably be lost
• Application will produce incorrect results
• Potential Security issues
• Computer crashes
Operating System- Security
Management
• Update the operating system with new
patches to ensure security
• Ensuring anti-virus software is always up
to date, preserving the integrity, security
• Ensure the use of privileges to prevent
users entering ‘private areas’ on a
computer that permits multi-user activity
• By recovering data
Hardware Peripheral
Management
• Involves all input and output peripheral
devices
• Communicate with all input and output
devices using device drivers
• Ensure each hardware resource has a
priority so that can be used
File Management

• File naming convention which can be used


i.e. [Link] (docx extension)
• Perform specific tasks such as create,
open, close, delete and rename, copy.
• Maintain the directory structures
• Ensure access control mechanism are
maintained e.g PASSWORD
PROTECTION
Multitasking

• Multitasking allow computer to carry out


more than one tasks at a time
• Each processes will share the hardware
resources under the control of the
operating system software
• The operating system needs to constantly
monitor the status of each of the processes
under its control
Multitasking

• Resources are allocated to a process for a


specific time limit
• The process can be interrupted while its
running
• Process given more priority more
resources can be assigned
Management User Accounts

• Allows more than one user to log onto the


system
• Users data stored in separate parts of the
memory for security reasons.
• Each account will be protected username/
password
• Administrators manages all the users
Primary Vs Secondary
Storage
Primary Memory

• Primary Memory is directly accessible


by the CPU , used to store programs
that are currently running.

• This is divided between RAM/ROM


and the CPU registers( 32/64 bit size)
Structure of Primary Memory
RAM

• RAM is known as Random Access


Memory,Working Memory,Primary
Storage ,IAS or simply Memory.

• RAM is a high speed ,power


dependant ,temporary storage memory
that is used to hold data and programs
currently running on the computer
system.
ROM
• ROM stands for Read Only Memory which
means that it cannot be altered. It is often
referred to as in-built , on-board or
embedded memory.

• ROM is a permanent ,non power


dependant form of memory that is used to
store programs that never change or
programs required by the computer at
start-up.(Bootstrap Loader)
RAM vs ROM

• RAM
• Non-Permanent , Power Dependant ,
Volatile ,Write to and Read from.

• ROM
• Permanent ,Non power dependant,
Non Volatile , Read from only.
RAM Vs ROM
DRAM
• Dynamic RAM (DRAM)
• Each DRAM chip consists of a number of
transistors and capacitors.
• Each of these parts is tiny since a single RAM
chip will contain millions of capacitors and
transistors.
• Capacitors hold the bits of information (0 or 1).
• Transistors act like switches; they allow the chip
control circuitry to read the capacitor or change
the capacitor’s value
DRAM

• DRAMs have a number of advantages


over SRAMs.
• Much less expensive to manufacture than
SRAMs
• Consume less power than SRAMs
• Have a higher memory capacity than
SRAMs.
Static RAM

• A major difference between SRAM and


DRAM is that SRAM does not need to be
constantly refreshed.
• SRAM is much faster than DRAM when it
comes to data access
DRAM VS SRAM
PROM
• A programmable read-only memory (PROM) is
a type of ROM chip that can be altered once.
• A PROM is made up of a matrix of fuses
• Programming a PROM requires the use of a
PROM writer which uses an electric current to
alter specific cells by ‘burning’ fuses in the
matrix
• Due to the method of programming (writing), a
PROM can only be written to once
EPROM
• Erasable programmable read-only memory
(EPROM)
• They use floating gate transistors and
capacitors rather than fuses.
• Ultra violet (UV) light is used to program an
EPROM through a quartz window.
• They are used in applications which are under
development, such as the programming of
new games consoles.
Secondary Memory
• A non-volatile memory , that is not directly accessible
by the CPU, used to hold programs and data on a
permanent basis.

• Much slower than Primary memory.

• Less expensive than Primary memory.

• Portable - Good for transferring files around.

• Store programs and data that are not being used


Firmware

• BIOS is often referred as a firmware.


Program that provides low level control for
devices
• When computer starts – the OS system
needs to be loaded in RAM- this is known
as booting up the computer – bootstrap
loader
Interrupts

• An interrupts is a signal sent from a device


or from software to the microprocessor.
• Interrupt can be cause by
• A timing signal
• Hardware fault
• Software errors that cause a problem
Activity

• Activity 4.1 Pg 164- Answer all Questions


Assembly Language

• The only programming language that CPU


can use is machine code.
• A computer program stored in main memory
is a series of machine code instructions
• Machine code instructions that that CPU can
automatically execute during fetch-execute
cycle.
• Each machine code performs simple tasks
such as storing values
Assembly Language

• The first programming language to be


developed was assemble language,
closely related to machine code
• Uses mnemonics instead of binary
Assembly Language

• Each instructions has an opcode that


identifies the operations to be carried by
the CPU
• Instructions also have an operand that
identifies the data to be used by the opcode
Machine Code
• Machine code is binary sometimes displayed on a
screen as hexadecimals so humans can easily
understand
• Writing program in machine code is time
consuming and error prone
• Only way to test a program written machine code
is to run it
• Any program not written in machine code needs to
be translated before CPU can carry out
instructions
High Level Vs Low Level
Translators Vs Complier
• A program must be translated into binary
before a computer can use it; this is done by a
utility program called a translators

• Complier is a computer program that translates


an entire program written in a high language
HLL into a machine code.
• Directly used by a computer to perform a
required tasks
Interpreter Vs Assembler
• Interpreters- A computer program that reads a
statement from a program written in a high-level
language, translates it perform the action
specified and then does the same with the next
statement
• Assembler- A computer program that translates
a program written in an assembly language into
machine code so that it can be directly used by
a computer to perform a required task
Advantages and
Disadvantages
Integrated Development
Environment (IDE)
• IDE is used by programmers to aid the
writing and development of programs
• IDE usually have these features
• Code Editors
• Translators
• Runtime environment
• Error diagnostics
• Auto-correction
Activity 4.2
End of Chapter

• End of Chapter – Answer all Question Pg


177-179

You might also like