热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

TheOSClassics

AfewdaysagoIwasfortunatetopickupacopyofabookthathadamajorimpactonmyearlycareeraskernelengineer;

The OS Classics

A few days ago I was fortunate to pick up a copy of a book that had a major impact on my early career as kernel engineer;

The Design and Implementation of the 4.3 BSD UNIX Operating System by Samuel J. Leffler, Marshall Kirk McKusick, Michael J. Karels and John S. Quarterman .

It was the first authoritative description of Berkeley UNIX , its design and implementation. The book covers the internal structure of the 4.3 BSD systems and the concepts, data structures and algorithms used in implementing the system facilities. But most importantly it was written by practitioners and builders and as such gave insights that academic text book would never give you.

In those days I was doing an internship at NIKHEF who were still using a collection of PDP 11s and one of my tasks was to get BSD2.9 to run on them. Lots of late nights and head scratching, but got it done eventually. I did learn how to boot from tape, over and over again (Zen!!). When I returned to school, they were about to decommission a PDP 11. I convinced them to put it in a old (big) cleaning closet, upgrade the power to the room, and I went right back to building out my BSD kernel expertise. I started late at Computer Science (28) but worked hard to catch up by getting my hands dirty.

When I posted on twitter I found of the book, many of our peers came up with a list of other books I had also read from that era.

Got my hands on a nice version of the best OS book ever written. It made me become the kernel engineer that I grew up as. It was essential in getting BSD 2.9 to run on the PDP11 that I inherited (Although the Multics papers had their influence as well). pic.twitter.com/xcj8I7ziKw

— Werner Vogels (@Werner) July 12, 2020

Here is a list of some of the books that were shared.

The Unix kernel design books:

  • The Multics System: An Examination of Its Structure by Elliott I. Organick

  • The Design and Implementation of the 4.3 BSD UNIX Operating System by Samuel J. Leffler, Marshall Kirk McKusick, Michael J. Karels and John S. Quarterman

  • The Design and Implementation of the 4.3 BSD Operating System Answer Book , by Samuel J. Leffler and Marshall Kirk McKusick.

  • The Design and Implementation of the 4.4 BSD Operating System Answer Bookm , by Marshall Kirk McKusick, Keith Bostic, Michael J. Karels and John S. Quarterman

  • The Design and Implementation of the FreeBSD Operating System by Marshall Kirk McKusick, George V. Neville-Neil and Robert N.M. Watson

  • The Design of the UNIX Operating System by Maurice Bach (An in-depth look at AT&T's UNIX System V)

  • UNIX Internals: The New Frontiers by Uresh Vahalia

  • Operating System Design: The Xinu Approach by Douglas Comer

  • UNIX: A History and a Memoir by Brian W Kernighan

The Networking books:

  • TCP/IP Illustrated, Volume 1: The Protocols by Kevin R. Fall and W. Richard Stevens

  • TCP/IP Illustrated, Volume 2: The Implementation by Gary R. Wright and W. Richard Stevens

  • TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP and the Unix Domain Protocols by W. Richard Stevens

  • Internetworking with TCP/IP Volume One by Douglas E. Comer

The Tanenbaum Collection:

  • Structured Computer Organization by Tanenbaum Andrew S. and Austin Todd

  • Modern Operating Systems by Andrew S. Tanenbaum and Herbert Bos

  • Computer Networks by Andrew S. Tanenbaum and David J. Wetherall

  • Distributed Systems by Maarten van Steen and Andrew S. Tanenbaum

Not a true OS book, but it is a classic and absolutely fascinating:

  • Transaction Processing: Concepts and Techniques by Jim Gray and Andreas Reuter

If there is a classic that is not on this list, but you think it should be, let me know.


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 我们


推荐阅读
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文讨论了clone的fork与pthread_create创建线程的不同之处。进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合。在调用系统调用fork创建一个进程时,子进程只是完全复制父进程的资源,这样得到的子进程独立于父进程,具有良好的并发性。但是二者之间的通讯需要通过专门的通讯机制,另外通过fork创建子进程系统开销很大。因此,在某些情况下,使用clone或pthread_create创建线程可能更加高效。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • 手把手教你使用GraphPad Prism和Excel绘制回归分析结果的森林图
    本文介绍了使用GraphPad Prism和Excel绘制回归分析结果的森林图的方法。通过展示森林图,可以更加直观地将回归分析结果可视化。GraphPad Prism是一款专门为医学专业人士设计的绘图软件,同时也兼顾统计分析的功能,操作便捷,可以帮助科研人员轻松绘制出高质量的专业图形。文章以一篇发表在JACC杂志上的研究为例,利用其中的多因素回归分析结果来绘制森林图。通过本文的指导,读者可以学会如何使用GraphPad Prism和Excel绘制回归分析结果的森林图。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • IjustinheritedsomewebpageswhichusesMooTools.IneverusedMooTools.NowIneedtoaddsomef ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • 第七章•Firewalld防火墙实战
    1、防火墙安全基本概述在CentOS7系统中集成了多款防火墙管理工具,默认启用的是firewalld(动态防火墙管理器)防火墙管理工具,Firewalld支持CLI(命令行)以及G ... [详细]
author-avatar
突然丶丶想你
这个家伙很懒,什么也没留下!
RankList | 热门文章