嵌入式技术实用教程教学课件作者姜帆第6章嵌入式Linux操作系统课件.ppt
文本预览下载声明
第6章 嵌入式Linux操作系统 学习目标: 1.了解Linux操作系统的背景。 2.理解嵌入式Linux操作系统的特点。 3.熟悉μClinux的内核结构、内存管理、应用程序库以及文件系统的支持。 4.了解μClinux内核移植到S3C2410平台的方法。 5.学会构建嵌入式Linux的开发环境。 Linux概述 Linux正在嵌入式开发领域稳步发展,这是因为Linux的源代码开放井遵循GNU通用公共许可证(GNU Public License,GPL),所以任何对将Linux定制于 PDA或者其他手持设备感兴趣的人都可以从因特网免费下载其内核和应用程序,并对其进行移植或开发。 Linux概述 Linux具有以下特点: 开放性:指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。 多用户:是指系统资源可以被不同用户使用,每个用户对自己的资源(例如:文件、设备)有特定的权限,互不影响。 多任务:它是指计算机同时执行多个程序,而且各个程序的运行互相独立。 良好的用户界面 :Linux向用户提供了两种界面:用户界面和系统调用。 设备独立性:是指操作系统把所有外部设备统一当作成文件来看待。 可靠的安全系统:Linux采取了许多安全技术措施,包括对读、写控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。 良好的可移植性:是指将操作系统从一个平台转移到另一个平台使它仍然能按其自身的方式运行的能力。Linux是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。 Linux的组成 1.Linux的内核:内核是系统的核心,是运行程序和管理 像磁盘和打印机等硬件设备的核心程序。 2.Linux SHELL: Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。 3.Linux文件系统: Linux文件系统是文件存放在磁盘等存储设备上的组织方法。Linux能支持多种目前浒的文件系统,如EXT2、EXT3、FAT、VFAT、ISO9660、NFS、SMB等。 4.LINUX应用系统:标准的Linux系统都有一整套称为应用程序的程序集,包括文本编辑器、编程语言、X Window、办公套件、Internet工具、数据库等。 嵌入式Linux及其特点 正因为嵌入式Linux显露出了良好的市场前景,出现了一批新的专业从事嵌入式 Linux技术开发的公司,如Lineo、TimeSys及FsmLabs等。不同的嵌入式Linux版本各具特色,大致可以分为以下3类。 (1)利用Linux的强大功能,在满足需要的前提下,使其体积尽可能的小,以满足许多嵌入式系统对体积的要求,如Monta Vista的Hard Hat Linux等。 (2)将Linux开发成实时系统尤其是硬实时系统,应用于一些关键的控制场合,如Fsmlabs公司开发出来的RT-Linux产品已经用在工业控制的很多方面。 (3)将实时性和嵌入式方案结合起来开发的Linux系统,很多公司都这么做,并且提供集成化的开发方案,如Lineo、TimeSys。 嵌入式Linux的体系结构 μClinux其实是内核的标志。操作系统的内核是整个计算机系统的管理机构,它管理着整个计算机系统的一切资源,包括内存分配、硬件资源等,旨在使计算机系统的软件资源和硬件资源相互协调并且优化计算机系统的运行效率。内核是操作系统的内部核心程序,它向外部提供了对计算机设备的核心管理调用。一般来说,操作系统上运行的代码可以分为内核空间和用户空间这2部分。内核所在的地址空间就是内核空间;在内核以外的程序统称为外部管理程序,它们绝大多数用于对外围设备的管理和界面操作,外部管理程序与用户进程所占据的地址空间就称为用户空间。 Linux系统内核结构 Linux的内核为非抢占式的。它不能通过改变优先权来影响当前的执行流程。因此,可以对Linux某些重要的数据结构进行修改而不加任何保护措施。Linux内核主要有下列功能。 (1)用软件接口抽象不同的硬件资源,以简化操作,屏蔽低层硬件的不同接口,即资源抽象。 (2)将抽象出来的各种资源分配给各个进程并负责取回这些系统资源,即资源分配。 (3)根据不同的资源类型使用不同的机制保证资源被进程所独占,即资源共享。 Linux内核的体系结构 μClinux内存管理 μClinux与标准Linux的最大区别就在于内存管理,由于μClinux的内存管理引发了一些标准Linux所不会出现的问题。这里将μClinux内存管理同标准Linux的内存管理部分进行比较分析。 1. 标准Linux使用的虚拟内存技术 2. μClinux针对没有MMU的特殊处理 μClinux内核结构
显示全部