PHD Applications

This page describes the type of research work for which the Real-Time Systems group academic staff would be interested in supervising PhD students. Please consult our Group page for details of funded PhD studentship opportunities currently available.

Research opportunities

For full details of the Department's PhD programme can be found on the Graduate Study web page. The following members of the Real-Time Systems Group supervise PhD students.

1 Neil Audsley

2 Iain Bate

3 Alan Burns

4 Rob Davis

5 Leandro Soares Indrusiak

6 Andy Wellings

1 Neil Audsley

My research involves the design, implementation and analysis of resource restricted embedded real-time systems. Programming Embedded Systems

The integration of hardware programming languages (eg. VHDL) and software programming languages (e.g., Ada, Java), particularly from a real-time perspective. Integration is considered at the semantic and implementation levels, including issues regarding run-time systems and virtual machines. Current research is looking at the implementation of Real-Time Java on hardware platforms (not CPUs).

Direct Compilation of Software Languages to FPGAs

One approach to embedded systems is to implement in hardware, rather than software running on a CPU. If the system functionality is expressed using a software language, this raises the issue of how to compile (or synthesise) hardware from that software language. For example, current research is examining the compilation of Ada to reconfigurable hardware (i.e., FPGAs), and appropriate optimisations that can be made.

Kernels for Embedded Systems

Embedded systems are low resource, requiring extremely small footprint kernels. Current research is focusing on the specialisation of kernels for particular applications ensuring that only the functionality that is required is actually part of the kernel. Other research is looking at implementing parts of the kernel in hardware, to enable the CPU (often low-powered) to concentrate upon the application.

Timing Analysis and Scheduling Algorithms

Traditional timing analysis for real-time systems has assumed that functionality is performed upon the CPU. When hardware is used to implement part of the application, then the usual models do not apply. Current research is looking at timing analysis for systems where part of the application is software and part hardware.

Advanced Embedded Systems

Future embedded systems will be demanding to design and implement. For example, dynamic embedded systems which reconfigure during operation; portable embedded systems, particularly using Java technologies; advanced hardware platforms, e.g., Network-on-Chip (NoC) technologies. All these embedded systems pose new challenges in each of the research areas given above, e.g., timing analysis for complex NoC systems (with multiple processors and interconnection network all on a single chip).

2 Iain Bate

My main research interests include scheduling and timing analysis, the development and certification of dependable systems including those that are safety critical, real-time anomaly detection and fault tolerance, and wireless sensor networks for dependable systems. The work features strong influences from real application issues especially in relation to critical systems and the use of experimental methods that deliver confidence in the results. Some key publications can be found at http://www-users.cs.york.ac.uk/~ijb/publications.html.

Real-Time Systems Engineering

Systems engineering is a complex activity often involving multiple objectives, multiple properties and multiple paradigms. This results in difficult design trade-offs that need to be made across a number of design choices and assessment criteria. Previous work has established a trade-off analysis approach that has been applied to control scheduling problems [8], task allocation [2], the logical design of systems [7] and introducing flexibility into systems [6]. A key component is the use of Search-Based Software Engineering to help solve the problems. Future research could look deeper into the issues of scenario-based (i.e. choosing the right set of test cases) assessment, component-based development approaches (including the use of contracts involving properties relevant to safety and dependability), and co-design (especially hardware software co-design, control scheduling issues and low power computing). Of particular interest is how to apply the techniques to domains where the design of systems is facing new challenges in terms of certification, e.g. the automotive industry and AUTOSAR-based systems.

Scheduling and Timing Analysis

My PhD looked at how to adapt the popular scheduling scheme fixed priority scheduling for industrial applications [3] and later work looked at how to perform Worst-Case Execution Time (WCET) for software [9]. The scheduling work concentrated on how to tailor the timing analysis for specific computational models (e.g., non-preemptive systems), performing timing analysis for systems with offsets and performing the timing analysis of distributed systems. Particular interests are how to ensure confidence in the results, and how to design and analyse multi-core systems.

Dependable Wireless Sensor Networks

Wireless Sensor Networks (WSN) are a growing area of interest to both academia and industry. They are seeing application in a range of domains including healthcare, environmental monitoring, and factory automation. However significant issues are apparent in terms of delivering and assuring dependable and safe operation of the system. Previous work has included work on optimisation of WSNs for dependability [1], the development of lightweight fault-tolerant protocols [4], and establishing better health monitoring facilities to ensure the safety of systems and to provide better maintainability [5]. Future work could explore these areas in more depth.

3 Alan Burns

My main field of research is the design, implementation, modelling and analysis of real-time systems. I am most interested in scheduling analysis and the assessment of languages, particularly Ada and Real-Time Java, and reflective programming languages.

My current research revolves around scheduling analysis for safety-critical systems such as those found in aircraft and cars, and mission-critical systems such as multi-media systems. All these systems have the need to deliver the appropriate quality of service (known as QoS) in an environment where resources are in some sense limited. The main resources of interest are processors and communication networks and busses. Work is currently been carried out on single processors, multiprocessors, distributed systems and new silicon architectures such as SoC (Systems on Chips).

