Professional Documents
Culture Documents
R. ANDERSON
Translators
Assembler
Convert low-level assembly code into machine code
Uses a lookup table to match codes and replace the code with the
appropriate machine coded instruction in binary
C
Compiler
il
Translates entire source code written in a high level language (human
readable) into machine code (machine readable). A compiled version of
the file is produced.
produced
Program can only be executed after translation complete
Changes to the source code require complete re-translation (re-compile)
Interpreter
Conversion and subsequent Execution is done line by line (no object file
is created)
Operating System
y The p
primaryy system
y
software that p
provides the
User
Programs
Inter Process Communication
Ports
Hardware
Drivers
OS Utilities
Antivirus
Encryption
Encr ption
Use of a specially designed algorithm to convert regular text into special codes
which cannot be understood unless the algorithm is re-applied (decryption) to
return the coded text to its original form.
RSA
Compression
File
il and
d Disk
i k Management
Clusters
Defragmenting
g
g
Folders
File Properties
Functions of the OS
y Process Management
{ Process is an instance of a software/program running on the system
{ Processes Require Resources [CPU Time, Memory, Files, I/O devices
Process States
| Ready
R d process can use th
the CPU if available
il bl
| Running process has the attention of the CPU
| Blocked process waiting for an event to trigger its start
Functions of OS II
y Memory Management
{
{
Allocate M
All
Memory to A
Applications
li i
Allocate OS memory
y User Interaction
{
{
{
y Backing
g Store //Peripheral
p
Management
g
{ Peripherals
{ Simultaneous Peripheral Output On Line (SPOOL)
y Interrupt Handling
More OS
y Multiprogramming
p g
g ((multi-tasking)
g)
{ Many Programs run concurrently
{ Waiting time is used to switch between running tasks
y Multi-Tasking (management of processes)
{ Shared Processes between Users
{ Different tasks but same application process
y Queues
{ FIFO First In First Out
{ Priority Bases on higher priority
OS?
y Concurrency Issues
Same task many processes
Synchronisation
y File Locking
y Preserve data integrity
{
y Deadlock
{
One task is using a resource that the other requires, and the one
holding is waiting for one from the requester
File Update Example [ 2 processes, same file]
y Interrupts
{
{
Managing Memory
y Direct Memory Access (DMA)
{
y Fixed Partitioning
g
{
y Variable
i bl Partitioning
ii i
{
Managing Memory II
y Virtual Memory
y
{ Split memory into small sections called page frames
{ Split user programs into to pages so that each page of users
programs occupies exactly the same space as a page frame in
memory
{ Only the section of the program necessary for execution is
loaded into RAM
{ Disadvantage:
There may be delays in loading the dormant sections into RAM
Thrashing: The process of removing and reloading pages
| This may reduce the time used to execute programs.
y Scheduling (example)
Processing
g is carried out from beginning
g
g to end without user interaction
| Processing requirements for job defined in advance
| A batch of several jobs are loaded at the same time
Keeps the processor busy switching between jobs
Example:
Processing payroll data supplied as data files and printing out payslips
y Interactive OS
{ User interacts directly
y with system
y
to supply
pp y commands and data as the
application program undergoes execution. Results are received
immediately.
OS Classification I
y Real Time OS
{
OS Classification II
y Network OS
{ Required when multiple computers are connected together on
a network
{ Controls who log on and off the network by username and
password in order to protect applications, files and other
resources available on the network.
{ Allow authenticated users with appropriate access rights to use
software and other resources on the network.
Further Reading
y Understanding
g Computer
p
Science byy Rayy Bradleyy
{ 470 - 495