返学费网 > 培训机构 > 全国IT培训中心

13081913316

全国统一学习专线 8:30-21:00

嵌入式开发和linux开发一样吗

1.什么是嵌入式Linux系统?
嵌入式Linux系统就是利用Linux其自身的许多特点,把它应用到嵌入式系统里。
Linux做嵌入式的优势,首先,Linux是开放源代码的,不存在黑箱技术,遍布全球的众多Linux爱好者又是Linux开发者的强大技术支持;其次,Linux的内核小、效率高,内核的更新速度很快;第三,Linux是免费的OS,在价格上极具竞争力。
Linux还有着嵌入式操作系统所
需要的很多特色,突出的就是Linux适应于多种CPU和多种硬件平台,是一个跨平台的系统。到目前为止,它可以支持二三十种CPU。而且性能稳定,裁剪
性很好,开发和使用都很容易。很多CPU包括家电业芯片,都开始做Linux的平台移植工作。移植的速度远远超过Java的开发环境。也就是说,如果今天
用Linux环境开发产品,那么将来换CPU就不会遇到困扰。同时,Linux内核的结构在网络方面是非常完整的,Linux对网络中最常用的

Linux和嵌入式Linux有什么区别

【Linux】

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。

Linux也可以安装在各种计算机硬件设备中,如收集、平板电脑、路由器、台式计算机、超级计算机等等,人们也已经习惯了用Linux来形容整个基于Linux内核,且使用GNU工程各种工具和数据库的操作系统。

Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用Windows
NT一样,允许我们使用窗口、图标和菜单对系统进行操作。

【嵌入式Linux】

嵌入式Linux说白了就是利用Linux其自身的许多特点,把它应用到嵌入式系统里。

现今已出现了一些嵌入式操作系统,比较著名的有Vxwork、pSOS、Neculeus和Windows
CE,但这些操作系统往往是商业化产品,其价格也比较高昂。

Linux做嵌入式的优势,首先,Linux是开放源代码的,不存在黑箱技术,遍布全球的众多Linux爱好者又是Linux开发者的强大技术支持;其次,Linux的内核小、效率高,内核的更新速度很快;第三,Linux是免费的OS,在价格上极具竞争力。

嵌入式设备的嵌入式设备上的Linux系统开发

Linux正在嵌入式开发领域稳步发展。因为Linux使用GPL(请参阅本文后面的参考资料),所以任何对将Linux定制于PDA、掌上机或者可佩带设备感兴趣的人都可以从因特网免费下载其内核和应用程序,并开始移植或开发。许多Linux改良品种迎合了嵌入式/实时市场。它们包括RTLinux(实时Linux)、uclinux(用于非MMU设备的Linux)、(用于ARM、MIPS、PPC的Linux分发版)、ARM-Linux(ARM上的Linux)和其它Linux系统

嵌入式Linux开发大致涉及三个层次:引导装载程序、Linux内核和图形用户界面(或称GUI)。引导装载程序通常是在任何硬件上执行的第一段代码。在象台式机这样的常规系统中,通常将引导装载程序装入主引导记录(,(MBR))中,或者装入Linux驻留的磁盘的第一个扇区中。通常,在台式机或其它系统上,BIOS将控制移交给引导装载程序。

专用软件可以直接与远程系统上的闪存设备进行交互并将引导装载程序安装在闪存的给定位置中。闪存设备是与存储设备功能类似的特殊芯片,而且它们能持久存储信息—即,在重新引导时不会擦除其内容。

某些种类的嵌入式设备具有微小的引导代码—根据几个字节的指令—它将初始化一些DRAM设置并启用目标上的一个串行(或者USB,或者以太网)端口与主机程序通信。然后,主机程序或装入程序可以使用这个连接将引导装载程序传送到目标上,并将它写入闪存。设置工具链在主机机器上创建一个用于编译将在目标上运行的内核和应用程序的构建环境—这是因为目标硬件可能没有与主机兼容的二进制执行级别。

工具链由一套用于编译、汇编和链接内核及应用程序的组件组成。这些组件包括:Binutils—用于操作二进制文件的实用程序集合。它们包括诸如ar、as、objmp、objcopy这样的实用程序。G—GNUC编译器。Glibc—所有用户应用程序都将链接到的C库。避免使用任何C库函数的内核和其它应用程序可以在没有该库的情况下进行编译。构建工具链建立了一个交叉编译器环境。本地编译器编译与本机同类的处理器的指令。交叉编译器运行在某一种处理器上,却可以编译另一种处理器的指令。重头设置交叉编译器工具链可不是一项简单的任务:它包括下载源代码、修补补丁、配置、编译、设置头文件、安装以及很多很多的操作。另外,这样一个彻底的构建过程对内存和硬盘的需求是巨大的。如果没有足够的内存和硬盘空间,那么在构建阶段由于相关性、配置或头文件设置等问题会突然冒出许多问题。

