物联网相关的嵌入式操作系统

非我原创!事先声明!

微处理器广泛应用在各行各业,如各式家电、工业自动化,即时控制、资料采集等领域,为能够满足工控所需的即时控制、快速回应等需求,因此微处理器大多搭载嵌入式操作系统进行运作。那么比较常见或者用的较多的嵌入式系统有哪些呢?这里老羊快跑摘抄了一些比较流行和有前景的系统和大家分享。

1.Contiki

Contiki是一个适用于有内存的嵌入式系统的开源的、高可移植的、支持网络的多任务操作系统。包括一个多任务核心、TCP/IP 堆栈、程序集以及低能耗的无线通讯堆栈。

       Contiki是采用 C 语言开发的非常小型的嵌入式操作系统,运行只需要几K的内存。Contiki 是一个小型的,开源的,极易移植的多任务电脑操作系统。它专门设计以适用于一系列的内存受限的网络系统,包括从8位电脑到微型控制器的嵌入系统,只需几kilobyte的代码和几百字节的内存就能提供多任务环境和内建TCP/IP支持。

 

2.LwIP

LwIPLight Weight (轻型)IP协议,有无操作系统的支持都可以运行。LwIP实现的重点是在保持TCP协议主要功能的基础上减少对RAM的占用,它只需十几KBRAM40K左右的ROM就可以运行,这使LwIP协议栈适合在低端的嵌入式系统中使用。

lwIP协议栈主要关注的是怎么样减少内存的使用和代码的大小,这样就可以让lwIP适用于资源有限的小型平台例如嵌入式系统。为了简化处理过程和内存要求,lwIPAPI进行了裁减,可以不需要复制一些数据。

 

3.FREERTOS

FreeRTOS是一个迷你操作系统内核的小型嵌入式系统。作为一个轻量级的操作系统,功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能等,可基本满足较小系统的需要。

由于RTOS需占用一定的系统资源(尤其是RAM资源),只有μC/OS-IIembOSsalvoFreeRTOS等少数实时操作系统能在小RAM单片机上运行。相对μC/OS-IIembOS等商业操作系统,FreeRTOS操作系统是完全免费的操作系统,具有源码公开、可移植、可裁减、调度策略灵活的特点,可以方便地移植到各种单片机上运行。

 

4.mbed OS

一款基于ARM Cortex-M处理器的设备所设计的免费操作系统,配有安全、通讯和设备管理模块,支持低功率智能蓝牙标准、2G3GCDMA通信技术、ThreadWi-Fi802.15.4/6LoWPANTLS/DTLSCoAPHTTPMQTT以及轻量级的M2M。而只需 32-64kKB RAM256KB闪存的配置,适合在小设备上运行。

 

5.emOS

embOS是一个优先级控制的多任务系统,是专门为各种微控制器应用于实时系统应用的嵌入式操作系统.是一个具有最小RAMROM占用的、高速的、多功能的高性能工具。

贯穿embOS的整个开发过程,微控制器有限的资源一直是开发者所顾忌的。五年来,该RTOS的内部结构已经被优化为不同客户的不同应用中,以满足工业需要。对不同微控制器的完全源码,使开发者很方便用实时操作系统构建实时程序。embOS是高度模块化的,只有需要的函数才被调用,占用的ROM非常小。最小的内存占用:1KB ROM,30字节RAM;由于提供源码文件,你可以用embOS灵活定制系统以满足实际需求。任务之间可以通过旗语、邮箱和事件安全便利地通讯。

 

6.μC/OS-II

uC/OS II(Micro ControlOperation System Two) 是一个可以基于ROM运行的、可裁减的、抢占式、实时多任务内核,具有高度可移植性,特别适合于微处理器和控制器,是和很多商业操作系统性能相当的实时操作系统(RTOS)

为了提供最好的移植性能,uC/OS II最大程度上使用ANSI C语言进行开发,并且已经移植到近40多种处理器体系上,涵盖了从8位到64位各种CPU(包括DSP) uC/OS II可以简单的视为一个多任务调度器,在这个任务调度器之上完善并添加了和多任务操作系统相关的系统服务,如信号量、邮箱等。其主要特点有公开源代码,代码结构清晰明了,注释详尽,组织有条理,可移植性好,可裁剪,可固化。内核属于抢占式,最多可以管理60个任务。从1992年开始,由于高度可靠性、移植性和安全性,uC/OS II已经广泛使用在从照相机到航空电子产品的各种应用中。

 

7.TinyOS

TinyOSUC Berkeley(加州大学伯克利分校)开发的开放源代码操作系统,专为嵌入式无线传感网络设计,操作系统基于构件(component-based)的架构使得快速的更新成为可能,而这又减小了受传感网络存储器限制的代码长度。

TinyOS的构件包括网络协议、分布式服务器、传感器驱动及数据识别工具。其良好的电源管理源于事件驱动执行模型,该模型也允许时序安排具有灵活性。TinyOS已被应用于多个平台和感应板中。

 

8.QNX

QNX是由加拿大QSSL公司(QNX Software System Ltd.)开发的分布式实时操作系统。该操作系统既能运行于以Intel X86PentiumCPU为核心硬件环境下,也能运行于以PowerPCMIPSCPU为核心的硬件环境。QNX操作系统符合POSIX基本标准和实时标准,使其应用可以方便的进行移植。

 

9.OpenWRT

OpenWRT可以被描述为一个嵌入式的 Linux 发行版,(主流路由器固件有 dd-wrt,tomato,openwrt三类)而不是试图建立一个单一的、静态的系统。OpenWrt的包管理提供了一个完全可写的文件系统,从应用程序供应商提供的选择和配置,并允许您自定义的设备,以适应任何应用程序。

对于开发人员,OpenWrt是使用框架来构建应用程序,而无需建立一个完整的固件来支持;对于用户来说,这意味着其拥有完全定制的能力,可以用前所未有的方式使用该设备。

 

老羊快跑(公众号)推荐大家重点关注Contiki(很有前景)μC/OS-II (易学易懂,对理解操作系统原理很有帮助)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值