A book list for operating system kernel developers and device driver writers

You've come to this page because you've asked a question similar to the following:

What books should I read for operating system kernel development or device driver writing?

This is the Frequently Given Answer to such questions.

You can also read a review.

Worked examples of operating system kernels

Andrew S. Tanenbaum (1987), Operating Systems: Design and implementation , Prentice-Hall, ISBN 0136373313

, Prentice-Hall, ISBN 0136373313 Douglas Comer (1984), Operating System Design: The Xinu Approach , Prentice-Hall, ISBN 0136375545

, Prentice-Hall, ISBN 0136375545 Douglas Comer (1987), Operating System Design — Volume 2: Internetworking with Xinu , Prentice-Hall, ISBN 0136376460

, Prentice-Hall, ISBN 0136376460 Pat Villani (1996), FreeDOS Kernel , RD Books, ISBN 0879304367

, RD Books, ISBN 0879304367 Richard A. Burgess (1995), Developing your own 32-bit operating system , Sams, ISBN 0672306557

, Sams, ISBN 0672306557 Jean J. Labrosse (1999), Micro-C/OS-II: The real-time kernel , Miller-Freeman, ISBN 0879305436

"Internals" books analysing existing operating systems

OS/2

Gordon Letwin (1988), Inside OS/2 , Microsoft Press, ISBN 1556151179

, Microsoft Press, ISBN 1556151179 H.M. Deitel and M.S. Kogan (1992), The design of OS/2 , Addison-Wesley, ISBN 0201548895

VMS

Kirby McCoy (1990), VMS File System Internals , Digital Press, ISBN 013931783X

Unices

Maurice J. Bach (1987), The design of the Unix® operating system , Prentice-Hall, ISBN 0132017571

, Prentice-Hall, ISBN 0132017571 Samuel J. Leffler, Marshall Kirk McKusick, Michael J. Karels, and John S. Quarterman (1988), The design and implementation of the 4.3BSD operating system , Addison-Wesley, ISBN 0201061961

, Addison-Wesley, ISBN 0201061961 Marshall Kirk McKusick, Keith Bostic, Michael J. Karels, and John S. Quarterman (1996), The design and implementation of the 4.4BSD operating system , Addison-Wesley, ISBN 0201549794

, Addison-Wesley, ISBN 0201549794 Curt Schimmel (1994), UNIX Systems for Modern Architectures , Addison Wesley, ISBN 0201633388

, Addison Wesley, ISBN 0201633388 Berny Goodheart and James Cox (1994), The Magic Garden Explained , Prentice Hall, ISBN 0130981389

, Prentice Hall, ISBN 0130981389 David A. Kelly (1996), AIX/6000 internals and architecture , McGraw Hill, ISBN 0070340617

, McGraw Hill, ISBN 0070340617 Uresh Vahalia (1996), Unix Internals: The new frontiers , Prentice-Hall, ISBN 0131019082

, Prentice-Hall, ISBN 0131019082 Steve D. Pate (1996), UNIX Internals: A practical approach , Addison Wesley, ISBN 020187721X

, Addison Wesley, ISBN 020187721X John Lions (1977,1996), Lions' Commentary on Unix 6th Edition (with source code) , Peer-To-Peer, ISBN 0573980137

, Peer-To-Peer, ISBN 0573980137 Jim Mauro and Richard MacDougall (2001), Solaris Internals: Core kernel architecture , Prentice-Hall, ISBN 0130224960

, Prentice-Hall, ISBN 0130224960 Amit Singh (2007), MacOS 10 Internals: A systems approach , Addison Wesley, ISBN 0321278542

Windows

Helen Custer (1993), Inside Windows NT Microsoft Press, ISBN 155615481X

Microsoft Press, ISBN 155615481X David A. Solomon (1998), Inside Windows NT (2nd edition) , Microsoft Press, ISBN 1572316772

, Microsoft Press, ISBN 1572316772 Mark E. Russinovich, David A. Solomon, and Alex Ionescu (2009), Windows Internals (5th edition) , Microsoft Press, ISBN 0735625303

, Microsoft Press, ISBN 0735625303 Prasad Dabak, Sandeep Phadke, and Milind Borate (1999), Undocumented Windows NT , IDG Books, ISBN 0764545698

, IDG Books, ISBN 0764545698 Stan Mitchell (1997) Inside the Windows 95 File System , O'Reilly, ISBN 156592200X

, O'Reilly, ISBN 156592200X Matt Pietrek (1995), Windows 95 System Programming Secrets , IDG, ISBN 156843186

Linux

Michael Beck, Harald Böhme, Robert Magnus, Mirko Dziadzka, and Ulrich Kunitz (1998), Linux Kernel Internals , Addison-Wesley, ISBN 0201331438

, Addison-Wesley, ISBN 0201331438 John O'Gorman (2003), The Linux Process Manager , Wiley, ISBN 0470847719

Miscellaneous

Dominic Giampaolo (1999), Practical file system design with the Be file system , Morgan Kaufman, ISBN 1558604979

, Morgan Kaufman, ISBN 1558604979 Dave Parkinson et al. (1987), The "Kickstart" Guide to the Amiga , Ariadne Software Ltd, ISBN 0951292102

Device driver and general kernel development

Raymond Westwater (1989), Writing OS/2 Device Drivers , Addison-Wesley, ISBN 0201522349

, Addison-Wesley, ISBN 0201522349 Art Baker (1997), The Windows NT Device Driver Book , Prentice-Hall, ISBN 0131844741

, Prentice-Hall, ISBN 0131844741 Walter Oney (1999), Programming the Microsoft Windows Driver Model , Microsoft Press, ISBN 0735605882

, Microsoft Press, ISBN 0735605882 Rajeev Nagar (1997), Windows NT file system internals , O'Reilly, ISBN 1565922492

, O'Reilly, ISBN 1565922492 Edward N. Dekker and Joseph M. Newcomer (1999), Developing Windows NT Device Drivers , Addison-Wesley, ISBN 0201695901

, Addison-Wesley, ISBN 0201695901 Alessandro Rubini (1998), Linux device drivers , O'Reilly, ISBN 1565922921

, O'Reilly, ISBN 1565922921 Robert Love (2010), Linux Kernel Development , Pearson Education, ISBN 0672329468

Operating systems theory

Milan Milenkovic (1987), Operating Systems: Concepts and Design , McGraw-Hill, ISBN 0071005838

, McGraw-Hill, ISBN 0071005838 Andrew S. Tanenbaum (1992), Modern Operating Systems , Prentice-Hall, ISBN 0135957524

, Prentice-Hall, ISBN 0135957524 H.M. Deitel (1990), Operating Systems , Addison-Wesley, ISBN 0201509393

, Addison-Wesley, ISBN 0201509393 William Stallings (2001), Operating systems internals and design principles , Prentice Hall, ISBN 0130319996

, Prentice Hall, ISBN 0130319996 Pradeep K. Sinha (2007), Distributed Operating Systems: Concepts and Design , Prentice Hall, ISBN 9788120313804

© Copyright 2006,2018 Jonathan de Boyne Pollard. "Moral" rights asserted.

Permission is hereby granted to copy and to distribute this web page in its original, unmodified form as long as its last modification datestamp is preserved.