开源操作系统--嵌入式微系统msOS,为小微嵌入式企业而生

2018-08-09 09:20:08 来源:EEFOCUS
标签:

2001年,作者接触了MCU51 C语言开发,心中产生了要开发一套属于自己的平台的思想。2002年,接触了手机软件,把手机软件技术,尤其是平台化思想应用于MCU51,开发了简单、易用的前后台系统“实用单片机系统”,开源推广获得成功。与嵌入式爱好者互动中升级版本。由些产生了搭建属于自己的开发平台想法,这是msOS推出前因。

 

由于实际的项目需求,使得想搭建通用平台的想法更加迫切。2011年,作者开发完成一套大功率高频感应加热设备,因软件维护复杂无法交接。因客户需求太多,需开发一系列的工控相关的产品,如传感器、驱动器、控制器,需要多人协同开发形成大系统。如何统一开发,如何继承,如何维护?放眼望去,众多平台里,竟找不到一款适合的?引起了作者的深思。


 

 

上图为嵌入式系统硬件架构的一般形式。

 

嵌入式操作系统如uC/OS-II,FreeRTOS,往往只是一个内核,需要整合很多功能,如GUI、PID等各种功能,还需要稳定性测试。

 

芯片厂家提出了一些专为自己芯片的解决方案,移植工作大,无法通用。

 

大型操作系统如Linux、Wince非实时,不适合实时类低端嵌入式方案,并且维护成本很高。

 

没有一家大公司,为小微企业开发通用的软件开发平台。

 

而小微企业人数少,新人比例高,流动性大。

 

开发产品单打独斗,人员流失后,继任者往往需要重新设计。

 

技术水平低、基础差、代码无规范、编写风格不统一,很难有效管理,无法开发稍大的系统,形不成竞争力。

 

无法统一、无法继承、无法维护。

 

小微企业已经被遗忘了,很难走出这种困境。作者结合自身的实际需求:有了为小微企业做点事情的想法。

 

在开发过程中作者发现C#是主流编程语言,开发快捷,编程风格简单优雅,架构设计合理。客户群体广泛,他们有可能会做嵌入式开发。嵌入式开发往往需要在PC端开发相关软件,同一种风格方便统一开发。从而统一编程风格:把C写成C#的样子。这样编辑器性能的提高,放弃复杂、过时的匈牙利命名法,采用简单、优雅的C#编程风格。低端嵌入式处理器的性能大幅度提高,资源相对宽裕,可以引入PC机编程思想进入嵌入式中。利用结构体把架构分为两层:应用层(App)与系统层(System),独立编程。

 

分离业务逻辑与菜单界面,由于菜单界面显示属于低速业务,业务逻辑属于高速业务,传统前后台编程混淆处理,制约了性能。所以引入RTOS实现双任务,分离业务逻辑与菜单界面。这样业务逻辑保留传统的前后台编程风格,一种消息机制的前后台系统,简单、易用。由于CMSIS架构中无设备层概念,应用层可以直接操作底层,不便于芯片级的移植,尤其是不同厂家的芯片移植。由此引入设备层概念,应用层和系统层都只能对设备操作,不能访问底层,实现芯片级移植。这样便于多人协同开发系统底层。这样整个系统架构图就出来了,如下图:
 

 

msOS简单易用的模式化编程——将小微企业的人员流动大,项目无法传承的问题一并解决。

 

msOS推出后受大了广大网友的好评,迅速在各大二三线高校得到推广,2014年10月并在清华大学第二届开源操作系统技术年会上进行了演讲推广:
 

 

引入双任务RTOS,分离高速的业务逻辑和低速的菜单界面。

 

面向对象的GUI编程代替面向过程的界面编程,实现统一高效的界面编程。

 

把C语言写成C#编程风格,简单、优雅,便于统一变量、函数的命名。

 

App结构体封装全局变量,System结构体封装系统底层接口,分离应用层    与系统底层,便于分层设计。

 

以上几点是作者对嵌入式微系统(msOS)的总结。

 

下面简单介绍一下msOS的作者:

作者:王绍伟  知名博主“凤舞天”

毕业于兰州大学电信专业,后进入中科院半导体所从事高速激光器通讯。       

2002年进入手机行业,同时基于MCU51开发了实用单片机系统(MS)并开源推广,获得广大嵌入式初学者的好评。       

