近些年来,随着嵌入式系统飞速的发展,嵌入式实时操作系统广泛地应用在制造工业、过程控制、通讯、仪器仪表、汽车、船舶、航空航天、军事、装备、消费类产 品等方面。今天嵌入式系统带来的工业年产值超过了1万亿美元。当前嵌入式操作系统有数百种,比较流行的有Nucleus Plus,QNX,Lynx OS,Psos,VRTX,VXWorks,Windows CE等。它们各有特色,用户可以根据自身的软硬件环境的要求,选择合适的操作系统。本文介绍了实时多任务嵌入式操作系统Nucleus PLUS。

(一)Nucleus内核

Nucleus PLUS 是为实时嵌入式应用而设计的一个抢先式多任务操作系统内核,其95%的代码是用ANSIC写成的,因此非常便于移植并能够支持大多数类型的处理器。Nucleus PLUS 的RTOS内核可支持如下类型的CPU:x86,68xxx,68HCxx,NEC V25, ColdFire, 29K,i960, MIPS, SPARClite, TI DSP, ARM6/7, StrongARM, H8/300H, SH1/2/3, PowerPC, V8xx, Tricore, Mcore, Panasonic MN10200, Tricore, Mcore等。可以说NUCLEUS+是支持CPU类型最丰富的实时多任务操作系统。

针对不同的CPU类型,Nucleus 还提供编译器、动态连接库、多任务调试器等相应的工具来配置用户的开发环境。值得提出的是ATI公司最近还发表了基于Microsoft Developers Studio的嵌入式集成开发环境-NUCLEUS EDE。从而率先将嵌入式开发工具与Microsoft的强大开发环境结合起来,提供给工程师们强大的开发手段。

(二)Nucleus PLUS的特点:

1、源代码开放

Nucleus PLUS 注释严格的C源级代码,用户能深入了解底层内核运作方式、进行 RTOS 的学习和研究、调试方便,根据需求裁剪内核、节省费用。用户完全可以控制内核而不必担心操作系统中可能的异常任务导致系统崩溃。

2、性价比高

先进的微内核 ( Micro-kernel ) 技术使得Nucleus PLUS在任务优先级安排、任务调度和切换等方面都有优势。另外,对C++语言的全面支持又使得Nucleus PLUS 的 Kernel 成为名副其实的面向对象的实时操作系统内核。然而,其价格却比较合理。所以,容易被广大的研发单位接受。

3、功能模块丰富

Nucleus PLUS 除提供功能强大的内核操作系统外,还提供种类丰富的功能模块。例如用于通讯系统的局域和广域网络模块、支持图形应用的实时化Windows 模块、支持Internet网的WEB 产品模块、工控机实时 BIOS 模块、图形用户接口以及应用软件性能分析模块等。用户可以根据自己的应用来选择和裁剪。

(三)Nucleus PLUS系统架构:

从实现角度来看,Nucleus PLUS 是一组C函数库,应用程序代码与核心函数库连接在一起,生成一个目标代码,下载到目标板的RAM中或直接烧录到目标板的ROM中执行。在典型的目标环境中,Nucleus PLUS 核心代码区一般不超过20K字节大小。

Nucleus Plus内核(Kerne1)的主要目的是管理实时多任务的竞争运行(共享CPU),为应用提供各种便利、快速响应外部事件。因此Nucleus Plus 提供实时、抢占式多任务管理、多种任务间通信和同步手段、动态和分区内存(Dynamic/Partition Memory)两种存储器管理机制。Nucleus Plus还提供定时器(Timer)来处理周期性事件和任务的睡眠和挂起超时。Nucleus Plus的系统结构如图1所示。

从Nucleus的系统结构框图可以看出线程控制是整个内核的核心,通过邮箱、队列、管道来实现任务之间的通信,通过信号量、事件组和信号实现任务间的同步。

