0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何选择您的嵌入式系统操作系统:操作系统特性

贾伟刚 来源:hucc 作者:hucc 2022-07-14 08:17 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Costs and the business aspects of building products are key criteria, but attributes like available libraries, security, and maintainability also play an essential role.

嵌入式系统开发人员如今可以使用范围广泛的操作系统。当然,最直接的操作系统就是没有操作系统!然而,当今的许多系统都是复杂的连接系统,可能需要操作系统。需要时,开发人员通常会寻求使用实时操作系统 (RTOS) 或 Linux 来帮助他们管理复杂性。不幸的是,如何在裸机、RTOS 或 Linux 之间进行选择并不总是很明确。每个选项都有其优点和缺点。

这篇文章将探讨您在选择操作系统时应考虑的系统特性。然后在下一篇文章中,我们将介绍何时最适合使用每个操作系统。

产品的生命周期成本

为您的嵌入式系统选择操作系统首先要了解您的产品的生命周期成本和要求。需要在产品的物料清单 (BOM) 成本和软件维护成本之间进行权衡。例如,使用 Linux 的嵌入式系统更容易利用开源软件并找到可以编写系统软件的开发人员。但是,基于 Linux 的系统比基于微控制器的系统具有更复杂的硬件要求,并且可能具有更高的 BOM 成本。基于微控制器的系统成本可能较低,但能够成功设计和维护这些系统的开发人员也较少。

设计人员需要权衡硬件和软件成本,以确定他们的产品使用可以运行 Linux 的硬件是否有意义,或者是否更适合使用更便宜且 CPU 密集度更低的解决方案。

要考虑的物理特性

说到硬件功能和要求,在选择嵌入式操作系统时,检查硬件选择的物理特性也是必不可少的。应考虑的微处理器或微控制器的物理因素包括:

外围功能集

CPU时钟速度

可用的闪存

可用内存

硬件对您的系统施加的物理限制可能会立即限制您可以使用哪些选项。例如,运行嵌入式 Linux 通常需要处理器包含内存管理单元 (MMU)。不幸的是,微控制器没有 MMU。因此,要运行 Linux,设计人员至少需要 Cortex-A 范围内的应用处理器,而不是 Cortex-M 系列中的微控制器(尽管情况变化很快,有人可能拥有具有 MMU 和合理时钟速率的微控制器)。

要运行嵌入式 Linux,硬件还必须具有至少 8 GB 的存储空间、16 GB 的 RAM 和 8 – 16 MB 的内部闪存存储空间。像 Linux 这样的内核也可能需要至少 500 MHz 的处理器。这些比运行 RTOS 所需的要高得多,后者至少需要 4 kB 的 RAM、64 kB 的闪存和运行在 24 MHz 的 CPU。

实时性能

我从经验中知道,探索裸机、RTOS 和基于 Linux 的系统之间的实时性能特征是一个烫手山芋。专注于基于微控制器的实时系统的工程师经常会告诉您,您无法从 Linux 系统中获得实际的实时性能。Linux 工程师会告诉你这不是真的。有实时补丁,它提供了实际的实时行为。从那里开始,争论通常会变得激烈。

无论您站在哪一边,都必须查看实时要求并在选择操作系统时使用它们。评估系统需要的确定性,并根据这些需求评估您的操作系统。我已经看到了运行良好的 Linux 实时版本。其他没有。没有普遍正确的答案,只有适合您的应用的答案。

软件库集成

使用裸机、RTOS 或 Linux 之间的显着差异之一是开发人员可用的软件库的可用性和集成程度。在裸机空间中,您只能靠自己。您要么从头开始编写软件,要么自己集成第三方库。另一方面,RTOS 将附带一套已经与 RTOS 集成的库。例如,可能会发现循环缓冲区、内存管理工具、文件系统等。更多的库可用和集成,但可能仍然需要自己做一些工作。

当您查看 Linux 时,感觉就像开发人员拥有几乎无限的可用库,并且已经与系统集成。嵌入式 Linux 最具吸引力和增值的特性是软件库的可用性和集成。开发人员可以使用一个整体的操作系统。这很强大,但也有潜在的危险。

不要忘记安全性

如今,许多设计人员正在构建必须具有安全解决方案的连接系统。操作系统在安全解决方案中发挥着重要作用。例如,如果在 Linux 内核使用的标准库中发现漏洞,则在修补之前的每个 Linux 设备都有该漏洞。裸机或基于 RTOS 的系统很可能不会有同样的漏洞。特定的操作系统比其他操作系统更容易成为黑客的目标,因为他们可以使用工具集来破解这些设备。例如,我已经将使用 RTOS 的嵌入式系统直接放到互联网上而没有受到保护,并且它们使用了数周而没有受到损害。我曾经把一个基于 Linux 的系统放到互联网上,它在 48 小时内就被黑客入侵并成为中国僵尸网络的一部分。在 Linux 系统防御中,

结论

