Student Projects 2000


 Physically distributed games Miscellaneous  2000  Student Projects  NetOS 


This project involves the design and implementation of a distributed game which can support widely dispersed players. It could investigate the trade-offs that exist between various aspects of the game:

  • Consistency -- the extent to which each player sees the game progressing in the same way.
  • Resiliance -- for example to packet loss or network partitioning.
  • Security -- perhaps against technically competent cheating players.
  • Bandwidth required.
A specific example of an interesting area is the extent to which consistency can be sacrificed when players cannot see one anothers screens. In this situation it is only necessary for the clients to agree on certain key facts -- for example whether a shot fired by one player will hit another.

 Make NACHOS bootable on x86 Miscellaneous  2000  Student Projects  NetOS 

Contact: Umar Saif  email

NACHOS is a (toy) educational operating system by UC Berkeley. The original design runs on a MIPS simulator and most of the system calls are implemented as stub calls to the host operating system (FreeBSD). The aim of the project is to make NACHOS a stand-alone protected mode multi-threaded OS which runs on x86. You will need to write bootstrap loader code, protected mode support routines, threads support, VM support, networking support etc. Although this might seem like a mammoth task, a lot of code has been written for all these purposes (such as the CMU bootstrap loader used in FreeBSD), and a lot of literature is available on the net and in books about NACHOS. Still it will be a good programming practice and a good exercise in OS internals design.

The implementation of a stand alone NACHOS will be dual purpose. It can be used in the OS courses to help student get insight into OS internals, without worrying about too many low level details. Second, this project can lay the foundation of an extended project to explore the Intel architecture, by gathering statistics of the kernel operation on an Intel machine. Recommended for someone who enjoys programming.

 Graphical Java byte-code interpreter running a web server Miscellaneous  2000  Student Projects  NetOS 

Contact: Umar Saif  email

Java source code is compiled to an intermediate code, which is more dense and lends the much talked about portability to the language. The intermediate code instruction set is byte oriented and is usually referred to as the byte code. The Java interpreter, which runs on top of a native OS, interprets and executes this code. The instruction set has around 200 instructions assigned, and its interpreter is fairly lightweight. The Java Virtual machine has a stack based computation architecture i.e. all the operands are taken and returned to the system stack as the computation proceeds. The aim of this project is to write a graphical simulator for the Java interpreter, showing the state of the Java stack as the computation proceeds. To make the exercise more interesting, this virtual machine will be attached to a web server, and hence this graphical interpreter will render the state of the JVM as the web server services different HTTP requests. An extension of the project can be to do a bit of profiling to show the relationships of different web requests to the frequency with which byte code instructions are executed.

 Plug-in for Hot Java browser to support Home Area Networks Miscellaneous  2000  Student Projects  NetOS 

Contact: Umar Saif  email

No web browser implements all the HTTP methods; in fact only GET is supported in most of the browsers. The HAN research group has designed a control architecture which uses HTTP methods, not implemented by the current web browsers (like PUT, DELETE, POST etc). The aim of this project is to write a Hot Java browser plug-in (in Java) to support all the other HTTP methods specified in RFC 2616, and a few more (GENA methods). In addition to this, we would like an RMI-based stock ticker like interface to be coded to support the PUBLISH/NOTIFY interface of GENA. An extension of the project will be to implement HTTP over UDP, to support HTTP request/response protocol over a connection-less LAN.

  Miscellaneous  2000  Student Projects  NetOS 
Valid HTML 4.0!
$Id: misc.html,v 1.5 2000/08/01 14:56:47 rmm1002 Exp $