Nucleus PLUS系统采用软件组件的形式构成以增加系统的代码清晰性、可靠性和可重用性,使系统模块化、易于维护。Nucleus PLUS由多个软件组件构成,每个组件通常由两个头文件和几个C、汇编语言源程序构成,提供清晰的外部接口,对组件的引用就是通过这些接口完成的。除了少数一些特殊情况外,不允许从外部直接访问组件内的全局变量。这种组件架构使得Nucleus PLUS的每个软件组件可以被轻松的替换和重用。

Nucleus PLUS 采用了软件组件的方法。每个组件具有单一而明确的目的,由于采用了软件组件的方法,Nucleus PLUS 各个组件非常易于替换和复用。Nucleus PLUS 的组件包括任务控制、内存管理、任务间通信、任务的同步与互斥、中断管理、定时器及I/O驱动等16个组件。

针对各种嵌入式应用,Nucleus PLUS 还提供相应的网络协议(如TCP/IP,SNMP等),以满足用户对通讯系统的开发要求。另外,可重入的文件系统、可重入的C函数库以及图形化界面等也给开发者提供了方便。

(四)Nucleus的应用领域和国内外用户

Nucleus主要应用领域在:网络、路由、桥接、Hubs、数据通讯、顶置盒、数字摄像机、ISDN、调制器、数字绘图仪、GSM、蜂窝电话、PDA、打印机、GPS、无线通讯、汽车、医疗仪器、RAID、适配卡、智能卡、安全保密、工业控制、扫描仪、煤气分析仪、游戏机、多媒体、手持产品、消费产品、局域网、广域网、导航设备、卫星通信、自动提款机、视频产品、条码机、过程控制等等。

Nucleus部分典型的用户名单:

AT&T/Lucemt, Blaupunkt, Compaq Computer, Canon, Chrysler Technologies, Dassault SA, DOD, Draper Labs, Eastman Kodak, Ford Motor Company, General Motors, General Electric, GE Medical, Goddard Space Flight Systems, Fujitsu, Harris Digital Phone, Hewlett Packard, IBM, IGT Interface Systems, Kenwood Corporation, Lucent ,Mannesmann Tally Corp, M.I.T., Motorola, NASA, NEC, Network Peripherals, Nippon Denso, MSA Baseline, Orbitel Mobile Comm, Psi Printer GmbH, Philips Semiconductor, Rockwell International, Sagem SA, Samsung Electronics, Siemens, Sony Corp, Storage Technology, Texas Instruments, Takasago Corp, Toyota, Video Lottery, Video Guide, VLSI, Westinghouse, Xircom, Zitel。

国内部分用户:

航天部204所,邮电部数据所,北京卡斯特,航空部614所,中科院沈阳自动化所,北京千网数据公司,北京凌云公司,清华大学,长沙国防科技大学,复旦大学,华北电力大学,郑州信息工程学院,烟台东方电子集团,深圳桑达,上海博达,深圳迈瑞,深圳天地通讯,铁道部大连内燃机车研究所,总参机要局,南京南瑞总公司,航天第二设计院,西安仪表,郎讯(中国)有限公司,海军计算所,恒基伟业,广州金鹏集团,杭州东方集团,福州新大陆,深圳康佳,西安东强,北京华大集成电路设计中心,广东信利集团,香港IDT,香港讯研,太原中航仪表集团,新科电子,上海中兴,上海广电,石家庄54所,总参56所,武汉邮科院,上海德理,上海贝尔,斯高柏(C-Cube)、航天部503所等等。

