|
|
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
fed into the Ada 2005/12 languages.
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 programme chair for JTRES 2012.
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.
He teaches modules in Concurrent and Real-Time Programming in
Java, and Analyzable Real-Time Systems.
Click here to return to
the departmental
home page.
Click here to
return
to the real-time research page.