0% found this document useful (0 votes)
70 views

Grade 11 Chapter 4 Computer Science

cambridge and igcse and o level notes

Uploaded by

Kallee Benedict
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
70 views

Grade 11 Chapter 4 Computer Science

cambridge and igcse and o level notes

Uploaded by

Kallee Benedict
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 19

CHAPTER 4 SOFTWARE COMPUTER

SCIENCE
DEFINITION OF A SOFTWARE
A software is a set of instruction and data written in a programming language that performs
one or more task to tell the computer what to do.

All computer start life as a group of connected hardware items(peripherals). but,


without software, the hardware items would be useless.

Installed on your computer, depending on whether you have chosen a MAC or PC,
will be an OPERATING SYSTEM, maybe IOS or WINDOWS.

The operating System also includes utility programs and hardware drivers.

On top of the operating system, Application software can be installed such as


Spreadsheet and word processing applications.

CLASSIFICATION OF SOFTWARE
The software can be characterized into two types of software mainly:

SOFTWARE

SYSTEM SOFWARE APPLICATION SOFTWARE

Operating Utility Device Spread Word Data Internet Games/


system programs drivers sheet processor base browser ware

1
System software
Definition
A system software is a type of computer program designed to manage and control a
computer's hardware while providing basic services to higher-level application software.

It serves as a bridge between the hardware and the application programs, allowing them to
communicate effectively.

General properties( features) of system software


 Set of programs to control and manage the operation of computer hardware
 Provides a platform on which other software can run
 Require to allow hardware and software to run without any problems
 Provides a human computer interface.( HCI)
 Controls the allocation and usage of hardware resources.

Functions of a system Software


 Allows software and hardware to run without problems.
 Provides a human computer interface
 Control the allocation and usage of hardware resources.
 Device management
 System security and the acess control
 File management
Example
 Basic input Output System( BIOS)- installed in ROM. Enables all the attached
components to initialise. Known as firmware.

 Operating system- MAC, Windows, Android, IOS


The operating system( OS) is essentially software running in the background of a computer
system. It manages many of the basic functions. Without the OS, most computers would be
user-unfriendly and the majority of users would find it almost impossible to work with
computers on a day-to-day basis.

For example, operating systems allow;


a) Input/output operations
b) Users to communicate with the computer
c) Error handling to take place
d) The loading to take place
e) The loading and running of programs to occur
f) Managing of security( e.g user accounts, log on passwords)

 Device Driver( Part of the OS or installed manually)- a software that enables hardware
to communicate with the operating system( Plug and play).
 Compilers-translate high-level programming language into machine code.
 Utilities software- built into the operating system to carry out a specific task.

2
Examples of utility software( system software)

Antivirus is a kind of software designed, prevent and remove malicious software, commonly
known as malware, and other devices. This include viruses, worms, Trojan horses, spyware
and more.

Antivirus programs work by scanning your device for known threats and suspicious
behaviors, blocking and eliminating them to protect your data and system integrity. They
often provide real-time protection, meaning they continuously monitor your device for
potential threats.

They are able to check software of files they are run or loaded on a computer. They
compares a possible virus against a database of known viruses.

Virus checker- anti-Virus Software


 Offered by the operation system
 Must be constantly updated
 How they work?

- the software is constantly running in the background


-check software of files before they are run or loaded
- compare a possible virus against a database of known viruses
- any possible files or programs which are infected are put into quarantine

Running an anti-virus software in the background will


constantly check for virus attacks.

3
Defragmentation software- when HDD becomes full, block used for files will be scattered all
over the disk surface. Data accessing will be faster if files could be stored in contiguous
sectors to reduce HDD head movements.
 Defragmentation reduces the amount of fragmented files on a hard disk.
 It recognizes related files and puts them in the same physical location.

 Backup software is a good


practise to use the operating
system back-up utility.
While it is sensible to take manual
back-ups using, for example, a
memory stick or portable to use the
operating system back-up utility.

This utility will:


a) Allow a schedule for backing up
files to be made
b) Only carry out a back-up
procedure if there have been an
changes made to a file.

For total security there should be three versions of a file


