OSE Real-Time Kernel

PRODUCT FEATURES
•High performance
•Intuitive, efficient programming model
•Pre-emptive
•Support for distributed multi-CPU systems
•Support for fault add device tolerant systems
•Automatic process supervision
•Automatic error detection and handling
•Transparent communication
•Dynamic reconfiguration
•Advanced memory management support
•Support for application level debugging
•Certified for safety

The OSE real-time kernel combines rich functionality with high performance and true deterministic real-time behavior. It is a fully pre-emptive kernel, optimized to provide low latency and high rates of data throughput yet compact enough for use in most embedded systems. Designed from the ground up for use in distributed and fault tolerant systems, the OSE realtime kernel stands apart from other operating systems that were developed with a completely diff erent purpose in mind. OSE was designed to address the fundamental shortcomings of those other platforms.

Features of the OSE Real-Time KernelOSE—A Faster Way of Developing Embedded Systems  The OSE real-time kernel meets the needs of developers of real-time systems by combining richness of function,with ease of use.Eight powerful system calls are all that is needed to write the majority of an application. Over 70 additional calls are provided for special purposes. This, combined with OSE’s high-level modular approach, makes code easy to write, easy to share within a team of developers and easy to maintain. Despite its high functionality, the kernel is remarkably small. The kernel requires less than 100 kb of memory.The kernel automatically handles many things normally left to the developer by a conventional real-time operating system.It has sophisticated, built-in error handling and application-level debugging.All interprocess communication is managed transparently by the kernel,regardless of which processor a process is located on. Each process can be automatically supervised.Environment variables,dynamic memory management,and automatic supervision make the system readily reconfi gurable, even during runtime. Together these features signifi - cantly reduce the time and cost of developing and maintaining a real-time system,while greatly improving the quality and reliability of the fi nal product.

8 sysyem calls : HUNT,SEND RECEIVE,ALLOC,DELAY,FREE_BUF,ATTACH,RECEIVE_W_TMO.

Building Blocks of OSE

The most fundamental building block in OSE is a process, because it is through the use of processes that a system shares CPU time. OSE has different categories and types of processes, each with special functionality.

Process Types

Interrupt processes are scheduled in response to a hardware interrupt or, using a unique OSE capability, in response to a software interrupt. They run from beginning to end. Interrupt processes have context just as other processes and always have the highest priority among the process types. Timer interrupt processes act in the same way as interrupt processes, except that they are scheduled periodically according to a specified time period. A prioritized process is the most common process type, typically does the bulk of processing and is written as an infinite loop that run as long as no interrupt process or prioritized process with higher priority becomes ready to run. Background processes run in a strict round robin time slicing mode at a prioritized level below all prioritized processes. A background process can be pre-empted(抢占) by prioritized processes or interrupt processes at any time.

Process Categories Processes can either be static or dynamic.Static processes are created at system start by the kernel. Static processes exist all the time that a system exists. Dynamic processes can be created and killed at run-time enabling multiple instances of the same code and preserving system resources. By offering both types of  processes, OSE enables applications to be optimized for the best performance and flexibility.

Blocks and Segments in OSE The OSE real-time kernel has, in addition to processes, higher-level objects for organizing programs and their resources. The additional kernel objects are blocks and segments. OSE allows a number of processes to be grouped together into a block. A block can have its own local and stack memory pool and blocks can be treated like a process. Blocks can be created, killed and addressed
by a message directly. Mapping blocks to OSE Memory Management System (MMS) segments, and mapping OSE pools to MMS regions can achieve full memory protection and program isolation. Blocks and pools can be located in the same or different MMS segments.

Interprocess Communication In OSE, processes can communicate or synchronize in a number of ways including many mechanisms found in conventional operating systems. The  message-passing architecture and more specifically, the direct message-passing design of OSE that brings about the most powerful result of using OSE. Messages are the most powerful and safe method of interprocess communication and can be used between two processes located on the same CPU or two processes in remote CPUs.

