Announcements
- November 28: Gentle Reminder: The Final Exam will be held on:
November 30th from 4:00PM till 7.00PM in Room 1031.
All the best! - November 20: PS6 is out, due on November 28th.
- November 13: P4 is out, due on November 27th.
- November 08: Gentle Reminder: Quiz II will be held on November 16th.
- November 08: PS5 is out, due on November 15th.
- October 23: PS4 is out, due on November 1st.
- October 22: P3 is out, due on November 12th.
- October 04: P2 is out, due on October 21st.
- October 02: PS3 is out, due on October 9th.
- October 02: The midterm will be held on Wednesday, October 11. It will include all the material and lectures covered up until then. Good luck!
- September 26: Gentle Reminder: Quiz I will be held on September 28 during the class time.
- September 14: PS2 is out, due on September 21st.
- August 31: P1 is out, due on October 1st.
- August 24: PS1 is out, due on September 11th.
- August 21: First day of 15-440 classes.
Course Overview
Title: Distributed Systems
Description:15-440 is an introductory course in distributed systems. The emphasis will be on the techniques for creating functional, usable, and high-performing 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, students will gain an understanding of the principles and paradigms that underlay distributed systems, such as communication across networks, concurrency, synchronization, consistency and fault-tolerance. Second, students will gain practical experience in designing, implementing, and debugging real distributed systems.
The major themes this course will teach include process distribution, communication, naming, abstraction and modularity, concurrency, scheduling, resource sharing, locking, consistency and replication, failure handling, distributed programming models, distributed file systems, virtualization, and the use of instrumentation, monitoring and debugging tools to solve problems at large-scale. As the creation and management of software systems are fundamental goals of any undergraduate systems course, students will design, implement, and debug large programming projects. Students will learn some of today's most popular distributed systems, such as Google File System, MapReduce and PowerGraph.
Units: 12
Pre-requisites: A grade of "C" or better in 15-213 Introduction to Computer Systems
Logistics
Instructor
Prof. Mohammad Hammoud, mhhammou@qatar.cmu.edu, CMUQ 1006, 4454-8506, Office hours: Monday, 10:30 - 11:59 AM.
Teaching Assistant
Tamim Jabban, tamim@cmu.edu, CMUQ 1004, 4454-8496, Office hours: Tuesday, 9:30 - 11:59 AM; Thursday, 10:30 - 11:59 AM.
Class hours
Lectures: Monday and Wednesday, 9:00 - 10:20 AM, Room 1031
Recitation: Thursday, Time: 4:30 - 5:20 PM, Room: 1031