University of Malta
 

Study-Unit Description
UOM Main Page
 
 
 
Apply - Admissions 2016
Newspoint
Campus Map button
Facebook
Twitter


CODE CPS5125

 
TITLE Advanced Systems Programming

 
LEVEL 05 - Postgraduate Modular Diploma or Degree Course

 
ECTS CREDITS 5

 
DEPARTMENT Computer Science

 
DESCRIPTION This study-unit will focus on a number of topics which lead to an understanding of operating systems and virtual machine internals.

In the first part of the unit we will discuss how kernel functionality is exposed to user-level applications as a means of appreciating the extent of support provided to developers from the operating system. We will thereafter delve into internals of commonly used operating systems focusing on the system call and driver interfaces. Whilst doing so we will investigate different types of kernels.

In the second part of the unit we will focus on services provided by process virtual machines (such as the Java Virtual Machine). We will focus on a particular virtual machine's Intermediate Representation (IR) and investigate different techniques in respect to how the IR can be executed.

Study-unit Aims:

The aim of this unit is to provide students with a detailed understanding of advanced topics in systems programming which lead up to students understanding operating systems and virtual machine internals.

Learning Outcomes:

1. Knowledge & Understanding:
By the end of the study-unit the student will be able to:

- Given an operating system's code, demonstrate an understanding of how system calls are implemented and extend the operating system with new system calls and also device drivers;
- Analyse and demonstrate an understanding of how different aspects of a given operating system are implemented;
- Given a virtual machine implementation, demonstrate an understanding of the intermediate representation used and compare different intermediate representation execution methods.

2. Skills:
By the end of the study-unit the student will be able to:

- Discuss and critically analyse different kernel architectures and the trade-offs inherent in them;
- Identify scenarios where the different types of architectures are best suited;
- Inspect an operating system's code and extend the system by implementing system calls and device drivers;
- Implement a virtual machine intermediate representation execution engine.

Main Text/s and any supplementary readings:

Main text:

- Tanenbaum A. S., Woodhull A. S.: Operating Systems Design and Implementation, Third Edition. ISBN: 978-0-13-142-938-3. Corbet J, Rubini A.: Linux Device Drivers, 2005, ISBN: 978-0596005900

Supplementary readings:

- Tanenbaum A. S., Woodhull A. S.: Operating Systems Design and Implementation, Third Edition. ISBN: 978-0-13-142-938-3
- Corbet J, Rubini A.: Linux Device Drivers, 2005, ISBN: 978-0596005900
- Russinovich M., Solomon D. A., Ionescu A.: Windows Internals Part 1, Sixth Edition. ISBN: 978-0-7356-4873-9
- Lindholm T., et al: The Java Virtual Machine Specification, Seventh Edition
- Lattner, Chris, and Vikram Adve. "LLVM: A compilation framework for lifelong program analysis & transformation." Code Generation and Optimization, 2004. CGO 2004. International Symposium on. IEEE, 2004
- Alpern, Bowen, et al. "The Jalapeno virtual machine." IBM Systems Journal 39.1 (2000): 211-238

 
STUDY-UNIT TYPE Lecture, Independent Study, Project and Tutorial

 
METHOD OF ASSESSMENT
Assessment Component/s Resit Availability Weighting
Project Yes 100%

 
LECTURER/S Joshua Ellul

 
The University makes every effort to ensure that the published Courses Plans, Programmes of Study and Study-Unit information are complete and up-to-date at the time of publication. The University reserves the right to make changes in case errors are detected after publication.
The availability of optional units may be subject to timetabling constraints.
Units not attracting a sufficient number of registrations may be withdrawn without notice.
It should be noted that all the information in the study-unit description above applies to the academic year 2017/8, if study-unit is available during this academic year, and may be subject to change in subsequent years.
Calendar
Notices
Study-unit Registration Forms 2017/8

Register

For Undergraduate (Day) and Postgraduate students.

 

Academic Advisors 2017/8

AA1

Academic Advisors for ICT 1st year students (Intake 2017/8), NOW available

Faculty of ICT Timetables

Timetables

ICT Timetables are available from Here.

Health and Safety Regulations for Labs Form

The Faculty of ICT Health and Safety Regulations for Laboratories form can be found here

 HealthAndSafety

 
 

Log In back to UoM Homepage