a. The current( working) version stored on the internal HDD or SSD.
b. A locally backed up copy of the file( stored on a portable SSD)
c. A remote back-up version well ways from the computer9 for example, using
cloud storage).

 Allow a schedule for backing up files to be made


 Security software
a) Links into other utility software, such as virus checkers and spyware checkers.
b) Protect network interfaces9 for example through the use of firewalls)
c) Manages access control and user accounts( using user IDs and passwords)
d) Oversees the updating of software( does the update request come from a
legitimate sources?)
e) Uses encryption and decryption to ensure any intercepted without a decryption
key.

 OS
- windows-file history
- Mac-OS- Time-machine
 Screensavers

4
Screensavers are programs that supply moving and still images on the monitor
screen after a period of inactivity by the computer. They were originally developed
to protect older CRT( cathode ray tube) monitors which would suffer from ‘phosphor
burn’ if the same screen image remained for any length of time.

Application software
Definition
Application Software or known as apps( in other terms) ,refers to programs
designed to perform specific tasks for users. It interacts directly with the end user to
execute commands and manage specific functions on a computer or a devise.

General properties( features) of application software


 Used to perform various applications( apps) on a computer.
 Allow a user to perform specific tasks using the computer’s resources.
 May be a single program( for example, Notepad) or a suite of programs( for
example, Microsoft Office)
 User can execute the software as when they require.

Examples
 Word processor
Word processing software is used to manipulate a text document, such as an essay
or a report. Text is entering using a keyboard and the software provides tools for
copying, deleting and various of formatting. Some of the functions of word
processing software include:
- creating, editing, saving and manipulating text
- copy and paste functions
- spell checkers and thesaurus
- import photos/images into a structured format
-Translation into a foreign language

 Spreadsheet
Spreadsheet software is used to organise and manipulate numerical data( in the
form of integer, real, date, and so on). numbers are
organise on a grid of lettered columns and numbered

5
rows. The grid itself is made up of cells, and each cell is identified using a unique
combinations of columns and rows the grid itself is made up of cells, and each is
identified using a unique combinations of columns and rows, for example, B6.
Some of the functions of spreadsheets include
a) Uses of formulas to carry out calculations
b) Ability to produce graphs
c) Ability to do modelling and’’ what if’’ calculations.

 Database
Data base is used to organise, manipulate and analyse data. A typical database is
made up of one or more tables. Tables consists of rows and columns. Each row is
called a ‘’record’’ and each column is called a ‘’filed’’. this provides the basic
structure for the organisation of the data within the database.

Some of the functions include


a) Ability to carry out queries on database data and produce a report
b) Add, delete and modify data in a table.
 Video Editing Software
Video editing software is the ability to manipulate videos to produce a new video. It
enables the addition of titles, colour correction an altering/ adding sound to the
original video.
a) Rearranging, adding
 Control and Measuring SOFTWARE
Control and measuring software

Control and measuring is deigned to allow a computer or microprocessor to


interface with sensors so that it is possible to:
a) Measure the physical quantities in the real world( such as temperatures)
b) To control applications( such as a chemical process) by comparing data and
sending out signals to alter process parameters( e.g open a valve to add acid and
change the pH).

 Apps
Apps is short of applications- type of software

They normally refer to software which run on mobile phones or tablets. They are
normally downloaded from an ’’App Store’’ and range from games to sophisticated
software such as phone banking.
Common examples of apps include:
 Video and music streaming
 Gps( global positioning systems-help you find you way to a chosen location)
 Camera facility ( taking photos and storing/manipulating the images taken)
 Device drivers
Device drivers are software that communicate with the operating system and
translate data into a format understood by a hardware peripheral device. Without
device drivers, a hardware device would be unable to work with a computer-a

6
message such as ‘device not recognised’ would appear on the scree. As soon as a
device is plugged into a USB port( for example, a memory stick, printer or camera),
the operating system looks for the appropriate device driver.

All USB drivers contain a collection of information about devices called descriptors;
this allows the USB bus to ask a newly connected device what it is. Descriptors
vendor id( VID), product id( PID) and unique serial numbers. If a device has no serial
number associated with it, the operating system will treat the device as new every
time it is plugged into a USB port. Serial numbers must be unique since this could
prove rather interesting if two different devices with the same serial number were
plugged into a computer at the same time.
Operating system( part of the system software)

