COS-518 Semester Project
The semester-long project in COS-518 is an open-ended systems research project. Project topics should be reached after discussion with the class instructor. Projects should be done in groups of two or three, and must involve significant system programming. All group students are expected to share equally in the implementation.
The project time-line is as follows:
- Proposal: Project proposals are due on 10/25 on Piazza.
- Demo version 0 and review:Second week of December. Meetings
to be scheduled, status report should be submitted on Piazza.
- Demo version 1 and final paper: Due on Dean's date. Project writeup should be 5 pages of double-columned, single-spaced, 10-point font (excluding references, which can go on a sixth page). Papers must be typeset in LaTeX. Use this skeleton framework for formatting and building your paper.
Project Management
You should strongly consider using a version control system (git, svn, etc.) to perform source code control for your project and the paper you write describing it.
Writing Papers
Evaluation
If you need access to one or two computers for testing your system,
please contact us. For larger-scale tests, you should try out one of
the following testbeds:
Emulab
Emulab is a network emulation environment
at the University of Utah. It provides racks of machines and programmable
switches that can be configured to form mostly-arbitrary network topologies,
with controllable delay and loss between nodes. It's a great way to test
real programs in repeatable conditions or at scales that you can't get on
your own.
If you wish to use Emulab for your project, you should join our class emulab
project.
Planetlab
PlanetLab is a large-scale,
distributed collection of machines that can be used for experiments
and measurements, managed by a group based here at Princeton. It has around 600 nodes scattered over about 350 sites.
The machines run something linux-ish that you can login to and
run programs, and there exist a variety of utilities for automatically
distributing software to the nodes, running programs, and so on.
You must sign up to use a PlanetLab account. Please only sign up if
you're going to use the account, since it imposes some management
overhead on people not involved with the course.
Analysis
- Books: Raj Jain, the Art of Computer Systems Performance Analysis - a very good overview of lots of mathematical
techniques and queuing bits, aimed at a systems audience
Last updated: Fri Jan 06 10:47:49 -0500 2012