CSE 223B is a 4-unit graduate subject with lectures, paper discussions, labs, a midterm, a final, and a term project. It will present abstractions and implementation techniques that facilitate the design of distributed systems--including both operating systems and sophisticated Internet servers--that can deal with the demands of real-world workloads. Topics will include efficient operating system primitives, high-performance network servers, load shedding, storage systems, security, and fault tolerance.
Prereqs: CSE 221 (or consent of instructor) and substantial programming experience for lab assignments and term project. Note that CSE 223A is not a prerequsite. However, those interested in the theoretical underpinnings of distributed computation are encouraged to take CSE223A as well. CSE223A and CSE223B may be taken in any order.
NB: This course will be a fair amount of work and is not for the faint of heart. It is expected that students signing up for this course are interested in understanding how to design and build research-grade distributed systems. Ideally, students completing the course will be well-prepared to begin research in distributed systems and Internet services. This course will not teach you how to program---you need to know that coming in. This course will teach you how to design and implement real distributed systems.
|Joe DeBlasiofirstname.lastname@example.org||B275||N/A||M 1-2pm, W 10-11am|
|Alex C. Snoerenemail@example.com||EBU3b 3114||822-2289||Tue 2:30 - 3:30pm|
Some programming assignments must be completed individually, others may be completed in teams. The requirements will be explicitly stated for each assignment. For solo assignments, you must write all code that you submit, excepting any code that was provided to you as part of the assignment; for team assignments, the code must have been authored exclusively by members of your team. You may (and, in fact, are encouraged) to discuss the assignments with others, but you may not copy code from another team or make your code available to others. Of course, code may be freely shared within teams on team assignments.
Exams will be individual effort. You are expected to be aware of UCSD's academic honesty guidelines. Any violation of the course or institute policies will be treated very seriously, and could lead to severe repercussions, up to, and including, expulsion. Don't cheat. It's not worth it.
Last updated: Tue May 12 12:09:24 -0700 2015 [validate xhtml]