Professional Documents
Culture Documents
COMP0001
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 1 / 31
2
Lecture 3
System Software
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 2 / 31
Contents
3
1 Operating System
Utility software
3 Language Translators
Partial compiling and interpreting
Integrated development environment (IDE)
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 3 / 31
Content
4
1 Operating System
Utility software
3 Language Translators
Partial compiling and interpreting
Integrated development environment (IDE)
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 4 / 31
The need for an OS
5
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 5 / 31
Operating system tasks
6
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 6 / 31
Memory management
7
memory optimisation
memory organisation
memory protection
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 7 / 31
Security management
8
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 8 / 31
Process management
9
Process management
involves the allocation of resources and permits the sharing and
exchange of data, thus allowing all processes to be fully synchronised
(for example, by the scheduling of resources, resolution of software
conflicts, use of queues and so on)
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 9 / 31
Hardware management
10
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 10 / 31
File Management
11
File management
defining the file naming conventions
performing specific tasks, such as create, open, close, delete,
rename, copy, move
maintaining the directory structures
specifying the logical file storage format (such as FAT or NTFS if
Windows is being used)
ensuring memory allocation for a file by reading it from the
HDD/SSD and loading it into memory.
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 11 / 31
Utility software
12
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 12 / 31
Content
13
1 Operating System
Utility software
3 Language Translators
Partial compiling and interpreting
Integrated development environment (IDE)
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 13 / 31
How an operating system can maximise the use
14
of computer resources
OS and resources
Bootstrap program loads part of the operating system into main
memory (RAM) from the hard disk/SSD and initiates the start-up
procedures.
Resource management can be split into three areas:
The CPU
Memory
The input/output (I/O) system
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 14 / 31
OS and resources cont...
15
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 15 / 31
The Kernel
16
The Kernel
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 16 / 31
The Kernel
17
The Kernel
The kernel is part of the operating system.
It is the central component responsible for communication between
hardware, software and memory.
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 17 / 31
Multitasking
18
Multitasking allows computers to carry out more than one task (known
as a process) at a time.
To ensure multitasking operates correctly (for example, making sure
processes do not clash), scheduling is used to decide which processes
should be carried out.
There are two types of multitasking operating Systems
1 preemptive (processes are pre-empted after each time quantum)
2 non-preemptive (processes are pre-empted after a fixed time
interval).
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 18 / 31
Preemptive Vs Non- Preemptive
19
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 19 / 31
Process scheduler
20
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 20 / 31
Task/process priority
21
Task/process priority
Once a task has been given a priority, it can still be affected by
deadline for the completion of the process
how much CPU time is needed when running the process
the wait time and CPU time
the memory requirements of the process.
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 21 / 31
22
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 22 / 31
Content
23
1 Operating System
Utility software
3 Language Translators
Partial compiling and interpreting
Integrated development environment (IDE)
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 23 / 31
Translation and execution of programs
24
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 24 / 31
Assemblers
25
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 25 / 31
Assemblers
25
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 25 / 31
Compilers and interpreters
26
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 26 / 31
Compilers and interpreters
26
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 26 / 31
Compilers and interpreters
26
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 26 / 31
Comparison between assemblers, compilers
27
and interpreters
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 27 / 31
Partial compiling and interpreting
28
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 28 / 31
Example Java source code
29
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 29 / 31
intermediate code(Bytecode)
30
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 30 / 31
Integrated development environment (IDE)
31
IDEs
An integrated development environment (IDE) is used by programmers
to aid the writing and development of programs. There are many
different IDEs available; some just support one programming
language, others can be used for several different programming
languages. NetBeans®, PyCharm®, Visual Studio® and
SharpDevelop are all IDEs currently in use.
IDEs usually have:
a source code editor
a compiler, an interpreter, or both
a run-time environment with a debugger
an auto-documenter.
Ilenius Ildephonce (The UWI, Five Islands) COMP0001-Lecture Week 3A September 22, 2021 31 / 31