|
|
Andy Wellings
Home Page
|
Andy Wellings is Professor of Real-Time Systems in the Department of Computer Science,
University
of York, U.K. His research interests are focused on two related areas
of
computing: the design, use and implementation of real-time programming
languages
and operating systems; and the design and use of general purpose
distributed
operating systems. Professor Wellings has published over 350 technical
papers
and reports, including five textbooks. He has taught courses in
Operating
Systems, Real-Time Systems and Networks and Distributed Systems.
Currently
he teaches
- Real-Time Systems and Programming Languages
- Concurrent and Real-Time Programming in Java
Andy's current research interests revolve around architecture-neutral
real-time
systems. These are real-time systems whose target architectures are
unknown
at systems 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:
- they have to be executable on the widest range of
architectures
possible in order to increase their portability;
- their lifetime is expected to be greater than ten years and,
therefore,
they have to be immune to technology obsolescence;
- their site of execution may vary.
Architecture-neutral real-time systems are at odds with traditional
real-time
systems because traditional systems typically need:
- 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;
- 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;
- static allocation ― predictability in a real-time multiprocessor
or
distributed environment is often achieved by sacrificing
flexibility;
for example, 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 ―
RTSJ) addresses real-time behaviour.
Andy is very active in the Java Community Process, being directly
involved in
- JSR 282 - which is developing the next version of the RTSJ
- JSR 302 - which is developing a real-time safety critical
version of Java
- JSR 50 - which is developing a distributed version of the RTSJ
He is also interested in the Ada programming language and helps run
the the International Series on Real-Time Ada Workshops. His work has
has fed into the new Ada 2005 language.
Here is
a
list of the real time group's publications. Andy's publications are
included there.
The following books are available:
Here is a link to a local HTML version of the Ada 95 Reference
Manual.
Andy Wellings is European Editor-in-Chief for Software
Practice
and Experience. He is on the Editorial Board of the Journal of
Embedded
Computing.
Currently he is joint programme chair for ISORC 2014.
Professor Wellings can be found in the Computer Science Building
on Campus
East, CSE 119 and on extension
5539. You can click here to
automatically
email him.
INTERNAL
Andy Wellings is the Department Research Report
Editor
Andy Wellings chairs the Departmental
Computing Infrastructure Committee
Click here to return to
the departmental
home page.
Click here to
return
to the real-time research page.