The Logical Design of Operating Systems