A major focus of the scheduling work (of which over 10 people have obtained PhDs in the past) is to undertake multi-level budget control over all resources of importance in a system. The allocation of resources, even in a static system, is a NP-hard problem; and hence sub-optimal but effective schemes are needed. In more open and dynamic systems this problem is even more challenging. The allocation of power in battery driven systems is also an active research area in mobile systems.

To undertake research in this area requires a good mathematical background and an appreciation of concurrency. I am happy to supervise research students on any issue related to this area.

4 Rob Davis

My main area of research is the analysis of Real-Time Systems with a focus on real-time scheduling and schedulability analysis. My recent research covers single processor [12], multiprocessor [10], [11], and networked systems [13]. Current hot topics include mixed criticality systems [14], [15], Integrating Cache Related Pre-emption Delays (CRPD) into schedulability analysis [16], [17] and Probabilistic analysis [18].

Over the past 12 years, I have been involved in a number of start-up companies, transferring real-time systems research into commercial products that are of value to industry. Building on this experience, a key motivator for my research is to progress the state-of-the-art forward in terms of the techniques available for analysing and developing commercial real-time systems. Much of my research is therefore aimed at providing solutions with a clear practical benefit.

To undertake research into the analysis of real-time systems requires a good mathematical background. I am happy to supervise students on any area related to the scheduling and analysis of real-time systems.

Potential PhD students should contact Rob via email to discuss possible PhD studies prior to completion of University application forms.

PhD Topics

Any aspect of real-time scheduling and schedulability analysis (including multiprocessor, single processor and network scheduling, mixed criticality systems, probabilistic real-time systems).

5 Leandro Soares Indrusiak

My research interests cover a large part of the embedded systems design flow from specification to implementation, addressing specific aspects of the hardware platform, the application software and the interface between both. I follow a model-driven approach, using simulation and/or formal methods to validate a model, and transformation rules (such as model synthesis or code generation) to bring it step-wise closer to its final implementation. This approach aims to support software developers to properly express concurrency at the application level, and to investigate techniques that can more efficiently explore all the parallelism that will be made available by future multiprocessor hardware platforms. Specific research topics include:

Application modelling and mapping onto multiprocessor platforms

Multiprocessor platforms can explore concurrency at the application level and increase performance by parallelising the execution. However, the application-level concurrency must be as explicit as possible, because one can't write purely sequential code and expect compilers to do the magic. My aim here is to investigate better languages and language combinations that could provide suitable constructs to better enable the specification of concurrent behaviour for a specific application domain (embedded systems must explore as much as possible the specificities of the domain they are embedded in, so that they can be more efficient regarding cost, performance and energy).

Possible PhD topics: For detailed information, check my open proposals webpage.

  • application modelling using actors and UML
  • dynamic mapping application models onto platforms

Multiprocessor platforms for embedded systems

Chips with multiple processing cores are already a reality in embedded systems, but there are many open issues on how to maximize system performance through parallelism while complying with constraints on power consumption and heat dissipation. In order to find the best trade-off for each embedded application, developers must be able to validate the software functionality and performance over different alternatives of the hardware platform, and due to short time-to-market this is expected to be done even before the actual hardware is available.

Possible PhD topics: For detailed information, check my open proposals webpage.

  • modelling and evaluation of time-predictable on-chip interconnect structures
  • estimation of power consumption in multiprocessor platforms

6 Andy Wellings

My main field of research is the design, implementation and analysis of real-time systems. I am most interested in design methods for hard real-time systems; operating kernels for safety-critical and real-time systems; generic architectures; and assessment of languages, particularly Ada95 and Real-Time Java, object-oriented programming languages and reflective programming languages.

My current research revolves around architecture-neutral real-time systems. These are real-time systems whose target architectures are unknown at the design time. Architecture-neutral real-time systems are typically intended for embedded systems or hand-held devices; however, they are also applicable to Internet applications. The target architecture is unknown because: (1) They have to be executable on the widest range of architectures possible in order to increase their portability; (2) Their lifetime is expected to be greater than ten years and, therefore, they have to be immune to technology obsolescence; (3) Their site of execution may vary.

Architecture-neutral real-time systems are at odds with traditional real-time systems because traditional systems typically need: (1) known (or bounded) processing resource demand - by definition the resources needed by an architecture-neutral system will depend on the power of the site hosting its execution; (2) efficient and predictable execution - most architecture-neutral systems are interpreted where efficiency is often a secondary concern; techniques such as Just-In-Time compilation lead to better average-case executions but have less predictability and poorer worst-case behaviour; (3) static allocation - predictability in a real-time multiprocessor or distributed environment is often achieved by sacrificing flexibility; e.g., statically allocating threads to processors in order to avoid scheduling anomalies (such as Graham's and Dhall's anomaly); by definition static allocation is not possible in an architecture-neutral system.

