如果您刚接触嵌入式开发,那么大量可用的引导装载程序(bootloader)
、规模缩小的分发版(distribution)、文件系统和 GUI 看起来可能太多了。
但是这些丰富的选项实际上是一种恩赐,允许您调整开发或用户环境以*符合
您的需要。对 Linux 嵌入式开发的概述将帮助您理解所有这些选项。Linux 正在嵌入式开发领域稳步发展。因为 Linux 使用 GPL(请参阅本文后面
的 参考资料),所以任何对将 Linux 定制于 PDA、掌上机或者可佩带设备感兴
趣的人都可以从因特网免费下载其内核和应用程序,并开始移植或开发。许多
Linux 改良品种迎合了嵌入式/实时市场。它们包括 RTLinux(实时 Linux)、
uclinux(用于非 MMU 设备的 Linux)、Montavista Linux(用于 ARM、MIPS、
PPC 的 Linux 分发版)、ARM-Linux(ARM 上的 Linux)和其它 Linux 系统(
请参阅 参考资料以链接到本文中提到的这些和其它术语及产品。)
嵌入式 Linux 开发大致涉及三个层次:引导装载程序、Linux 内核和图形用户
界面(或称 GUI)。在本文中,我们将集中讨论涉及这三层的一些基本概念;深
入了解引导装载程序、内核和文件系统是如何交互的;并将研究可用于文件系统
、GUI 和引导装载程序的众多选项中的一部分。
引导装载程序
引导装载程序通常是在任何硬件上执行的*段代码。在象台式机这样的常规系
统中,通常将引导装载程序装入主引导记录(Master Boot Record,(MBR))中
,或者装入 Linux 驻留的磁盘的*个扇区中。通常,在台式机或其它系统上
,BIOS 将控制移交给引导装载程序。这就提出了一个有趣的问题:谁将引导装
载程序装入(在大多数情况中)没有 BIOS 的嵌入式设备上呢?
解决这个问题有两种常规技术:软件和微小的引导代码(tiny bootcode)
。
软件可以直接与远程系统上的闪存设备进行交互并将引导装载程序安装在闪
存的给定位置中。 闪存设备是与存储设备功能类似的特殊芯片,而且它们能持
久存储信息 ― 即,在重新引导时不会擦除其内容。
这个软件使用目标(在嵌入式开发中,嵌入式设备通常被称为 目标)上的 JTAG
端口,它是用于执行外部输入(通常来自主机机器)的指令的接口。JFlash-
linux 是一种用于直接写闪存的流行工具。它支持为数众多的闪存芯片;它在主
机机器(通常是 i386 机器 ― 本文中我们把一台 i386 机器称为 主机)上执
行并通过 JTAG 接口使用并行端口访问目标的闪存芯片。当然,这意味着目标需
要有一个并行接口使它能与主机通信。Jflash-linux 在 Linux 和 Windows 版
本中都可使用,可以在命令行中用以下命令启动它: Jflash-linux
某些种类的嵌入式设备具有 微小的引导代码― 根据几个字节的指令 ― 它将初
始化一些 DRAM 设置并启用目标上的一个串行(或者 USB,或者以太网)端口与
主机程序通信。然后,主机程序或装入程序可以使用这个连接将引导装载程序传
送到目标上,并将它写入闪存。
、规模缩小的分发版(distribution)、文件系统和 GUI 看起来可能太多了。
但是这些丰富的选项实际上是一种恩赐,允许您调整开发或用户环境以*符合
您的需要。对 Linux 嵌入式开发的概述将帮助您理解所有这些选项。Linux 正在嵌入式开发领域稳步发展。因为 Linux 使用 GPL(请参阅本文后面
的 参考资料),所以任何对将 Linux 定制于 PDA、掌上机或者可佩带设备感兴
趣的人都可以从因特网免费下载其内核和应用程序,并开始移植或开发。许多
Linux 改良品种迎合了嵌入式/实时市场。它们包括 RTLinux(实时 Linux)、
uclinux(用于非 MMU 设备的 Linux)、Montavista Linux(用于 ARM、MIPS、
PPC 的 Linux 分发版)、ARM-Linux(ARM 上的 Linux)和其它 Linux 系统(
请参阅 参考资料以链接到本文中提到的这些和其它术语及产品。)
嵌入式 Linux 开发大致涉及三个层次:引导装载程序、Linux 内核和图形用户
界面(或称 GUI)。在本文中,我们将集中讨论涉及这三层的一些基本概念;深
入了解引导装载程序、内核和文件系统是如何交互的;并将研究可用于文件系统
、GUI 和引导装载程序的众多选项中的一部分。
引导装载程序
引导装载程序通常是在任何硬件上执行的*段代码。在象台式机这样的常规系
统中,通常将引导装载程序装入主引导记录(Master Boot Record,(MBR))中
,或者装入 Linux 驻留的磁盘的*个扇区中。通常,在台式机或其它系统上
,BIOS 将控制移交给引导装载程序。这就提出了一个有趣的问题:谁将引导装
载程序装入(在大多数情况中)没有 BIOS 的嵌入式设备上呢?
解决这个问题有两种常规技术:软件和微小的引导代码(tiny bootcode)
。
软件可以直接与远程系统上的闪存设备进行交互并将引导装载程序安装在闪
存的给定位置中。 闪存设备是与存储设备功能类似的特殊芯片,而且它们能持
久存储信息 ― 即,在重新引导时不会擦除其内容。
这个软件使用目标(在嵌入式开发中,嵌入式设备通常被称为 目标)上的 JTAG
端口,它是用于执行外部输入(通常来自主机机器)的指令的接口。JFlash-
linux 是一种用于直接写闪存的流行工具。它支持为数众多的闪存芯片;它在主
机机器(通常是 i386 机器 ― 本文中我们把一台 i386 机器称为 主机)上执
行并通过 JTAG 接口使用并行端口访问目标的闪存芯片。当然,这意味着目标需
要有一个并行接口使它能与主机通信。Jflash-linux 在 Linux 和 Windows 版
本中都可使用,可以在命令行中用以下命令启动它: Jflash-linux
某些种类的嵌入式设备具有 微小的引导代码― 根据几个字节的指令 ― 它将初
始化一些 DRAM 设置并启用目标上的一个串行(或者 USB,或者以太网)端口与
主机程序通信。然后,主机程序或装入程序可以使用这个连接将引导装载程序传
送到目标上,并将它写入闪存。
更多技术交流请登录/main.asp 或至电-802
关键词:存储设备
上一篇:西门子变频器维修常见故障分析
下一篇:热电厂煤气排水器电伴热的应用
全年征稿/资讯合作
联系邮箱:1271141964@qq.com
免责声明
- 凡本网注明"来源:智能制造网"的所有作品,版权均属于智能制造网,转载请必须注明智能制造网,https://www.gkzhan.com。违反者本网将追究相关法律责任。
- 企业发布的公司新闻、技术文章、资料下载等内容,如涉及侵权、违规遭投诉的,一律由发布企业自行承担责任,本网有权删除内容并追溯责任。
- 本网转载并注明自其它来源的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品来源,并自负版权等法律责任。
- 如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
SAMPE中国第二十届国际先进复合材料展览会
展会城市:北京市展会时间:2025-06-18