Sample menu:

Overview

Storage systems are among the most fascinating and the most important parts of computer systems. They often dominate the performance of a system, and failures of other components are frequently addressed by restarting from the data stored on them. Indeed, storage systems hold the crown jewels of most organizations: their information (from source code to Microsoft's software to the sales databases of every e-commerce site to the logs and indices driving the Big Data revolution). There continues to be great demand for bright people and better solutions in this critical field of computer systems.

This course covers 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 in servers and large-scale distributed systems. Along the way, we will examine several case studies of real systems, demands placed on storage systems by important applications, and impacts of trends and emerging technologies on future storage systems.

Although the word "Advanced" is no longer part of the title for this class, due to an unfortunate acronym, the class will continue to have the same advanced level of content, projects, and high-level expectations.

 

Components

 

Topics covered

746 will cover a wide spectrum of system-level topics in the design, implementation, and use of storage systems. Topics covered will include:

 

Books and readings

There will be no assigned book for the Fall 2017 offering. Instead, the instructors will rely on readings from books and the research literature to complement the lectures. See the Lectures & Readings page for an overview of the latest plan.

 

Mobile devices and other distractions

Research on learning shows that unexpected noises and movement automatically divert and capture people's attention, which means you are affecting everyone's learning experience if your cell phone, pager, laptop, etc. makes noise or is visually distracting during class. For this reason, we allow you to take notes on your laptop, but insist that you turn the sound off so that you do not disrupt other students' learning. If you are doing anything other than taking notes on your laptop, please sit in the back row so that other students are not distracted by your screen.

 

No recording of class meetings

No student may record or tape any classroom activity without the express written consent of all instructor(s). If a student believes that he/she is disabled and needs to record or tape classroom activities, he/she should contact the Office of Equal Opportunity Services, Disability Resources to request an appropriate accommodation.

 

Cheating

Each exam and lab assignment must be the sole work of the student turning it in. Like the University as a whole and the ECE and CSD departments, we take cheating very seriously. See CMU's policies on academic integrity for more information on the University's policies, which apply fully to this course.

The usual penalty for cheating in this class is to be removed from the course with a failing grade. The University also places a record of the incident in the student's permanent record.

No collaboration on exams is allowed. Unless otherwise notified, the following guidelines dictate what non-exam collaboration is authorized and what is not:

What is Cheating?

What is NOT Cheating?

Be sure to store your work in protected directories, and log off when you leave an open cluster, to prevent others from copying your work without your explicit assistance. Do not use publicly accessible code repositories or revision control systems; make sure that only you can access your code.

We understand that the web is a popular tool for everyone (including students) seeking to better understand and solve problems. Because the line between cheating and such explorations has been reached by some in the past, we ask all students to explicitly list websites on which they relied in developing their solutions. And, we reiterate for enphasis: looking at or relying on implementations found on the web is considered cheating.

 

Re-grading policy for exams and assignments

We will make the utmost effort to be fair and consistent in our grading. But, we are human. If you believe that you did not receive appropriate credit for an exam or assignment, you may request a re-grade as follows:

 

Late policy

No late assignments will be accepted, beyond explicitly announced deadline extensions announced to the entire class. If extreme extenuating circumstances make it impossible for you to submit your assignment on time, e-mail one of the course instructors.

 

Prereqs

This course will require solid understanding of computer organization, basic operating systems, and basic communication. Therefore, the minimum pre-requisite is a 'B' or better in 15-213 (or 18-213 or 15-513 of 18-600, which are the same class). Exceptions are rare and only by permission of the instructor. Our experience indicates that students without the substantial hands-on systems experience provided by this prereq (or some equivalently extensive experience) struggle significantly.

 

Take care of yourself

Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.

All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful.

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at CaPS website. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.

 

Final note

* Everything here is subject to change.