Professional Documents
Culture Documents
System Software System Software: R Anderson R. Anderson
System Software System Software: R Anderson R. Anderson
System Software System Software: R Anderson R. Anderson
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)
Statements from the source program is fetched and executed line by line p g y
Operating System
The primary system software that p p y y provides the interface between the user, processes, applications and hardware. INTERFACE
User Programs
Inter Process Communication Ports
Hardware
Drivers
OS Utilities
Antivirus Encr ption Encryption
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
Reducing file size to maximize disk usage or transfer over communication channel. File Allocation Table (formatting)
Clusters
Functions of the OS
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 CPU if available the il bl Running process has the attention of the CPU Blocked process waiting for an event to trigger its start
Functions of OS II
Memory Management
Allocate M All Memory to A li i Applications Allocate OS memory
User Interaction
User Interface (GUI, Pop-Up, Pull Down) (GUI Pop Up Notifications User Management/Security
Interrupt Handling
More OS
Multiprogramming ( p g g (multi-tasking) g)
Many Programs run concurrently Waiting time is used to switch between running tasks
Queues
FIFO First In First Out Priority Bases on higher priority
OS?
Concurrency Issues
Same task many processes Synchronisation File Locking Preserve data integrity
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]
Interrupts
Generated by a process to request the attention of the processor or some resource Interrupt Priority
Managing Memory
Direct Memory Access (DMA)
Allow intelligent peripherals to access memory directly instead for going through the system/processor routine.
Fixed Partitioning g
Specific sizes/partitions are set up in memory and jobs/ processes are loaded in a partition when required. Partitions can be fixed varied sizes Problem: Partitions may not be able to facilitate size of process however memory is wasted.
Variable Partitioning i bl ii i
Dynamically allocate partitions when necessary Process is tedious and processor intensive
Managing Memory II
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.
Scheduling (example)
Example:
Processing payroll data supplied as data files and printing out payslips
Interactive OS
User interacts directly with system to supply commands and data as the y y pp y application program undergoes execution. Results are received immediately.
Example: travel agent booking and confirming a place on a package holiday for a client waiting at the counter.
OS Classification I
Real Time OS
Support applications which are non-sequential in nature, that is, programs which do not have a start->process->end structure Deal with several events which happen in p pp parallel and at unpredictable moments (eg. clicking a mouse button) Have to execute process and provide response within a specified time interval. Some systems are safety critical, must be fail safe and guarantee response within time interval Example: process control in a chemical nuclear power station, up to station 1000 signals can arrive per second from sensors attached to the system being controlled. The response time must be less than one thousandth of a second
OS Classification II
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.
Server
A computer or device providing some service to computers on a network
File server, Database Server, Print Server
Further Reading
Understanding Computer Science by Ray Bradley g p y y y
470 - 495