注:后续笔记文字或代码出自于《Linux内核设计与实现》书籍。 出于非商业目的,只为记录个人学习的内容。感谢作者(美) Robert Love 以及译者 陈莉君 康华。如涉及版权问题,请联系此账号,将在第一时间删除。
文章目录
一、Linux是什么?
- Linux是类Unix系统,但它不是Unix。需要说明的是,尽管Linux借鉴了Unix的许多设计并且实现了Unix的API (由Posix标准和其Single Unix Specification定义的),但Linux没有像其他Unix变种那样直接使用Unix的源代码。必要的时候,它的实现可能和其他各种Unix的实现大相径庭,但它没有抛弃Unix的设计目标并且保证了应用程序编程接口的一致。
- Linux是一个非商业化的产品,这是它最让人感兴趣的特征。实际上Linux是一个互联网上的协作开发项目。尽管Linus被认为是Linux之父,并且现在依然是一个内核维护者,但开发工作其实是由一个结构松散的工作组协力完成的。事实上,任何人都可以开发内核。和该系统的大部分一样,Linux内核也是自由(公开)软件9。当然,也不是无限自由的。它使用GNU的General Public License (GPL)第2版作为限制条款。这样做的结果是,你可以自由地获取内核代码并随意修改它,但如果你希望发布你修改过的内核,你也得保证让得到你的内核的人同时享有你曾经享受过的所有权利,当然,包括全部的源代码。
二、什么是内核
- 用户界面是操作系统的外在表象,内核才是操作系统的内在核心。系统其他部分必须依靠内核这部分软件提供的服务,像管理硬