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

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

3天内不再提示

如何选择正确的嵌入式操作系统类型

jf_78858299 来源:CSDN 作者:CSDN 2023-04-13 15:28 次阅读

嵌入式系统的前期设计过程中,你必须决定所采用的嵌入式操作系统的类型。这是一个很重要的决定,因为这会影响到工程后期的发布以及软件的维护。本文中我将概括四种通用体系和一些值得考虑的观点。

没有标准的操作系统很多

嵌入式操作系统

都是非标准的操作系统。对于针对比较狭窄领域,尤其是使用带有非常有限资源的微控制器来说,这是一个很正常的现象。操作系统中最基本的操作是建立一个带有能够处理关键实时事件的中断服务程序(ISR)的简单后台循环代码,过程非常简单,但却是相当出色。

然而,当项目增大,很多问题就随之产生。后台循环所需要的响应时间取决于循环次数最多所用的时间。当循环次数增多,所需要的时间就会增多,可预测的方面就减少。此时有用的方法就是将这些后台循环分成很多小部分,但这可能导致产生更复杂的系统而难于调试和维护。如果系统中有多个开发人员,这一情况会变成更加恶化。

没有优先级别的操作系统

一个简单的、没有优先级别的操作系统可以在一个大型后台循环中增添一些规则。这一方法对于中等大小的工程最为合适。

一个没有优先级别的操作系统可以将程序中的后台工作转化为可以预先处理的工作,而不需要将原来的程序分割成多个块。一个不存在优先级别的系统一般相对比较很容易的执行、调试,并且,在设计过程中不存在很多如资源共享的复杂操作。

这一系统的主要不足之处是开发人员必须时刻保护决定将CPU转交给其他任务的时间。如果转交时间延迟,即使只有一次,也会对整个操作系统的响应导致崩溃。 ]

具备优先级别的操作系统

一个完整的具备优先级别的操作系统可以处理包含多个相互竞争的任务和多个软件开发者。具备优先级别的操作系统在外部事件(比如中断,时间等)和操作系统调用之间转换。

任务根据它们之间相对的优先级别和分配的时间周期进行安排,这就可以让你从决定转换任务的时间之中解放出来,同时,也减少了任务之间的相互冲突。

这一特性带来了很多外在的复杂性。在优先级别的系统中的任务转换会使调试带来更多的困难,而且需要任务之间的相互通讯的外部机制。

然而,这一外部机制带来了新的问题,比如任务之间的死锁冒险。程序员必须学会使用新的技术和规则来处理这些问题,否则将会导致很多臭虫和不可靠的代码。

更改的桌面型操作系统

更改的桌面型操作系统,比如Windows,Linux,或者DOS,都是一些流行的嵌入式装置,特别是基于用户界面的系统。这些操作系统非常能吸收人,因为它们功能特别完整,并且提供了开发人员一个熟悉的开发环境。

然而,这些系统却通常会出现资源危机,运行的控制器的性能也非常受限制,从而不能满足执行特定环境下的实时性能限制。

嵌入式操作系统的特定与标准的桌面型环境有很多不相同的地方,所以开发一个嵌入式产品并不是简单地遵循开发一个标准的桌面程序的方法那么的直接。

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

    关注

    48

    文章

    7469

    浏览量

    150915
  • 操作系统
    +关注

    关注

    37

    文章

    6703

    浏览量

    123154
  • 代码
    +关注

    关注

    30

    文章

    4730

    浏览量

    68264
  • ISR
    ISR
    +关注

    关注

    0

    文章

    38

    浏览量

    14394
收藏 人收藏

    评论

    相关推荐

    嵌入式操作系统怎么选择

    嵌入式操作系统是ARM CPU的软件基础,从8位/16位单片机发展到以arm CPU核为代表的32位嵌入式处理器,嵌入式操作系统将替代传统的
    发表于 04-07 07:13

    嵌入式操作系统如何选择

    支持ARM的操作系统有哪些呢?嵌入式操作系统如何选择呢?
    发表于 03-04 13:13

    嵌入式实时操作系统教程

    嵌入式实时操作系统教程:以VRTX为对象详细介绍了嵌入式实时操作系统的原理和应用,特别是第一部分关于嵌入式实时
    发表于 04-19 21:55 44次下载
    <b class='flag-5'>嵌入式</b>实时<b class='flag-5'>操作系统</b>教程

    嵌入式实时操作系统COS一Ⅱ与VxWORKs

    本文通过tLC/OS—II与VxWORKs两种嵌入式操作系统的对比,介绍了嵌入式操作系统的特征,以及在项目实施时如何选择合适的
    发表于 12-11 16:11 31次下载

    嵌入式操作系统的网络加载实现

      在复杂的应用系统中通常都需要嵌入式操作系统的支持,这样嵌入式操作系统镜像文件的尺寸往往就会变得比较大。可以
    发表于 08-25 14:02 1249次阅读
    <b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>的网络加载实现

    嵌入式操作系统-李春杰

    主要内容: 嵌入式操作系统概述 典型嵌入式操作系统介绍 嵌入式操作系统选型
    发表于 01-04 18:30 0次下载

    关于怎样选择嵌入式操作系统的浅析

    嵌入式操作系统是ARM CPU的软件基础,从8位/16位单片机发 展到以ARM CPU核为代表的32位嵌入式处理器,嵌入式操作系统将替代传统
    发表于 10-18 17:02 0次下载

    嵌入式操作系统是什么_嵌入式操作系统有哪些

    嵌入式操作系统(Embedded OperatingSystem,简称:EOS)是指用于嵌入式系统操作系统
    发表于 04-08 14:36 2.1w次阅读

    该如何正确选择嵌入式操作系统

    嵌入式操作系统是ARM CPU的软件基础,从8位/16位单片机发 展到以ARM CPU核为代表的32位嵌入式处理器,嵌入式操作系统将替代传统
    发表于 07-01 16:53 2770次阅读

    如何为嵌入式应用程序选择操作系统

    在台式计算机上,操作系统(OS)的选择很大程度上取决于口味-Windows,Apple,Linux。选择相对较少。对于嵌入式系统,问题要复杂
    发表于 05-13 10:17 1041次阅读

    嵌入式操作系统如何应用_嵌入式操作系统的组成

    本文首先介绍了入操作系统的特点,其次阐述了嵌入式操作系统的应用,最后介绍了嵌入式操作系统的组成
    发表于 09-01 16:36 3568次阅读

    什么是嵌入式操作系统 常见的嵌入式系统有哪些

    、INTEGRITY、OSE、C ExecuTIve  什么是嵌入式操作系统 嵌入式操作系统是一种支持嵌入式
    发表于 10-21 09:36 27次下载
    什么是<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b> 常见的<b class='flag-5'>嵌入式</b><b class='flag-5'>系统</b>有哪些

    嵌入式操作系统

    是:构建一个易于编程的虚拟平台; 系统资源的管理者。2、嵌入式操作系统的分类1. 按系统类型分商业化系统
    发表于 10-21 11:21 10次下载
    <b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>

    嵌入式操作系统

    嵌入式操作系统一、嵌入式操作系统概述1.1 嵌入式操作系统的特点1.2
    发表于 11-03 18:36 46次下载
    <b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>

    什么是嵌入式操作系统

    嵌入式操作系统是一种专门的操作系统(OS),旨在为非计算机的设备执行特定任务。嵌入式操作系统的主要工作是运行允许设备完成其工作的代码。
    的头像 发表于 12-23 15:33 7632次阅读
    什么是<b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>?