In order for computer systems to function correctly


and allow users to communicate with them,
software known as an operating system needs to be
installed.

An operating system provides both environment in


which applications can be run an useable interface
between humans an computer.

An operating system make using computer hardware much easier.

Examples of operating systems include;


 Microsoft windows,
 Apple mac os,
 Google android
 Apple IOS.
What is the purpose of an Operating systems

Human computer interface( HCI) ( OPERATING SYSTEM)

7
The human computer interface( HCI) is the form of a command line interface( CLI)
or graphical user interface( GUI)

 The command line interface require a user to types in instructions in order to


choose options from menus, open software, etc…

They are usually commands that need to


be types in, for example, to save or load a
file.
The user need to learns a several
commands just to carry out basic
operations.( which is a big disadvantages)

It is also slow having to key in these


commands every time an operation has to
be carried out.

 Graphic user interface.


A graphic user interface
allows the user to interact
with a computer or digital
device such as an MP3
player, gaming device or
mobile phone.

A GUI uses pictures or


symbols( icons) rather than
having to type in a number
of commands,

Simply clicking on any of the


icons from the screen, would
automatically load the
application used. There is no
need to type in anything.

GUIs use various


technologies devices to provide the user interface. One of the most common is
WIMP( Windows icons menu and pointing device)

WIMP was developed for use on personal computers( PC). Here a mouse is used to
control a cursor and icons are selected to open/ run windows. Each window contains
an applications and modern computer systems allow several windows to be open at
the same time.
Difference between GUI and CLI interfaces

8
Interface Advantages Disadvantages
Command line The user is in direct communication with The user needs to learn a number of
interface( CLI) the computer commands to carry out basic operations. All
commands need to be types in which takes
The user is not restricted to a number of time and can be error-prone each
pre-determined options. command must be types in using the
correct format, spelling, and so on.
It is possible to alter computer
configuration settings.

It uses a small amount of computer


memory.
Graphical user The user doesn’t need to learn any This types of interface uses up considerably
interface( GUI) commands. more computer memory than a CLI
It is more user-friendly; icons are used to interface.
represent applications as pointing It needs an operating system, such as
device( such as a mouse) is used to click windows, to operate which uses up
on an icon to launch the application- this considerable memory.
is simpler than typing in commands or a
touch screen can be used where
applications are chosen by simply
touching on the screen.
Command line interface (CLI) ; a programmer, analyst or
technician; basically somebody who need to have a
direct communication with a computer to develop new
software, locate errors and remove them, initiate
memory dumps( contents of the computer memory at
some moment in time), and so on.

Graphical user interface( GUI): the end-user who


doesn’t have or doesn’t need to have any great
knowledge of how the computer works; a person who
uses the computer to run software or play games or
stores/manipulates photographs, for example

Memory management( operating system) part of the system software

9
 Manages the primary storage( RAM) and allows data to be move between RAM
and HDD/SSD during the execution of programs
 Keep track of all the memory locations.
 Carries out memory protection to ensure that two competing applications
cannot use them same memory locations at the same. If this wasn’t done the
following might happen:
a) Data would probably be lost
b) Applications could produce incorrect results( based on the wrong data being in
memory locations)
c) Potential security issues( if data is placed in the wrong location, it might make it
accessible to other software, which would be a major security issue)
d) In extreme cases, the computer could crash.
Security managements( operating system) part of the system software
Security management, is another job of the operating system; its function is to
ensure the integrity, confidentiality and availability of data.
Tasks include:
 Carrying out updates as and when they become available
 Ensuring that anti-virus software is always up to date
 Communicating with a firewall to check all traffic to and and from the computer.
 Using ‘’privileges’’ to prevent users entering ‘’private areas’’ on a computer that
permits multi-user activity; this helps to ensure the privacy of data
 Maintaining access rights for all users.
 Offering the ability for the recovery of data when it has been lost or corrupted
 Helping to prevent illegal intrusion into the computer system.
Hardware peripheral management( operating system) part of the system software
This involves the management of all input and output peripheral devices
Tasks include:
 Communicates with all input and output devices using device drivers
 Ensures each hardware resource has a priority so that they can be used and
released as required.
 Manages input/output devices by controlling queues and buffers; for example
