Você está na página 1de 35

System Software

Types

Types of System Software


Operating System

Device Drivers Software that acts as

'translator' between programs and hardware devices

Plug and play Hot plugging

Types of System Software (cont)


Utilities programs to keep PC running

efficiently

Some included with OS e.g Scandisk, Disk Defragmenter, Backup Third party utility software, e.g. Norton Utilities, Anti-virus packages, WinZip, etc.

Programming languages, Assemblers,

Interpreters, Compilers DBMS (Database Management System), e.g. Oracle SQL Server, MySQL, DB2

Malicious programs
Viruses: Boot sector virus Executable virus Macro virus Worms A program that copies itself into memory, disks or through network connections disk space/memory can become full Trojan horse Disguised as something useful when opened can damage PC or provide 'back-doors'

System Software

Structure of an Operating System

Main Components of Operating Systems


The user interface the part of the OS that

handles the dialogue with the user. GUI (graphic user interface) or WIMP (Windows, icons, mouse and pointers). The Kernel (Nucleus) The central module of the operating system that is loaded into memory when the computer starts up and remains there until the computer switches off.

The Kernel
It is responsible for

Memory Management Process Management Storage Management


Minimize turnaround time Maximize throughput. Utilize resources as efficiently as possible.

The aim of the kernel is to:


Process Management
A process is a program or task that is

currently being executed. Kernel must ensure each process receives the resources it requires. Ensures that processes follow sequence in a logical order by using a scheduler. Handles processes in multitasking so that they appear to be running simultaneously.

Memory Management
The OS

Assigns each program the memory it requires Monitors the contents of the memory Clears items out of memory when they are no longer needed. Handles illegal access to memory blocks (called exceptions)

Memory Areas
RAM Main system memory Virtual Memory Using an area of the Hard Drive as if it were

RAM. Also called a swap file. Thrashing is when the computer uses too much Virtual memory and there is not enough RAM. Buffers are small storage areas in RAM for device I/O. They are small and fast. Eg. Mouse, keyboard. SPOOLers (Simultaneous Peripheral Operation On Line) are larger storage areas on the hard disk for device I/O. They are large and slow. Eg. Printer.

Processing Techniques

Software Component

Single-tasking
Only one program can be processed at a

time. Resources are all allocated to the single program that is being used. Only one user at a time.

Multi-tasking 1
The tasks share RAM at the same time.

Processing time is allocated to different

programs in rotation. Because of the processor speed, programs appear to be running simultaneously. Resources are allocated as needed by the programs. Two kinds of multi-tasking:

Pre-emptive and Co-operative

Multi-tasking 2
Co-operative multi-tasking

Each program can control the CPU for as long as it needs. Eg. Windows 3.1
The OS controls the use of the CPU Order is maintained and monitored. Eg. Windows 95 onwards, OS/2 and UNIX.

Pre-emptive multi-tasking

Multi-threading
Program is designed to work in pieces called

threads. OS can execute different threads simultaneously. Threads must be designed by the programmer. E.g. Spell checker in Word checks spelling while you type.

Multi-processing
Can only be achieved if there is physically more than

one processor in the computer. Each processor is capable of executing a different program or part of program. Threads also work well with multi-processing systems. Requires a special Motherboard Requires an OS that supports multi-processing. Multi-processing supports up to 128 Processors. More than 128 Processors must by placed in a separate system this is then called parallel processing.

Batch Processing
Jobs and their associated data are collected

in a single batch at a central location and then they are processed without user intervention. Eg. A Bank stores all of the loan transactions done for that day on a server and then the transactions are only processed that night after the bank is closed. Common use today is Payroll.

Real-time processing.
Software that controls the processing keeps

track of an external process and keeps updating. Eg. ATM Banking as you are drawing money the ATM is updating your account at the main bank branch. You see your balance immediately. Other examples space shuttle, power plants, bookings over the internet, on-line shopping.

Which Operating Systems?


Single-tasking

MS-DOS, Palm OS
Multi Tasking, Windows 95/98/2000/XP/Vista Unix, Mac OS X, Linux Windows NT/2000/XP/Vista Unix, Mac OS X, Linux

Multi-tasking

Multi-processing

System Software

BIOS, CMOS, REGISTRY

BIOS Basic Input Output System


Built-in software used to control hardware

at lowest possible level Stored on ROM chips Boots PC and manages flow of data between OS and certain attached devices Settings configurable, e.g. clock speed, order in which PC boots, etc. Software 'talks' to BIOS by means of software interrupts

CMOS Complimentary Metal Oxide Semi-conductor


Type of memory chip non-volatile battery

Stores 2 types of data

Data read by BIOS during start-up (info about CPU, RAM type, keyboard, drives, etc. Data set by user (date, time, boot sequence, etc.)

Registry
In Windows OS:

Hierarchical database info about


System Software Drivers Peripherals Users

Fragmentation
When files are Fragmented files

deleted from and written to HD parts of same file get scattered across HD In diagram:

Red: MyDoc.doc Green: Salaries.xls Yellow: Database All files fragmented

Fragmentation
Result: Slows down Fragmented files

opening of any of these files

Fragmentation
Disk Defragmenter Defragmented files

rewrites files so that all parts of file in one contiguous space on HD In diagram:

Red: MyDoc.doc Green: Salaries.xls Yellow: Database All files now defragmented

Fragmentation
Defragmentation Defragmented files

does NOT create more space on HD only speeds up reading of the files

DLL files
A Dynamic Link Library (DLL) is a file of code containing functions that can be called from other executable code (either an application or another DLL). Programmers use DLLs to provide code that they can reuse to do specific jobs. Unlike an executable (EXE) file, a DLL cannot be directly run. DLLs must be called from other code that is already executing.

Open source versus other software

Windows versus Linux


Windows Linux

Created by the Microsoft company.

Originally created by Linus Torvalds who freely distributed the source code has since been modified and adapted by several people.

Licensing fees are paid to install and run it on a computer.

No licensing costs are paid.

Important Terms
Intellectual Property

Product of someone's thoughts. Copyright is applicable. Software Licenses The right to load a program on your computer. Distribution Distribution package of Linux e.g. SuSE, Debian, Red Hat.

Open source software


License given to access and modify source

code. The modified code may not be sold must be distributed freely.
Called a GPL (General Public License).

Advantages of Open source software


No cost / low cost (usually free).
Access to source code. Freedom to adapt and change the software to

suit your own needs. Access to a community of users / support.

Disadvantages of Open source software


No one to hold responsible. Risk of poor support. Higher skills needed if you want to use this

model to its fullest potential. Various varieties of the same software can arise.

Proprietary software
Shrinkwrap Shareware Freeware

What you buy in stores, software in boxes sealed with shrink wrap.

Download. Uses the Try before you buy concept if you like the software and want to use it past the trial date / access all the features you must pay a license fee. Usually cheaper than shrink wrapped software because you do not have to pay a middle man.
Copy / share with your friends.

Download. Free.

May not be copied. May only be used on one computer.

Copy / share with your friends.

Usually limited in features / time.

Differs from open source software because the software is free but you cannot access the source code.

Você também pode gostar