2008年发明了“电阻电容电感样品本”,解决广大电子爱好者基础元器件的采购、调试、存放问题。       

2009年开发了手机开发模块及相关无线手持PDA产品,并创 立了深圳市雨滴科技有限公司。       

2011年研发大功率超高频感应加热电源,在此基础上开发了通用嵌入式开发平台:嵌入式微系统(msOS)。        

2014年嵌入式微系统应邀参加清华大学第二届开源操作系统技术年会,并出版书籍在网络及各大高校推广。       

2017年提出雨滴云屏系统,该系统基于Html5浏览器技术,让嵌入式人员只需要掌握单片机就可以开发大彩屏和各种智能操作系统的功能。

 

 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
云屏系统(msExplorer)--msOS到msExplorer的进化

云屏系统msExplorer前身是为中小企业打造的通用嵌入式开发平台—— 嵌入式微系统(msOS)。

优麒麟最新版本发布,国产开源操作系统这次还争气不

4月21日, 由国防科技大学(NUDT)、工信部软件与集成电路促进中心(CSIP)联手Canonical公司共同研发的优麒麟开源操作系统最新的LTS(为期5年的支持周期)版本16.04正式发布,除了延续Ubuntu的开源、安全以及最新的功能应用外,还在桌面体验、中文支持、关键应用等方面升级,并首次支持国际主流的ARM64架构。

嵌入式微系统msOS的出发点:应用

msOS设计的本意是为电子类设备及PLC设计的,一开始想着仿造西门子的S7-300来设计一套基于CAN通讯的分布式PLC,然而当设计了几个硬件模块之后就发现,这个需求定义超出了我的个人能力,自己的综合知识还没有上到这个层面,所以开始退而求其次,仿照普通的PLC,结合华禹工控及俊知机械的需求设计简单的嵌入式PLC,取名为msPLC-Demo

嵌入式微系统创新的裸奔双任务系统

在讨论中,“传说中的火枪手”有一句话提醒了我,他提到他自己有一套类似MS3(msOS的前身)的架构,他用了一个中断处理各种消息,而这个时候,我也在想着如何改造uC/OS-II的任务切换软中断,实现双任务,思路完全一致,他的话说明了这个方案是可行的。

嵌入式微系统的筋骨:精简uC/OS-II

这一次正式选用uC/OS-II,必须要深入理解透彻每一个细节,否则因为自己对uC/OS-II的理解不到位,尤其是任务之间的通讯等细节问题引起的缺陷可能让自己的项目失败,这是不可接受的,所以参考书籍仔细的阅读源码,然而一接触这个源码,就让我犯晕,uC/OS-II为了实现可配置、可裁减,运用了大量的宏定义,考虑到各种情况,这严重的干扰了我的阅

更多资讯
一文读懂NAND闪存

在半导体业,有非常多与接口标准、性能规格、功能特性和设计的真实可能性有关联的假设、术语和误解。因此,弄清事实很重要。本文将阐明关于NAND闪存的错误观念。

“短命”的QLC闪存大势已成,再次印证资本的贪婪本性
“短命”的QLC闪存大势已成,再次印证资本的贪婪本性

在经历了SLC、MLC、TLC的"技术降级"之后,全球消费者无奈的只能接受QLC时代的到来。闪存SLC、MLC、TLC、QLC的降级之路,充分体现出了资本的贪婪。

嵌入式技术引发的十大行业技术革命

由于资源不足及效率低下等问题,医疗行业现已成为中国乃至全球矛盾最为突出的行业,现在大家都希望能够借助智慧医疗、移动医疗、穿戴式医疗电子等技术改变现状。这些技术将简化大量数据的收集和分析工作、降低医疗监护与管理成本,并让医生和护工从繁重的简单重复性工作中解脱出来,在提升病人治疗效果的同时,降低治疗成本。

MCU相关的10大基础知识

MCU有串口外设的话,在加上电平转换芯片,如MAX232、SP3485就是RS232和RS485接口了。

探索计算机的奇妙历史
探索计算机的奇妙历史

从诺贝尔奖的揭晓到彭博社“中国间谍芯片”事件,每一天似乎都极其充实,既然是最后一天,那TechSugar小编今天就上点轻松的“菜”。给大伙说点关于计算机历史中几个有意思的故事。

Moore8直播课堂