Current operating systems have poor reliability and security. Computers crash regularly whereas other electronic devices such as televisions and mobile phones never crash. Furthermore, practically every week one reads about another security hole in Windows. As computers become more essential for all aspects of society this situation is unacceptable. The goal of my proposed research is to conceive, design, implement, and test an operating system that is as reliable and secure as is humanly possible. The job will be finished when the average user has never experienced a crash in his lifetime and RESET buttons on computers have passed into history, like 5¼ -inch floppy disks. The basic concept I want to use to achieve a reliable, secure operating system is the POLA The Principle of Least Authority. The operating system will be moved out the kernel (where it has unrestricted access to all of memory, critical machine instructions the I/O devices) into a set of multiple, tightly constrained user processes. Each process (e.g. a file server) will be given exactly the authority it needs to do its job and no more. This mechanism ensures that problems in one process cannot spill over into other ones. While this goal has floated around for years, no one really knows how to do it, so research is needed. Furthermore, I also want to make the system fault tolerant and self healing so it can continue to run even in the presence of hardware and software errors. Recovery should be done automatically without affecting running programs. Designing and building a new operating system that runs counter to 50 years of experience is extremely ground-breaking and ambitious. But the current road we are on with millions of lines of code in the kernel and growing all the time cannot be sustained. We need research that will lead to much better reliability and security. I have 30 years experience in the field and think I have a chance to pull it off.
Fields of science
Call for proposal
See other projects for this call