- Oct 05: New website launched
- Sep 05: First day of classes
Title: Distributed SystemsDescription:
15-440 is an introductory course in distributed systems. The emphasis will be on the techniques for creating functional, usable, and high-performance distributed systems. To make the issues more concrete, the class includes several multi-week projects requiring significant design and implementation.
The goals of this course are twofold: First, for students to gain an understanding of the principles and techniques behind the design of distributed systems, such as locking, concurrency, scheduling, and communication across networks. Second, for students to gain practical experience designing, implementing, and debugging real distributed systems.
The major themes this course will teach include process distribution and communication, data distribution, scheduling, concurrency, resource sharing, synchronization, naming, abstraction and modularity, failure handling, protection from accidental and malicious harm, and the use of instrumentation, monitoring and debugging tools in problem solving. As the creation and management of software systems is a fundamental goal of any undergraduate systems course, students will design, implement, and debug large programming projects. Students will learn the design and implementation of today’s popular distributed system paradigms, such as Google File System, MapReduce and system virtualization.
Pre-requisites: A grade of "C" or better in 15-213 Introduction to Computer Systems
Prof. Majd F. Sakr firstname.lastname@example.org, CMUQ 2121, 4454-8625. Office hours: Tue, 3-4pm
Dr. Mohammad Hammoud, email@example.com, CMUQ 1013, 4454-8506. Office hours: Thu, 11am-12pmDr. Vinay Kolar, firstname.lastname@example.org, CMUQ 1013, 4454-8683. Office hours: Sun, 1:30-2:30pm
Lectures: Mon and Wed, 10:00 - 11:20 AM, Room 2049
Recitation: Thu, 04:00 - 04:50 PM, Room 1185