Current software technologies that can be used as a basis for architecture-neutral computing include: Microsoft's .Net framework, Sun's Java, Bell Labs' Inferno, and OSF's ANDF. Of these, only Java (with the Real-Time Specification) addresses real-time behaviour. I am happy to supervise research students on any issue related to this area.

References

[1] J. Tate, B. Woolford-Lim, I. Bate, X. Yao, Evolutionary and principled search strategies for sensornet protocol optimisation, IEEE Trans on SMC, Part B: Cybernetics, 42(1):163-180, 2012.

[2] I. Bate and N. Audsley. Flexible design of complex high-integrity systems using trade offs. In 8th IEEE International Symposium on High Assurance Systems Engineering, pages 22-31, 2004.

[3] I. Bate and A. Burns. An integrated approach to scheduling in safety-critical embedded control systems. Real-Time Systems Journal, 25(1):5-37, 2003.

[4] T. Lim, I. Bate, J. Timmis, Multi-Modal Routing to Tolerate Failures, Proceedingsof the 7th International Conference on Intelligent Sensors, Sensor Networks and Information Processing, pp. 211-216, 2011.

[5] I. Bate, Y. Wu, J. Stankovic, Developing Safe and Dependable Sensornets, Proceedings of the 37th EUROMIICRO Conference on Software Engineering and Advanced Applications, pp. 279-282, 2011.

[6] I. Bate and P. Emberson. Design for flexible and scalable avionics systems. In IEEE Aerospace Conference. IEEE Computer Society, 2005.

[7] I. Bate and T. Kelly. Architectural considerations in the certification of modular systems. Reliability Engineering and System Safety, 81:303-324, 2003.

[8] I. Bate, J. McDermid, and P. Nightingale. Establishing timing requirements for control loops in real-time systems. Microprocessors and Microsystems, 27(4):159-169, 2003.

[9] I. Bate and R. Reutemann. Worst-case execution time analysis for dynamic branch predictors. In 16th Euromicro Conference on Real-Time Systems, pages 215-222. IEEE Computer Society, 2004.

[10] R.I. Davis and A. Burns "A Survey of Hard Real-Time Scheduling for Multiprocessor Systems." © ACM, (2011). ACM Computing Surveys, 43, 4, Article 35 (October 2011), 44 pages. DOI 10.1145/1978802.1978814.

[11] R.I. Davis and A. Burns,"Improved Priority Assignment for Global Fixed Priority Pre-emptive Scheduling in Multiprocessor Real-Time Systems". Real-Time Systems, (2011) Volume 47, Number 1, pages 1-40. DOI 10.1007/s11241-010-9106-5.

[12] R.I. Davis, T. Rothvoß, S.K. Baruah, A. Burns, "Exact Quantification of the Sub-optimality of Uniprocessor Fixed Priority Pre-emptive Scheduling". Real-Time Systems, Volume 43, Number 3, pages 211-258, November 2009

[13] R.I. Davis, S. Kollmann, V. Pollex, F. Slomka, "Schedulability Analysis for Controller Area Network (CAN) with FIFO Queues Priority Queues and Gateways." Real-Time Systems, Volume 49, Issue 1, Pages 73-116, Jan 2013. DOI: 10.1007/s11241-012-9167-8

[14] A. Burns, R.I. Davis, "Mixed Criticality on Controller Area Network (CAN)". In proceedings 25th Euromicro Conference on Real-Time Systems (ECRTS 2013), pages 125-134, 9-12th July 2013.

[15] S.K. Baruah, A. Burns, R.I. Davis "Response Time Analysis for Mixed Criticality Systems". In proceedings 32nd IEEE Real-Time Systems Symposium (RTSS'11), pages 34-43, Nov 29th - Dec 2nd, 2011.

[16] S. Altmeyer, R.I. Davis, C. Maiza "Improved cache related pre-emption delay aware response time analysis for fixed priority pre-emptive systems" . Real-Time Systems, Volume 48, Issue 5, Pages 499-526, Sept 2012. DOI: 10.1007/s11241-012-9152-2.

[17] W. Lunniss, S. Altmeyer, C. Maiza, R.I. Davis, "Integrating Cache Related Pre-emption Delay Analysis into EDF Scheduling". In proceedings 19th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS) , pages 75-84, Apr 9th - 11th, 2013.

[18] R.I. Davis, L. Santinelli, S. Altmeyer, C. Maiza, L. Cucu-Grosjean, "Analysis of Probabilistic Cache Related Pre-emption Delays" In proceedings 25th Euromicro Conference on Real-Time Systems (ECRTS 2013) , pages 168-179, 9-12th July 2013.

Legal note

The use of registered names, trademarks etc. in this document does not imply, even in the absence of a specific statement, that such names are exempt from relevant laws and regulations and therefore free for general use. Although care has been taken in preparing the information supplied in this document, the University of York and the Department of Computer Science do not and cannot guarantee the accuracy of it. The University and the Department cannot be held responsible for any errors or omissions and accepts no liability whatsoever for any loss or damage howsoever arising.