Operating Systems and Computer Structures G2



Jan Newmarch
room: 11C20
Tel: 201 2422
email: jan@ise.canberra.edu.au
WWW: http://pandonia.canberra.edu.au

Aims

An Operating System is the most widely used piece of software in any computer. This unit aims to teach the concepts underlying Operating Systems, and to show how different choices in Operating System design and implementation have effects on applications, application programmers and user environments.

Objectives

At the end of this unit students will understand the various levels of system and application software. They will be familiar with the major Operating System services such as file systems, memory management, process management, device control and network services. They will understand how design decisions in Operating Systems affect users of the system.

In addition, students will have used a major Operating System extensively, with experience in using an interactive command line programming language. They will also will have experience in using a systems programming language with an Application Programmers Interface to the Operating System for its services. This semester the Operating System will be Unix, and the systems programming language will be C.

Entry Competencies

For undergraduates: Data Structures and Algorithms, and Computer Organisation 2. For graduates: Programming Techniques G1, Systems Analysis G1 and Computer Structures G1.

If you do not have CO2, you should not do this unit. CO2 and about half of Operating Systems will combine to form a new unit Systems Software next year. The other half will combine with Data Comms to form a new third year unit. Similarly, CSG1 and CSG2 will combine into a new 4CP unit next year. Computer Engineers shold be studying this material as the second half of Comp Eng 2 this year.

Students have the ability to program in both high and low level languages. They understand how to design algorithms using abstract data types, and implement the algorithms. In addition, they have an understanding of basic machine architecture and organisation.

Assessment

There will be three assignments in this unit, plus a final exam. To achieve a pass, it is necessary and sufficient to (If an assignment is graded as unsatisfactory, it may be resubmitted at most once.) The assignments are due

Bibliography

The recommended text is: Andrew S. Tanenbaum, Modern Operating Systems, Prentice-Hall.

Recommended further reading includes

Unit Content

The lecture schedule is expected to be

Other matters

There will be a one hour tutorial each week, immediately followed by a one hour laboratory. The purpose of the tutorial is to discuss more theoretical issues. The purpose of the laboratory is to gain and practice skills in using the resources provided by the Operating System. Both the tutorial and laboratory are regarded as neccessary.
There will not be a tutorial or laboratory in week one.
Passwords and accounts will be issued later.

What is an Operating System?

Example: What is this?

Example: What is this?

Example: What is this?

A view of a computer system is

O/S Command and Response Languages

The command language allows the user to request the computer to execute commands. The command response language is used by the computer to signal responses to these commands. Often these are both managed by a Command Interpreter

Example: MSDOS

The command interpreter is command.com. Typical responses are
C:>
Bad command or file name
Not ready reading drive A
Abort, Retry, Fail?
The command language accepts lines of characters. The first word of the line is expected to be the name for a program somewhere in the system.

Actually it is more complex than this: some words represent commands that command.com executes directly, some belong to a programming language understood by command. com, and the rest are supposed to be ordinary programs.

Example: Microsoft Windows Program Manager

The response ``language'' is a set of icons in program groups and various dialogs. The command language recognises double-clicks on icons by the mouse and various menus.

Operating System

The Operating System is not the command interpreter. The Operating System is the program that must be running all the time, and cannot be replaced without it being a different O/S.

Example:

command.com can be replaced by other ``shells'' such as ksh.exe, and you still are running MSDOS

On the other hand, if you run Dr Dos, you are running a different Operating System - but one that tries to look like MSDOS.

The O/S is responsible for bridging the gap between the hardware and application needs. That is, it manages the hardware and supplies ``services'' to application programs (including the command interpreter). Example services include:

Course content

Mechanism

The s/w components used in this course are

Structure

Lecture availability

Last year's notes are in the bookshop.

The notes are on the Faculty's World Wide Web server under http://pandonia.canberra.edu.au/. These will be updated throughout the semester. From there you will be able to read/copy them on Unix or Dos. You will be able to access them from any of the University's computers.

Course Environment

Unix/C on your PCs

There is a public domain Unix-clone called Linux. This can be used as another O/S besides MSDOS. You can set up partitions on your hard disk with MSDOS in one part, Linux in another. The complete Linux installation is available by arrangement with Ross Johnson. To seriously run Linux you will need at least 8M RAM and 100M disk.

There is a public domain C compiler that runs under MSDOS on 386 machines. The files for this are stored in D:\DJgpp\gcc260bn.zip.

Some of the Unix utilities have been ported to DOS. They are available as D:\os\dos-unix. Their quality and completeness is unknown.

Summary

This lecture has given a list of the topics to be covered, with details of the lecture schedule and assessment mechanisms. The supplied course environment has been described, plus some information on how you can run similar environments on your own PCs.
This page is http://pandonia.canberra.edu.au/OS/l1_1.html, copyright Jan Newmarch.
It is maintained by Jan Newmarch.
email: jan@ise.canberra.edu.au
Web: http://pandonia.canberra.edu.au/
Last modified: 18 July, 1995