Operating Systems Support for NVM
Byte-addressable non-volatile memory changes the way that programs can operating on data. We are exploring ways to design an operating system centered around the goal of non-volatile memory support, from consistency support for applications and the kernel in the face of power failures, to programming models for applications to better make use of non-volatile storage.
For research work focusing on non-volatile or storage class memories, see Storage Class Memories. The work here focuses more on operating system design and support for applications with non-volatile memory.
We are developing a new operating system named Twizzler. Twizzler will be using a new kernel designed and built from scratch to support our data models and non-volatile memory. The project is in currently in early design phase, with beginning work on kernel and userspace implementation.