Explicit Network Scheduling
Richard John Black
Churchill College
University of Cambridge
A dissertation submitted for the degree of
Do ctor of Philosophy
December
Abstract
This dissertation considers various problems asso ciated with the scheduling and
network I O organisation found in conventional op erating systems for e ective
supp ort for multimedia applications which require Quality of Service
A solution for these problems is prop osed in a micro kernel structure The pivotal
features of the prop osed design are that the pro cessing of device interrupts is
p erformed by user space pro cesses which are scheduled by the system like any
other that events are used for b oth inter and intra pro cess synchronisation
and the use of a sp ecially develop ed high p erformance I O bu er management
system
An evaluation of an exp erimental implementation is included In addition to solv
ing the scheduling and networking problems addressed the prototyp e is shown
to out p erform the Wanda system a lo cally develop ed micro kernel on the same
platform
This dissertation concludes that it is p ossible to construct an op erating system
where the kernel provides only the fundamental job of ne grain sharing of the
CPU b etween pro cesses and hence synchronisation b etween those pro cesses This
enables pro cesses to p erform task sp eci c optimisations as a result system per
formance is enhanced b oth with resp ect to throughput and the meeting of soft
real time guarantees
To my parents
John and Marcella
Preface
Except where otherwise stated in the text this dissertation is the result of my
own work and is not the outcome of work done in collab oration
This dissertation is not substantially the same as any I have submitted for a
degree or diploma or any other quali cation at any other university
No part of this dissertation has already b een or is b eing currently submitted for
any such degree diploma or other quali cation
This dissertation do es not exceed sixty thousand words including tables fo ot
notes and bibliography
c
Copyright Richard Black All rights reserved
Trademarks
Alpha AXP DECstation TURBOchannel Ultrix and VAX are trademarks of Digital
Equipment Corp oration
Archimedes is a trademark of Acorn Computers Ltd
ARM is a trademark of Advanced RISC Machines
Ethernet is a trademark of the Xerox Corp oration
MIPS is a trademark of MIPS Technologies Inc
TAXI is a trademark of Advanced Micro Devices Inc
unix is a trademark of AT T
Windows NT is a trademark of Microsoft Corp oration
Xilinx is a trademark of Xilinx Inc
Other trademarks whichmay b e used are also acknowledged i
Acknowledgements
Iwould like to thank my sup ervisor Derek McAuley for his encouragement and
advice during my time at the Computer Lab oratory I would also like to thank
Roger Needham Head of the Lab oratory for his supp ort and for encouraging me
to sp end one summer getting a new p ersp ective on research by working as an
intern at DEC Systems Research Center in Palo Alto
I am grateful for the help and friendship of the memb ers of the Systems Research
Group who havealways proved ready to engage in useful discussions Jo e Dixon
Mark Hayter Ian Leslie and Eoin Hyden deserve a sp ecial mention
I am indebted to Paul Barham Mark Hayter Eoin Hyden Ian Leslie Derek
McAuley and Cosmos Nicolaou who read and commented on various drafts of
this dissertation Iwould also liketothankPaul Barham for artistic advice and
Robin Fairbairns for typ ographical guidance The world famous Tro jan Ro om
co ee machine deserves a mention to o for its stimulating input over the years
Iwould liketotake this opp ortunity to congratulate Martyn Johnson and his sta
on the exceptionally high quality of the systems administration at the Computer
Lab and in particular to thank him for the cheerful and indeed encouraging way
he has reacted to my all to o frequent requests to do p eculiar things to his system
This work was supp orted by an XNI studentship from the Department of Edu
cation for Northern Ireland ii
Contents
List of Figures vii
List of Tables viii
Glossary of Terms ix