This is an in-depth course in operating systems design and implementation,focusing on multicore operating systems kernels. Operating systems are some ofthe most complex software artifacts that exist. Kernels abstract the featuresprovided by computer hardware, making those features safer and more convenientto use. This means that OS designers have to understand how hardware works (atleast at the level of specifications) and how software works. OS programmersalso must become comfortable with navigating in, and contributing to, codebases too large to wholly understand. Most of us can pick up this importantskill.
Operating Systems In Depth: Design and Programming Thomas W. Doeppner
Download Zip: https://8vofovirwa.blogspot.com/?file=2vFcRi
Covers not just the principles of operating systems but the intricacies of how they work. Topics include multithreaded programming, managing threads and interrupts, managing storage, processor scheduling, operating-system structure, virtualization, security, and the design of file systems (both local and distributed). Extensive examples are taken from actual systems, including Linux and Windows. Students are expected to complete both problem sets and programming assignments (in C).Prerequisite: CSCI 0330.
Over the past twenty years Professor Doeppner has taught a number of courses for the computer industry, teaching topics such as operating-systems internals, computer networks, distributed computing, and multithreaded programming. He received his Ph.D. from Princeton.
In this course we will not only talk about operating systems;we will actually build one (at least portions of it.) You will getinto writing some rather sophisticated code. While doing this, you will realize that writing OS code is to programming yourtypical application like NASCAR racing is to driving your mom-in-lawto Sunday brunch. If you need somebody to hold you by the hand (like,memory protection) you will be in really bad shape. You willeither have to learn to live without, or you will write yourown. But the fun part is that you will learn how to nurture aCPU (or multiple CPUs) from the moment it wakes up until ithas access to sufficient support infrastructure to run userprograms on its own.
2ff7e9595c
Comments