Professional Documents
Culture Documents
Definition of a Software
Code that will be run when the player decides to buy an item
- JUST ONE ACTION
Classification of Software
Definition
Definition Example
• Basic Input Output System (BIOS) - installed in
A variety of programs that a
ROM. Enables all of the attached components to
computer needs to function. initialise. Known as firmware.
System Software
Definition Example
• Basic Input Output System (BIOS) - installed in
A variety of programs that a
ROM. Enables all of the attached components to
computer needs to function. initialise. Known as firmware.
• Operating System - MAC, Windows, Android, iOS.
System Software
Definition Example
• Basic Input Output System (BIOS) - installed in
A variety of programs that a
ROM. Enables all of the attached components to
computer needs to function. initialise. Known as firmware.
• Operating System - MAC, Windows, Android, iOS.
• Device Driver (Part of the OS or Installed manually) -
A software that enables hardwares to communicate
with the operating system (Plug and play).
System Software
Definition Example
• Basic Input Output System (BIOS) - installed in
A variety of programs that a
ROM. Enables all of the attached components to
computer needs to function. initialise. Known as firmware.
• Operating System - MAC, Windows, Android, iOS.
• Device Driver (Part of the OS or Installed manually) -
A software that enables hardwares to communicate
with the operating system (Plug and play).
• Compilers - Translate high-level programming
language into machine code.
System Software
Definition Example
• Basic Input Output System (BIOS) - installed in
A variety of programs that a
ROM. Enables all of the attached components to
computer needs to function. initialise. Known as firmware.
• Operating System - MAC, Windows, Android, iOS.
• Device Driver (Part of the OS or Installed manually) -
A software that enables hardwares 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.
System Software
Definition Example
• Basic Input Output System (BIOS) - installed in
A variety of programs that a
ROM. Enables all of the attached components to
computer needs to function. initialise. Known as firmware.
• Operating System - MAC, Windows, Android, iOS.
• Device Driver (Part of the OS or Installed manually) -
Function A software that enables hardwares to communicate
with the operating system (Plug and play).
• Allows software and hardware to
• Compilers - Translate high-level programming
run without problems. language into machine code.
• Provides a human computer • Utilities Software - Built into the operating system to
interface. carry out a specific task.
• Control the allocation and usage
of hardware resources.
Examples of utilities software (1)
Defragmentation Software - When HDD becomes full, blocks 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.
data data
Examples of utilities software (3)
Definition
Definition Examples
Definition Examples
Eg. BIOS, OS, Device Driver, Utilities Eg. Word Document, Spreadsheet,
Video Editing Software, Games
Chapter 4.2
Operating
System
History
• Computer used to run only one
program at a time
• Program (written in punch card)
needs to be inserted one by one into
the computer manually
• This approach slows down
computation
• It is also difficult to integrate a
hardware (input and output devices)
with the computer
• We need a way in which program
can operate automatically
• This leads to the creation of
operating system
History
3 types of HCI
Command Line
Interface
• User needs to learn a
number of commands
• Direct communication with
the computer and is not
restricted to a number of
predetermined options
HCI
3 types of HCI
3 types of HCI
Command Line
Interface
• The user is in direct communication with the • It is more user-friendly; icons are used to represent
computer applications
• Uses a small amount of computer memory • The user doesn’t need to learn any commands
• Need to learn a lot of commands • Use up more computer memory than CLI
• Each command must be typed in correctly in terms • The user is limited to icons provided on the screen
of format and spelling
HCI MM
Memory Management
DATA BUS
ADDRESS BUS
Central Processing Unit (CPU)
CU
MAR When a program is
PC
ALU ACC
loaded from the
Secondary Storage into
Input Output
Memory Unit (RAM)
the Primary RAM, but who
Load executable code
when needed does it????
Secondary Storage
(HDD, SSD, Removable Disk, CD)
HCI MM
Memory Management
DATA BUS
ADDRESS BUS
OS does it! OS will...
Central Processing Unit (CPU)
• Track of all the memory locations
MAR
CU
PC
MDR
CIR
ALU ACC
Secondary Storage
(HDD, SSD, Removable Disk, CD)
HCI MM
Memory Management
DATA BUS
ADDRESS BUS
OS does it! OS will...
Central Processing Unit (CPU)
• Track of all the memory locations
CU
MAR
• Carries out memory protection to
PC
MDR
ensure that two competing applications
CIR cannot use the same memory locations
ALU ACC
at the same time
Secondary Storage
(HDD, SSD, Removable Disk, CD)
HCI MM
Memory Management
DATA BUS
ADDRESS BUS
OS does it! OS will...
Central Processing Unit (CPU)
• Track of all the memory locations
CU
MAR
• Carries out memory protection to
PC
MDR
ensure that two competing applications
CIR cannot use the same memory locations
ALU ACC
at the same time
• Make sure enough hardware is
Input Memory Unit (RAM) Output allocated to perform the necessary
process
Load executable code
when needed
Secondary Storage
(HDD, SSD, Removable Disk, CD)
HCI MM MT
Pre-emptive multitasking
Meaning of peripheral devices Roles of the OS: Carry out Hardware Management
User Account
Management
User Account
Management
Role of an administrator
File management
File management
Security Management
Memory Management
7 Main Functions
Multitasking
Of
Hardware Peripheral Management
The Operating
User Account Management System
File Management
Security Management
EXAM QUESTION
EXAM QUESTION
Chapter 4.3
Running of
Application
Introducing BIOS (Basic Input/Output System)
• Known as firmware (a tangible
electronic component with embedded
software instructions, such as a
BIOS)
• The BIOS settings are stored on a
CMOS chip (complementary metal-
oxide-semiconductor)
⚬ BIOS settings would be reset if
the battery was removed or
disconnected
• Responsible for booting up the
computer by loading part of the
operating system from secondary
storage into RAM
Application Software Running Sequence
Power On
Hardware
Application Software Running Sequence
Firmware
Hardware
(BIOS)
Loads the
BIOS
program
located in
the ROM
Application Software Running Sequence
Firmware Operating
Hardware
(BIOS) System
INTERRUPT
IGCSE CS
DEFINITION OF
INTERRUPT
AN INTERRUPT IS WHERE A SIGNAL IS SENT
FROM A DEVICE OR A PROGRAM TO THE
OPERATING SYSTEM THAT CAUSES A
TEMPORARY STOP.
EXAMPLES OF AN
INTERRUPT : YOU TRY
A timing signal
FUNCTION OF AN
INTERRUPT
TYPES OF
PROGRAMMING
LANGUAGES
IGCSE Computer Science
assembly language
Codes written in any language needs to be translated to machine code before it can be
understood by a computer.
01010101001010010010010
10101010010010100100110
10101000101101010101010
10101010010101010101001
Translators 01010100101001001001010
10101001001010010011010
10100010110101010101010
10101001010101010100101
01010010100100100101010
10100100101001001101010
10001011010101010101010
10100101010101010
Why does programmers have to code using
programming language instead of machine code
01010101001010010010010
10101010010010100100110
10101000101101010101010
10101010010101010101001
01010100101001001001010
10101001001010010011010
10100010110101010101010
10101001010101010100101
01010010100100100101010
10100100101001001101010
10001011010101010101010
10100101010101010
High-Level Programming Languages
Machine Code
010101010010100100100101
010101001001010010011010
101000101101010101010101
010100101010101010010101
010010100100100101010101
001001010010011010101000 It is impossible to code in
101101010101010101010100 machine code
101010101010010101010010
100100100101010101001001
010010011010101000101101
010101010101010100101010
101010
Low-Level Programming Languages (2)
a0 2
a1 3
t0
Low-Level Programming Languages (2)
MEMORISE A FEW !
Low-Level Programming Languages (2)
TRANSLATOR
IGCSE CS
Programming Languages Machine Code
01010101001010010010010
10101010010010100100110
10101000101101010101010
10101010010101010101001
Translators 01010100101001001001010
10101001001010010011010
10100010110101010101010
10101001010101010100101
01010010100100100101010
10100100101001001101010
10001011010101010101010
10100101010101010
Different programming languages
need a different translator to be
converted into machine code
Machine Code
01010101001010010010010
101010100100101001001101
010100010110101010101010
10101001010101010100101
01010010100100100101010
101001001010010011010101
Translators 000101101010101010101010
10010101010101001010101
00101001001001010101010
010010100100110101010001
011010101010101010101001
01010101010
Translators 3 types of translator
• Interpreter (Python)
• Compiler (C)
• Assembler (Assembly Language)
Translators 3 types of translator
• Interpreter (Python)
• Compiler (C)
• Assembler (Assembly Language)
Main functions
Python Javascript
Interpreter
Python
C Programming Language
Assembler
• Translate a program written in an assembly language into machine code
• Once a program is assembled the machine code can be used again and again to
perform the same task without re-assembly.
Machine Code
01010101001010010010010
101010100100101001001101
010100010110101010101010
10101001010101010100101
01010010100100100101010
Assembler 101001001010010011010101
000101101010101010101010
10010101010101001010101
00101001001001010101010
010010100100110101010001
011010101010101010101001
01010101010
Compare and contrast the 3 translators
Produce executable file Does not produce executable file Produce executable file
Compiled program is run without Interpreted program cannot run Assembled program is run
the compiler without the interpreter without the assembler
Compare and contrast the 3 translators
Produce executable file Does not produce executable file Produce executable file
Compiled program is run without Interpreted program cannot run Assembled program is run
the compiler without the interpreter without the assembler
Interpreter Compiler
Easier for beginners as errors are easily A compiled program is executed in a
identified shorter time
Auto completion
Code Editor Run-time
- common Translator
- contains function
Environment
- compiler,
shell /syntax - with debugger
interpreter