Presentation is loading. Please wait.

Presentation is loading. Please wait.

第1章 Linux概述 马丽洁.

Similar presentations


Presentation on theme: "第1章 Linux概述 马丽洁."— Presentation transcript:

1 第1章 Linux概述 马丽洁

2 目的要求: 初步认识Linux 操作系统 学习Linux的安装 重点难点: Linux相关概念

3 第1章 Linux概述 1.1 Linux入门 1.1.1 认识Linux 1.1.2 Linux的优点 1.1.3 Linux操作系统架构
案例(参照word文档)

4 认识Linux Linux作为一个多任务、多用户的操作系统,以其很好的稳定性、高效性和灵活性赢得了广大用户,并迅速发展成为操作系统中的主流。 Linux的发展简史 Linux的背景资料 Linux的版本

5 一、Linux的发展简史 UNIX简介 Linux 诞生 Linux与UNIX关系 Linux现状

6 UNIX 简介 由AT&T贝尔实验室的Ken Thompson和Dennis Ritchie于1969年在PDP-7上开发的;
它最初是一个用汇编语言写成的单用户操作系统。 不久,Unix在PDP-11上用C语言重新编写(Brian Kernighan, Dennis Ritchie发明C语言的部分目的就在于此)。

7 UNIX的历史: 1965年:MIT的Multics,由于规模和进展而没有达到目标; 1969年:AT&T,PDP-11上的16位操作系统;
1980年:University of California at Berkeley为VAX11发表BSD4.0;以后,UNIX就以AT&T和Berkeley为主分别开发,有多种变种; 1989年:UI (UNIX International)发表UNIX system V Res4.0;使BSD和System V在用户界面上统一;

8 几个比较常见的Unix版本 AIX: IBM的Unix。AIX指高级的、交互的、可运行的,它不是很有名,但执行得很好。
BSD(x86): 是为Unix更友好的用户界面而设计的,成为学术界的标准 FreeBSD: 1.x从386bsd0.1而来,而FreeBSD2.x版是用4.4BSD lite改写。 Minix: Linux的鼻祖,由非常著名的计算机科学家Andrew Tannebaum所写。 SunOS: 根据4.3BSD,包括许多来自System V的东西,其主要成果在于:NFS,Openlook,GUI标准,现演变为Solaris。 Xenix: 微软推出的基于Intel硬件平台,以SVR2为基础。 SCO Unix

9 Linux 诞生(1/2) 1991年,芬兰赫尔辛基大学Linus Torvalds
最初在Minix平台上(Andy Tanenbaum教授所写的很小的Unix操作系统,主要用于操作系统教学) 开始是用汇编语言写了一个在80386保护模式下处理多任务切换的程序。 “这个程序包括两个进程,都是向屏幕上写字母,然后用一个定时器来切换这两个进程。一个进程写A,另一个进程写B,所以我就在屏幕上看到了AAAA,BBBB,如此循环重复的输出结果。”

10 Linux 诞生(2/2) Linus独立把这个内核开发到0.02版,这个版本已经可以运行gcc,bash和很少的一些应用程序。
1993年Linux加入GNU并遵循公共版权许可证(GPL) 1994, Linux 的第一个商业发行版 Slackware 问世

11 Linux之父--Linus Torvalds
                                                                     Linux之父--Linus Torvalds

12 Linux与UNIX关系 Linux内核是一个全功能的、支持POSIX标准的、类Unix的操作系统内核,该系统吸收了BSD和System V 的优点,同时摒弃了它们的缺点。 Linux从Unix的各个流派中不断吸取成功经验,模仿Unix的优点,抛弃Unix的缺点。Linux 成为了Unix系列中的佼佼者: 高速、健壮、完整,而且抛弃了历史包袱

13 Linux现状 我们就在改变Linux的现状 Linux 的定位 服务器市场、桌面市场、嵌入式平台

14 二、背景资料 POSIX 表示可移植操作系统接口(Portable Operating System Interface )
电气和电子工程师协会(Institute of Electrical and Electronics Engineers,IEEE)开发 为了提高 UNIX 环境下应用程序的可移植性。许多其它的操作系统,例如 DEC OpenVMS 和 Microsoft Windows NT,都支持 POSIX 标准,POSIX.1 已经被国际标准化组织(International Standards Organization,ISO)所接受,被命名为 ISO/IEC :1990 标准。

15 GNU( GNU Is Not UNIX)是自由软件基金会的一个项目,该项目的目标是开发一个自由的 UNIX 版本,这一 UNIX 版本称为 HURD。 GNU 项目已经开发了许多高质量的编程工具,包括 emacs 编辑器、著名的 GNU C 和 C++ 编译器(gcc 和 g++),这些编译器可以在任何计算机系统上运行。 所有的 GNU 软件和派生工作均适用 GNU 通用公共许可证,即 GPL(General Public License)。GPL 允许软件作者拥有软件版权,但授予其他任何人以合法复制、发行和修改软件的权利。

