THIS PAGE HAS MOVED. PLEASE UPDATE YOUR BOOKMARKS. IF YOU ARE NOT REDIRECTED IN A FEW SECONDS, PLEASE CLICK HERE TO GO TO OUR NEW PAGE.
RECENT
Spring 2008: 18-746 / 15-746: Storage Systems
PREVIOUS
Fall 2006: 18-746: Storage Systems
Fall 2005: 18-746:
Storage Systems
Spring 2004: 18-746: Storage Systems
Spring 2003: 18-746:
Storage Systems
Spring 2002: 18-546:
Storage Systems
Spring 2001: 18-546:
Storage Systems
ABOUT THE STORAGE SYSTEMS COURSE
At Carnegie Mellon we are tackling the important problem of creating
education in storage systems, a subject that is at least as broad and
deep as other computer systems topics on which universities teach class
sequences (e.g., processor architecture, operating systems, networking,
databases, and compilers). Ever under-appreciated, storage systems are
at the core of the Information Age, offering unmatched opportunities
for current and future computing professionals. Seemingly boundless
growth comes with the transition from paper to digital storage and digital
video, and storage systems offer fascinating design and implementation
challenges. Their components inner workings require amazing feats
of engineering. Building efficient, scalable, reliable, secure, cost-effective,
manageable storage systems from these components requires a storage-oriented
combination of architecture, operating systems, networking, and distributed
computing knowledge. Further, storage systems usually dominate the performance
of a system, making them one of the few remaining places for performance
engineers to thrive. Within the field of computer systems and computer
engineering, there is no area whose demand for bright people and better
solutions is more robust.
Sadly, storage systems are among the least understood areas of computer
systems. The field is rife with buzzwords, like RAID and NAS and SAN,
and bold claims of novelty, scalability, and manageability. But, many
seem not to understand the details of storage systems, their consequences,
or even the fact that the buzzwords rarely describe new technologies
(just new names for old ideas). Historically, universities have provided
little education in this space and there have been few useful books.
We have taught storage systems as
a full-semester, 4th-year course focused on storages incorporation
and role in computer systems for several years now. Topics span the design, implementation,
and use of storage systems, from the characteristics and operation of
individual storage devices to the OS, database, and networking approaches
involved in tying them together and making them useful. Along the way,
we examine several real case studies, the demands placed on storage
systems by important applications, and the impact of trends and emerging
technologies on future storage systems. In the Spring 2002 offering,
designated "18-546: Storage Systems," base lecture material
was complemented by real-world expertise generously shared by 8 guest
speakers from industry (including 2 CTOs and 4 of the 8 members of the
SNIA Technical Council). The students who have taken the class will
now be better prepared to contribute to the storage industry today and
in the future. More information can be found at http://www.ece.cmu.edu/~ganger/ece746.spring04/.
In the Spring
2003 offering of this class, it was renumbered (18-746) and was
similar to the 2002 offering (18-546), while offering additional topics,
more refined projects and new readings. As in the past, current courses
offer several guest lectures from industry experts.
This course and an associated book on storage systems are an attempt
to fill the gaping hole in computer systems education. The book, which
is evolving as the class is taught, will make it much easier for other
universities to start offering storage systems education. Hopefully,
it will also be useful to graduates who did not have access to a storage
systems class.
Stay tuned!