嵌入式linux和普通x86上的linux支持的软件区别
嵌入式linux和普通x86上的linux支持的软件区别?有什么区别?linux支持的软件两者可以通用吗?...
嵌入式linux和普通x86上的linux支持的软件区别?有什么区别?linux支持的软件两者可以通用吗?
展开
4个回答
展开全部
嵌入式是指超轻型的系统。
一般嵌入式所用的 CPU 多为 arm 架构的 CPU 。这个架构是特殊设计的,与 X86 不兼容。所以两个系统的二进制程序不同用。
对于 Linux 来说,他们的源代码大部分是通用的(除了那些针对某种 CPU 或者设备进行特殊算法优化的,或者没有避让某些架构对于源代码编写的特殊要求的)。基本只要他们需要的软件库能提供,需要的其他软件能提供,就可以在任何 Linux 支持的设备上面运行。
但嵌入式又有一个问题,他是超轻型的,所以他不可能像 x86 计算机那样装一套 1DVD 的 Linux (完全安装一个 DVD 的 Linux ,一般实际需要 8G 左右的硬盘空间)。嵌入式一般体积不超 128M,甚至只有 4M 空间可用 ,一般都在 32M-64M 之间的容量。这样对于软件来说,不可能完全提供足够的软件功能库或者软件。
结果就是,他们的软件“理论上”“源代码级别”的通用,但却又有实际限制。
当然对于嵌入式高手或者超级财主来说,这些都不是问题。
主要还是看具体的限制了。
一般嵌入式所用的 CPU 多为 arm 架构的 CPU 。这个架构是特殊设计的,与 X86 不兼容。所以两个系统的二进制程序不同用。
对于 Linux 来说,他们的源代码大部分是通用的(除了那些针对某种 CPU 或者设备进行特殊算法优化的,或者没有避让某些架构对于源代码编写的特殊要求的)。基本只要他们需要的软件库能提供,需要的其他软件能提供,就可以在任何 Linux 支持的设备上面运行。
但嵌入式又有一个问题,他是超轻型的,所以他不可能像 x86 计算机那样装一套 1DVD 的 Linux (完全安装一个 DVD 的 Linux ,一般实际需要 8G 左右的硬盘空间)。嵌入式一般体积不超 128M,甚至只有 4M 空间可用 ,一般都在 32M-64M 之间的容量。这样对于软件来说,不可能完全提供足够的软件功能库或者软件。
结果就是,他们的软件“理论上”“源代码级别”的通用,但却又有实际限制。
当然对于嵌入式高手或者超级财主来说,这些都不是问题。
主要还是看具体的限制了。
展开全部
一般说嵌入式都指ARM架构
ARM 与X86架构差别
X86是经典的CISC指令集,指令集复杂,功能多,串行执行,但是也意味着执
行效率低下,但性价比突出,所以称为民用终端的主流处理器内置指令集。Intel和AMD
的家用处理器都是X86指令集。以X86为代表的CISC,理论并发线程1-2条。
ARM是Advanced RISC Machine 的缩写。它的指令集比RISC还要精简。通常使
用ARM架构处理器的机型,多为嵌入式或者便携机。主频通常不高,现在高通公
司的ARM架构处理器有1.0GHz的,已经算相当高了。另外,ARM 7沿用冯·诺
依曼结构;而从ARM 9以后,就都采用了哈佛结构。ARM的并发线程,理论上有4条左右,处理效率较X86高不少。
正由于他们架构的区别,指令集的差异,所以他们的软件运行环境不同,编译环境也不同,有些软件做了兼容性处理,可以直接在两个不同架构下编译。
ARM 与X86架构差别
X86是经典的CISC指令集,指令集复杂,功能多,串行执行,但是也意味着执
行效率低下,但性价比突出,所以称为民用终端的主流处理器内置指令集。Intel和AMD
的家用处理器都是X86指令集。以X86为代表的CISC,理论并发线程1-2条。
ARM是Advanced RISC Machine 的缩写。它的指令集比RISC还要精简。通常使
用ARM架构处理器的机型,多为嵌入式或者便携机。主频通常不高,现在高通公
司的ARM架构处理器有1.0GHz的,已经算相当高了。另外,ARM 7沿用冯·诺
依曼结构;而从ARM 9以后,就都采用了哈佛结构。ARM的并发线程,理论上有4条左右,处理效率较X86高不少。
正由于他们架构的区别,指令集的差异,所以他们的软件运行环境不同,编译环境也不同,有些软件做了兼容性处理,可以直接在两个不同架构下编译。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先操作系统二进制代码不一样,一个是针对x86处理器的二级制代码,一个是嵌入式处理器的二级制代码。
linux本身是在x86处理器上创造出来的,各种底层函数都是针对x86系统编写的
其实在移植到嵌入式系统时,各种硬件函数已经改写了,最大限度的原有的API函数可用性
两者软件的通用性很难说,不知道你指哪方面的软件
很多嵌入式下的软件都是自己编写的
linux本身是在x86处理器上创造出来的,各种底层函数都是针对x86系统编写的
其实在移植到嵌入式系统时,各种硬件函数已经改写了,最大限度的原有的API函数可用性
两者软件的通用性很难说,不知道你指哪方面的软件
很多嵌入式下的软件都是自己编写的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先先回答你不可以通用,但是可以实现通用,关键在于kernel与硬件通讯的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询