当前位置:文档之家› 基于Linux内核定制X86平台的微操作系统(很完整详尽文章)

基于Linux内核定制X86平台的微操作系统(很完整详尽文章)

基于Linux内核定制X86平台的微操作系统摘要:10 前言20.1 Linux系统简介20.2 Linux的基本思想20.3 Linux内核20.4 Linux内核版本命名30.5 Linux文件系统30.6Linux内核引导40.7Linux系统组成41 平台的搭建41.1 硬件平台41.2 软件平台41.2.1 Ubuntu系统的下载41.2.2 Ubuntu系统的安装41.2.3 Ubuntu系统的配置42 Linux内核的编译52.1 内核的下载52.2 内核的定制52.3 内核的编译52.4 内核的制作63 BusyBox的编译63.1 BusyBox的下载63.2 BusyBox的配置63.3 BusyBox的编译74 Linux文件系统的制作74.1 文件系统的制作74.2 文件系统的配置94.3 文件系统的压缩75 Linux引导程序配置105.1 ISOLINUX的下载105.2 ISOLINUX的配置106 LinuxCD-ROM的制作107 Linux定制系统的运行117.1 VirtualBox下的运行117.2 U盘引导在X86平台下的运行128定制系统过程中的问题128.1 平台搭建中的问题128.2 内核编译中的问题128.3 BusyBox编译中的问题128.4 文件系统制作中的问题128.5 引导程序制作中的问题128.6 CD-ROM制作中的问题138.7 定制系统运行的问题13参考13基于Linux内核定制X86平台的微操作系统王林强(河南大学物理与电子学院通信专业,河南开封,475004)摘要:Linux是一种自由和开放,用C语言和汇编语言写成,并符合POSIX标准的类Unix操作系统。

并且由于其可定制、可裁剪的特性,不仅在桌面操作系统中有重要的地位,而且在手机、平板电脑、路由器和视频游戏控制台等嵌入式设备有其巨大的优势。

为了更好、更深入的了解及掌握Linux系统。

本文详细的讲述并实践,如何从Linux内核源码,经过定制、裁剪、编译、制作文件系统、内核引导,iso光盘制作到最终完整的基于Linux内核定制的微操作系统。

通过基于Linux内核定制的微操作系统的制作,深入的理解Linux内核的工作原理、文件系统结构、内核引导等,从而精通嵌入式开发。

关键词:Linux;定制;嵌入式;微系统An implementation of micro-operating system based on the x86 platform Linux kernel customizationWang Lin-qiang(School of Physics and Electronics, Henan University, Henan Kaifeng 475004, China)Abstract:Linux is a free and open, and POSIX-compliant Unix-like operating system written in C and assembly language. And can be cut because of its customizable features, not only in the desktop o perating system in an important position, and its huge advantage in the embedded devices, mobile phones, tablet PCs, routers, and video game consoles.In order to better and deeper understanding of and master Linux system. This article tells in d etail and practice, from the Linux kernel source code has been customized, cutting, compiling, production file system, kernel boot iso CD-ROM production to the final complete custom micro-oper ating system based on Linux kernel.In-depth understanding of the Linux kernel works through the production of custom micro-op erating system based on Linux kernel, file system structure, core guidance, so proficient in embed ded development.Key words:Linux; customizable;embedded development; micro-operating system0 前言Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。

Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。

由于其免费、开源、可定制、可裁剪等特性使其在嵌入式领域获得巨大的发展,并占据大部分市场,深入的了解、掌握Linux的裁剪、定制、移植,对嵌入式更好的开发起着至关重要的作用,基于火热的嵌入式开发,未来市场中将需要更多精于Linux 移植开发的工程师。

0.1 Linux系统简介Linux操作系统是一种自由和开放源码的类UNIX操作系统的一种克隆系统。

它诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间)。

以后借助于Internet 网络,并经过全世界各地计算机爱好者的共同努力下,现已成为今天世界上使用最多的一种UNIX 类操作系统,并且使用人数还在迅猛增长,目前存在着许多不同的Linux,但它们都使用了Linux内核。

Linux 操作系统的诞生、发展和成长过程始终依赖着以下五个重要支柱:UNIX 操作系统、MINIX操作系统、GNU 计划、POSIX 标准和Internet 网络。

目前,Linux的发行版有很多,如Ubuntu,RedHat,Debian,Fedora等等。

0.2 Linux的基本思想Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。

其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。

至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。

0.3Linux内核Linux是最受欢迎的自由电脑操作系统内核。

它是一个用C语言和汇编语言写成,符合POSIX标准的类Unix操作系统。

Linux最早是由芬兰黑客林纳斯.托瓦兹(Linus B. Torvalds)为尝试在英特尔x86架构上提供自由免费的类Unix 操作系统而开发的。

该计划开始于1991年,在计划的早期有一些Minix黑客提供了协助,而今天全球无数程序员正在为该计划无偿提供帮助。

技术上说Linux是一个内核。

“内核”指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。

一个内核不是一套完整的操作系统。

一套基于Linux内核的完整操作系统叫作Linux操作系统,或是GNU/Linux。

0.4 Linux内核版本命名版本的格式为A.B.C,其中A,B,C代表:A大幅度转变的内核。

这是很少发生变化,只有当发生重大变化的代码和核心发生才会发生。

在历史上曾改变两次的内核:1994年的1.0及1996年的2.0。

B是指一些重大修改的内核。

内核使用了传统的奇数次要版本号码的软件号码系统(用偶数的次要版本号码来表示稳定版本)。

C是指轻微修订的内核。

这个数字当有安全补丁,bug修复,新的功能或驱动程序,内核便会有变化。

自2.6.0(2003年12月)发布后,人们认识到,更短的发布周期将是有益的。

自那时起,版本的格式为A.B.C.D,其中A,B,C,D代表:A和B是无关紧要的,C是内核的版本,D是安全补丁0.5 Linux文件系统Linux继承了Unix操作系统结构清晰的特点。

在linux下的文件结构非常有条理。

/根目录|————————/bin存放二进制文件。

|————————/boot存放Linux的内核及引导系统程序。

|————————/cdrom挂载光驱文件系统。

|————————/dev存放使用的外部设备。

|————————/etc存放各种配置文件和子目录。

|————————/home存放用户的主目录。

|————————/lib存放系统动态连接共享库。

|————————/lost+found存放意外崩溃和意外信息。

|————————/mnt存放挂载储存设备的挂载目录。

|————————/media挂载usb接口的移动硬盘。

|————————/opt存放可选的程序。

|————————/proc存放系统信息。

|————————/root超级权限用户root的家目录。

|————————/sbin存放系统管理员的系统管理程序。

|————————/srv 服务启动后,所需访问的数据目录|————————/sys一种虚拟的基于内存的文件系统。

|————————/tmp临时文件目录。

|————————/usr存放用户应用程序和文件。

|————————/var存放系统日志。

0.6Linux内核引导LILO(LInux LOader),LILO代表Linux加载程序。

LILO是一个在系统启动时运行的程序,它允许选择用于引导计算机的操作系统。

GNU GRUB(简称“GRUB”)是一个来自GNU项目的多操作系统启动程序。

GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。

GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。

0.7Linux系统组成引导程序+Linux内核+文件系统=微Linux操作系统1 平台的搭建Linux定制平台的正确选择、配置、安装、调试将为下面的系统制作提供有力的保证。

并减少制作过程中问题发生的几率。

1.1 硬件平台处理器:Intel? Atom? ***************× 2内存:992.8M硬盘:WDC WD1600BEVS--00RST01.2软件平台本次平台采用采用XP+Ubuntu 12.04双系统。

相关主题