portrait
Professor Philip Levis
(he/him/his)
Office: 409 Gates, Stanford University, Stanford, CA, 94305
Office hours: Mondays 3:00-3:50 or by appointment
Phone: +1 650 725 9046
email: pal at cs stanford edu

Biography

I'm a Professor in the Computer Science and Electrical Engineering Departments of Stanford University. I head the Stanford Information Networking Group (SING) and co-direct lab64, the EE maker space at Stanford. I research operating systems, networks, and software design, especially for embedded systems. I appreciate excellent engineering and have a self-destructive aversion to low hanging fruit. For 2022-2023, I'm on leave at SystemsResearch@Google.

The results of my research are used by thousands of people, run on hundreds of thousands of devices, and are the basis for Internet standards. I written some papers. I've been awarded an NSF CAREER Award, a Microsoft New Faculty Fellowship, and an Okawa Grant. I've received four Test of Time awards for work that, in retrospect, has had especially high impact. In 2010, three of my advisees, Kannan, Mayank, and Jung Il, had the bold idea that it's possible to build a full duplex radio and co-founded Kumu Networks to commercialize it. I place all of my industrially funded work in the public domain.

Research Projects

Engineering Efforts

  • FLIGHT: a mechatronic art installation at Stanford
  • Tock: a secure embedded multitasking OS
  • TinyOS: an operating system for mote-class networks
  • RPL: the sensornet routing protocol for the Internet

Current Courses

EE185/EE285/CS241: Interactive Light Sculpture Project
CS244: Advanced Topics in Networking
E40M: An Introduction to Making: What is EE
CS340R: Rusty Systems

Past Courses

CS107E: Computer Systems from the Ground Up
CS114/CS214: Selected Reading of CS Research
CS144: Introduction to Computer Networks
CS240E: Embedded Wireless Systems
CS349G: Selected Reading of Ph.D. Dissertations
CS244E: Wireless Networking
CS303: Designing Computer Science Experiments
CS340V: Networked Systems for Virtual Worlds
EE108A: Digital Systems Design
CS344E: Wireless Networking Research
CS67N: The Computer of History, the Computer of Fiction

Advisees, Past and Present (Ph.D.)

  • Kannan Srinivasan: quantifying wireless networks (EE 2010), Ohio State
  • Jung Woo Lee: mesh routing to a mobile node (EE 2010), Verizon
  • Jung Il Choi: network protocol isolation (EE 2011), Kumu Networks
  • Mayank Jain: wireless physical/link boundary (EE 2011), Kumu Networks
  • Ewen Cheslack-Postava: planetary-scale virtual worlds (CS 2013), Confluent
  • Maria Kazandjieva: green enterprise computing (CS 2013), Netflix
  • Tahir Azim: instance-aware simplification (CS 2013), Amazon
  • Jae-Young Kim: full duplex link layers (EE 2013), Samsung
  • Behram Mistree: transaction defined networking (EE 2015), Forward Networks
  • Omid Mashayekhi: fast distributed cloud computing control planes (EE 2017), Google
  • Judson Wilson: architectures for network transparency (EE, on leave), Google
  • Chinmayee Shah: distributed multi-resolution and sparse data structures (EE 2018), Waymo
  • Hang Qu: scheduling microtask analytics (EE 2018), Facebook
  • Amit Levy: securing networks and systems with languages (CS 2018), Princeton
  • Sergio Benitez: secure systems with safe languages (CS)
  • Holly Chiang: embedded system power management (EE 2020), Apple
  • Francis Yu Yan: machine learning in network protocols (CS 2020), Microsoft Research
  • Luke Hsiao: automatic datasheet extraction (EE 2021), Google
  • Raejoon Jung: distributed wireless desynchronization (EE 2021), Facebook
  • Kevin Kiningham: hardware acceleration of cryptography and learning (EE 2021), , Cruise
  • Kexin Rong: analytics on IoT data (CS 2021), Georgia Tech
  • Hudson Ayers: secure real time systems (EE 2023), Cruise
  • Deepti Raghavan: distributed systems (CS, expected 2024)
  • Obi Nnorom: programmable renewable energy (EE)
  • Evan Laufer: secure systems (CS)
  • Agur Adams: hardware-accelerated intrusion detection (EE)

Advisees, Past and Present (M.S.)

  • Bhupesh Chandra: virtual world scripting (CS)
  • Arjun Roy: mobile phone operating systems (CS), Ph.D. at UCSD
  • Shane Leonard: hardware/software IoT platforms (EE), SpaceX
  • Jean-Luc Watson: low-power IPv6 networking (CS), Ph.D. program at UC Berkeley
  • Yancheng Ou: programming grid-connected battery storage (CS)

Selected Publications

