嵌入式开发为什么基于linux环境下?

2024-12-15 01:00:04
推荐回答(3个)
回答1:

嵌入式开发基于linux环境下,提供原代码是为了编译生成自己的linux内核。

嵌入式的系统特点:

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

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

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

4、操作方便、简单、提供友好的图形GUI和图形界面,追求易学易用。提供强大的网络功能,支持TCP/IP协议及其他协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。

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

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

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

8、嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。

编码的种类:

编码(Encoding)在认知上是解释传入的刺激的一种基本知觉的过程。技术上来说,这是一个复杂的、多阶段的转换过程,从较为客观的感觉输入(例如光、声)到主观上有意义的体验。

1、字符编码(Character encoding)是一套法则,使用该法则能够对自然语言的字符的一个集合(如字母表或音节表),与其他东西的一个集合(如号码或电脉冲)进行配对。

2、文字编码(Text encoding)使用一种标记语言来标记一篇文字的结构和其他特征,以方便计算机进行处理。

3、语义编码(Semantics encoding),以正式语言乙对正式语言甲进行语义编码,即是使用语言乙表达语言甲所有的词汇(如程序或说明)的一种方法。

4、电子编码(Electronic encoding)是将一个信号转换成为一个代码,这种代码是被优化过的以利于传输或存储。转换工作通常由一个编解码器完成。

5、PCM 脉冲编码调制是Pulse Code Modulation的缩写。(又叫脉冲编码调制):数字通信的编码方式之一。主要过程是将话音、图像等模拟信号每隔一定时间进行取样,使其离散化,同时将抽样值按分层单位四舍五入取整量化,同时将抽样值按一组二进制码来表示抽样脉冲的幅值。

6、神经编码(Neural encoding)是指信息在神经元中被如何描绘的方法。

7、记忆编码(Memory encoding)是把感觉转换成记忆的过程。

8、加密(Encryption)是为了保密而对信息进行转换的过程。

9、译码(Transcoding)是将编码从一种格式转换到另一种格式的过程。

回答2:

关于这个问题,可以换个方式来表述,就好比嵌入式开发是否一定需要装虚拟机并且安装linux系统这类的思考。当然回答是否定的,在windows下也能学习开发,所以不一定要安装linux;

但是,由于嵌入式产品是基于linux内核开发的,所以在开发初期为了方便,应该有一个基本的开发环境,这也是为什么要安装linux操作系统的原因了;

而为什么要虚拟机,是出于生活工作习惯了桌面的操作系统,并且不得不肯定的是windows操作系统提供了很多用户体验很高的应用程序,所以,在生活的同时,工作中,学习里,需要用linux操作系统进行开发,就直接在windows上安装虚拟机即可;

还有一点就是,开发过程中,介于跨平台的性质,很多产品也是运行在windows下的,所以也需要进行交叉编译;

综上所述,在linux操作系统进行学习开发是明智的选择。

回答3:

借 ockrider 的话说:嵌入式不仅仅是基于linux环境的平台,也可以基于wince,symbian,IOS等等。只是linux用得可能广泛一些而已,所以lz听得也多些。
所谓,linux提供开放源代码指的是你可以到网上下载linux Kernel 自己修改,配置,编译生成自己的linux内核。 也可以免费用linux来进行项目开发, 但是要发布自己的linux内核版本则须遵守相关规定。至于什么规定呢,如果你有兴趣研究linux 自然就会知道了。因为很多内核代码前面一段注释都有写。 呵呵