0% found this document useful (0 votes)
2 views18 pages

Chapter 4 Software

The document outlines various types of software, including system software, application software, and utility software, detailing their functions and examples. It also discusses operating systems, memory management, security management, and the role of interrupts in multitasking. Additionally, it covers programming language types, translators, and the advantages and disadvantages of compilers and interpreters.

Uploaded by

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

Chapter 4 Software

The document outlines various types of software, including system software, application software, and utility software, detailing their functions and examples. It also discusses operating systems, memory management, security management, and the role of interrupts in multitasking. Additionally, it covers programming language types, translators, and the advantages and disadvantages of compilers and interpreters.

Uploaded by

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

4: SOFTWARE

[CHAPTER 4]MST_CREATOR

Reader...............................................................................................................................

2 Software Types & Interrupts..................................................................................................

3 [1] System & Application Software ..................................................................................

3 System

Software ....................................................................................................................

3 Application Software...........................................................................................................
.3 Utility Software (Utilities)..................................................................................................

4 [2] Operating Systems (OS)..................................................................................................

7 Human Computer Interface (HCI)...................................................................................

8 Memory Management ..........................................................................................................

9 Security Management ..........................................................................................................

9 Hardware Peripheral Management ................................................................................

9 File Management.................................................................................................................

10

Multitasking...........................................................................................................................

10 User Accounts Management ...........................................................................................

11 [3] Running of Applications ...............................................................................................

11 How It

Works........................................................................................................................

11

EEPROM .................................................................................................................................
12

CMOS ......................................................................................................................................

12 In The

End…..........................................................................................................................

12 [4]

Interrupts ..........................................................................................................................

.13 What Causes

Them? ..........................................................................................................

.13 What Happens When Interrupt Is Received .............................................................

13

Buffers .....................................................................................................................................

14

Programming Language Types & IDEs ..............................................................................

15 [1] High & Low-Level Languages ....................................................................................

15[2]AssemblyLanguages.......................................................................................................

16

[3]Translators....................................................................................................................16

Compilers, Interpreters, and Assemblers ..................................................................16 [4]

Advantages & Disadvantages of Compilers & Interpreters ...........................17 [5]

IDEs................................................................................................................................18
General

Features..................................................................................................................18

Note To Reader
These notes are made according to the 2023 – 2026 computer science syllabus so if you
have your examinations for 2022, you may want to refer to other places.

Another thing is that I would advise you to use other resources to revise just to be safe
(these notes may be missing information here and there).

I would also advise you to practice past papers as they are helpful when preparing!

Anyway, if this helps you, I am happy for you ��

That’s it for this note section thing so you can go to the actual content.

Software Types & Interrupts

[1] System & Application Software

Software can be split into system & application software:

2. Operating System (OS)


3. Device Drivers

Functions:

System Software 1. Set of programs to manage & control


operations of computer hardware.
Examples:
2. Provides a platform on which other
1. Utilities
software can run. 1. Photo editors
3. Allow hardware & software to run 2. Video editors
without problems. 3. Word processors
4. Provides human computer
Functions:
interface (HCI).
1. Used to perform many tasks (apps) on a
5. Controls allocation & usage of
computer.
hardware resources.
2. Allows user to perform certain tasks using the
computer’s resources. 3. May be a single
Application Software program (like Notepad).
Examples: 4. User can execute it when needed

Utility Software (Utilities)


Many utility programs are on the computer system, some can be run by the user and
some run in the background:

1. Virus Checkers
2. Defragmentation Software
3. Disk content analysis & repair
4. File compression & management
5. Back-up software
6. Security
7. Screen savers

Virus Checkers (Anti-Virus Software)


These are programs that scan and protect a computer from malware and virus attacks in
the background.

Common features of anti-virus software include:

1. Check software or files before they are run or loaded.


2. Compares a possible virus against a database with known viruses. 3. Checks
software to check for suspicious activity that would be done by a virus (heuristic
checking).

4. Files that are suspicious are put into quarantine (meaning that the virus will be
automatically deleted).
▪ Also allows user to decide whether to keep or delete the file as user may know if the
file is not a virus (this is a false positive).

5. Full systems are carried out at least once a week.


6. Need to be updated every now and then as new viruses keep getting
discovered.

Defragmentation Software
This software takes all the data fragments scattered around on the hard drive and
rearranges them into contiguous sectors.

This decreases read/write time and HDD head movements.

Backup Software
What it does:

1. Allow a schedule for backing up files to be made.


2. Only carry out backup when a file has been changed.

There are 3 version of a file for complete security:

1. Current version: Stored in internal SSD or HDD.


2. Locally backed up copy: Stored in other places (like portable SSD). 3. Remote
backed up copy: Stored away from machine (like on cloud).

OS Windows Mac OS
Utility Name File History Time Machine Takes snapshots of files and

What It Does How Often It stores them on external HDD drive and replaces them with
regularly, this builds a library of back up. It is necessary to
past file versions which allows connect external drive is
the user to choose which connected.
version they want to back up.
Erases contents of selected Every hour
Daily back-up for past
month
SavesEvery hour (default)
Weekly back-ups for previous months