the role of the printer management when printing out a document:
a) First the printer driver is located and loaded into memory
b) The data is then sent to a printer buffer ready for printing
c) If the printer is busy then the data is sent to a printer queue before it can be
sent to the printer buffet.
d) It receives and handles error messages and interrupts from the printer.
File management( operating system) part of the system sofware
File management tasks include;
 File naming conventions which can be used I.e filename.docx
 Performing specific task, such as; create, open, delete, rename, copy and move
files.
 Maintain the directory structures
 Ensuring access control mechanisms are maintained( for example, access rights
to files, passwords protection, or making files available for editing or locking
them

10
 Ensuring memory allocation for a file by reading it from the HDD/ SSD and
loading it into memory.
Multitasking( operating system) part of the system software
 Multitasking means computers can carry out more than one task at a time
 Each of these tasks will share the CPU and memory under the control of the
operating system software.
 To make sure that multitasking operates correctly, the operating system need to
continuously monitor each of the processes.
a) Resources are allocated to a task for a specific time limit
b) The task is given be interrupted while it Is running
c) The task is given a priority so it can have resources according to its priority.

Management of user accounts( operating system) part of the system software


 Computers allow more than one user to log onto the
system. It is therefore important that user’s data is stored in
separate parts of the memory for security reasons.
 Each person logging onto the computer will be given a user
account protected by a user name and password. The
operating system is given the task managing these different
user accounts.
 This allows each user to
 Usually an administrator oversees the management of these
user accounts. The administrator can create accounts,
delete user accounts and restrict user account activity.

Running of applications
When a computer starts up, a part of the operating system is loaded into RAM this is
known as booting up the RAM computer.

The start-up of the computer’s motherboard is handled by the basic input/output


system( BIOS).

The BIOS tells the computer where the operating system can be found on the hard
drive; it then loads the part of the operating system that is needed and executes it.

The BIOS is often referred to as firmware.

Firmware is defined as a program that provides low level control for devices. It is
permanents software programmed into a read-only memory.

11
Firmware is software that’s embedded in a piece of hardware. You can think of it
simply as ‘’software for hardware’’. However, software is different from firmware, so
the two are not interchangeable terms.

Devices that you might think of as strictly hardware such as an optical drive, network
card, TV remote, media player, camera, or scanner all have software that’s
programmed into a special memory contained in the hardware itself.

Interrupts
An interrupt is a signal sent by hardware or software to the operating system
indicating that a process or event needs immediate attention. It allows the system to
temporarily halt its current operations to address the issues that prompted the interrupt.

Interrupts can be caused by


a) An input/output process( e.g a disk drive or printer requiring more data)
b) A hardware fault( for example, a paper jam in the printer)
c) User interaction, for example, the user presses <CRTL> <ALT> < BREAK >, which causes
the system to be interrupted.
d) Software errors that cause a problem( for example, an .exe file that cannot be fond to
initiate the execution of a program, two processes trying to access the same memory
location, or an attempt to divide by zero).

Interrupts allow computers to carry many tasks or to have several programs open at
the same time. An example would be downloading a file from the internet at the
same time as listening to some music in itunes.

Interrupts allow these two functions to co-exist and the user has the impression that
both functions are being carried out simultaneously.

In reality, data is being passed in and out of memory very rapidly allowing both
function to be serviced. This can all be achieved by using an area in memory known
as a buffer.

Buffers

12
A buffer is a memory area that stores data
temporarily.

For example, buffers are used when downloading


a movie from then internet to compensate for
difference between download speeds and the
data requirements of the receiving device.

The data transmission rate of the movie file from


the web server to then buffer must be greater
than the rate at which data is transmitted from
buffer to media player.

Without buffers, the movie would frequently ‘’


freeze ‘’.

Uses of interrupts and buffers when printing a document

13
Types of programming language, translators and integrated
development environments( IDEs)
People use many different language to communicate
with each other. In order for two people understand
each other they need to speak the same language or
another person, an interpreter, is needed to translate
from one language to the other language.

Programmers use many different


programming languages to
communicate with computers.

However, computers only’’


understand their own language, this
Is called machine code. A program
needs to be translated into
machine code before it can be
‘’understood’’ by a computer.

