这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » 嵌入式操作系统总结

共43条 4/5 |‹ 1 2 3 4 5 跳转至
高工
2013-10-11 15:22:18     打赏
31楼

kboot

  kboot本质上是个小型Linux操作系统,但功能却是个boot loader,何解?kboot本身提供简单的系统工具,支持档案与网络操作,可自外界取得kernel image或其它档案,进而kboot利用了kexec的机制,让Linux kernel可快速重新启动,于是具备boot loader的功能。

  kexec是一组新的系统呼叫,包含在2.6 kernel中 (视支持架构而定),搭配其user-space的工具kexec-tools,则可在既有的Linux kernel (支持kexec系统呼叫) 中加载其它的kernel (不需要有kexec支持),并给予必要之参数或档案,如kernel command line与initrd等。

  目前,kexec的硬件支持不限定x86,包含ARM与PPC都已有patch现身。那么,如此的机制到底有什么价值呢?以往的boot程序是很单纯,清一色就是boot loader加载kernel,然后跳到user-mode或者是特定的工作,但现在的系统设计往往不是单一硬件、单一架构就可胜任的,诸如RAID或高负载的备援系统设计,都需要相当繁复的规划,很显然就非普通的boot loader可以应付,也很难修改Etherboot去圆满符合需求,这时候,我们联想到Linux,搭配到上述的kexec,不就是最美妙的boot loader吗?在加载新的kernel之前,我们可作任何Linux能做的事情,像是加载firmware并进行设定、挂载NFS、挂载NTFS (透过Linux-NTFS)、... 等等,只要能提供新kernel给kexec-tools工具作加载,最后再透过kexec系统呼叫,就可完成这个「功能强大的boot loader」的终极任务。

  kboot就是这样的概念验证实做品,使用的情境相当多元。举例来说,kboot想进行远程开机 (Diskless),但只有Wireless LAN或3G network可用,这时候就挂载对应的kernel module (包附在kboot中),然后透过user-space的应用程序进行设定,等待联机建立并确保档案撷取成功,接着就在装置上执行自远程取得核心。另一种情境也很有趣,以往Linux distribution都得作通用性与最佳化的妥协,前者往往得将系统划分诸多核心模块与大量的设定程序,后者往往得针对硬件作多次尝试,那么,透过kboot可先启动generic kernel,然后进行硬件侦测,参考所需的硬件与最佳化组态,重新编译核心,最后将该核心加载,而这个过程可透过一些设计得当的效能评估工具,一次又一次的重复自动微调,有别于以往的boot loader。

  后者给予我们极大的想象空间,当我们在新的硬件进行核心与外围移植时,的确可先把能运作的最低限度核心置入kboot,然后再从不同的开发分支取得新核心并启动,而这些过程都是透明的,而且不需要烧录到传统储存装置中,只要资源允许,可在RAM中做到繁琐的事情。


高工
2013-10-15 14:29:51     打赏
32楼

Prex

Prex是一个嵌入式可移植的实时操作系统,具备可靠性、低能耗的特性,采用C语言开发基于微核心设计。文件系统、进程以及网络通过用户模式任务来提供。


高工
2013-10-25 14:47:24     打赏
33楼

pSOS

  ISI公司已经被WindRiver公司兼并,现在pSOS属于WindRiver公司的产品。这个系统是一个模块化、高性能的实时操作系统,专为嵌入式微处理器设计,提供一个完全多任务环境,在定制的或是商业化的硬件上提供高性能和高可靠性。可以让开发者根据操作系统的功能和内存需求定制成每一个应用所需 的系统。开发者可以利用它来实现从简单的单个独立设备到复杂的、网络化的多处理器系统。

  pSOS是一个由标准软组件组成的,可剪裁的实时操作系统。它分为内核层、系统服务层、用户层。

  1. 内核层

  pSOS内核负责任务 的管理与调度、任务间通信、内存管理、实时时钟管理、中断服务;可以动态生成或删除任务、内存区、消息队列、信号灯等系统对象;实现了基于优先级的、选择 可抢占的任务调度算法,并提供了可选的时间片轮转调度。pSOS Kernel还提供了任务建间通信机制及同步、互斥手段,如消息、信号灯、事件、异步信号等。

  pSOS操作系统在Kernel层中将与具体硬件有 关的操作放在一个模块中,对系统服务层以上屏蔽了具体的硬件特性,从而使得pSOS很方便地从支持Intel 80x86系列转到支持MC68XXX系列,并且在系统服务层上对不同应用系统不同用户提供标准的软组件如PNA+、PHILE+等。

  2. 系统服务层

  pSOS系统服务层包括PNA+、PRPC+、PHILE+等组件。PNA+实现了完整的基于流的TCP/IP协议集,并具有良好的实 时性能,网络组件内中断屏蔽时间不大于内核模块中断屏蔽时间。PRPC+提供了远程调用库,支持用户建立一个分布式应用系统。PHILE+提供了文件系统 管理和对块存储设备的管理。PREPC+提供了标准的C、C++库,支持用户使用C、C++语言编写应用程序。由于pSOS内核屏蔽了具体 的硬件特性,因此,pSOS系统服务层的软组件是标准的、与硬件无关的。这意味着pSOS各种版本,无论是对80X86系列还是MC68XXX系列,其系 统服务层各组件是标准的、同一的,这减少了软件维护工作,增强了软件可移植性。每个软组件都包含一系列的系统调用。对用户而言,这些系统调用就象一个个可 重入的C函数,然而它们却是用户进入pSOS内核的唯一手段。

  3. 用户层

  用户指的是用户编写的应用程序,它们是以任务的形式出现的。任 务通过发系统调用而进入pSOS内核,并为pSOS内核所管理和调度。pSOS为用户还提供了一个集成式的开发环境(IDE)。pSOS_IDE可驻留于 UNIX或DOS环境下,它包括C和C++优化编译器、CPU和pSOS模拟仿真和DEBUG功能。


