HOME : CURRENT STUDENTS : SCHOLARSHIPS : TASTE OF RESEARCH SUMMER SCHOLARSHIPS : 2007/2008 PROJECTS - SCHOOL OF COMPUTER SCIENCE & ENGINEERING : EMBEDDED, REAL TIME AND OPERATING SYSTEMS

Algorithms | Artificial Intelligence | Autonomous Systems & Sensing Technologies | Bioinformatics | Databases | Embedded, Real Time & Operating Systems | Empirical Software Engineering | Formal Methods | Image Processing | Interfaces, Machines and Graphic Environments | Knowledge Representation & Reasoning | Multimedia & Visual Communication | Programming Languages & Compilers | Sensor Networks | Web Services & E-Commerce | Web 2.0 Technologies

 

 

Project Title
Microstate accounting in Linux

Name of Academic Supervisor
Professor Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Dr Peter Chubb

Email of Joint Supervisor(s)
peter@gelato.unsw.edu.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
The standard Linux tool for measuring how long a process spends running is getrusage(), which reports a statistical summary of time spent on the processor in the kernel and in user space, and a few other parameters to do with paging, resident set size, etc. Because it is a statistical summary, the times reported tend to overrepresent system time (because system time includes time spent in interrupt handlers) and under represent user time (the sleep/wakeup cycles of the measured process, if regular, tend to become synchronised with the sampling clock, and so even though the process wakes up and is on the queue at sample, time, it isn't actually on the processor).

The Gelato@UNSW team has instrumented the kernel to provide cycle-accurate measurement of the time spent running on the processor (in system calls, and when running user code), time on various queues, and time spent in interrupt handlers. This project is to complement this work by developing tools to extract and visualise the accounting information, integrate with complementary tools such as “taskstats”, use it to improve the getrusage() system call, and apply it to exploring, explaining and fixing problems with Linux sometimes exhibiting poor interactivity under high load.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
Success of this project will result greatly improved tools for performance analysis and tuning of the Linux kernel, and to resolving some known performance problems.

Expected Outcomes
Tools to extract and visualise the accounting information, and improving the getrusage() system call. Also fixing problems with Linux sometimes exhibiting poor interactivity under high load.

Project Title
A Real-Time Programmer’s Guide Dog towards Better Predictable Software

Name of Academic Supervisor
Dr Stefan M. Petters

Email of Academic Supervisor
smp@nicta.com.au

Name of Joint Supervisor(s)

Email of Joint Supervisor(s)

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
One aspect of the estimation of the longest execution time of real-time software is the influence of the implementation of a given algorithm. Often small changes in the implementation can result in major changes in the overestimation. This project is focussed on identifying possible sources of overestimation and inform the user, where in his code, hand optimisation looks most promising. Typical examples are code, which is only executed in the first iteration of a loop and thus lead to severe overestimations, or small if-then-else constructs, which may be recoded to allow for larger units to be analysed. Supervision will be directly by a Senior Researcher.

Novelty and Contribution
A good guide to programming to improve the worst-case behaviour and analysability is long overdue. This project is a major step in this direction.

Expected Outcomes
This work will produce have a document which may lead to a publication. The document will provide a series of templates and outline pitfalls in real-time programming.

Reference Material/Links
ERTOS http://www.ertos.nicta.com.au/

Further info http://www.ertos.nicta.com.au/education/projects.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential.

SKILL PREREQUISITES:
Excellent programming skills. Understanding of compiler techniques.

Project Title
A constant bandwidth server for L4

Name of Academic Supervisor
Dr. Stefan M. Petters

Email of Academic Supervisor
smp@nicta.com.au

Name of Joint Supervisor(s)

Email of Joint Supervisor(s)

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Many systems incorporate several real-time applications which need to be isolated in the temporal sense. One way of achieving this is to set and monitor deadlines, which ensure that one application is not using more than its share of time. However, this restricts applications much more than necessary to be able to make any guarantees. A way around this is a constant bandwidth server, which ensures that a thread gets a certain fraction of CPU in any given window of time. To achieve this an accounting mechanism is required which tracks how much time an application has already consumed in this window. The performance impact of the accounting mechanism is crucial.

Novelty and Contribution
While theoretical solutions have been presented in literature these suffer from restrictions and assumptions which make them practically unusable. This project aims to do it and to do it right!

Expected Outcomes
Workable mechanisms which can be integrated into the L4 kernel mainline as compile time option.

Reference Material/Links
ERTOS http://www.ertos.nicta.com.au/

Further info http://www.ertos.nicta.com.au/education/projects.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential.

SKILL PREREQUISITES:
Excellent understanding of operating systems, excellent programming skills

Project Title
Robofiddler, A Violin Playing Robot

Name of Academic Supervisor
Ross Jeffery

Email of Academic Supervisor
rossj@cse.unsw.edu.au

Name of Joint Supervisor(s)
John Judge
Kevin Elphinstone
Gernot Heiser

Email of Joint Supervisor(s)
John.Judge@nicta.com.au
Kevine@cse.unsw.edu.au
Gernot@unsw.edu.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
This year NICTA came second in the Artemis Orchestra contest with a robotic violin player named RoboFiddler. A new robot is being created for next years competition based on a new embedded platform. We are looking for two summer research students interested in developing real time embedded software for control of this violin playing robot.

The students will work with a senior research engineer and a small team of professionals from inside and outside of NICTA. The platform has not been selected yet but software development environment will most likely be C on a variant of embedded linux. Possible tasks include creation of software for closed loop control of the robot and software for audio analysis for system tuning and performance evaluation.

Novelty and Contribution
Violin playing robots are a novelty in themselves

Expected Outcomes
Contribution to the software controlling the robot

Reference Material/Links
URL of Artemis Competition Press Release:
http://nicta.com.au/news/current/nicta146s_robofiddler_comes_second_in_the_inaugural_artemis_orchestra_competition

Project Title
Validation of performance counter based frequency scaling schemes

Name of Academic Supervisor
David Snowdon

Email of Academic Supervisor
David.Snowdon@nicta.com.au

Name of Joint Supervisor(s)
Stefan Petters

Email of Joint Supervisor(s)
Stefan.Petters@nicta.com.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Reducing the power and energy requirements of embedded systems is partly the responsibility of an operating system. Some new techniques for frequency scaling have been developed by NICTA, but it is not yet known whether they are generally applicable. The project will involve working closely with PhD and academic staff to implement and measure the performance of these new techniques on a number of embedded systems platforms, and the energy savings available.

The project will be conducted in one of the world's leading operating systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
The work will contribute to the current state of the art in dynamic frequency and voltage scaling by validating the proposed models on more than one platform. Furthermore, the features of various platforms can be compared with respect to their suitability to these techniques. This information will be published, and fed back to CPU manufacturers, allowing for the improvement of future microprocessors.

Expected Outcomes

  • An implementation of our frequency scaling techniques on at least one platform (in either L4 or Linux)
  • A paper submitted to an appropriate workshop or conference.

Reference Material/Links
Links to papers published on our frequency scaling techniques are available at the following: http://ertos.nicta.com.au/research/pm2

ERTOS: http://www.ertos.nicta.com.au

Course Prerequisites:
Operating Systems. Advanced OS is highly recommended

Skill Prerequisites:
Experience with hardware. A good knowledge of C and system-level programming are necessary.

Project Title
Visual Mouse

Name of Academic Supervisor
Ihor Kuz

Email of Academic Supervisor
ihor.kuz@nicta.com.au

Name of Joint Supervisor(s)
Nick Barnes

Email of Joint Supervisor(s)
nick.barnes@nicta.com.au

CSE or NICTA Project
NICTA

Research Area
Embedded, real-time and operating systems; image processing

Abstract of Research Project
A visual mouse uses computer vision technology to convert a device containing a camera (such as a mobile phone) into a computer mouse that can be used in mid-air. In this project the aim is to start building a device that can act as a visual mouse. The two core aspects of this project are: building the device and the underlying operating system software, and applying optical flow techniques to estimate the motion of a moving camera, and project this motion to control cursor position on screen.

these two aspects are combined by a common software component architecture – the operating system and the computer vision aspects of the system should be designed and implemented as components in this architecture.

This project can be done by more than one person as there are more than enough interesting problems to tackle.

The project will be conducted together with one of the world's leading operating systems research groups one of the leading computer vision groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
Contribute to a relatively new and growing body of research on ways to apply component-system methodologies to embedded systems and to apply computer vision technologies in embedded systems.

Expected Outcomes
A basic prototype of a visual mouse, or at least the main (software) components that make up such a device.

Project Title
Computing the Worst-Case Execution Time

Name of Academic Supervisor
Hui Wu

Email of Academic Supervisor
huiw@cse.unsw.edu.au

Name of Joint Supervisor(s)
Jingling Xue

Email of Joint Supervisor(s)
jingling@cse.unsw.edu.au

CSE or NICTA Project
CSE project

Research Area
Compilers and embedded systems

Abstract of Research Project
In real-time embedded systems, the schedulability analysis is based on the worst-case execution times of all tasks. Cache makes it very difficult to compute the worst-case execution time of a program. To overcome this problem, scratchpad memory has been used to replace cache in real-time embedded systems.

This project is to develop a software tool for computing the worst-case execution time of a program. The target system consists of a single processor. Its memory hierarchy consists of off-chip memory and scratchpad memory. The program dynamically transfers data and code between off-chip memory and scratchpad to reduce the execution time.

Novelty and Contribution
This project is a part of a bigger project that aims to minimise the worst-case execution time of a program on a target processor with both off-chip memory and scratchpad memory.

Project Title
Coordination Instance for a Closer Look of WCET Analysis

Name of Academic Supervisor
Stefan M. Petters

Email of Academic Supervisor
smp@nicta.com.au

Name of Joint Supervisor(s)
N/A

Email of Joint Supervisor(s)
N/A

CSE or NICTA Project
NICTA

Research Area
ERTOS

Abstract of Research Project
A closer inspection and analysis of the dependencies of the execution time of small units of a program (blocks) is computationally expensive but may be rewarding in terms of reducing the overestimation.

This project aims to select promising candidates for the analysis. This selection is based on the impact of the individual blocks due to loops, their individual contribution to the overall execution time and variability of their execution time. As thresholds for the selection will be target and application dependent, the design should contain an adaptive strategy for these decisions.

Novelty and Contribution
The project has a strong experimental character which relies on analysing trade-offs and implementing the trade-offs in a analysis tool.; i.e. comparing the analysis time and analysis gain of different configuration parameters.

Expected Outcomes
The project aims to produce a methodology to select promising candidates for further analysis and a sample implementation of this methodology.

Reference Material/Links
References (background information):
G. Bernat, A. Colin, and S. M. Petters, WCET analysis of probabilistic hard real-time systems. In Proceedings of the 23rd Real-Time Systems Symposium RTSS 2002, pages 279-288, Austin, Texas, USA, December 2002

For more information:
http://www.ertos.nicta.com.au/education/summer/
http://www.ertos.nicta.com.au/research/potoroo/

Project Title
Probabilistic combination of Execution Time Profiles

Name of Academic Supervisor
Stefan M. Petters

Email of Academic Supervisor
smp@nicta.com.au

Name of Joint Supervisor(s)
N/A

Email of Joint Supervisor(s)
N/A

CSE or NICTA Project
NICTA

Research Area
ERTOS

Abstract of Research Project
Recent work in worst-case execution-time analysis identifies dependencies between measured execution-time profiles. Combining profiles (covering conservatively any possible dependency) has a known, but pessimistic solution. Currently there is no solution to do this combination on partially known dependencies and subsequently reducing the overestimation produced by the worst-case execution time analysis.

Novelty and Contribution
The research is ground braking work in statistical analysis

Expected Outcomes
This project aims to put the mechanisms in place to perform this combination of execution-time profiles in order to reduce

Reference Material/Links
References (background information):
G. Bernat, A. Colin, and S. M. Petters, WCET analysis of probabilistic hard real-time systems. In Proceedings of the 23rd Real-Time Systems Symposium RTSS 2002, pages 279-288, Austin, Texas, USA, December 2002

For more information:
http://www.ertos.nicta.com.au/education/summer/
http://www.ertos.nicta.com.au/research/potoroo/

Project Title
GUI Implementation for an Analysis Tool

Name of Academic Supervisor
Stefan M. Petters

Email of Academic Supervisor
smp@nicta.com.au

Name of Joint Supervisor(s)
N/A

Email of Joint Supervisor(s)
N/A

CSE or NICTA Project
NICTA

Research Area
ERTOS

Abstract of Research Project
The worst-case execution-time analysis of code is performed by many different steps. Furthermore there are a number of different views the person analysing a piece of code may have. This GUI would need to coordinate the analysis steps of our tool-set and provide a suita ble extensible user interface to access all available informationen in an efficient way and allow the user to interact with the analysis. The project is aimed to work with graph visualisation software and a portable GUI library like QT and enable communication between the custom made GUI and the graph visualisation software

Novelty and Contribution
The GUI will allow an in depth analysis of RRT software

Expected Outcomes
The result of this project is a GUI-tool which may be integrated into the existing toolset.

Reference Material/Links
References (background information):
G. Bernat, A. Colin, and S. M. Petters, WCET analysis of probabilistic hard real-time systems. In Proceedings of the 23rd Real-Time Systems Symposium RTSS 2002, pages 279-288, Austin, Texas, USA, December 2002

For more information:
http://www.ertos.nicta.com.au/education/summer/
http://www.ertos.nicta.com.au/research/potoroo/

Project Title
Verifying Software using Chance

Name of Academic Supervisor
Albert Nymeyer

Email of Academic Supervisor
anymeyer@cse.unsw.edu.au

Name of Joint Supervisor(s)
Hoai Thang Bui

Email of Joint Supervisor(s)
buih@cse.unsw.edu.au

CSE or NICTA Project
CSE

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Complex systems are near impossible to verify, and this is a real problem for society as electronic devices play such a crucial role everywhere. The verification method used most often is called `model checking', but it fails when the system becomes too complex. In such cases, it is possible to `partially verify' the system by using random searches for error states: a method generally referred to as Monte Carlo. The idea is that if no error is found after some very large number of searches, one can say that there is no error with some probability (what is the chance of finding an error, one can ask). The aim is to have as few searches as possible, and as high a probability as possible. Locally developed software, and a tool called Lurch will be used to experiment with systems, and see how well the method works, and what can go wrong. An example of something that can go wrong is the search can get `stuck' in a region. Methods are required to signal when this happens, and provide a solution.

Novelty and Contribution
The novelty is that this research combines quite different areas of research: software development, artificial intelligence and statistical mechanics.

Expected Outcomes
The work will result in a (better) tool that can be used to verify software.

Reference Material/Links
Look at some articles from the researcher David Owen at http://www.csee.wvu.edu/~dowen/
If you can, read the article: “The Strangest Thing About Software”.

Project Title
Bare Metal Haskell

Name of Academic Supervisor
Kevin Elphinstone

Email of Academic Supervisor
Kevine@cse.unsw.edu.au

Name of Joint Supervisor(s)
Manuel Chakravarty

Email of Joint Supervisor(s)
chak@cse.unsw.edu.au

CSE or NICTA Project
CSE

Research Area
6 Embedded, Real-Time and Operating Systems

Abstract of Research Project
Modern functional languages, such as Haskell, are becoming increasingly popular in application domains that require rapid development coupled with high safety and security demands. One particularly interesting such application domain is systems software for embedded systems, such as mobile phones. In this context, we have developed an executable specification of the seL4 microkernel, which improves existing second generation microkernels. In conjunction with an instruction level simulator, the executable kernel specification is a functional, if inefficient, implementation of the new microkernel.

We are working on a verified implementation of the specification in a low-level language for production use. However, this is a very resource-intensive endeavour. Hence, we are investigating an alternative implementation strategy where we run the Haskell code "on bare metal" - i.e., the Haskell implementation of the microkernel boots on standard hardware without any other operating system in between. This is a challenging project as it requires the adaptation of the Haskell runtime system to run without operating system support. Such a bare metal Haskell implementation would also be useful for other projects, such as trusted web service in high confidentiality environments and is the focus of this summer project.

This project is a close collaboration between the PLS group at CSE and the ERTOS program at NICTA.

Novelty and Contribution
This project enables implementation of low level device software in a high level language that is amenable to formal verification.

Expected Outcomes
An implementation of the Haskell Runtime that works without an operating system beneath.

Reference Material/Links
http://www.ertos.nicta.com.au/research/sel4/
http://www.cse.unsw.edu.au/~pls/

Project Title
Web Server for L4/Iguana

Name of Academic Supervisor
Professor Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Dr Felix Rauch

Email of Joint Supervisor(s)
Felix.Rauch@nicta.com.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
The L4/Iguana system is mature enough to be deployed in commercial products, it should be mature and stable enough to run the ERTOS web site. What is missing is a web server.

This project is to select a suitable open-source web server and port it to L4/Iguana. The challenge is to map the Unix model on which the original code will be inevitably based to Iguana's single-address-space and client-server model, as well as its capability-based protection.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
The project will provide valuable lessons on the difficulty of migrating between programming models, and what support can be provided to ease this transition.

Expected Outcomes
If successful, the project will be used to run the group's web pages.

Reference Material/Links
ERTOS http://www.ertos.nicta.com.au/

Further info http://www.ertos.nicta.com.au/education/projects.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential. COMP9242 Advanced Operating systems is a big plus.

SKILL PREREQUISITES:
Excellent understanding of operating systems, excellent programming skills. Knowledge of webserver technology a plus.

Project Title
BLUEsat OS

Name of Academic Supervisor
Professor Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Email of Joint Supervisor(s)
CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Design and implement an operating system for the BLUEsat student satellite project. The operating system will require a high degree of fault tolerance, including resilience against memory errors, and a very high degree of robustness.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
The BLUEsat needs an operating system, which you will provide in this project. If your OS “flies” on earth, then it might even fly in space!

Expected Outcomes
Operating System Design and Implementation.

Reference Material/Links
ERTOS http://nicta.com.au/director/research/programs/ertos.cfm
Disy https://www.disy.cse.unsw.edu.au/
Further info http://gernot.web.cse.unsw.edu.au/theses.html

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential. COMP9242 Advanced Operating systems is essential

SKILL PREREQUISITES:
Excellent understanding of operating systems, excellent programming skills

Project Title
Translation of X86 assembly language into pure lambda calculus for use in analysis of real-time program behaviour

Name of Academic Supervisor
Dr Stefan M. Petters

Email of Academic Supervisor
smp@nicta.com.au

Name of Joint Supervisor(s)
Patryk Zadarnowski

Email of Joint Supervisor(s)
patrykz@cse.unsw.edu.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Analysis of the real-time aspects of programs’ behaviour such as worst-case execution time is a new and active area of research. As part of NICTA’s Potoroo project, we are attempting to automatically derive a worst-case execution profile for operating system kernels using a combination of statistical and analytic methods. At the core of our approach is a translation of the program being analysed into a purely-functional language resembling Haskell, and have completed the translation for the simple case of ARM assembly language. This project is intended to perform a similar translation for the much-more complex case of Intel Pentium/X86 architecture. The resulting translation defines precisely all aspects of the architecture including caches, branch prediction as well as the actual instruction execution in a mathematically-precise language of lambda calculus.

Novelty and Contribution
This is a very novel yet highly practical work at the cutting-edge of static program analysis, as such complete translation of X86 assembly has never been attempted in the past. It is likely that successful completion of this project will lead directly to a major publication in the area of programming languages and static analysis.

Expected Outcomes
Reference Material/Links
ERTOS http://www.ertos.nicta.com.au/

Further info http://www.ertos.nicta.com.au/education/projects.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential.

SKILL PREREQUISITES:
Excellent programming skills. Understanding of compiler techniques and assembler programming.

Project Title
Haskell on L4/Iguana

Name of Academic Supervisor
Dr Kevin Elphinstone

Email of Academic Supervisor
Kevin.Elphinstone@nicta.com.au

Name of Joint Supervisor(s)
Philip Derrin

Email of Joint Supervisor(s)
Philip.Derrin@nicta.com.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
One approach to developing more reliable systems is to use a type-safe programming language. Another approach is to formally model and verify the correctness of a system. Haskell is a type-safe functional programming language whose semantics are close to those used for formal model and verification. Having the ability to use Haskell as a prototyping (and even the eventual implementation) language would open up the opportunity to explore the combination of these two approaches to building reliable systems.

Novelty and Contribution
Haskell is currently unavailable on a microkernel-like environment, and a succesful project would enable its use in a new application domain to tackle real problems in building systems.

Expected Outcomes

  • Identification of issues in cross compiling Haskell to an embedded platform.
  • A cross compilation environment for Haskell, and a port of the Haskell runtime to Iguana.

Reference Material/Links
ERTOS http://www.ertos.nicta.com.au

Iguana http://www.ertos.nicta.com.au/software/kenge/iguana-project/latest/

Haskell http://www.haskell.org

Project Title
Client-Server vs Migrating Threads

Name of Academic Supervisor
Professor Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Dr Ihor Kuz

Email of Joint Supervisor(s)
Ihor.Kuz@nicta.com.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Perform a thorough qualitative and quantitative comparison of the client-server (or active-objects) and migrating-threads models of computation, in the context of an L4-based implementation. Examine and compare the performance and resource usage of both approaches. Examples of both approaches are available in the form of the Mungi and Iguana systems, which share many commonalities (including a large fraction of their source code). This should help a fair comparison.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
This project may settle a long-ranging debate in the community, and can lead to an international publication, as well as influence future research in ERTOS.

Expected Outcomes
The results of this project can lead to an international publication, as well as influence future research in ERTOS.

Reference Material/Links
ERTOS http://nicta.com.au/director/research/programs/ertos.cfm
Disy https://www.disy.cse.unsw.edu.au/
Further info http://gernot.web.cse.unsw.edu.au//theses.html

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential. COMP9242 Advanced Operating systems is essential

SKILL PREREQUISITES:
Excellent understanding of operating systems, excellent programming skills

Project Title
Abduction in Defeasible Logic

Name of Academic Supervisor
Michael Maher

Email of Academic Supervisor
mmaher@cse.unsw.edu.au

Name of Joint Supervisor(s)

Email of Joint Supervisor(s)

CSE or NICTA Project
NICTA

Research Area
Knowledge Representation and Reasoning

Abstract of Research ProjectAbduction is a kind of "inverse" deduct
ion: it is the logical processes of finding what extra facts are needed that, combined with background knowledge, ensure that a statement can be inferred. Defeasible logic is an efficient logic designed to express and reason about tentative statements: statements that are "normally" true, but not always true. For example, "students are normally not pensioners" might be used in a system regulating social services. The aim of this project is to design, and perhaps implement, an abduction procedure for defeasible logic.

Novelty and Contribution
The project involves mostly research into the theoretical basis of the problem.

Expected Outcomes
A report describing the research.

Reference Material/Links

Project Title
Component communication for operating systems

Name of Academic Supervisor
Dr Ihor Kuz

Email of Academic Supervisor
ihor.kuz@nicta.com.au

Name of Joint Supervisor(s)
Nicholas FitzRoy-Dale

Email of Joint Supervisor(s)
nfd@cse.unsw.edu.au

CSE or NICTA Project
NICTA

Research Area
Embedded, real-time and operating systems

Abstract of Research Project
Using components looks like a great way to assemble embedded systems, but embedded systems have to be fast, responsive, and secure -- all challenging tasks for a component system. The aim of this research is to implement cross-component connectors for a variety of embedded system types (for example, for an ARM-based network router) and investigate ways in which their performance can be improved.

The project will be conducted in one of the world's leading operating systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
Contribute to a relatively new and growing body of research on ways to adapt component-system methodologies to embedded systems.

Expected Outcomes
One or more optimisable component connectors, and performance analyses of systems using the connector(s) as well as further ways to improve them.

Reference Material/Links
The L4 microkernel: https://www.ertos.nicta.com.au/research/l4
http://portal.ok-labs.com
http://www.l4hq.org/
http://www.l4ka.org/

CAmkES (our component system):
https://www.ertos.nicta.com.au/research/camkes/

ERTOS: http://www.ertos.nicta.com.au

Course Prerequisites:
Operating Systems. Advanced OS is highly recommended

Skill Prerequisites:
A good knowledge of C and system-level programming are necessary.

Project Title
Component Architecture on Secure Microkernel

Name of Academic Supervisor
Dr Ihor Kuz

Email of Academic Supervisor
Ihor.kuz@nicta.com.au

Name of Joint Supervisor(s)
Dr Kevin Elphinstone

Email of Joint Supervisor(s)
Kevin.elphinstone@nicta.com.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
seL4 is a new secure version of the L4 microkernel. CAmkES is a component architecture designed for building microkernel-based operating systems. Currently CAmkES is based on L4 and does not address security issues. The aim of this project would be to get CAmkES working with seL4 and then explore the ways that seL4 security features can be used in CAmkES to build secure embedded systems.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
seL4 is a state-of-the-art microkernel. The main contribution of this work will be investigating the possibilities that the seL4 kernel provides when building operating system software on top of it. It will also result in an improved programming environment for seL4.

Expected Outcomes
The CAmkES architecture and code base adapted to work on seL4 and to make use of its novel security-related features.

Reference Material/Links
ERTOS: http://www.ertos.nicta.com.au

L4:
http://portal.ok-labs.com
http://www.l4hq.org/
http://www.l4ka.org/

seL4
http://www.ertos.nicta.com.au/research/sel4/

CAmkES
http://ertos.nicta.com.au/research/camkes/

Course Prerequisites:
Operating Systems. Advanced OS is highly recommended

Skill Prerequisites:
A good knowledge of C and system-level programming are necessary. A knowledge of Haskell would also be beneficial.

Project Title
File System for Embedded OS

Name of Academic Supervisor
Dr Ihor Kuz

Email of Academic Supervisor
Ihor.kuz@nicta.com.au

Name of Joint Supervisor(s)
Email of Joint Supervisor(s)
CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
One of the key services that an OS provides is a file system. We are in the midst of designing and building a modular (L4) microkernel-based operating system for embedded devices. While there are many file-systems available, we do not yet have a suitable file system service for our OS. Furthermore, not much work has been done on the design of a file system service in a componentised environment. This project involves designing and implementing an existing file system to work in a componentised operating system. Besides providing a functioning and reusable system component, it is necessary that the resulting file system also exhibits good performance.

The project will be conducted in one of the world's leading operating systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
Besides contributing to the development of an embedded OS, this project will provide insights into the design issues and performance tradeoffs involved with componentising system services.

Expected Outcomes
A working file system integrated into our componentised OS. The insight into the design decisions and tradeoffs involved in designing such a subsystem will influence and further drive research into structuring modular, microkernel-based operating systems.

Reference Material/Links
ERTOS: http://www.ertos.nicta.com.au

L4:
http://portal.ok-labs.com
http://www.l4hq.org/
http://www.l4ka.org/

Course Prerequisites:
Operating Systems. Advanced OS is highly recommended

Skill Prerequisites:
A good knowledge of C and system-level programming are necessary.

Project Title
Audio Framework for Embedded OS

Name of Academic Supervisor
Dr Ihor Kuz

Email of Academic Supervisor
Ihor.kuz@nicta.com.au

Name of Joint Supervisor(s) (if any)

Email of Joint Supervisor(s) (if any)

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Multimedia and audio devices are a popular class of embedded systems. As part of our research into modularised, microkernel-based operating systems for embedded devices, we wish to look at the design and implementation of an audio framework. This involves designing and developing a reusable software framework for audio applications and devices. The framework must be built using the component architecture we have developed for microkernel-based operating systems. Building a demonstrator showing the framework in use will also be part of the work.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
This project will provide the foundation for building future audio-enabled embedded systems. Another important result will be the further evaluation and improvement of our component architecture, and input into research regarding structure and performance of componentised operating systems. v

Expected Outcomes
A well designed, componentised, audio framework, and a demonstrator system that implements an audio-enabled system based on this framework.

Reference Material/Links
ERTOS: http://www.ertos.nicta.com.au

L4:
http://portal.ok-labs.com
http://www.l4hq.org/
http://www.l4ka.org/

Course Prerequisites:
Operating Systems. Advanced OS is highly recommended

Skill Prerequisites:
A good knowledge of C and system-level programming are necessary.

Project Title
Static Analysis of ARM Assembler Code

Name of Academic Supervisor

Dr Felix Rauch

Email of Academic Supervisor
felix.rauch@nicta.com.au

Name of Joint Supervisor(s)
Dr Ralf Huuck

Email of Joint Supervisor(s)

ralf.huuck@nicta.com.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
The goal of the Goanna project is to improve the quality of system software by automatically detecting software defects (bugs). System software (like kernel code) often contains embedded assembler parts. An existing module analyses embedded ARM assembler code, but it does not yet check for a wide range of properties.

The goal of this summer project is to extend the existing assembler analysis module by checking for many more interesting properties in embedded ARM assembler code, enabling the analysis of real operating system code.

The project is in a team of international researchers, engineers and students.

Novelty and Contribution
This would make Goanna the first tool that does thorough static analysis on a combination of C/C++ and assembler code on real operating system code.

Expected Outcomes
Working implementation, added properties, and documentation.

Reference Material/Links
Goanna project:
http://www.ertos.nicta.com.au/research/goanna/

SKILL PREREQUISITES:
Understanding of operating systems, excellent programming skills, knowledge of an assembler language and C/C++. Knowledge of a functional programming language a plus.

Project Title
Fast system calls in Linux on Itanium

Name of Academic Supervisor
Professor Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Dr Peter Chubb

Email of Joint Supervisor(s)
peter@gelato.unsw.edu.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
The Itanium kernel has a mechanism for performing fast system calls, without the cost imposed by the more traditional exception-based mechanism. The Gelato@UNSW team has in the past demonstrated impressive system-call performance using this mechanism, which is presently implemented for the are getpid(), getppid(), set_tid_address(), and gettimeofday() system calls.

Fast system calls are hard to write because they run with kernel privilege, but using the user register backing store, and the user stack. The user stack and register store are untrusted. This project, which consists of a number of sub-projects done in close collaboration with other researchers, aims at making the use of the fast call mechanism suitable for all system calls, by providing appropriate tools.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
Success of this project will result in system overheads generally being reduced in Linux on Itanium.

Expected Outcomes
Tools that make the fast system call mechanisms usable for writing system calls, and reduced system overheads for Linux on Itanium

Reference Material/Links
ERTOS
http://www.ertos.nicta.com.au

Gelato@UNSW
http://www.gelato.unsw.edu.au/

Further info
http://www.ertos.nicta.com.au/education/summer.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential. COMP9242 Advanced Operating systems is desired

SKILL PREREQUISITES:
Excellent understanding of operating systems, excellent programming skills, Linux kernel experience is an asset.

Project Title
User-mode file systems

Name of Academic Supervisor
Professor Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Dr Peter Chubb

Email of Joint Supervisor(s)
peter@gelato.unsw.edu.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Any code in the kernel of an operating system is critical to the stability and security of the system. Hence, security and stability can be potentially improved my taking services out of the kernel. One service that does not need to be inside the kernel is the file system, provided that performance does not suffer unduly from running it at user level.

Using the libext2 library, a user-mode IDE device driver, and the user-mode NFS server, create a completely user-space NFS server. Benchmark it with various components in/out of the kernel.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
This project is part of Gelato's agenda for de-kernelising Linux services in order to improve robustness and scalability of the kernel. The results of this project will indicate whether the file system is a serious candidate for de-kernelising.

Expected Outcomes
A completely user-space NFS server, along with benchmark results comparing performance of the filesystem inside and outside of the kernel.

Reference Material/Links
ERTOS
http://www.ertos.nicta.com.au

Gelato@UNSW
http://www.gelato.unsw.edu.au/

Further info

http://www.ertos.nicta.com.au/education/summer.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential. COMP9242 Advanced Operating systems is desired

SKILL PREREQUISITES:
Excellent understanding of operating systems, excellent programming skills, Linux kernel experience is an asset.

Project Title
Architecture comparison of synchronisation primitives

Name of Academic Supervisor
Professor Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Dr Peter Chubb

Email of Joint Supervisor(s)
peter@gelato.unsw.edu.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Almost every architecture has primitives (such as a compare-and-swap instruction) for performing synchronisation between concurrent threads. In every architecture, the cost of using one of these primitives is different.

This project is to measure the overheads of standard uncontended spinlock and multi-reader-lock usage on Itanium, Pentium 4, PowerPC, ARM, Alpha, MIPS and Sparc (plus whatever other machines we can get our hands on) and compare them. If possible, coming up with cheaper alternatives to the standard ways of using these primitives.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
This project will lead to a better understanding of how to best design architecture-specific synchronisation libraries for operating systems, specifically Linux and L4/Iguana. It is part of a general comparison of support for operating system requirements across architectures, and is expected to form part of a major publication.

Expected Outcomes
Evaluation and comparison of synchronisation primitives on different hardware architectures. Potentially leading to a publication.

Reference Material/Links
ERTOS
http://www.ertos.nicta.com.au

Gelato@UNSW
http://www.gelato.unsw.edu.au/

Further info
http://www.ertos.nicta.com.au/education/summer.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential. COMP9242 Advanced Operating systems is desired

SKILL PREREQUISITES:
Excellent understanding of operating systems, excellent programming skills, Linux kernel experience is an asset.

Project Title
Power measurement and management for servers

Name of Academic Supervisor
Professr Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Dr Peter Chubb

Email of Joint Supervisor(s)
peter@gelato.unsw.edu.au

CSE or NICTA Project
NICTA

Research Area
Embedded, Real-Time and Operating Systems

Abstract of Research Project
Power usage in servers is a major issue for data centres, as it directly links to running costs; and in general airconditioners have to be sized for the peak load. Individual manufacturers have detailed info on exactly what the power budgets of their systems are. However, they do not usually communicate these.

This project involves measuring power usage for different servers in different states, to try to get a model of their power usage (and, incidentally, to calculate the true airconditioning load in the machine room).

There's almost no computer science in this project, but there is a little engineering, a little modelling, a little mucking around to create programs to generate different loads

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
Understanding of power usage for different servers and server states.

Expected Outcomes
Power model for servers

Reference Material/Links
ERTOS
http://www.ertos.nicta.com.au

Gelato@UNSW
http://www.gelato.unsw.edu.au/

Further info
http://www.ertos.nicta.com.au/education/summer.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential.

SKILL PREREQUISITES:
Good understanding of operating systems, good programming skills.

Project Title
User-level drivers for user-mode Linux.

Name of Academic Supervisor
Professor Gernot Heiser

Email of Academic Supervisor
gernot@nicta.com.au

Name of Joint Supervisor(s)
Dr Peter Chubb

Email of Joint Supervisor(s)
peter@gelato.unsw.edu.au

CSE or NICTA Project
NICTA

Research Area

Embedded, Real-Time and Operating Systems

Abstract of Research Project
ERTOS has developed a framework for running device drivers in user-space on Linux, i.e. outside of the kernel. We have adapted our own virtualisation environment, LinuxOnLinux, to use it so that in the guest operating system, normal non-paravirtualised in-kernel drivers can “pass through” to selected devices.

This topic is to do the same for user-mode Linux, and to compare performance between the various possible solutions.

The project will be conducted in one of the world's leading operating-systems research groups, in a stimulating environment that combines cutting-edge research with building systems that are deployed in real products.

Novelty and Contribution
Direct device access from user-mode Linux and performance comparison of different approaches.

Expected Outcomes
Implementation of device-driver access from user-mode Linux, performance characterisation of different approaches.

Reference Material/Links
ERTOS
http://www.ertos.nicta.com.au

Gelato@UNSW
http://www.gelato.unsw.edu.au/

Further info
http://www.ertos.nicta.com.au/education/summer.pml

COURSE PREREQUISITES:
COMP3231/COMP9201 Operating systems is essential. COMP9242 Advanced Operating systems is desired

SKILL PREREQUISITES:
Excellent understanding of operating systems, excellent programming skills, Linux kernel experience is an asset.

[Top of Page]


 
 

Page created 08/08/07 and last updated 24/08/07
Please report any problems with this site to: eng-web@eng.unsw.edu.au
Please read this disclaimer and copyright statement.
CRICOS Provider No: 00098G
 © UNSW 2002