原创 嵌入式开发:如何选择嵌入式操作系统_嵌入式开发一般采用什么方式其中宿主机一般是指

2023-03-31 21:42:00

 

1.嵌入式开发教程

原标题:嵌入式开发:如何选择嵌入式操作系统几乎所有现代嵌入式系统都是使用某种操作系统(OS)构建的这意味着选择该操作系统往往发生在设计过程的早期许多嵌入式开发人员认为这一选择过程具有挑战性如何为你的特定应用程序选择操作系统?。

2.嵌入式开发一般采用什么方式?

选择标准操作系统的选择是由你可能会问自己或别人的一系列问题决定的很容易想象这都是关于操作系统的技术问题,事实上,这些问题主导了整个过程然而,需要考虑商业因素(如成本),也不能忽视个人体验等因素1.技术因素。

3.嵌入式开发的一般流程

操作系统的技术方面在选择过程中占主导地位在考虑其他参数之前,需要完全弄清楚这些问题你的应用程序是实时的吗?在实时应用程序中,响应时间至关重要它可能不够快,但需要在可预测的(确定性的)时间内对外部事件做出响应,它必须足够快(或慢)。

4.嵌入式开发的基本流程

对操作系统选择的影响是,实时操作系统(RTOS)最有可能是正确的选择,因为它是专门为适应应用程序的要求而设计的Linux本质上不是实时的,但是实时扩展可能使它成为一个可行的选择内存大小有限吗?过去,嵌入式开发系统的内存容量通常非常小,可能只有几k。

5.嵌入式实操

如今,虽然微控制器的片内存储器可能仍有很大限制,但提供的内存容量要大得多在设计完成后,给系统增加更多的内存并不容易更重量级的操作系统,如Linux,非常需要内存,所以空间限制是一个真正的挑战大多数RTOS产品要轻得多,而且很可能是可伸缩的,这意味着内存只用于实际需要的功能。

6.嵌入式开发怎么入门

CPU功率有限吗?CPU的能力是衡量它在给定时间内可以做多少工作——可以执行多少指令大多数嵌入式设计的CPU都有足够的能力,但可能没有多余的能力任何一种OS都是开销;它的执行使用CPU的能力,但不直接影响应用程序的功能。

7.嵌入式开发入门教程

将这种开销保持在最低水平通常很重要操作系统的效率差异很大,但是RTOS的产品倾向于最节约地使用CPU

8.嵌入式的开发流程

设备功耗是个问题吗?嵌入式系统的功耗越来越成为优先考虑的问题这通常用于延长电池寿命,但也可能是出于环境考虑历史上,功耗被认为是一个纯粹的硬件问题现在人们认识到,软件可以大大有助于优化能源的使用简单地说,在嵌入式开发中,代码越小,需要的内存就越少,这样就节省了能量。

9.嵌入式开发快速入门

类似地,代码的效率对必要的CPU能力有影响RTOS很可能是紧凑和高效的许多系统都包括电源管理功能这可能只是低功耗模式(如睡眠和挂起)的可用性,但更高级的电源管理正变得越来越普遍这可能包括外设的选择性断电以及CPU电压和时钟频率的控制。

10.嵌入式开发实战

Linux和许多RTOS产品都支持电源管理你的系统有模糊的或定制的外围设备吗?嵌入式应用中最具挑战性的一些代码是与外围设备的接口使用操作系统时,这通常封装在驱动程序中大多数RTOSes都提供了大量标准设备的驱动程序。

Linux有更多的功能,包括对许多不太知名的硬件的支持如果你有自定义外设,显然没有支持将是可用的,所以将需要一个自定义驱动程序RTOS供应商通常在这方面提供良好的支持Linux驱动程序开发专业知识是相当普遍的。