16 GNU计划 杰出的电脑黑客Richard Stallman的技术理想:开发出一个质量高而且自由的操作系统。
1984年,Richard Stallman独立开发出一个类Unix的操作系统,该操作系统具有完全的内核、开发工具和终端用户应用程序。 创建自由软件基金会(FSF)

17  三、Linux的版本 (1)内核版 源程序版本号的形式为x.y.z。对于稳定树来说,y是偶数;对于开发树来说,y比相应的稳定树大一(因此,是奇数)。 最新2.6.X

18 Linux的版本树 0.01 LINUX第一版 | 0.13版 / \ / \
/ \ / \ 产品化版本 实验版本 1.1.0(1.0.0的拷贝) | | 1.0.X(修改) X(增加新功能,进行测试) 1.1.95(成为1.2.0) / 新版本树(以此类推)

19 (2)发行版 Slackware Linux Debian Mandrake MandrakeSoft Red Hat SuSE SuSE AG 中软Linux 中科红旗Linux Turbolinux BluePoint Linux

20 1.1.2 Linux的优点 1 开放性 2 多用户 3 多任务 4 良好的用户界面 5 设备独立性 6 丰富的网络功能 7 可靠的系统安全
1 开放性  2 多用户 3 多任务  4 良好的用户界面 5 设备独立性  6 丰富的网络功能  7 可靠的系统安全  8 良好的可移植性 

21 Linux 的官方定义 Linux is a Unix clone written from scratch by Linus Torvalds with assistance from a loosely-knit team of hackers across the Net. It aims towards POSIX compliance. Linux 是一种 UNIX 操作系统的克隆,它(的内核)由 Linus Torvalds 以及网络上组织松散的黑客队伍一起从零开始编写而成。 Linux 的目标是保持和 POSIX 的兼容。

22 It has all the features you would expect in a modern fully-fledged Unix, including true multitasking, virtual memory, shared libraries, demand loading, shared copy-on-write executables, proper memory management and TCP/IP networking. Linux 具备现代一切功能完整的 UNIX 系统所具备的全部特征,其中包括真正的多任务、虚拟内存、共享库、需求装载、共享的写时复制程序执行、优秀的内存管理以及 TCP/IP 网络支持等。

23 It is distributed under the GNU General Public License(GPL)。
Linux 的发行遵守 GNU 的通用公共许可证

24 Linux was first developed for 386/486-based PCs
Linux was first developed for 386/486-based PCs. These days it also runs on ARMs, DEC Alphas, SUN Sparcs, M68000 machines (like Atari and Amiga), MIPS and PowerPC, and others. Linux 起初为基于 386/486 的 PC 机开发,但现在,Linux 也可以运行在 DEC Alpha、SUN Sparc、M68000,以及MIPS 和 PowerPC 等计算机上。

25 Linux操作系统的架构 硬件 文件结构 Linux操作系统 内核 shell 实用工具 用户

26 1. Linux内核  内核是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。  2. Linux shell  shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。  3. 文件结构 文件结构是文件存放在磁盘等存储设备上的组织方法,主要体现在对文件和目录的组织上。  4. 实用工具 专门的程序。分为编辑器、过滤器、交互程序。

27 Linux 文件结构

28 root 文件系统中的内容包括:引导系统的必备文件,文件系统的挂装信息以及系统修复工具和备份工具等。
名称 角色 /root root 文件系统中的内容包括:引导系统的必备文件,文件系统的挂装信息以及系统修复工具和备份工具等。 /usr /usr 文件系统中包含通常操作中不需要进行修改的命令程序文件、程序库、手册和其他文档等。 /var /var 文件系统中包含经常变化的文件,例如打印机、邮件、新闻等的假脱机目录、日志文件、格式化后的手册页以及临时文件等。某些大文件的溢出部分。 /home /home 中包含各个用户的主目录,用户的数据保存在其主目录中。 /proc /proc 文件系统并不保存在磁盘上,相反,操作系统在内存中创建这一文件系统。

29 Linux 内核 进程1 进程2 进程3 用户进程 Linux内核 系统调用接口 内核子系统 硬件 Linux 内核在整个系统中的位置

30 1.2 Linux 内核的主要组成部分 1.1.4 Linux操作系统的功能
操作系统一般由内核和一些系统程序组成,同时,还有一些应用程序帮助用户完成特定任务。内核是操作系统的灵魂,它负责管理磁盘上的文件、内存,负责启动并运行程序,负责从网络上接收和发送数据包等等。 Linux内核主要是由进程调度、内存管理、虚拟文件系统、网络接口和进程间通信等五部分组成。