Security Software
What it does:

1. Manages user accounts and control.


2. Links into other utility software.
3. Protects network interfaces.
4. Uses encryption & decryption to ensure that intercepted data is useless without the
decryption key.

5. Oversees updating of software.

Screen Savers
They are programs that blank the screen or fill it with moving images when the
computer has been idle for a certain amount of time.

They are a way of customization and a way to maintain security as the computer
can be locked after a certain amount of time.

Screen savers also allow other programs to run in the background such as:

1. Virus scans
2. Distributed computer apps

Device Drivers
They are software that allow the communication between OS and peripheral devices
(like mouse or keyboard).

[2] Operating Systems (OS)


Operating systems are software that allow computers to function correctly and allow users
to communicate with the system.
OS provides an environment for applications to run and provide an interface for users to
easily use computers.

Computers store the OS on the HDD or the SSD as they are very large programs.

Operating systems of mobile phones are stored on their SSD (they don’t have HDD).

Functions of an OS:

Human
Computer
File Security
Interface
ManagementHardware

Peripheral User Account Interrupt


Management Management Handling
Functions
Multitasking

Memory Routines Management

Human Computer Interface (HCI)


The HCI is in the form of Command Line Interface (CLI) & Graphical User Interface
(GUI).

Name CLI GUI

What It Is This requires the user to This requires user to click on


type in commands to tell logos and images to tell the
the computer what to do. computer what to do.

Advantages 1. User communicates 1. User does not need to


directly with the learn any commands.
computer. 2. More user friendly.
2. User is not restricted to 3. Simple as we use a
predetermined options. 3. pointing device to click on
Possible to alter an icon to carry out a
computer configuration task.
settings.
4. Uses small amount of
computer memory.

Disadvantages 1. User needs to learn 1. Uses more memory than


many commands to CLI.
carry out basic tasks. 2. User is limited to icons
2. Commands must be present on the screen.
typed; this is prone to 3. Needs an OS which
errors. consumes a lot of storage.
3. Each command must be
correctly spelt,
formatted, etc.

Memory Management
Functions:

1. Manages primary storage (RAM) and allows movement of data between RAM and
HDD/SSD when executing a program.

2. Keeps track of all memory locations.


3. Carries out memory protection so applications do not store data in the same
memory slot as this could cause data loss, incorrect results (from application), etc.

Security Management
Ensures the integrity, confidentiality, and availability of data by:

1. Carrying out OS updates when available.


2. Ensuring anti-virus and other security software is up to date. 3.
Maintaining access rights for all users.

4. Making use of privileges to prevent users from entering certain areas on a computer
that permits multi-user activity.

5. Helping prevent illegal intrusion into your system.


6. Offering ability to recover data when it has been lost or corrupted.
Hardware Peripheral Management
1. Communicates with all input & output devices using device drivers. 2. Uses device
drivers to take data from a file which is defined by the OS and translates it, so the
input/output device understands it.

3. Ensures that each hardware resource has a priority so they can be used and released
when needed.

4. Manages input & output devices by controlling queues & buffers.

File Management
Main Tasks:

1. File naming conventions which can be used ([Link]). 2.


Perform certain tasks on a file (like delete or copy).

3. Maintains the directory structures.


4. Ensures access control mechanisms are maintained (like password
protection).

5. Ensures memory allocation for a file by reading it from HDD/SSD and loading it
into the memory.

Multitasking
This allows computers to carry out more than one task at a time.

Each process taking place uses a fraction of the hardware resource, this is
monitored by the OS to ensure that the processes are running properly:

1. Resources are allocated to a process for a specific amount of time. 2. The


process can be interrupted while running.

3. Processes are organized into priority levels so they can use resources
according to the priority.

Multitasking is also helpful as the main memory, HDD/SSD and virtual memory
are better managed, this is an effective use of CPU time.
User Accounts Management
Computers allow multiple users to use one computer, this means that the data of each
user must be kept separate from the other.

When this happens, each user is allowed to:

1. Customise their screen layouts and other settings.


2. Use separate files and folders and manage them by themselves.

Admins

The management of the user accounts is generally overseed by an admin.

The admin/administrator can create and delete users and can also restrict their activity
on the system.

[3] Running of Applications


The OS provides application software a platform to run on.

How It Works
When a computer starts:

1. Part of the OS is loaded into the RAM (this is called booting up or bootstrap loading).

2. The start-up of the computer’s motherboard is handled by the BIOS (Basic Input/Output
System).

3. The BIOS then tells the system where the OS can be found. 4. The BIOS then
loads the part of the OS that is required to be executed.

Firmware
The BIOS is referred to as firmware.
Firmware is a program that provides low level control for devices.

EEPROM
The BIOS is stored in a special ROM called EEPROM which stands for
“Electronically Erasable Programmable ROM”.

The EEPROM is a flash memory chip which means that its contents remain the same even
when the computer is turned off.

The only problem is that the user can rewrite, update, or even remove the BIOS.

Note: You do not need to know a lot about EEPROM, just this much is enough.