Messages
OSE messages are sent from one process to another. A message, also referred  to as a signal, contains an ID and the addresses of the sender and the receiver—as well as data. Once a message is sent to another process, the sending process can no longer access it. Ownership of a message is never shared. This important feature eliminates the common error of memory access conflicts that can happen so easily in designs based on conventional operating systems. Furthermore,the unique design of this message “hand-off ” in OSE is tremendously more efficient and direct message passing is conceptually more straightforward than the indirect model of other systems. The receiving process may specify which message types it wants to receive at any particular moment. The process can wait for or poll the message queue for a specific signal, one of a set of signals, or any signal. The process can also specify a time limit for a signal before timing out. Through the use of a message-based concept, eight  powerful system calls are enough to write most of the application code, signifi cantly simplifying the coding, and reducing errors. An OSE process is the unit of execution in an OSE System. OSE processes can be grouped into a block that can have it’s own local pool of memory. In the OSE real-time kernel, the address space belongs to a segment, which can include either one or more blocks. OSE enables the development of highly reliable systems leveraging memory protected address segments.

Simple and Safe OSE messages are sent from one process.Because signals contain the sender PID, receiver ID and data, it is very easy  to use and design with processes. Jobs that need to be handled in parallel are dedicated to different processes. When processes exchange information via messages, it is very much like sending a letter from one person to another. The kernel manages mutually exclusive ownership of messages, so a process will not accidentally receive information it should not have.

Signal Redirection The redirection tables allow interprocess communication interfaces to be standardized. Sending processes send to a standard destination and the message is automatically routed to a specific process within a block. A redesign or change in functionality means changing only the redirection table, not the code of the sending process between two processes located on the same CPU or two processes in remote CPUs.

CPU Transparency OSE message passing is fully transparent between different CPUs. A message is sent in the same manner regardless of  whether the receiving process is running in the same or a remote CPU. OSE does not require a master CPU in a distributed system. Each CPU is the same and has the same capabilities. There is no difference in the way a globally visible or a local private process is created. A local process can become globally visible to the whole system without re-creation.It is perfectly straightforward to design applications with OSE where the processes across multiple nodes can be viewed logically as a single system image. This unique capability of OSE enables complex problems and hardware configurations to be vastly simplified in the software model created for the platform.

Real-Time Performance The OSE real-time kernel provides excellent deterministic performance. All time-critical parts of the kernel are highly optimized. In particular, message passing in the OSE real-time kernel is extremely efficient with message pointers “handed off” (只交接signal指针的ownership)rather than message data contents copied excessively between processes, resulting in high data throughput rates. OSE also offers mechanisms for copying messages across memory segments for safer interprocess communication but the choice is given to the developer by defining MMS segment and region boundaries,and creating processes and blocks within specific segemnts. All execution times in the OSE Real-Time kernel are deterministic and are not affected by the size of the application, memory consumption,or number of processes. The OSE Real-Time kernel is a fully pre-emptive Real-Time kernel. An interrupt can be served at any time, even during execution of a system call. The interrupt processing in OSE is optimized for low latency assuring quick interrupt response times and general real-time behavior.

Dynamic Memory Management In the OSE real-time kernel, different levels of memory management support both small systems and large, complex systems with memory protection and other controlled accesses to pooled resources,such as heap memory.The system pool is located in the kernel
memory segment. All processes can allocate memory from the system pool. The OSE real-time kernel provides resource pools at multiple levels: blocks,local pools and memory protected segments to ensure better fault isolation and more reliable system operation.

The OSE RTOS System enables customers to differentiate themselves from their competition by using the unique
features and benefi ts found only in OSE products.

