M. S. Jarrett, et al, "Clean store for operating system and software recovery,"
U.S. Patent 8 612 398, December 17, 2013.
M. S. Jarrett, A. M. Marinescu, M. G. Gheorghescu, G. C. Chicioreanu,
"Thread scanning and patching to disable injected malware threats,"
U.S. Patent 8 387 139, February 26, 2013.
M. S. Jarrett,
"Resource-reordered remediation of malware threats,"
U.S. Patent 8 087 061, December 27, 2011.
Published Papers
M. Jarrett and R. Seviora,
"Constructing an Autonomic Computing Infrastructure Using Cougaar",
Proceedings of the Third IEEE International Workshop on Engineering of Autonomic and Autonomous Systems (EASE 2006),
March 2006, pp. 119-128.
IEEE Xplore
M. Jarrett and R. Seviora,
"Diversity to Enhance Autonomic Computing Self-Protection",
The First International Conference on Availability, Reliability and Security (ARES 2006),
April 2006, pp. 295-299.
IEEE Xplore
M. Jarrett and P. Ward,
"Trusted Computing for Protecting Ad-hoc Routing",
Proceedings of the 4th Annual Communication Networks and Services Research Conference (CNSR 2006),
May 2006, pp. 61-68.
IEEE Xplore
Computer Engineering - University of Waterloo
Work Term Reports
Tracing Java Operations in Hotspot
Describes the difficulties involved in tracing critical operations
in the "Hotspot" Java Virtual Machine from Sun Microsystems. Results
of an implementation of these tracing features are described.
PDF
Visualizing an Object Memory Simulator
Documentation of work done to allow a visual inspection of a memory system
simulator's state using the GCSpy tool.
PDF
Circumventing the Wired Equivalent Privacy Protocol
Outlines experiments targeting the Wired Equivalent
Privacy encryption and authentication scheme of 802.11 wireless networks,
and the conclusions reached from these experiments.
PDF
Class Projects
A PKI for Trusted Pervasive Computing
Final Project: ECE750-6 - Pervasive Computing
Describes a public key infrastructure rooted in PGP-like web-of-trust
ideas, used for remote attestation verification in a trusted computing
environment. Two example scenarios demonstrate how such a system
could be effective for a pervasive computing environment.
PDF
Survey of Trusted Computing Technologies and Challenges
Survey: ECE750-6 - Pervasive Computing
Outlines the approaches taken by several industry groups in the area
of trusted computing, and some of the challenges still faced.
PDF
Adjustable Autonomy for Autonomic Computing
Final Project: CS886 - Multi-Agent Systems
Outlines the need for autonomic computing, and describes a solution
based on a cooperative multi-agent system. Outlines the need for
adjustable autonomy to make such a system usable, and makes accomodation
in the design for adjustable autonomy.
PDF
YabAI - Winner of the First RoboCup Rescue Competition
Project 3: CS886 - Multi-Agent Systems
Discusses the RoboCup Rescue Simulation League competition for 2001.
The winning agent team, YabAI, is analysed, and conclusions drawn
about the competition and YabAI based on its performance.
PDF
Analysis of SouthamptonTAC in TAC'01
Project 2: CS886 - Multi-Agent Systems
Discusses the second Trading Agent Competition in Tampa in 2001, and
analyses the features of SouthamptonTAC, a finalist in the competition.
PDF
Investigation into Features of Public Key Infrastructures
Final Project: ECE628 - Computer Network Security
An overview of challenges and current technologies available
for the management and distribution of public keys for
public key based cryptosystems.
PDF
Re-Engineering the Java Buffer Library with OpenJava
Final Project: ECE750-7 - Software System Family Design and Generative Programming.
Description of an attempt to use the OpenJava preprocessor to generate
code in the Java NIO buffer library.
PDF
An Architecture for Self-Protecting Autonomic Systems"
Final Project: GENE 401 - Special Directed Studies.
A description of security issues as applied to autonomic computing.
A basic architecture is described, and a description of the critical
components given. An approach to investigating autonomic security
further is described.
PDF
Management Technologies for a Pervasive Computing System
Research Proposal: ECE750 - Distributed and Network Centric Computing.
Surveys the technologies that could be used to provide management of
pervasive computing technologies. Across several areas of pervasive
computing management, several common approaches were found, leading
to the proposal that these techniques could be used in a more general case.
PDF