For the newer material you need to go to the associated Blackboard page.
Back to the syllabus
- A deep analysis on how to exploit the benefits of cache memory in our programs can be found in Ulrich Drepper's excellent article "What every programmer should know about memory".Virtualization 01, 02, 03
- Barham, P., Dragovic, B., Fraser, K., Hand, S., Harris, T., Ho, A., Neugebauer, R., Pratt, I. and Warfield, A., 2003, October. "Xen and the art of virtualization". In ACM SIGOPS operating systems review (Vol. 37, No. 5, pp. 164-177). ACM.Storage 01, 02, 03
- Rosenblum, M. and Garfinkel, T., 2005. "Virtual machine monitors: Current technology and future trends". Computer, 38(5), pp.39-47.
- Adams, K. and Agesen, O., 2006. "A comparison of software and hardware techniques for x86 virtualization". ACM SIGARCH Computer Architecture News, 34(5), pp.2-13.
- A visualization of Hard Disk Drive components and operation.
- The original papers on CDC 6600, including the Scoreboard and on Tomasulo's algorithmMultithreading Lecture 5 Lecture 6
- A java applet simulating a Tomasulo pipeline can be found here
- A couple of background articles to read on hyperthreading: first, an Intel Technical Journal special issue on hyperthreading and the original 1997 paper on simultaneous multithreading.Multicore Lecture 7 Lecture 8 Lecture 9
- Some info about ARM A15.Landscape of Computer Systems Lecture
- An interesting article about the future of microprocesors, detailing current and future limitations to be found by computer architectures in the near future.Solutions to lecture exercises (and more) PDF