CMOS
CMOS stands for “Complementary Metal Oxide Semi-conductor”. The

CMOS chip stores the settings of the BIOS.

The CMOS is charged with the battery on the motherboard, this means that if the user had
changed the settings, they will be set to the factory settings.

In The End…
The application software will be under the control of the OS and will need to access system
software when running. Different parts of the OS will need to be loaded from the RAM as
the software runs.

[4] Interrupts
An interrupt is a signal sent from a device or from a software to the
microprocessor.

Interrupts allow computers to multitask.


The interrupt causes the microprocessor to stop temporarily and service the interrupt.

What Causes Them?


Interrupts can be caused by:

1. Timing signals
2. Input/output processes: like printer requiring more data
3. User interactions: Like key presses or mouse movement
4. Software errors that cause problems: Like trying to divide by 0 or trying to access
memory space that is being used by other software

5. Hardware fault: Like paper is jammed in the printer

What Happens When Interrupt Is Received Once the


interrupt signal is received, the microprocessor:
1. Continue doing what it was doing
2. Stops and services the device or software that sent the signal. To decide

what to do, the computer establishes “interrupt priorities”.

Servicing The Interrupt


1. The computer first saves the task being run, this means that it saves the contents of
the Program Counter (PC) and other registers.

2. The Interrupt Service Routine (ISR) is executed by loading the start address into the
program counter (PC).

3. Once the interrupt is fully serviced, the status of the interrupted task is reinstated,
all the register contents are received, and the task proceeds.

Buffers
A buffer is a memory area that stores data temporarily.
FOLLOW ME ON:
Programming Language Types & IDEs

[1] High & Low-Level Languages


Name High Level Languages (HLL) Low Level Languages (LLPL)

Definition A language like the human A language that relates to


language which programmers specific architecture and
can easily use and understand. hardware of a particular
system from machine code,
binary and hexadecimal.

Examples Python, Java, C++, etc. Machine code & Assembly


Languages

Advantages 1. Easier to read, write, debug, 1. Can make use of special


and understand the code. 2. hardware.
Quicker to write programs. 3. 2. Incudes special, machine
Easier to maintain programs in dependant instructions.
use. 3. Programs are fast and don’t
4. Programs can be run on any take up much space.
computer.

Disadvantages 1. Programs can be large. 2. 1. Takes long time to debug


Programs may take long to and write the programs.
execute. 2. Code is hard to understand.
3. Programs may not be able to
make use of special
hardware.

[2] Assembly Languages


Assembly language is made up of mnemonics (like LDA, STO, etc).
Mnemonic Meaning

LDA Gets the value of a variable and loads it into the accumulator.

STO Replaces the value of a variable with the value stored in the
accumulator.
ADD Adds the value of a variable with the variable in the accumulator.

[3] Translators
A translator is a utility program that translates the program into binary so it can be run by a
computer.

Compilers, Interpreters, and Assemblers


Name Compiler Assembler Interpreter

What it does Translate HLL Translates Executes a HLL


program to assembly program one line at a
machine code. language program time.
to machine code.

Action When Error is Generates an Generates an Stops running and


Found error report. error report. outputs error message

Executable Produced? Yes Yes No

How Many Machine One statement One statement is One statement may
Code Instructions? can be many one instruction. require execution of
instructions. many instructions.

Compiler Needed? Yes Yes No

When Is It Used? Distributed for Distributed for When program is in


general use. general use. development.

[4] Advantages & Disadvantages of


Compilers & Interpreters
Name Compilers Interpreters
Advantages 1. Compiled programs can be 1. It is easy to edit the
stored ready to use. programs when in
2. Compiled programs can run development.
without a compiler. 2. Easier and quicker to debug &
3. Compiled programs are test programs in
executed in less time. development.
4. Compiled programs take less
memory when executed.

Disadvantages Takes long time to write, 1. Programs cannot be run


debug, and test programs without interpreter.
during development. 2. Programs take longer to
execute.

[5] IDEs
IDE stands for “Integrated Development Environment”.

IDEs are used by programmers to aid the writing and development of programs.

Examples of IDEs include PyCharm, VS Code, Notepad++, etc.

General Features
Feature Description

Code Editor Allows program to be written and edited without needing


separate text editor.

Translator This can be an interpreter and/or a compiler to enable the


program to be executed.
The interpreter is used for developing and the compiler is used
to produce a final version which can be used.
Runtime This used to check if there are any logic errors as this shows us
environment with how all the values of all the variables change in runtime. We can
debugger also use breakpoints which stope code execution at a certain point
of the code.

Error Dynamic error checking finds possible errors in the code as we


diagnostics & type, the error is pointed out and corrected automatically by the
Auto correction IDE.

Auto Completion Context sensitive prompts with text completion for variable names,
functions, and other reserved words.

Auto-Documenter These are helpful guides that tell us about functions, syntax, etc.

Pretty Typing This is when the IDE gives colour to the code in a meaningful way
as it can show or categorise something (like functions are blue or
strings are orange)

Thanks For Reading! Share

these if you think these will be helpful to anyone else!


NOTES BY MST_CREATOR Page 19

You might also like