你有内存管理单元(MMU)吗?大多数高端嵌入式开发CPU都有一个MMU,至少作为一个选项这允许重新映射和/或保护存储区域MMU对于部署Linux是必不可少的;如果没有MMU可用,Linux不是一个选项RTOSes通常不需要MMU,但是如果可以的话,许多人可以通过促进“轻量级进程模型”(也称为“线程保护模式”)来利用MMU。

应用程序安全性是一个问题吗?一些嵌入式应用具有安全意识——必须保护代码免受外部干扰这可以看作是保护每个任务不受其他任务的影响Linux等使用的进程模型使用MMU是增加安全性的一个非常好的方法如果RTOS可以利用MMU,如上所述,这可以用更少的开销提供几乎同样多的安全性。

你的应用需要安全认证吗?在许多行业——如航空航天、医疗、汽车和工业——都有安全认证计划获得认证的过程既复杂又昂贵通常需要整个应用程序的所有源代码,包括操作系统因此,拥有操作系统源代码是必不可少的;源代码并不总是可用的。

在某种程度上,要认证的代码的大小会影响过程的成本,因此操作系统越小越好在嵌入式开发中,通常不可能只对操作系统进行认证,而是对整个应用程序进行评估但是,一些RTOS供应商可以提供“预认证包”,其中提供了操作系统所需的大量初始文档。

当然,选择在类似应用领域有使用和认证“记录”的操作系统也是明智的

2.商业因素虽然工程师喜欢嵌入式软件开发的技术挑战,但这类项目也要考虑商业因素一切都归结于钱实施操作系统需要资金,但却可以获得:l 内部开发显然要花钱l 一件商品有一个价格l 开源不是“免费的”存在实施成本和持续维护。

商业操作系统产品有多种商业模式例如,可能会有一个低的起始付款和每单位装运的持续版税,或者可能会有一个较大的前期费用,没有持续的版税可接受的型号取决于售价和预计的出货量3.其他考虑操作系统选择过程中容易被忽略的一个方面是利用过去的经验。

嵌入式开发团队可能以前使用过一个或多个操作系统,这可能会产生重大影响例如,获取操作系统API的详细知识需要一些时间,因此能够重用这些知识是一个很大的好处如果API是专有的,这可能是一个指向特定产品的强指针。

如果API是一个标准,比如POSIX,你仍然可以选择当然,使用混乱和不灵活的API的糟糕体验可能会产生相反的效果!与特定供应商合作的经验是另一个因素他们的技术支持好吗?文档符合标准吗?源代码是否可用并得到了很好的评论?。

多核系统和操作系统选择使用多核设计实现嵌入式系统变得越来越普遍从软件的角度来看,有两种多核系统:l 对称多处理(SMP),其中所有内核都是相同的,一个操作系统运行在所有内核上l 不对称多处理(AMP),内核不一定完全相同,每个内核都运行自己的操作系统。

对于SMP系统,操作系统的选择是按照本文到目前为止所描述的方式进行的,另外一个因素是操作系统必须支持SMP功能Linux有SMP形式,许多RTOS产品也提供它作为一个选项对于AMP系统,需要根据其具体要求,使用上述方法为每个内核选择操作系统。

结论总的来说,可以看出,对于选择嵌入式操作系统的问题,没有真正简单的答案有许多相互关联的因素重要的是,不仅要关注技术方面的考虑,还要考虑商业问题和过去的经验对于台式电脑,有大约四种操作系统可供选择在嵌入式开发领域,至少有几十个。

这是为什么呢?简单地说,台式电脑都大同小异,但每个嵌入式系统都不一样这种差异既是技术上的,也是商业上的因此需要详细的选择过程返回搜狐,查看更多责任编辑:


以上就是关于《原创 嵌入式开发:如何选择嵌入式操作系统_嵌入式开发一般采用什么方式其中宿主机一般是指》的全部内容,本文网址:https://www.7ca.cn/baike/10610.shtml,如对您有帮助可以分享给好友,谢谢。
标签:
声明

排行榜