开发人员在选择操作系统时应考虑许多特性。第一个特征更多地与成本和构建产品的业务方面有关。然而,更重要的属性,如可用库、安全性、可维护性等,也起着至关重要的作用。那么您应该使用哪种操作系统以及在什么情况下使用呢?在下一篇文章中,我们将探讨这个问题并提供有关在何处使用裸机、RTOS 和 Linux 的指南。

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20156

    浏览量

    328980
  • 操作系统
    +关注

    关注

    37

    文章

    7329

    浏览量

    128653
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    什么是嵌入式操作系统

    要理解嵌入式操作系统(Embedded Operating System,简称 RTOS/EOS),我们可以从本质定义→核心区别→实际作用→典型特征→嵌入式开发场景适配,五个维度来拆解, 一
    发表于 12-09 10:33

    单片机的操作系统

    单片机操作系统主要分为实时操作系统(RTOS)和嵌入式操作系统两类,以下是常见选择: 实时操作系统
    发表于 11-14 06:18

    嵌入式实时操作系统的特点

    实时嵌入式操作系统(Real-Time Embedded Operating System)是专门设计用于嵌入式系统的实时操作系统
    发表于 11-13 06:30

    如何选择合适的实时操作系统

    选择合适的实时操作系统(RTOS,Real-Time Operating System)可能会影响你在不同行业的职业发展路径。
    的头像 发表于 09-09 14:47 809次阅读

    树莓派操作系统:版本、特性及设置完整指南!

    桌面环境的版本和轻量级、仅用于命令行的最小安装版本。该操作系统设计高效且资源友好,是树莓派设备的理想选择。树莓派操作系统的优势√轻量高效该操作系统设计精简,占用资源
    的头像 发表于 07-28 18:26 843次阅读
    树莓派<b class='flag-5'>操作系统</b>:版本、<b class='flag-5'>特性</b>及设置完整指南!

    嵌入式开发,如何选择适合的系统

    嵌入式ARM开发中,面对多种操作系统选择,如何做出最适合项目的决策?本文将为梳理常见系统特性
    的头像 发表于 05-20 11:32 911次阅读
    <b class='flag-5'>嵌入式</b>开发,如何<b class='flag-5'>选择</b>适合的<b class='flag-5'>系统</b>?

    RT-Thread嵌入式操作系统专业培训班-深圳站重磅开启!

    RT-Thread官方将在深圳举办为期三天的嵌入式操作系统专业培训班!本次培训将深入讲解RT-Thread嵌入式实时操作系统的核心技术与实战应用,助力开发者快速掌握RTOS开发精髓。无
    的头像 发表于 04-11 18:18 654次阅读
    RT-Thread<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>专业培训班-深圳站重磅开启!

    RT-Thread嵌入式操作系统专业培训班来上海啦!

    RT-Thread官方将在上海(RT-Thread大本营)发起为期三天的嵌入式操作系统专业培训班!本次培训将会深入讲解RT-Thread嵌入式实时操作系统的核心概念、实战技巧和应用场景
    的头像 发表于 02-27 17:27 829次阅读
    RT-Thread<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>专业培训班来上海啦!

    鸿道Intewell操作系统的Linux实时拓展方案

    鸿道Intewell操作系统是科东软件自主研发的新型工业实时操作系统,历经30多年研发积累,采用业界领先的微内核架构,具备高实时、高安全及强扩展的特性,是目前国内唯一通过汽车、工业控制、医疗仪器、轨道交通四项功能安全认证的
    的头像 发表于 02-27 10:08 624次阅读
    鸿道Intewell<b class='flag-5'>操作系统</b>的Linux实时拓展方案

    RT-Thread嵌入式操作系统专业培训班登陆郑州!

    RT-Thread官方将在河南-郑州发起为期三天的嵌入式操作系统专业培训班!本次培训将深入讲解RT-Thread嵌入式实时操作系统的核心概念、实战技巧和应用场景。无论您是刚接触
    的头像 发表于 02-12 18:28 721次阅读
    RT-Thread<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>专业培训班登陆郑州!

    国产银河麒麟操作系统V10和星光麒麟V1.0操作系统如何选择?

    国产银河麒麟操作系统和星光麒麟操作系统都是由中国电子旗下科技企业麒麟软件有限公司(简称“麒麟软件”)开发的国产自主可控的操作系统。麒麟软件介绍:麒麟软件以安全可信操作系统技术为核心,面
    的头像 发表于 01-24 09:14 4252次阅读
    国产银河麒麟<b class='flag-5'>操作系统</b>V10和星光麒麟V1.0<b class='flag-5'>操作系统</b>如何<b class='flag-5'>选择</b>?

    云服务器选择什么操作系统好?

    云服务器选择什么操作系统好?选择云服务器操作系统需考虑业务需求、兼容性、安全性、易用性及成本。Linux系统如CentOS、Ubuntu和D
    的头像 发表于 01-21 10:56 746次阅读

    2025嵌入式操作系统专业培训班正式启动!

    RT-Thread官方将在河南-郑州发起为期三天的嵌入式操作系统专业培训班!本次培训将会深入讲解RT-Thread嵌入式实时操作系统的核心概念、实战技巧和应用场景!无论企业团队/工程师
    的头像 发表于 01-09 18:46 1370次阅读
    2025<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>专业培训班正式启动!

    ARM嵌入式实时操作系统比较

    嵌入式系统领域,实时操作系统(RTOS)是确保任务按时完成的关键技术。ARM架构因其低功耗、高性能的特点,在嵌入式系统中得到了广泛应用。本
    的头像 发表于 12-28 09:15 2451次阅读

    deepin操作系统介绍

    希望从自己的能力和对桌面操作系统的理解,能给 Linux 的用户与开发者更多的选择。我们也相信 deepin 能够得到更多用户的认可与喜爱,成为开源世界的最佳选择。  一、 deepin 操作
    的头像 发表于 12-23 09:08 3233次阅读
    deepin<b class='flag-5'>操作系统</b>介绍