文档介绍:第15章解析Linux内核内核是操作系统的核心,通常说的Linux是指Linux操作系统的内核,是一组系统管理软件的集合。Linux内核是目前最流行的开源操作系统之一,由于其代码的高度开放性,越来越多的人参与到Linux内核的研究和开发中。Linux内核的功能也在不断提高,性能在不断改进。操作系统内核是软件开发领域比较深的技术点,需要结合软硬件知识才能深入理解。本章由浅入深讲解Linux内核,带领读者进入嵌入式开发比较深入的领域,主要内容如下:,但是内核本身不是操作系统。许多Linux操作系统发行商如RedHat、Debian等都采用Linux内核,然后加入用户需要的工具软件和程序库,最终构成一个完整的操作系统。嵌入式Linux系统是运行在嵌入式硬件系统上的Linux操作系统,每个嵌入式Linux系统都包括了必要的工具软件和程序库。,为应用程序提供安全访问硬件资源的功能。直接操作计算机硬件是很复杂的,内核通过硬件抽象的方法屏蔽了硬件的复杂性和多样性。通过硬件抽象的方法,内核向应用程序提供了统一和简洁的接口,应用程序设计复杂程度降低。实际上,内核可以被看做是一个系统资源管理器,内核管理计算机系统中所有的软件和硬件资源。应用程序可以直接运行在计算机硬件上而无需内核的支持,从这个角度看,内核不是必要的。在早期的计算机系统中,由于系统资源的局限,通常采用直接在硬件上运行应用程序的办法。运行应用程序需要一些辅助程序,如程序加载器、调试器等。随着计算机性能的不断提高,硬件和软件源都变得复杂,需要一个统一管理的程序,操作系统的概念也逐渐建立起来。“.”分割的三个数字来标示,形式为“”。其中,X是主要版本号,Y是次要版本号,Z代表补丁版本号。奇数代表不稳定的版本;偶数代表稳定的版本。“稳定”和“不稳定”是相对的,“不稳定”版本,“稳定”版本。在Linux内核开发过程中,“不稳定”版本通常是在原有版本基础上增加了新的功能或者新的特性。,一般的Linux发行版都提供了内核代码。嵌入式系统没有固定的发行版,需要用户自己获取内核代码。,用户可以打开该地址找到和自己所在物理位置就进的站点,下载自己需要的内核版本代码。高版本Linux内核代码文件比较大,对于国内的用户推荐使用ftp方式下载,或者使用断点续传工具下载,具体情况可根据读者自身的网络情况选择。下载Linux内核代码后,会得到一个类似“linux-”或者“linux--”形式的压缩文件,“xx”代表版本号。在Linux系统上,通常把这个文件存放在/usr/src目录下,便于以后使用。,通过配置Linux内核可以对内核代码有一个初步的了解。,在本书第20章移植Linux部分会讲解如何交叉编译用于ARM体系结构的Linux内核。,。内核编译主要分成配置和编译两部分,其中配置是关键,许多问题都是出在配置环节。Linux内核编译配置提供多种方式:makeconfig:makemenuconfig:makexconfig:makeoldconfig:。Linux内核提供很多基本功能,如虚拟内存、多任务、共享库、需求加载、共享写时拷贝(Copy-On-Write)以及网络功能等。增加各种不同功能导致内核代码不断增加。Linux