[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive]
Monash University

FIT2022 Computer systems 2 - Semester 2, 2009

Chief Examiner:

Dr Carlo Kopp
Lecturer
Phone: +61 3 990 55229
Fax: +61 3 990 55159

Lecturer(s) / Leader(s):

Clayton

Associate Professor John Hurst
Associate Professor
Phone: +61 3 990 55192
Fax: +61 3 990 55159

Dr Carlo Kopp
Lecturer
Phone: +61 3 990 55229
Fax: +61 3 990 55159

Contact hours: Email Carlo.Kopp@infotech.monash.edu.au

Malaysia

Ms Mylini Munusamy

Additional communication information:

Name: Dr Carlo Kopp

Location:

  • Room 210 in Building 63, Clayton campus. (Consultation by appointment)

Phone: (03) 990 55229 (Use email please)

Email: Carlo.Kopp@infotech.monash.edu.au (preferred method of contact)

Consultation Hours:

  • By appointment (lecturer is part time staff)

Introduction

Welcome to FIT2022 Computer Systems 2. This 6 point unit is core to all students in the Bachelor of Computer Science and the Bachelor of Software Engineering. The unit has been designed to provide you with an understanding of computer systems and the role of the operating system in delivering computing resources to applications programs.  It takes a balanced theory and practice approach to the design of the software layer between the raw hardware, and the application environment.  Topics include processes, memory management, I/O device and file system design, networking and security.

Unit synopsis

This unit covers software organisation of multi-user and multi-tasking computers. The principles of operating systems are covered with reference to the underlying hardware requirements and are illustrated by case studies. Topics include operating system structure and services, multi-programming processes, CPU scheduling, memory management, device management, synchronisation, deadlocks, virtual memory and file systems. Furthermore this unit explores the internal mechanism of computers and how they are organised and programmed. Topics include machine arithmetic, micro programming, caches, translation look-aside buffers, RISC machines, and pipelined and parallel organisation.

Learning outcomes

On completion of this unit students will have knowledge of:

  1. operating systems as resource managers for CPU context switching, process scheduling and job scheduling;
  2. memory management and virtual memory systems; I/O device drivers and management;
file subsystems;
  1. abstract resource allocation strategies;
  2. asynchronous and synchronous communication mechanisms and their use in operating systems; and
  3. inter process communication and its use in distributed computer systems.

Upon completion students will have gained understanding of:

  1. the internal mechanism of computers and how they are organised and programmed, including machine arithmetic, interrupts micro programming, caches, translation look-aside buffers, RISC machines, and pipelined and parallel organisation.

Upon completion students will have gained practical skills in:

  1. programming OS components, such as job and process schedulers, page replacement algorithms, and file management subsystems, as well as programming interrupt handlers and contact switching.

Contact hours

Equivalent to 5 hrs/week

Workload

  • 3x1-hour lectures per week
  • 1x1-hour tutorial  per fortnight
  • 1x3-hour laboratory session per fortnight
  • an additional 14 hours per fortnight of self-study and/or peer-group discussion of the topics addressed in class contact time.

Tutorials and lab sessions will alternate week by week.

Unit relationships

Prerequisites

FIT1001 and (FIT1008 or FIT1015 or CSE1303 or CSC1030)

Prohibitions

CSE2302

Relationships

see under prerequisites

Teaching and learning method

The lectures define the formal content of the unit, and will be used as the initial point of reference for unit knowledge outcomes. This knowledge will be built upon by the tutorials and laboratories in order to address the higher level objectives relating to skills and and application.

The tutorials are designed to reinforce lecture understandings, and to prepare the student to apply these understandings towards building the skills required to complete the laboratory sessions.

The laboratories are designed to give the student hands-on development of various computer systems concepts. Each lab is offered as a partial developed set of program exercises, where demonstrations show the student what is required, and extensions to complete or extend the exercise are required to be completed by the student. This is called the lab work, and it is a required part of the assessment for the unit. Students may work together in pairs (if they wish) for this purpose.

An introduction to the topic of the lab will be provided in the tutorial in the week preceeding the lab. (Students should attend all tutorials, and a roll will be kept.) Students should read through the lab sheet in the week between the tutorial and corresponding laboratory, and should prepare their lab work as required.

 Students will be required to maintain a journal, recording the things that they have studied in lectures, tutorials and laboratories.  Of particular noteworthy record are difficulties with the material, and how these difficulties were resolved (if at all).

In addition, some examinable material is identified in the on-line Learning Modules page: This will be available under MUSO. This page contains links that will refer to material NOT covered in lectures, but yet is examinable.  The material will not be required for a pass in the unit, but students aiming for higher grades are expected to read and assimilate the material. 

Timetable information

For information on timetabling for on-campus classes please refer to MUTTS, http://mutts.monash.edu.au/MUTTS/

Tutorial allocation

On-campus students should register for tutorials/laboratories using the Allocate+ system: http://allocate.cc.monash.edu.au/

Unit Schedule

