Table of ContentsSystem Design What is system design? Goal System design in real life Some common resources Time Space Computation Money Labor Social constraints Scaling Common design techniques Top level goal Multiplexing Multiplexing (contd.) Statistical multiplexing Statistical multiplexing (contd.) Example of statistical multiplexing gain Pipelining Pipelining (contd.) Pipelining (contd.) Batching Exploiting locality Optimizing the common case Hierarchy Binding and indirection Virtualization Randomization Soft state Exchanging state explicitly Hysteresis Separating data and control Extensibility Performance analysis and tuning |
Author: S. Keshav
Email: skeshav@cs.cornell.edu Home Page: http://www.cs.cornell.edu/home/skeshav |