31 1.2 Linux 内核的主要组成部分 (1) 进程调度负责控制进程对CPU的访问,调度程序使用一种策略确保所有的进程都能公平的访问CPU,并且确保内核在任意时刻能执行必要的硬件操作。 (2) 内存管理负责管理系统的物理内存,实现多进程安全共享计算机的内存。 (3) 虚拟文件系统通过将各种设备抽象为一种公共接口,从而屏蔽了各种硬件设备的细节。虚拟文件系统可以分为逻辑文件系统和设备驱动程序两部分。 (4) 网络接口提供了对各种网络标准的存取和各种网络硬件的支持,实现了对各种网络标准和网络硬件的访问。网络接口可分为网络协议和网络驱动程序。网络协议部分负责实现每一种可能的网络传输协议。网络设备驱动程序负责与硬件设备通讯,每一种可能的硬件设备都有相应的设备驱动程序。 (5) 进程间通信子系统实现了系统内部进程间的多种通信机制。 这五个子系统互相依赖,但相对来说进程调度处在比较重要的地位。 其他子系统需要挂起和恢复进程的运行都必须依靠进程调度子系统的参与。

32 内存管理 硬件无关 硬件相关 虚拟文件系统 逻辑文件系统 硬件驱动程序 进程调度 进程间通信 网络 网络协议 子系统 子系统层 图示符号 依赖关系 Linux 内核子系统及其之间的关系

33 1 进程调度 进程实际是某特定应用程序的一个运行实体。在 Linux 系统中,能够同时运行多个进程,Linux 通过在短的时间间隔内轮流运行这些进程而实现“多任务”。 进程是系统分配资源的最小单位。一个进程就是一个运行实体。在Linux中,所有资源都是以进程为对象来进行分配的。 Linux系统是一个多任务的系统,进程调度就是要保障各个进程能公平的使用系统的CPU资源。

34 2 内存管理 对任何一台计算机而言,其内存以及其他资源都是有限的。为了让有限的物理内存满足应用程序对内存的大需求量,Linux 采用了称为“虚拟内存”的内存管理方式。 Linux的内存管理子系统采用分页方式管理和使用物理内存资源。它根据不同的芯片采用不同层次的页表系统(例如Alpha采用三层页表,Intel采用两层页表)实现了进程的逻辑地址空间到物理内存地址的映射。

35 3 虚拟文件管理:设备驱动程序 设备驱动程序是 Linux 内核的主要部分。和操作系统的其他部分类似,设备驱动程序运行在高特权级的处理器环境中,从而可以直接对硬件进行操作 设备驱动程序提供一组操作系统可理解的抽象接口完成和操作系统之间的交互,而与硬件相关的具体操作细节由设备驱动程序完成。一般而言,设备驱动程序和设备的控制芯片有关。例如,如果计算机硬盘是小型计算机系统接口(Small Computer System Interface,SCSI)的硬盘,则需要使用 SCSI 驱动程序,而不是 IDE(Integrated Drive Electronics)驱动程序。

36 3 虚拟文件管理:文件系统 Linux虚拟文件系统为用户提供了一个一种公共的接口,而不需要了解物理设备或逻辑系统的细节。系统允许系统管理员将在任何物理设备上的逻辑文件系统挂接在文件目录中。Linux支持几种可执行文件格式。

37 4 网络接口 TCP/IP 协议是 Internet 的标准协议,同时也是事实上的工业标准。Linux 的网络实现支持 BSD 套接字,支持全部的 TCP/IP 协议。Linux 内核的网络部分由 BSD 套接字、网络协议层和网络设备驱动程序组成。 Linux网络接口子系统支持多种网络设备,并支持各种网络协议,它将网络设备和协议的实现细节抽象化,使用户不需要知道目前使用的网络设备和网络协议。

38 5 进程间通信 Linux提供了多种进程间的通信机制,其中,信号和管道是最基本的两种。此外,Linux也提供System V的进程间通信机制,包括消息队列、信号灯及共享内存。为了支持不同机器之间的进程通信,Linux还引入了BSD的Socket机制。

39 6 其他 除上述主要组成部分之外,内核还包含一些一般性的任务和机制,这些任务和机制可使 Linux 内核的各个部分有效地组合在一起,它们是上述主要部分高效工作的必要保证。 Linux 是单块结构的操作系统。为了可方便地在内核中添加新的组件,Linux 支持可动态装载和卸载的模块,这样可方便地在内核中添加新的组件或卸载不再需要的内核组件。 Linux内核采用了数据抽象技术。设备驱动程序、文件和网络协议等模块都作为一个独立的模块存在,并且它们都支持一种公共的接口。 Linux内核还采用了分层的技术,将那些于硬件相关的模块和其他模块严格地分离,因此当系统移植到其它平台时,不需要对内核做太大的修改。

40 Linux 内核的重要组成部分


Download ppt "第1章 Linux概述 马丽洁."

Similar presentations


Ads by Google