COP 5615: Distributed Operating Systems Principles