You can generally find more up-to-date and detailed information for the complete list on the SING website.

  • Luke Hsiao, Sen Wu, Nicholas Chiang, Christopher Ré, and Philip Levis.
    Creating Hardware Component Knowledge Bases with Training Data Generation and Multi-task Learning. In ACM Transactions on Embedded Computing Systems (TECS), 2020.
  • Amit Levy, Bradford Campbell, Branden Ghena, Daniel Giffin, Pat Pannuto, Prabal Dutta, and Philip Levis.
    Multiprogramming a 64 kB Computer Safely and Efficiently. In Proceedings of the The 26th ACM Symposium on Operating Systems Principles (SOSP 2017).
  • Omid Mashayekhi, Chinmayee Shah, Hang Qu, Andrew Lim, and Philip Levis.
    Automatically Distributing Eulerian and Hybrid Fluid Simulations in the Cloud. In ACM Transactions on Graphics 37, 2, Article 24, 2018.
  • Judson Wilson, Riad S. Wahby, Henry Corrigan-Gibbs, Dan Boneh, Philip Levis and Keith Winstein.
    Trust but Verify: Auditing Secure Internet of Things Devices. In Proceedings of the The 15th ACM International Conference on Mobile Systems, Applications, and Services (MobiSys 2017).
  • Philip Levis.
    Experiences from a Decade of TinyOS Development. In Proceedings of the 10th USENIX Symposium on Operating Systems Design and Implementation (OSDI), 2012.
  • Omprakash Gnawali, Rodrigo Fonseca, Kyle Jamieson, David Moss, and Philip Levis.
    Collection Tree Protocol. In Proceedings of the 7th ACM Conference on Embedded Networked Sensor Systems SenSys, 2009.
    Received SenSys Test of Time Award (2022).
  • Mayank Jain, Jung Il Choi, Taemin Kim, Dinesh Bharadia, Siddharth Seth, Kannan Srinivasan, Philip Levis, Sachin Katti and Prasun Sinha.
    Practical, Real-time, Full-Duplex Wireless. In Proceedings of the 17th Annual International Conference on Mobile Computing and Networking (Mobicom 2011).
    Received SIGMOBILE Test of Time Award (2021).
  • Philip Levis, Neil Patel, David Culler, and Scott Shenker.
    Trickle: A Self-Regulating Algorithm for Code Propagation and Maintenance in Wireless Sensor Networks. In Proceedings of the First USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI 2004).
    Received NSDI Best Paper Award (2004), NSDI Test of Time Award (2014).
  • David Gay, Philip Levis, Robert von Behren, Matt Welsh, Eric Brewer, and David Culler.
    The nesC Language: A Holistic Approach to Network Embedded Systems. In Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation (PLDI).
    Received PLDI 2003 Most Influential Paper Award (2013).

TinyOS Programming Manual

I wrote a short book on programming TinyOS. Programming TinyOS digs into nesC and how you can use it to build TinyOS applications. A second version of the text, co-written with David Gay, is available for purchase as of April 2009. We tried to keep the cost down by making it softcover and having very tiny royalties. Unfortunately, though, TinyOS programming is not a blockbuster topic, so the book is a bit pricier than I'd like. You can download the first half of the published version for free. The first half covers the basics: this version does not include advanced topics like asynchronous code, writing generics, or the hardware abstraction architecture. There's a short errata page.

Education and Job Opportunties in STEM, 2008

Education and Job Opportunties in STEM, 2018

Service

2024: NSDI, OSDI, SOSP
2023: OSDI
2022: OSDI
2021: OSDI (external review)
2020: MobiSys, ATC
2016: IPSN, OSDI, SenSys (general chair)
2015: HotNets (co-chair)
2014: SenSys
2013: NSDI, SOSP, HotMobile
2012: CCR, SenSys
2011: CCR, IP+SN, MobiSys, HotPower, SOSP, SenSys (co-chair)
2010: TOSN, CCR, NSDI, MobiSys, DMSN
2009: TOSN, IPSN (co-chair, IP track), SenSys, SOSP, HotPower (co-chair)
2008: TOSN, MODUS, IPSN, ICDCS, NSDR, SIGCOMM, OSDI
2007: IPSN, EmNets (co-chair), SIGCOMM, DMSN, SenSys, MidSens
2006: NetDB, IPSN, DCOSS, SenSys, RTSS

Quote

"Solving a problem simply means representing it so as to make the solution transparent."

- Herbert Simon, Sciences of the Artificial

Funding

My work has been supported by generous gifts from Intel Research, DoCoMo Capital, Foundation Capital, the Secure Internet of Things Project, SDSI, the National Science Foundation under grants #1505728, #1409847, #0832820, #0831163, #0846014, #0615308 and #0546630, the Department of Energy ARPA-E program under award number DE-AR0000018, the King Abdullah University of Science and Technology (KAUST), Microsoft Research, scholarships from the Samsung Scholarship Foundation and a Stanford Terman Fellowship. My scientific research was supported by a National Science Foundation awards BCS-0947132, DE-AR-0000018, grants #0615308 and #0846014, a Branco Weiss fellowship, National Institute of Child Health and Human Development Award 1K01HD051494, and National Institutes of Health Grant GM28016.