Linux和嵌入式Linux有什么区别

Linux和嵌入式Linux有什么区别,第1张

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,在价格上极具竞争力。

定义不一样

1、 嵌入式软件就是嵌入在硬件中的 *** 作系统和开发工具软件。

2、  非嵌入式软件和嵌入式软件正好相反,其是指可以跨平台甚至跨系统使用的软件系统。

具体实义不一样

1、嵌入式软件就是基于嵌入式平台(比如ARM+Linux)的应用软件或者系统软件

2、非嵌入式软件大多指基于通用处理器和 *** 作系统平台的软件(比如桌面应用软件)

使用平台不一样

1、能够运行在个人的电脑和一些大型服务器的软件就是非嵌入式软件,如百度。

2、在个人移动平台上运行的就是嵌入式软件,如手机QQ

扩展资料

嵌入式系统特点

1)可裁剪性。支持开放性和可伸缩性的体系结构。

2)强实时性。EOS实时性一般较强,可用于各种设备控制中。

3)统一的接口。提供设备统一的驱动接口。

4) *** 作方便、简单、提供友好的图形GUI和图形界面,追求易学易用。

5)强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预、这就要负责系统管理的EOS具有较强的稳定性。嵌入式 *** 作系统的用户接口一般不提供 *** 作命令,它通过系统的调用命令向用户程序提供服务。

6)固化代码。在嵌入式系统中,嵌入式 *** 作系统和应用软件被固化在嵌入式系统计算机的ROM中。

7)更好的硬件适应性,也就是良好的移植性。

参考资料来源:百度百科—嵌入式

这个问题主要涉及4个方面内容:
1 编程语言C/C++,Java,C#
C语言诞生于上世纪60年代,是一种计算机程序设计语言,它把高级语言的基本结构和语句与低级语言的实用性结合起来,可以像汇编语言一样对位、字节和地址进行 *** 作,具体应用比如单片机以及嵌入式系统开发。但是C中的指针 *** 作不做保护,也给它带来了很多不安全的因素。
C++诞生于上世纪80年代,它作为C的扩充和完善,在保留了指针 *** 作的同时又增强了安全性,同时提供面向对象等新特制以及更多的标准库。
具体表现有:
(1)类型检查更为严格。
(2)增加了面向对象的机制。
(3)增加了泛型编程的机制(template)
(4)增加了异常处理
(5)增加了运算符重载
(6)增加了标准模板库(STL)
Java于1995年由SUN公司推出,它起源于内嵌类平台的开发过程,这类场景中可用资源非常少,而编写C程序显得复杂繁琐,同时C缺少垃圾回收、安全的可移植性和多线程功能,Java应运而生。它吸取了C/C++的教训,支持面向对象的同时取消了指针 *** 作和一些备受争议的地方,建立垃圾回收机制,在安全性和跨平台方面均取得良好的效果,但其程序体在虚拟机中解释运行,运行效率低于C/C++程序。
C#于2000年由微软公司推出用于与Java相抗争,它深受Java的影响,在继承C和C++强大功能的同时去掉了一些它们的复杂特性。C#拥有比C/C++或者Java更广泛的数据类型,与C++不同的是,C#结构体与类是不支持继承;与Java相同的是,一个结构体可以实现接口(interface),C#程序同样不能直接编译成标准的二进制可执行形式,它被编译成为中间代码,然后通过NET Framework的虚拟机运行。
人们一般认为,使用Java或C#的开发成本比C++低,但随着代码量和复杂度的增加,C++的优势将会越来越明显,造成这种差别的就是C++的软件工程性。
JAVA的用户主要是嵌入式设备软件的开发者,而在网络服务方面,C# 的即时编译和本地代码Cache方案比Java虚拟机具有绝对的性能优势。C#将不可避免地在Windows平台上成为主角,而JAVA将在UNIX、Linux等平台上成为霸主,C++将继续在系统软件领域大展拳脚。

2 *** 作系统
*** 作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互 *** 作界面的系统软件的集合。 *** 作系统是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、 *** 作网络与管理文件系统等基本任务。
按应用领域划分主要有三种:桌面 *** 作系统、服务器 *** 作系统和嵌入式 *** 作系统。

3 嵌入式
提到嵌入式,有3个概念需要区分清楚:嵌入式系统、嵌入式计算机系统、嵌入式 *** 作系统。这3个概念某种意义上存在着依次包含的关系。
所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,嵌入式系统是指用于控制、监视或者辅助 *** 作机器和设备的装置。
它装配一种专用的计算机系统(即嵌入式计算机系统)作为该装置或设备的一部分,这个计算机系统由硬件层、中间层、系统软件层和应用软件层组成。
(1)硬件层包含嵌入式微处理器、存储器、通用设备接口、I/O接口、时钟电路等装置;
(2)中间层将系统上层软件与底层硬件分离开来,使系统的底层驱动程序与硬件无关,该层一般包含相关底层硬件的初始化、数据的输入/输出 *** 作和硬件设备的配置功能;
(3)系统软件层通常指该计算机系统的 *** 作系统,负责全部软、硬件资源的分配、任务调度,控制、协调并发活动,提供文件接口或图形接口等;
(4)应用软件层则为最上层的设备管理应用,通常它与 *** 作系统一并固化在ROM中。

4 嵌入式微处理器arm7,arm9,arm11
ARM系列处理器是英国ARM公司设计的主流嵌入式处理器,处理器结构体系定义了指令集、编程模式和存储器I/O接口。
ARM7:小型、快速、低能耗、集成式RISC内核,用于移动通信;
ARM9:采用了更多的晶体管,增加时钟频率和减少指令执行周期,能够达到两倍以上于ARM7处理器的处理能力;
ARM11:采用8级流水线组成,可以比5级流水线的ARM9达到更高的运行频率。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13297853.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-10
下一篇 2023-07-10

发表评论

登录后才能评论

评论列表(0条)

保存