OSE-Real-Time_Kernel相关推荐

  1. usrinit.exe,OSE.EXE

    usrinit.exe W32.Kedebe.E@mm的一个组件 病毒名称:W32.Kedebe.E@mm 病毒类型:蠕虫 发现日期:2005年7月12日 危害程度:蠕虫复制自身为系统文件夹下的[一个 ...

  2. 智能手机背后隐藏的第二系统 -- OSE

    一.引 言 每部具有移动通信功能的手机都运行着两个操作系统: 在终端用户熟悉的Android和iOS外, 还有一个实时操作系统 (RTOS) 管理着无线电功能. RTOS 这个操作系统储存在固件,运行 ...

  3. 计算机应用知识,什么是Ose.exe程序解析?

    ose.exe是office办公软件的更新程序,可以被关闭,不是病毒. 我们经常在电脑的任务管理器中一个叫ose.exe进程在运行,大多数人都不知道这个程序是干什么的,加上这个进程往往会占据较大的内存 ...

  4. OSE Real-Time Kernel

    OSE Real-Time Kernel PRODUCT FEATURES •High performance •Intuitive, efficient programming model •Pre ...

  5. Win8 解决错误 1406。安装程序无法将值OSE.exe写入注册表项。无法保存对main权限所作的更改

    我的个人blog2018-9上线,地址:http://www.biegral.com 用了破Win8.装个Office2013都蛋疼. 下载了怎么安装都不对,感觉整理一个完美的解决方案. 安装错误1: ...

  6. Enea公司----OSE/OSEck RTOS --2

    refer: http://wenku.baidu.com/view/7cd7be65fc4ffe473268ab33.html ENEA 面向LTE基站SOC(CPU+DSP)平台的软件解决方案 一 ...

  7. OSE RTOS中APP进程接收消息机制

    在OSE运行的APP进程均有一个PCB结构体,结构体中包含了指向该进程signal list的指针,是一个链表,实际上是指向链表的头指针与尾指针,头指针结构中包含指向下一个signal的next指针. ...

  8. Enea公司----OSE/OSEck RTOS

    零.Enea 公司(refer:http://wenku.baidu.com/view/85abe02c4b73f242336c5fde.html) 一.瑞典RTOS供应商Enea公司(OSE/OSE ...

  9. CRASH ANALYSIS of PPC440+OSE PLATFORM

    CRASH ANALYSIS of PPC440+OSE PLATFORM Sailor_forever  sailing_9806@163.com 转载请注明 [摘要]本文分析了PPC440+OSE ...

  10. Building VirtualBox OSE 5.0.0 on Windows 7 (x86)

    正文转自 : https://forums.virtualbox.org/viewtopic.php?f=10&t=73799 I have successfully built and te ...

最新文章

  1. Select()系统调用及文件描述符集fd_set的应用
  2. js实现全选和反选功能
  3. php mdecrypt generic,mdecrypt_generic
  4. java如何替换字符串0A_我有一个带有“ \ u00a0”的字符串,我需要将其替换为“” str_replace failed...
  5. linux malloc core,Linux上使用的malloc版本
  6. ssis 有条件拆分_SSIS条件拆分转换概述
  7. iptables防火墙基础
  8. Java Adapter Pattern(适配器模式)
  9. java教程张孝祥_张孝祥Java教程 笔记 1
  10. ***工具XSCAN V3.3 GUI的使用
  11. 实对称矩阵的特征值求法_矩阵论系列——特征值篇
  12. matplotlib 设置中文字体
  13. 基于ELK 7.50搭建elastalert 监控报警和权限控制
  14. root认证失败 tera term_(转载)linux ssh telnet TeraTerm终端中文显示乱码解决方法
  15. 本科论文发表的难度大吗
  16. android检测蜂窝网络,Android 判断网络状态及开启网路
  17. ipad触摸测试软件,平板电脑屏幕灵敏度测试:iPad系列最出色
  18. Excel 筛选 多表查找
  19. 【Hadoop】单机、伪分布式、完全分布式集群搭建
  20. mysql实战(五)—— You can‘t specify target table ‘org_department‘ for update in FROM clause

热门文章

  1. VTK显示CT图像视图
  2. ssl证书 所属项目怎么上传_ssl证书怎么上传
  3. 车内降噪与智能降噪头枕的研究
  4. redis win10开机自启
  5. 前端简史之裂变:Ajax变法
  6. Renpy scene语句 不显示图片
  7. Android PopupWindow 弹框布局要显示在某个空间下面位置
  8. 论文解读:Segment Anything
  9. 初中学历可以学HTML5,【推荐】初中生必备的5个学习软件
  10. JAVA计算机毕业设计图书馆借阅系统(附源码、数据库)