The applications that users interact with today no longer run on a single user's desktop computer. Unlike applications of the past, modern mobile/cloud applications are widely distributed, massively multi-user and eternally persistent. These new characteristics of mobile/cloud applications require a radical re-design of traditional operating system abstractions.
Mobile/cloud applications are distributed over users' mobile devices and across back-end cloud servers around the world. As a consequence, application programmers now face deployment decisions that were visible only to designers of large-scale distributed systems in the past. These is decisions include where data and computation should be located, what data should be replicated or cached and what data consistency level is needed. We are working on how to separate deployment from applications, while still giving application programmers control over performance trade-offs in the Sapphire project
Mobile/cloud applications are multi-user and focus on allowing users to share data between devices or with each other. As a consequence, application programmers must now cope with user management and protection, previously provided by the OS. Mobile/cloud applications facilitate sharing between users, so policies are often application-specific. This coupling between application-level concepts and security has made it difficult to implement traditional protection mechanisms, like access control and sandboxing, separate from the application. We are working on providing flexible, fine-grained protection for mobile/cloud applications in the Agate project.
Mobile/cloud applications are reactive, so they need to continuously synchronize user data stored in many locations: back-end storage systems, front-end servers, caches and mobile devices. As a consequence, application programmers must now manage consistency and concurrency control across nodes that are accessing shared data at the same time and may fail or be unavailable. We are working on providing transactional data management and storage for mobile/cloud applications in the Diamond project
Our paper on the Diamond automated data management platform will appear in OSDI 2016.
Irene and Adriana visited MSR this week to give a talk and chat with the Orleans team about Sapphire and Agate. Utilizing a mobile device, Adriana took this picture of Irene giving the talk.
Irene and Adriana will be visiting MSR Redmond and giving a talk on Sapphire on November 18th.
We had a great trip to OSDI 2014! Check out the OSDI website for a video of our talk on the Sapphire project.
Our paper on Sapphire was accepted to OSDI ‘14.
We present Sapphire at the ACM Symposium on Operating System Principles (SOSP) Work-In-Progress session. Find out more about SOSP 2013.
Sapphire is supported by the National Science Foundation and generous gifts from Google.