高工
2013-11-06 11:06:43     打赏
34楼

 FunkOS

  FunkOS是一种便携式的实时操作系统,适用于低资源的处理器,例如Atmel的AVR微控制器,德州仪器MSP430等等。


高工
2013-11-07 15:05:00     打赏
35楼

LynxOS

  LynxOS是由Lynx实时系统公司开发的操作系统。LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统,它遵循POSIX.1a、POSIX.1b和POSIX.1c标准。它最早开发于1988年。

  LynxOS目前还不是一个微内核结构的操作系统,但它计划使用所谓的“Galaxy”技术将其从大型集成化内核改造成微内核,这一技术将在LynxOS 3.0中引入。新的28Kb微内核提供以下服务:核心启动和停止、底层内存管理、出错处理、中断处理、多任务、底层同步和互斥支持。

  LynxOS 其调度策略为:

  * LynxOS支持线程概念,提供256个全局用户线程优先级;

  * 硬实时优先级调度:在每个优先级上实现了轮转调度、定量调度和FIFO调度策略;

  * 快速正文切换和阻塞时间短;

  * 抢占式的RTOS核心。


高工
2013-11-08 15:04:20     打赏
36楼

红旗MIDINUX

  红旗MIDINUX操作系统是全球第一个针对MID设备而开发的Linux产品,完全兼容Intel的Moblin,为合作伙伴提供了一个开放、高性能、 安全和华丽的操作系统解决方案。MIDINUX从2005 年开始研发,一经公开,立即引起全球供应商和用户的关注。在Intel公司、制造商和独立软件开发商的协力合作后,MIDINUX已经被应用于爱国者 (Aigo)、联想(Lenovo)、Clarion、SFR等产品中。MIDINUX业已提供了SDK(软件开发环境),更多的Linux工作者可以为 移动互联网打造更多的应用软件。


高工
2013-11-11 14:59:24     打赏
37楼

Raw-OS

  Raw-OS 起飞于2012年,Raw-OS志在制作中国人自己的最优秀硬实时操作系统。

  Raw-OS 操作系统特性

  内核最大关中断时间无限接近0us, s3c2440系统最大关中断时间实测0.8us。

  支持idle任务级别的事件驱动,基于状态机机制(fsm+hsm),所有idle 级别的事件任务共享一个栈!

  支持轻量级线程protothread。

  支持普通任务级别的状态机和事件驱动机制。

  支持tasklet以及workqueue,轻松降低系统最大关中断时间到最低,以及大大提高了系统的实时性。

  支持task 256个优先级

  支持task无限多个

  支持semaphore无限多个

  支持mutex无限多个,同时支持优先级继承算法和优先级置顶算法,当优先级反转发生的的时候。

  支持mutex在优先级反转过程中的任务优先级逐步还原策略,以及解决了改变任务优先级等mutex带来的副作用。

  支持3种queue模块(queue, queue_size, mqueue)无限多个, 支持queue的一对多群发,包含了mail box 的功能。

  支持软件timer无限多个。

  支持event无限多个。

  支持task block 在任意queue 和semphore 上,同时支持and 和or 的处理。

  调度算法采用双向链表就绪队列,省去位图,采用目前世界上最快的bits搜索算法。

  支持动态监测所有任务栈空间大小,栈空间小于整体的12%。 系统马上报错。

  任务能以FIFO和PRIO 两种方式block 在semphore, mutex, queue, 等等对象上。

  采用目前最快的计算tick timeout 的算法。

  内核状态机的转换机制非常健全。

  同等优先级调度,支持时间片轮。

  支持满足posix的标准调度SCHED_RR和SCHED_FIFO

  支持posxi的pthread封装

  支持整个内核配置成非抢占内核。

  支持内核配置成非抢占内核, 追求最大的数据吞吐量。

  支持block内存分配机制,适用于整块的内存分配,没有内存碎片.

  支持byte内存分配机制,适用于任何体积大小的分配,有内存碎片,采用first fit 算法,支持临接空闲块的合并。

  支持slab算法基于buddy。

  支持基于大内存的分配page算法。

  支持c库标准的malloc, calloc, recalloc,free.

  支持发送消息的同时也发送消息长度(raw_queue_size)

  支持满足posix标准的大级别消息算法mqueue(raw_mqueue)

  极其丰富的的API功能,内核支持配置各种功能,最小内核2K。

  支持 8位,16位,32位的cpu以及dsp。


高工
2013-11-15 17:25:20     打赏
38楼

NSLU 2 Linux

NSLU 2 Linux 是一个小型的嵌入式的 Linux 系统。


高工
2013-11-15 17:26:18     打赏
39楼

Atomthreads

Atomthreads是一款自由、轻量级、便携式、实时调度的嵌入式操作系统。它采用BSD许可证发布源代码,无论是出于商业还是教育目的都可以不受限制的免费使用。Atomthreads针对的是只需要调度 器和基本RTOS功能的系统,它不包含文件系统、IP堆栈或设备驱动程序。但开发者可以按需添加。Atomthreads是一个小的C文件,很容易移植到 其它平台。


高工
2013-11-18 15:53:48     打赏
40楼

Mini vMac

Mini vMac 是一个在旧的、模拟68000 古董Mac模拟器Mini vMac基础上的扩展,能模拟68020 CPU+68881 FPU、带彩色显示的Macintosh II(也是古董)。


共43条 4/5 |‹ 1 2 3 4 5 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]