当前位置:
文档之家› Linux 内核分析概述ppt课件
Linux 内核分析概述ppt课件
Linux的内核版本 linux发行版本
.
.
.
不同版本的核心源码的文件数
.
Linux的内核版本
Linux内核由其创始人linus带领的小组维护。这个版本 我们就认为是“官方版本”。内核版本号的格式是: 主版本号.次版本号.修正号
例如:Linux 2.4.10 ,主版本号是2,次版本号是4,第 10次修正.
.
参考资料
80386 Programmer’s Reference Manual 1986 GCC 手册—关于内联汇编 as86或者nasm手册 Ld手册 K&r c
.
.
Linux0.01内核简介
比之2.4版500万行,0.01版共8000余行代 码,可以完全阅读
已经具备了现代操作系统的基本要素 支持的硬件平台
GPL的一员是我一生中作过最漂亮的一件事”。
.
Linux 的发音
据说,linux的创始人Linus(Linus Torvalds)针对读 音分歧较多的情况,特意录了一段他对Linux的发 音。这段录音的内容是这样的:“Hello,this is Linus Torvalds and I pronounce Linux as Linux”。我听出来的是/'li:nэks/,综合网上和 linus自己的读音,概括出几个自认为最合适也最 通用的读法:/Li'n ks/(“里那克斯”)或 /'li:nэks/(“里呢克斯”)或/Li'nu:ks?/(“里纽克 斯”)。
.
.
Linux的来历
1994年,Torvalds终于推出了 Linux的正式的 1.0 版本。此时这个操作系统已经变得比较稳定并且拥 有很多的高级特性了:支持抢先多任务、对称多处 理和完全的POSIX兼容性等。它甚至有了自己的吉 祥物!Torvalds在Linux的联机文档里这样描述到: "它是一只讨人喜欢的、让人一见就想拥抱的、刚 刚饱餐了一顿鲱鱼的企鹅"。
在1998年Linux获得了广泛支持,尤为重要的是 几乎所有的大型软件公司都宣布推出或即将为 Linux开发相应的产品。 有人预测在2003年之前 成为紧随微软Windows NT之后的第二大操作系统。
Linux 的吉祥物是 Linux 企鹅,它是由 Linux Torvalds 挑选的代表他.所创立的 Linux 操作系统.
linux名字由来
开始,linux还没有专门的新闻组。linus只是在赫 尔辛基技术大学的一台FTP服务器上发了一则消息, 说可以下载linux的公开版本。Linux是linus的笔 名,他担心如果用Linux来命名的话有人会说他狂 妄而且不会认真对它。于是他用了一个很怪的名字 Freak(free+freak+X)---free就是自由;freak 愿意是怪胎的意思。表示这个系统还有很多不完善 的地方。加上X是模仿UNIX和MINIX让人家一看 就知道这是一个操作系统。后来,这台FTP的管理 员不喜欢Freax这个名字,最后选择了Linux.。
第一讲 Linux 内核分析概述
.
本讲内容
Linux操作系统内核简介 linux内核分析概论
.
第一节 Linux操作系统内核简介
Linux操作系统简介 Linux内核版本简介
.
什么是linux操作系统
Linux是:
多任务的多用户多平台 工作在保护模式下 遵守POSIX标准 遵守SYSV和BSD扩展 遵守GPL许可 32位(也有64位)的类UNIX 开放源代码的免费
SYSV和BSD扩展 可以理解为和SYSV和BSD 源代码级的兼容。简单一点,就是Linux下的应用 程序同时也能在这两个系统上运行。。
GPL(General Public License) 公用许 可证。
.
Linux的来历
Linux最早是Linus Torvalds在1991年开始设计 开发的。linus是芬兰人,赫尔辛基是芬兰的首都, 当时他正是赫尔辛基大学计算机系的学生,23岁。 1990年的秋天,linus在赫尔辛基大学学习UNIX (一种操作系统,和linux有密切联系,在后面本 章小节中我会详悉介绍)课程,教材是Andrew Tanenbaum教授写的《操作系统:设计与实现》 (现在中译本很多,大家可以找来看看)。《操作系 统:设计与实现》是用Minix(Andy Tanenbaum教授所写的很小的Unix操作系统,主 要用于操作系统教学。
.
自由软件
Richard Stallman在1971年加入MIT的人工智能 实验室,他认为:知识应该与其它能从知识中受益 的人一起共享,重要的资源应该被利用。他想把自 己开发的软件与其它人共享,按照法律,他是MIT 的员工,他写的程序是属于MIT的。为了不冒犯法 律,毅然辞职。大约在一年以后,由于个别的公司 控制了许多公共软件的开发项目。自1984年起 MIT开始支持Richard Stallman的努力。这样就 导致了自由软件基金会(Free Software Foundation,FSF)的建立。他认为:计算机系 统因该开放,软件应该自由使用。
.
Linux的来历
在1991的时候,主观上有了这样一个目标,当时linus又需 要一个简单的终端仿真程序来存取Usenet新闻组的内容, 于是他就开始在上面两个草草编写的进程的基础上又写了 一个程序。他是这样描述的:“一个进程是从键盘上阅读 输入然后发送给调制解调器,另一个进程是从调制解调器 上阅读发送过来的信息然后送到屏幕上供人阅读。”然而 要实现这两个新的进程,他显然还需要一些别的东西,这 就是驱动程序。他必须为不同的显示器、键盘和调制解调 器编写驱动程序。1991年的夏季,也就是他购买了第一台 PC机之后6个月,Linus觉得他还需要从网上下载某些文件, 为此他必须读写某个磁盘。于是他又不得不写一个磁盘驱 动程序,然后是一个文件系统。而一旦你有了任务切换器、 文件系统和设备驱动程序之后,你当然就拥有了一个操作 系统,或者至少是它的一个内核。linux也就这样诞生了。
.
GNU
Richard Stallman打算组织开发一个完全基于自 由软件的软件体系——GNU(GNU's Not Unix, GNU这个单词含义正好是产于南非州的一种大羚 羊,所以我们经常可以看到有些linux书的封面是 一只羚羊,就是这个道理。)。它的目标是:写一 个完整的与UNIX兼容的软件系统。由于刚开始还 没有很好的自由软件可供使用。所以他们先从系统 的应用软件和工具着手。比如很有名的:emacs (编辑器) gcc(据说是世界上效率最高的编译器) 等等。同时他们也开发GUN体系的操作系统内核: hurd。可是开发得很缓慢。到现在也没有全部完 工。
的操作系统 它是由芬兰赫尔辛基大学的学生 Linus Torvalds 在1991年开发出来的
.
POSIX POSIX表示可移植操作系统接口 (Portable Operating System Interface ,缩 写为 POSIX 是为了读音更像UNIX)。电气和电 子工程师协会(Institute of Electrical and Electronics Engineers,IEEE) 最初开发 POSIX 标准,是为了提高 UNIX 环境下应用程序 的可移植性。然而,POSIX 并不局限于 UNIX。 许多其它的操作系统,例如 WinNT,都支持 POSIX 标准。POSIX.1 已经被国际标准化组织 (International Standards Organization, ISO)所接受,被命名为 ISO/IEC 99451:1990 标准。
.
GPL
在其它人协作下, Stallman创作了通用软件许可 证(General Public Licese,GPL)。这对推动 自由软件的发展起了重要作用。GPL主要的规定:
1) GPL保证任何人有共享和修改自由软件的
自由。还可以把修改后的软件向公众发布。但是发
布者要无条件开放其源代码。这样就保证自由软件
.
Linux的来历
刚开始他是在Minix环境下写了一个处理多 任务切换的程序,用他自己的话来描述这个 程序:“这个程序包括两个进程,都是向屏 幕上写字母,然后用一个定时器来切换这两 个进程。一个进程写A,另一个进程写B, 所以我就在屏幕上看到了AAAA,BBBB, 如此循环重复的输出结果。”linus在练习 使用Minix时,发现其功能很不完善。于是 他就有了一个目标:写一个比Minix更好的 Minix。所以Minix是linux的父亲
.
linux和UNIX的关系
linux最初是由Minix发展而来,Minix是由 4.3BSD UNIX发展而来,4.3BSD UNIX是由 AT&T的所谓真正的UNIX发展而来。可以总结出: Minix是linux的父亲,而UNIX则是linux的祖父了。 虽然UNIX和linux的源代码完全无关,可是linux 中的许多特性和UNIX有很多相等之处。如:
.
第二节 linux内核分析概论
Linux内核分析需要的基础知识 Linux0.01内核简介 Linux内核分析的方法、工具、参考书
.
Linux内核分析需要的基础知识
理论
操作系统的基本知识 LINUX基本操作 8086硬件体系结构,接口编程知识
语言
C语言 AT&T汇编和INTEL汇编,GCC内联汇编
的低价。
Hale Waihona Puke 2) GPL规定自由软件的衍生作品必须以GPL为
重新发布的许可证。这样就保证了自由软件的持续
性。
3) GPL规定允许公司销售自由软件。这就为
公司介入自由软件事业敞开大门。
.
Linux和自由软件
自从1991Linux发布以来,一直是完全自由扩
散的。他要求所有的源码必须公开且任何人不准从