Projects

We are looking for outstanding, enthusiastic students to join our lab. Several ongoing projects are listed below. If you are interested in joining the lab, the best way to begin is to take a systems course with Professor Porter or otherwise get to know the lab members.
If you are considering applying to Stony Brook, we encourage you to apply to the department. Please note that you must be admitted to the department before you can join our lab, and that we cannot pre-admit any students.
Graphene Library OS
Related Areas: Systems, Programming, Security
Prerequisite: Experience with system-level programming, debugging, and security analysis a plus.
We are designing and implementing a Linux library OS that can lower the costs of virtualization and facilitate new application and security models. We are looking for students to extend the system. Learn more here.
Obviating Setuid-to-root Binaries
Related Areas: Systems, Programming, Security
Prerequisite: Experience with system-level programming, debugging, and security analysis a plus.
We are exploring techniques to remove the need for trusted, setuid-to-root binaries on Linux, reducing the system's trusted computing base. Learn more here.
Operating System Virtualization
Related Areas: Systems, Security
Prerequisite: C/C++/Assembly Programming, UNIX & Kernel Knowledge
Virtualization in operating systems is a technique to build virtual layers upon host systems to accommadate isolated systems. We are investigating novel virtualization techniques and applications of virtualization to improve the efficiency and utility of virtual machines.
Concurrent Programming
Related Areas: Systems, Programming, Concurrency
Prerequisite: C Programming, UNIX & Kernel Knowledge. Experience with multi-threaded programming or transactional memory a big plus.
We are exploring novel techniques for implementing transactions in Linux, as well as new uses of transactions to make system-level programming easier for users.
Teaching Hypervisor
Related Areas: Systems, Programming
Prerequisite: C Programming, Virtualization Background a Plus.
We are developing and extending a variation of JOS that runs a simple hypervisor. For more information, see this page. We are looking for students to maintain and extend this software for use in future courses.
Operating System Transactions
Related Areas: Systems, Programming, Concurrency
Prerequisite: Experience with multi-threaded programming. Formal methods experience a big plus.
We are exploring techniques to make multi-core computers easier to program, both in the OS and in applications. Our work focuses on improved data structure and library designs that encapsulate this complexity from the programmer.
OSCAR Lab, Room 2203, Computer Science Building, Stony Brook University, Stony Brook, NY 11794-4400