[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]

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

Lecturer(s) / Leader(s):

Clayton

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

Malaysia

Ms Mylini Munusamy

Additional communication information:

Name: Prof John Hurst

Location:

  • Room 123 in Building 63, Clayton campus (Wed/Thu)
  • Room H7.78, Caulfield Campus (Tue/Fri)
  • Consultation hours published in Moodle, or by appointment

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

Email: John.Hurst@monash.edu (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

At the completion of this unit students will have:
A knowledge and understanding of:
  • operating systems as resource managers for CPU context switching, process scheduling and job scheduling;
  • memory management and virtual memory systems; I/O device drivers and management;
  • file subsystems;
  • abstract resource allocation strategies;
  • asynchronous and synchronous communication mechanisms and their use in operating systems;
  • interprocess communication and its use in distributed computer systems;
  • the internal mechanism of computers and how they are organised and programmed, including machine arithmetic, interrupts microprogramming, caches, translation look-aside buffers, RISC machines, and pipelined and parallel organisation.
Developed the skills to:
  • 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

3 hrs lectures/wk, 3 hr laboratory/fortnight, 1 hr tutorial/fortnight

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 one of FIT1008, FIT1015, CSE1303, CSC1030

Prohibitions

CSE2302

Teaching and learning method

Teaching approach

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.its.monash.edu.au/

Unit Schedule

Week Date* Topic References/Readings Key dates
1 19/07/10 Computer Systems Overview Stallings Chap 1  
2 26/07/10 Operating Systems Overview Stallings Chap 2  
3 02/08/10 Process Description and Control Stallings Chap 3  
4 09/08/10 Threads, SMP, Microkernels Stallings Chap 4  
5 16/08/10 Concurrency: Mutual Exclusion and Synchronization Stallings Chap 5  
6 23/08/10 Concurrency: Deadlock and Starvation Stallings Chap 6  
7 30/08/10 Memory Management Stallings Chap 7  
8 06/09/10 Virtual Memory Stallings Chap 8  
9 13/09/10 Uniprocessor Scheduling Stallings Chap 9  
10 20/09/10 I/O Management, Disk Scheduling Stallings Chap 11  
Mid semester break
11 04/10/10 File Management Stallings Chap 12  
12 11/10/10 Security, Networking Stallings Chap 14,17  
13 18/10/10 revision    

*Please note that these dates may only apply to Australian campuses of Monash University. Off-shore students need to check the dates with their unit leader.

Improvements to this unit

visit page

http://www.csse.monash.edu.au/~ajh/teaching/fit2022/2010/outline/feedback-2009.xml 

to see how comments from students in 2009 have affected this year's offering. 

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%; In-semester assessment: 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 50% then a mark of no greater than 49-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 submission and preparation requirements will be detailed in each assignment specification. Submission must be made by the due date otherwise penalties will be enforced. You must negotiate any extensions formally with your campus unit leader via the in-semester special consideration process: http://www.infotech.monash.edu.au/resources/student/equity/special-consideration.html.

  • 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:
    15%
    Criteria for assessment:

    Completion of the program, together with a reflection on the learning outcomes

    Due date:
    TBA
    Remarks:
    requires Python programming
  • Assignment task 2
    Title:
    Assignment 2
    Description:
    Sample Assignment Only


    The Banker's algorithm, and Page Replacement algorithms
    Weighting:
    15%
    Criteria for assessment:
    Completion of the worked algorithm/program, together with reflections on the learning outcomes
    Due date:
    TBA
    Remarks:
    requires Python programming
  • Assignment task 3
    Title:
    Discussion/Wiki contributions
    Description:
    A range of discussion topics will be posted, and students will be expected to respond to these.  Marks will be awarded on the basis of relevance of the posting ("weight"), and the arguments advanced ("value").

    In addition, a wiki will be available, to which students are invited to contribute learning materials.  Marks will be awarded on a similar basis to the discussion topics.  Those postings receiving good marks will be made available to future students in the unit.
    Weighting:
    10%
    Criteria for assessment:

    Each posting will receive a mark from 0 to 5 for both "weight" and "value".  The posting's mark will be the geometric mean of these two marks.  Arbitrarily many postings may be made, but the total score (sum of each posting mark) will be capped at 10%

    Due date:
    15 Oct 2010

Examination

  • Weighting:
    60%
    Length:
    3 hours
    Type (open/closed book):
    Closed book
    Electronic devices allowed in the exam:
    None
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.

Feedback

Types of feedback you can expect to receive in this unit are:

Informal feedback on progress in labs/tutes

Graded assignments with comments

comments and marks on discussion and wiki postings

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]