因此能够从因特网上获得已预编译的二进制文件是一件好事(但不太好的一点是,它们大多数只限于基于ARM的系统,但迟早会改变的)。一些比较流行的已预编译的工具链包括那些来自Compaq()、LART(LARTLinux)和Embedian(基于Debian但与它无关)的工具链—所有这些工具链都用于基于ARM的平台。从用户的观点来看,图形用户界面(GUI)是系统的一个最至关重要的方面:用户通过GUI与系统进行交互。所以GUI应该易于使用并且非常可靠。但它还需要是有内存意识的,以便在内存受限的、微型嵌入式设备上可以无缝执行。所以,它应该是轻量级的,并且能够快速装入。

另一个要考虑的重要方面涉及许可证问题。一些GUI分发版具有允许免费使用的许可证,甚至在一些商业产品中也是如此。另一些许可证要求如果想将GUI合并入项目中则要支付版税。

最后,大多数开发人员可能会选择XFree86,因为XFree86为他们提供了一个能使用他们喜欢的工具的熟悉环境。但是市场上较新的GUI,象的(Nano-X)和/Embedded,与X在嵌入式Linux的竞技舞台中展开了激烈竞争,这主要是因为它们占用很少的资源、执行的速度很快并且具有定制窗口构件的支持。

嵌入式开发:Linux和Windows的区别

尽管每隔几年只发布一次微软Windows的官方版本,但Linux的各种不同版本都在不断更新。在嵌入式开发中,最常用的就是Linux。

Linux与Windows的成本

与不同,大多数Linux操作系统可完全免费下载。如果你要买一台新电脑,那么你应该知道大多数电脑都预装了Windows,这已经包含在成本中了。一种节省新计算机成本并获得您真正想要的操作系统的方法是构建您自己的计算机并安装Linux操作系统而不是Windows。

安全问题

Linux通常被认为比更安全。大多数病毒被设计为在Windows上运行,而不是在其他操作系统上运行。Linux的开放源代码特性意味着漏洞和安全问题通常会很快被发现并解决,因为Linux拥有一个庞大的嵌入式开发人员网络来开发操作系统。

兼容性问题

并非所有软件都能在所有操作系统上运行。不在Linux上运行,但有几乎相同的开源Office软件包,允许您编写文档、创建电子表格和处理演示文稿。Ubuntu12.04预装了一个这样的软件包:,而Windows要求您在安装操作系统后安装office软件。您可以在中创建的每个文档保存为可由程序打开的文件,这样您就不必担心影响工作的兼容性问题。

编码

虽然大多数普通用户可能很乐意使用电脑附带的Windows操作系统,但许多程序员(特别是嵌入式开发人员)和科学家在Linux中感觉更自在。允许您编写和运行可用于自动化流程的简单脚本。

你喜欢Linux还是Windows?或者在双引导系统中同时使用两者?

LINUX下编程与嵌入式LINUX应用的区别?

LINUX下的嵌入式开发主要需要以下几个方面的知识:

一、LINUX下的C编程

这个必不可少,是嵌入式的基础中的基础。至于熟悉C语言,在一般的PC系统(LINUX)上就可以。当然,与LINUX下C语言编译相关的知识如Makefile的写法等等也是要了解的。

一些开发还需要C或者Java。

二、LINUX内核和操作系统

这个是难以在短期内学会的,只能是日积月累。初期可以看一些操作系统和LINUX系统相关的书籍,在以后的实践中再慢慢深入了解操作系统和LINUX内核。

三、一些基础的硬件知识

嵌入式是与硬件关联比较大的,所以初期适当的了解一些硬件的知识,你会发现在以后的开发中或许很有用。

四、LINUX下嵌入式开发是一个有难度有挑战的事情,祝你好运。

温馨提示:为不影响您的学业,来校区前请先电话咨询,方便我校安排相关的专业老师为您解答
  • 热门课程
  • 作者最新文章
  • 在线报名
申请试听课程

只要一个电话
我们免费为您回电

姓名不能为空
手机号格式错误