OSTEP ("oh step"), or the "the comet book", represents the culmination of years of teaching intro to operating systems to both undergraduates and graduates at the University of Wisconsin-Madison Computer Sciences department for nearly 20 years. The book is organized around three concepts fundamental to OS construction: virtualization (of CPU and memory), concurrency (locks and condition variables), and persistence (disks, RAIDS, and file systems). The material, if combined with serious project work and homeworks, will lead students to a deeper understanding and appreciation of modern OSes. The authors, Remzi and Andrea Arpaci-Dusseau, are both professors of Computer Sciences at the University of Wisconsin-Madison. They have been doing research in computer systems for over 20 years, working together since their first graduate operating systems class at U.C. Berkeley in 1993. Since that time, they have published over 100 papers on the performance and reliability of many aspects of modern computer systems, with a special focus on file and storage systems. Their work has been recognized with numerous best-paper awards, and some of their innovations can be found in the Linux and BSD operating systems today.
Cited By
- Lowe R A Flexible and Broad Operating System Project Proceedings of the 2024 ACM Southeast Conference, (27-34)
- Gebhard A, Forden J, Laufenberg O and Brylow D Using Embedded Xinu to Teach Operating Systems on Baremetal RISC-V Proceedings of the 55th ACM Technical Symposium on Computer Science Education V. 1, (380-386)
- Park J, Choi S, Oh G, Im S, Oh M and Lee S (2023). FlashAlloc: Dedicating Flash Blocks by Objects, Proceedings of the VLDB Endowment, 16:11, (3266-3278), Online publication date: 1-Jul-2023.
- Kim J, Lee Y, Lim H, Jung Y, Kim S and Han D OutRAN Proceedings of the 18th International Conference on emerging Networking EXperiments and Technologies, (369-385)
- Lakshman S, Gupta A, Suri R, Lashley S, Liang J, Duvuru S and Mayuram R (2022). Magma, Proceedings of the VLDB Endowment, 15:12, (3496-3508), Online publication date: 1-Aug-2022.
- Harris B and Altiparmak N When poll is more energy efficient than interrupt Proceedings of the 14th ACM Workshop on Hot Topics in Storage and File Systems, (59-64)
- Xu L, Qiu S, Yuan B, Jiang J, Renggli C, Gan S, Kara K, Li G, Liu J, Wu W, Ye J and Zhang C In-Database Machine Learning with CorgiPile: Stochastic Gradient Descent without Full Data Shuffle Proceedings of the 2022 International Conference on Management of Data, (1286-1300)
- Lee M, Ahn H, Hong C and Nikolopoulos D (2022). gShare, Future Generation Computer Systems, 130:C, (181-192), Online publication date: 1-May-2022.
- Chen Z, Hua Y, Zhang Y and Ding L Efficiently detecting concurrency bugs in persistent memory programs Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, (873-887)
- Gilman G and Walls R (2021). Characterizing concurrency mechanisms for NVIDIA GPUs under deep learning workloads, Performance Evaluation, 151:C, Online publication date: 1-Nov-2021.
- Zha Y and Li J Hetero-ViTAL Proceedings of the 48th Annual International Symposium on Computer Architecture, (470-483)
- Rebello A, Patel Y, Alagappan R, Arpaci-Dusseau A and Arpaci-Dusseau R (2021). Can Applications Recover from Failures?, ACM Transactions on Storage, 17:2, (1-30), Online publication date: 30-May-2021.
- Dai H, Wong R, Wang H, Zheng Z and Vasilakos A (2019). Big Data Analytics for Large-scale Wireless Networks, ACM Computing Surveys, 52:5, (1-36), Online publication date: 30-Sep-2020.
- Nakandala S, Zhang Y and Kumar A (2020). Cerebro, Proceedings of the VLDB Endowment, 13:12, (2159-2173), Online publication date: 1-Aug-2020.
- Qu T, Guo D, Wu J, Zhou X, Lu X and Liu Z (2020). Efficient Event Scheduling of Network Update, IEEE Transactions on Network and Service Management, 17:1, (416-429), Online publication date: 1-Mar-2020.
- He J, Wu K, Kannan S, Arpaci-Dusseau A and Arpaci-Dusseau R Read as needed Proceedings of the 18th USENIX Conference on File and Storage Technologies, (59-74)
- Curtsinger C Parallelism in practice: experiences teaching concurrency and parallelism in an undergraduate OS course Proceedings of the 2019 ACM SIGPLAN Symposium on SPLASH-E, (1-6)
- Zhu J, Alderfer K, Furqan A, Nebolsky J, Char B, Smith B, Villareale J and Ontañón S Programming in game space Proceedings of the 14th International Conference on the Foundations of Digital Games, (1-10)
- YeckehZaare I, Resnick P and Ericson B A Spaced, Interleaved Retrieval Practice Tool that is Motivating and Effective Proceedings of the 2019 ACM Conference on International Computing Education Research, (71-79)
- Liu J, Arpaci-Dusseau A, Arpaci-Dusseau R and Kannan S File systems as processes Proceedings of the 11th USENIX Conference on Hot Topics in Storage and File Systems, (14-14)
- Koller R and Williams D An ounce of prevention is worth a pound of cure Proceedings of the 11th USENIX Conference on Hot Topics in Storage and File Systems, (12-12)
- Mishra D gemOS Proceedings of the Workshop on Computer Architecture Education, (1-8)
- Valero A, Gracia D, Tejero R, Ramos L, Navarro-Torres A, Muñoz A, Ezpeleta J, Briz J, Murillo A, Montijano E, Resano J, Villarroya-Gaudó M, Alastruey-Benedé J, Torres E, Álvarez P, Ibáñez P and Viñals V Exposing Abstraction-Level Interactions with a Parallel Ray Tracer Proceedings of the Workshop on Computer Architecture Education, (1-8)
- Baumann A, Appavoo J, Krieger O and Roscoe T A fork() in the road Proceedings of the Workshop on Hot Topics in Operating Systems, (14-22)
- Bernstein B, Geurtz J and Koeman V Evaluating the Effectiveness of Multi-Agent Organisational Paradigms in a Real-Time Strategy Environment Proceedings of the 18th International Conference on Autonomous Agents and MultiAgent Systems, (754-762)
- Cho S, Hong J, Choi J and Han H Multithreaded double queuing for balanced CPU-GPU memory copying Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing, (1444-1450)
- Choi G, Son J, Choi J, Cho S and Won Y HPanal Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing, (1438-1443)
- Chung C, Koo J, Im J, Arvind and Lee S LightStore Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems, (939-953)
- Mao B, Yang Y, Wu S, Jiang H and Li K (2019). IOFollow, Future Generation Computer Systems, 91:C, (167-176), Online publication date: 1-Feb-2019.
- Figueiredo F, Borges G, de Melo P and Assunção R Fast estimation of causal interactions using wold processes Proceedings of the 32nd International Conference on Neural Information Processing Systems, (2975-2986)
- Choi J, Nam E, Seong Y, Yoon J, Lee S, Kim H, Park J, Woo Y, Lee S and Min S (2018). HIL, ACM Transactions on Storage, 14:4, (1-29), Online publication date: 30-Nov-2018.
- Kesavan R, Curtis-Maury M and Bhattacharjee M Efficient Search for Free Blocks in the WAFL File System Proceedings of the 47th International Conference on Parallel Processing, (1-10)
- Chen S, Chang Y, Chen T, Chang Y, Hsiao P, Wei H and Shih W Enhancing the Energy Efficiency of Journaling File System via Exploiting Multi-Write Modes on MLC NVRAM Proceedings of the International Symposium on Low Power Electronics and Design, (1-6)
- Hawking D and Billerbeck B Efficient In-Memory, List-Based Text Inversion Proceedings of the 22nd Australasian Document Computing Symposium, (1-8)
- Kang W, Shin D and Yoo S (2017). Reinforcement Learning-Assisted Garbage Collection to Mitigate Long-Tail Latency in SSD, ACM Transactions on Embedded Computing Systems, 16:5s, (1-20), Online publication date: 10-Oct-2017.
- Mei F, Cao Q, Jiang H and Tintri L LSM-tree managed storage for large-scale key-value store Proceedings of the 2017 Symposium on Cloud Computing, (142-156)
- Wu X, Ni F and Jiang S Search lookaside buffer Proceedings of the 2017 Symposium on Cloud Computing, (27-39)
- Lu Y, Chen G, Ruan Z, Xiao W, Li B, Zhang J, Xiong Y, Cheng P and Chen E Memory Efficient Loss Recovery for Hardware-based Transport in Datacenter Proceedings of the First Asia-Pacific Workshop on Networking, (22-28)
- Bryk P, Malawski M, Juve G and Deelman E (2016). Storage-aware Algorithms for Scheduling of Workflow Ensembles in Clouds, Journal of Grid Computing, 14:2, (359-378), Online publication date: 1-Jun-2016.
Recommendations
Teaching operating systems: the windows case
An operating system (OS) is a program that manages computer hardware. And although today's commercial-off-the-shelf desktop operating systems appear to be an integral part of PCs and workstation to many users, a fundamental understanding of the ...