I studied for my PhD in the ENDS (Embedded, Networked and Distributed Systems) research group at the University of Glasgow, under the supervision of Prof. Joe Sventek. My PhD was supported by a scholarship from the Carnegie Trust. My main research interests lie in Operating Systems, Runtime Systems and Programming Languages for heterogeneous multi-core architectures, such as the IBM Cell processor and NUMA architectures.
My research interests involve operating system and runtime system support for heterogeneous multi-core processors. My PhD research involved developing a proof of concept Java Virtual Machine called Hera-JVM (based upon the JikesRVM), which can abstract a heterogeneous architecture to presents a homogeneous interface to the programmer. To efficiently exploit the resource available on different heterogeneous multi-core processors, without burdening the developer with architecture specific details, this runtime system will understand and take into account certain code annotations when making thread and data placement decisions.
I also have an interest in Operating System level virtualisation. My Masters Research project involved using the Xen Virtual Machine Monitor to partition a network router's resources between multiple competing QoS network flows (more details available in the projects page)
I was involved in the organisation of EuroSys 2008, assisting local arrangements and running the EuroSys 2008 website. I was also a lead organiser for the Workshop on Operating Systems support for Heterogeneous Multicore Architectures held at PACT 2007 in Brasov, Romania.
I graduated from the University of Glasgow in 2005 with a first class MSci in Computing Science. The first 4 years of this undergraduate Masters were spent studying a joint BSc Honours degree in Electronic and Software Engineering, after which I transferred to the MSci course.
I've been lucky enough to work for a number of different companies during various internships over the years. In the summer of 2007 I worked for Microsoft Research in Redmond on the Singularity OS research project with Orion Hodson and Galen Hunt. The summer before I worked for Google in Mountain View, California. I worked for the Google Enterprise Division on virtualisation and operating systems development.
I've also worked for Intel Research at the Research Lab in Cambridge with Rolf Neugebauer on the Xen Virtual Machine Monitor and IBM in their Greenock development lab under the supervision of Andy Knox.