Week Topic References/Readings Key dates
1 Computer Systems Overview Stallings Chap 1  
2 Operating Systems Overview Stallings Chap 2  
3 Process Description and Control Stallings Chap 3  
4 Threads, SMP, Microkernels Stallings Chap 4  
5 Concurrency: Mutual Exclusion and Synchronization Stallings Chap 5  
6 Concurrency: Deadlock and Starvation Stallings Chap 6  
7 Memory Management Stallings Chap 7  
8 Virtual Memory Stallings Chap 8  
9 Uniprocessor Scheduling Stallings Chap 9  
10 I/O Management, Disk Scheduling Stallings Chap 11  
Mid semester break
11 File Management Stallings Chap 12  
12 Security, Networking Stallings Chap 14,17  
13 revision    

Unit Resources

Prescribed text(s) and readings

Stallings, W, Operating Systems Internals and Design Principles, Prentice Hall, 2009, 0-13-600632-9

Recommended text(s) and readings

Silberschatz, A.; Galvin, P.B.; and Gagne, G.
Operating System Concepts
Wiley

Required software and/or hardware

Python 2.3 or later

svn clients, and an svn server accessible in the laboratories

ftp clients, and a writable FTP server accessible in the laboratories

Equipment and consumables required or provided

Students will need access to:

  • a personal computer (preferably with Linux)
  • the internet via dial-up connection or preferably by broadband

On-campus students may use the facilities available in the computing labs. Information about computer use for students is available from the ITS Student Resource Guide in the Monash University Handbook.

Study resources

Study resources we will provide for your study are:

MUSO will provide access to all the supplied teaching materials.  Students are also expected to purchase a copy of one of the recommended text books.

Assessment

Overview

Examination (3 hours): 60%; Assignments: 40%

Faculty assessment policy

To pass a unit which includes an examination as part of the assessment a student must obtain:

  • 40% or more in the unit's examination, and
  • 40% or more in the unit's total non-examination assessment, and
  • an overall unit mark of 50% or more.

If a student does not achieve 40% or more in the unit examination or the unit non-examination total assessment, and the total mark for the unit is greater than 44% then a mark of no greater than 44-N will be recorded for the unit.

The unit is assessed with two assignments and a three hour closed book examination. Further to the Faculty policy, to pass the unit you must:

  • attempt both assignments and the examination  
  • complete the laboratory hurdle (8 or more out of a possible 12 marks)

Assignment tasks

Assignment coversheets

Assignment coversheets are available via "Student Forms" on the Faculty website: http://www.infotech.monash.edu.au/resources/student/forms/
You MUST submit a completed coversheet with all assignments, ensuring that the plagiarism declaration section is signed.

Assignment submission and return procedures, and assessment criteria will be specified with each assignment.

  • Assignment task 1
    Title:
    Assignment 1
    Description:
    Sample Assignment Only

    You are to write a Python program to display a (background) image, and at the same time interact with the user. For this, you will need to use Python threads.

      The objectives of this assignment are to:
    1. Build upon Python programming skills begun in Lab Session 1 (Objective 6);
    2. Develop skills in concurrent programming (Objective 3); and
    3. Write a program that will be a useful demonstration of your learning in this unit (Objective 8).
    The exercise is designed to be both fun, and useful! - you should be able to use it as a convenient way of using your background window to run through your favourite digital photographs.
    Weighting:
    20%
    Due date:
    TBD
    Remarks:
    requires Python programming
  • Assignment task 2
    Title:
    Assignment 2
    Description:
    Sample Assignment Only


    The Banker's algorithm, and Page Replacement algorithms
    Weighting:
    20%
    Due date:
    TBD
    Remarks:
    requires Python programming

Examination

  • Weighting: 60%
    Length: 3 hours
    Type (open/closed book): Closed book

See Appendix for End of semester special consideration / deferred exams process.

Due dates and extensions

Please make every effort to submit work by the due dates. It is your responsibility to structure your study program around assignment deadlines, family, work and other commitments. Factors such as normal work pressures, vacations, etc. are not regarded as appropriate reasons for granting extensions. Students are advised to NOT assume that granting of an extension is a matter of course.

Students requesting an extension for any assessment during semester (eg. Assignments, tests or presentations) are required to submit a Special Consideration application form (in-semester exam/assessment task), along with original copies of supporting documentation, directly to their lecturer within two working days before the assessment submission deadline. Lecturers will provide specific outcomes directly to students via email within 2 working days. The lecturer reserves the right to refuse late applications.

A copy of the email or other written communication of an extension must be attached to the assignment submission.

Refer to the Faculty Special consideration webpage or further details and to access application forms: http://www.infotech.monash.edu.au/resources/student/equity/special-consideration.html

Late assignment

Assignments received after the due date will be subject to a penalty of 5% per day, including weekends. Assignments received later than one week (seven days) after the due date will not normally be accepted. In some cases, this period may be shorter if there is a need to release sample solutions.

This policy is strict because comments or guidance will be given on assignments as they are returned, and sample solutions may also be published and distributed, after assignment marking or with the returned assignment.

Return dates

Students can expect assignments to be returned within two weeks of the submission date or after receipt, whichever is later.

Appendix

Please visit the following URL: http://www.infotech.monash.edu.au/units/appendix.html for further information about:

  • Continuous improvement
  • Unit evaluations
  • Communication, participation and feedback
  • Library access
  • Monash University Studies Online (MUSO)
  • Plagiarism, cheating and collusion
  • Register of counselling about plagiarism
  • Non-discriminatory language
  • Students with disability
  • End of semester special consideration / deferred exams
[an error occurred while processing this directive]