Nucleus PLUS简介相关推荐

  1. [精华] nucleus实时操作系统MTK手机软件系统工程和配置简介

    [精华] nucleus实时操作系统MTK手机软件系统工程和配置简介 http://www.chinaunix.net 作者:wheel  发表于:2009-02-27 15:18:33 [发表评论] ...

  2. Android MVP伴侣,Nucleus框架使用简介

    Neclues是一款基于MVP框架的Android Library, 它合理地将程序中的可视化界面和后台线程联系起来. 如果你还不了解MVP框架,请点击查看详情 框架介绍 我们在应用中使用MVP和Rx ...

  3. 孙长凯sunck_大连医科大学研究生导师简介-孙长凯

    大连医科大学研究生导师简介-孙长凯大连医科大学 免费考研网/2016-05-05 ..:: 教师详细信息::.. 教师基本信息 教师姓名孙长凯民族汉族 性别男生日1963-5-22 移动电话办公电话 ...

  4. etcd 笔记(01)— etcd 简介、特点、应用场景、常用术语、分布式 CAP 理论、分布式原理

    1. etcd 简介 etcd 官网定义: A highly-available key value store for shared configuration and service discov ...

  5. Docker学习(一)-----Docker简介与安装

    一.Docker介绍 1.1什么是docker Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源 Docker可以让开发者打包他们的应用以及依赖包到一个轻量级,可移植 ...

  6. 【Spring】框架简介

    [Spring]框架简介 Spring是什么 Spring是分层的Java SE/EE应用full-stack轻量级开源框架,以IOC(Inverse Of Control:反转控制)和AOP(Asp ...

  7. TensorRT简介

    TensorRT 介绍 引用:https://arleyzhang.github.io/articles/7f4b25ce/ 1 简介 TensorRT是一个高性能的深度学习推理(Inference) ...

  8. 谷粒商城学习笔记——第一期:项目简介

    一.项目简介 1. 项目背景 市面上有5种常见的电商模式 B2B.B2C.C2B.C2C.O2O B2B 模式(Business to Business),是指商家和商家建立的商业关系.如阿里巴巴 B ...

  9. 通俗易懂的Go协程的引入及GMP模型简介

    本文根据Golang深入理解GPM模型加之自己的理解整理而来 Go协程的引入及GMP模型 一.协程的由来 1. 单进程操作系统 2. 多线程/多进程操作系统 3. 引入协程 二.golang对协程的处 ...

最新文章

  1. Redis 核心篇:唯快不破的秘密
  2. c# 监视目录下的文件变化
  3. 风变编程python第一关脸黑怪我喽_风变编程:Python适合编程初学者学习吗?
  4. 什么时候z检验什么时候t检验?
  5. 科技论文的组织-如何写好科技论文之我见(四)
  6. HarmonyOS之常用布局PositionLayout的使用
  7. 漂浮窗口拖动杂谈(续)
  8. appium+python自动化项目实战(一):引入nose和allure框架
  9. idea连接跳板机_跳板机服务(jumpserver)
  10. CVE-2018-14418 擦出新火花
  11. 【bzoj4443】[Scoi2015]小凸玩矩阵 二分+二分图最大匹配
  12. matlab中 dataset用法,dataset中shuffle()、repeat()、batch()用法
  13. CCbot是什么梗?
  14. pscc改变图片字体大小
  15. JavaScript 教程「2」:注释、输入输出、变量
  16. 创建自己的RSS服务——debian docker TinyTinyRSS搭建
  17. ARM实验板移植,linux点阵字库的使用
  18. 给github项目贡献代码的操作流
  19. 台湾各个大学硕博论文链接,很全,有的可以全文下载。
  20. html中hover的写法,在行内css中书写伪选择器:hover

热门文章

  1. 轻松识别文字,这款Python OCR库支持超过80种语言
  2. 1259: [蓝桥杯2015初赛]三羊献瑞 C/C++
  3. 拜占庭将军问题(三)——书面协议
  4. 动力节点 SpringMVC P44-53
  5. Upload手动上传文件
  6. 如何增加自己的文章在csdn的曝光量-参考CSDN博主排名更新公告
  7. c语言 小学生数学考试软件下载,小学数学试题练习
  8. php代码编辑软件安卓,PHP代码编辑软件|Rapid PHP编辑器 v15.0 最新版
  9. 狂神css视频笔记1-15课
  10. 中国有句俗语叫“三天打鱼两天晒网”。某人从2010年1月1日起开始“三天打鱼两天晒网”,问这个人在以后的某一天中是“打鱼”还是“晒网”。用java实现程序解决问题。