What is a program
A program is the way of telling a computer what to do, how to do it and when to do
it.

This enables a single computer to perform many different types of task.

A computer can be used to stream videos, write reports, provide weather forecasts
and many more, many other jobs.

Example of low and high level languages


Low-level languages can refer to Machine Code or Assembly Language
These are the simple instructions that a computer understands. Assembly language
that needs to be translated into machine code.

Machine code: programmers do not usually write in machine code as it is difficult to


understand, and it can be complicated to manage data manipulations and storage.

Assembly languages ; fewer programmers write programs in an assembly languages.


Those programmers who do, do so for the following reasons.
 To make use of special hardware
 To make use of special machine-dependent instructions
 To write code that doesn’t take up much space primary memory.
 To write code that performs a task very quickly.

14
High level languages

High-level languages enable a programmer to


focus on the problem to be solved and require no
knowledge of the hardware an instruction set of
the computer that will use the program.

Many high level programming languages are


portable and can be used on different types of
computers.

High level languages are designed with programmers in


mind; programming statements are easier to understand
than those written in a low-level language.

This means that programs written in a high-level language


are easier to:
 Read and understand as the language used is close to
English
 Write in a short time
 Debug at the development stage
 Maintain once in use

LOW LEVEL
LANGUAGES
Low-level languages programming
language is one the provides minimal
abstraction from a computer’s hardware
architecture, allowing programmers to
directly manipulate the machine’s registers
and memory. These languages are closely
aligned with a computer’s instruction set

15
and are often use system programming, such as writing operating systems or
embedded systems.
Difference between high-level languages and low level languages
Language Advantages Disadvantages
High-level  Independent of the type of computer  Programs can be longer
being used  Programs can take longer to execute
 Easier to read, write and understand  Programs may not be able to make use of
programs special hardware
 Programs are easier and quicker to
debug
 Easier to maintains programs in use
Low-level  Can make use of special hardware  It takes longer time to write and debug
 Include special machine dependant programs
instructions  Programs are more difficult to understand.
 Can write code that doesn’t take up
much space in primary memory
 Can write code that performs a task
very quickly

Translators
Translators are needed to translate programs written in high level languages into the
machine code that a computer understand and execute.

There are three types of translator


 Compilers
 Interpreters
 Assemblers


A compiler is an example of a translator that takes a High-level Programming
Language( e.g.,, C++ ) and translates it into Machine Language or Assembly Language
which the computer can understand.

It converts the High-level language into Machine Code all in one go so that it can be
directly used by a computer to perform a required task. Once converted, the code
can be run unassisted at any time. This process is called compilation.

If errors are detected, then an error report is produced instead of a compiled


program.

An interpreter is a computer program that reads a statement from a program
written in a high-level language one instruction at a time. It is similar to a human
translator translating what a person says into another language, sentence by
sentence, as they speak. The resulting code is then executed immediately. The
process is called interpretation.

16
If there is an error in the statement then execution ceases and an error message is
output, sometimes with a suggested correction.

The program needs to be interpreted again each time it is run.


Assemblers are a third type of translator. The purpose of an assembler is to translate
assembly language into machine code.

Whereas compilers and interpreters generate many machine code instruction for
each high level instruction, assemblers create one machine code instruction for each
assembly instruction.

the advantages and disadvantages of compilers and interpreters

Integrated development environment( IDE)

17
An integrated development
environments( IDE) is used by
programmers to aid the writing and
development of code. They are
designed to bring together all
programming tasks in one
application; one of the main
benefits on an IDE is that they offer
a central interface with all the tools
a developer needs.

There are many different IDEs


available; some just support one
programming language, others can
be used for several different
programming languages. You may
be using PyCharm( for Python0,
Visual Studio( for Visual Basic) or
BluJ( for Java) as you IDE.

IDEs usually have these features:


 Code editors
 A debugger
 Error diagnostics
 Auto-completion
 Auto-correction
 An auto-documenter and pretty-printing.

18
 Code editors are designed for writing and editing source code, these editors are
distinguished from text editors because work to either simplify or enhance the
process of writing and editing of code for developers.
 Debuggers are used during testing and can help developers debug their
application programs.
 Translator transform source code that is written in human readable/writable
language in a form that computers can execute.

19

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy