构筑无所不在计算的基础 —TRON技术体系结构

2023-11-02

本文转载至:http://www.zlgmcu.com/philips/ARMStud/T-Kernel/TRON_T-Kernel.pdf

■ 东京大学教授 日本泛在网络计算环境研究所所长 坂村健

■ 日本泛在网络计算环境研究所中国室室长 梁 青

 

一、TRON 与T-Engine

TRON(The Real-time Operating system Nucleus)是由日本东京大学坂村健博士于1984年提出的计算机操作系统规范,目的是想构筑一种理想的计算机结构,实现新的计算体系——“普遍存在的计算环境”,亦称“泛在计算环境”。 所谓“泛在计算环境”是指将微型计算机嵌入到日常生活中的所有机器、设备、工具中,通过网络相互通信,协调运行,以实现高度计算机化的社会环境。为了使计算机嵌入到包括移动通信器等在内的各种机器中,需要这种计算机结构必须小型化并有很好的实时性能。为此,1984年坂村健提倡由产业界与学术界联合启动了“TRON项目计划”。

“TRON项目计划”推行了20年,先后推出了ITRON (嵌入式系统用实时操作系统规范)、JTRON(Java与ITRON的混合操作系统规范)、BTRON(计算机及手机信息终端等最终客户直接操作的操作系统规范体系)、CTRON (以通信控制及信息处理为目的的操作系统接口规范)及TRON HMI(面向各种电子机器的人机界面标准)等规范。

由于用TRON作为实时操作系统的嵌入式计算机结构的实时性能超群(与PC机相比实时响应速度要快1000倍),被广泛应用于汽车电子、移动电话、传真机、电视机、录像机、数码相机和其他数字家电等多个领域,成为低价高性能嵌入式系统的典范。将来也有可能成为卫星控制、工业控制、医疗器械等领域的重要技术。

“TRON项目计划”为了向世界推广,一直采用自由开源、“弱标准化”的方针,也曾经出现过多种版本的开发环境及操作系统式样。随着嵌入式系统的高功能、网络化、高度HMI化,软件开发和调试都变得非常复杂。TRON相关软件的可移植性、可重用性出现了问题。加之嵌入软件开发技术人员严重不足,缺乏可以兼容的软件中间件。

为了实现更为理想的实时操作系统的嵌入式计算结构,TRON项目计划开始了一次新的革命——启动了T-Engine项目计划。

“T-Engine”(T引擎)是为在短时间内高效开发实时嵌入式系统而设计的,由标准化硬件结构(T-Engine)与标准开源实时操作系统核心(T-Kernel)组成的嵌入式系统的开放式标准平台。

在T-Engine开发过程中,搭载的CPU为可变的,而规定了其他硬件结构规范、操作系统核心界面规范、对象数据格式规范等要素,使TRON在标准化的基础结构上,具备充分的外围资源及开发环境。这个开放式标准平台结构的最大目标是将CPU从基础结构中独立出来,使在T-Kernel上开发的中间件可不依存于CPU结构而移植。

通过使用丰富的中间件,可以做到大幅度缩短应用系统开发时间及降低成本;通过使用高质量的硬件和软件,可方便地进行调试;在小批量生产时可照原样开发平台;系统既稳定、尺寸又小,很容易使其直接成为商品,可在很短时间内投向市场。

为将T-Engine这种体系结构向世界推广,2002年成立了T-Engine论坛,已经在全世界拥有470家会员公司(截至2004年11月)。

 

二、T-Engine基础结构

T-Engine由硬件和软件环境组成,其中软件环境又包括设备驱动、中间件、开发环境、安全系统等部分,是一个完整的嵌入式计算平台系统。

 

1.  T-Engine 硬件结构规范

根据应用范围,T-Engine硬件平台分为以下4个系列产品。

■ 标准T-Engine(标准T引擎)

面向便携型信息机器及高功能手机电话等,软件规模比较大,且硬件资源也较丰富的嵌入式机器的开发平台。T-Kernel与MMU一起运行。

■ μT-Engine(微型T引擎)

面向家电及计量测绘机器等,软件规模较小的嵌入式开发平台,T-Kernel可以以没有MMU的模式运行,主要是为了进行机器控制的开发用平台,用于可移动信息机器、家用电气及计量测绘机器等的设计开发。

■ nT-Engine(微毫T引擎)

用于照明器具、开关、锁、阀门等小型家电机器中使用的硬币大小的嵌入式机器平台。

■ pT-Engine (微微T引擎)

为了在传感器节点及静止物体控制中使用的单个芯片机器的平台。它根据低耗电型的无线协议进行数据的收发,可以组装到泛在计算环境的所有物品中。


2.  T-Engine软件结构规范

T-Engine的软件环境主要包括T-monitor、T-Kernel、T-kernel的各种扩展、标准设备驱动以及中间件等外围软件几个部分。


(1) T-monitor

作为启动实时OS核心及支援调试的软件。

(2) T-Kernel

T-kernel是在标准T-EngineμT-Engine上运行的标准实时操作系统核心软件。其优点是:第一,对外部要求的高速应答(实时性能);第二,可以通过动态资源管理功能及单源码原则等,实现在T-kernel上构筑的中间件及应用软件的高度兼容性。  

(3) T-kernel的各种扩展

为了提供更广泛功能的OS的扩展部分,分为“自身扩展部分”(Native Extension)与“移植扩展部分”(Ported Extension)两种。自身扩展部分包括有T-Kernel/TE(Tiny Extension)、T-Kernel/SE(Standard Extension)和T-Kernel/EE(Enterprise Extension)三种。

移植扩展部分是将已有的中间件及Kernel移植到T-Kernel上的部分。现在已经开发出或者正在开发的有以下一些:Windows CE .NET/T-Kernel、T-Wireless、T-Java、T-Linux、T-Integrator等。  

(4) 标准设备驱动

一种用来吸收每个T-Engine机器的硬件差别的软件。在T-Engine上搭载的标准的驱动,规定了标准的API规范。另外,为了便于开发新设备以及专用设备的驱动软件,还将公开设备驱动的参考代码。

(5) 中间件

指在T-Kernel上运行的各种中间件,包括各种网络用的协议堆栈、文件系统、日语处理、假名汉字变换、eTRON相关的安全软件、GUI、声音处理、Java等。为了保证中间件的兼容性,这些可以组合的中间件信息根据T-Format在T-Engine计划的数据库中集中管理,并根据T-Licenst的规定利用T-dist体系广泛传播配发。

(6) 开发环境

在T-Engine基础结构规范中,不对开发环境进行标准化。但为了确保软件的兼容性,有必要规定源代码及二进制代码的标准规范形式。因此,关于源代码及对象代码的形式,规定以gcc中的内容为准。 

3.  T-Kernel与其他OS的混合联接结构:T-Bus

目前,市场上在各个领域中已经存在各种基本软件(Kernel等),还形成了很多软件资产。为了在T-kernel中利用这些软件资产,系统提供称为“T-Bus”的机制。使用它可以使已有的基本软件与T-Kernel在同一台计算机上运行。 

4.  eTRON

T-Engine的设计前提是能随时连接网络。在TRON基础结构中通用的安全基础结构是eTRON(Entity any Economy TRON)。在泛在计算环境中,很有可能通过网络分解的手段被他人偷窥到家中的情况,或被对方窃取控制权。因此,有必要对计算环境的所有机器限制权限,例如,要听从于哪台机器的指示,向何处发送信息等。在使用T-Engine的机器中,将这些访问管理信息作为eTRON的“电子实体”来处理,一般人便可以简单地进行设定,并实现严密的安全管理。


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

构筑无所不在计算的基础 —TRON技术体系结构 的相关文章

  • Mysql进阶(上) -- 存储引擎,索引

    Seasons in the Sun Westlife 单曲 网易云音乐 索引下部分 gt Mysql进阶 中 索引 千帐灯无此声的博客 CSDN博客 目录 查看左栏 目录 存储引擎 Mysql体系结构 简介 InnoDB介绍 MyISAM
  • linux多线程编程详解教程,Linux多线程编程快速入门

    本文主要对Linux下的多线程进行一个入门的介绍 虽然是入门 但是十分详细 希望大家通过本文所述 对Linux多线程编程的概念有一定的了解 具体如下 1 线程基本知识 进程是资源管理的基本单元 而线程是系统调度的基本单元 线程是操作系统能够

随机推荐

  • openGauss学习笔记-01 什么是openGauss

    文章目录 openGauss学习笔记 01 什么是openGauss 1 1 openGauss是一个数据库管理系统 1 2 openGauss数据库是关系型的 1 3 openGauss软件是开源的 1 4 openGauss数据库具有高
  • 一个牛人提供的GIS源码(很好)

    注 下面文字非本人所写 他提供的东西太好了 所以放在这里备忘 浪人 努力 唐丰 Rover Tang2006 08 05 最后的礼物 校园多媒体系统和校园WEBGIS系统 为什么说是最后的礼物 大概是因为我突然想这个blog不更新了 为什么
  • Java应用程序远程调试Remote Debug

    文章目录 Java应用程序远程调试Remote Debug 本地开发工具IDEA的设置 远程服务器的Java应用程序调整JVM启动参数 启动本地IDEA的应用程序 本地IDEA设置断点及调试 Java应用程序远程调试Remote Debug
  • 解决TypeError: object of type 'numpy.float64' has no len()

    使用jupyter notebook过程中遇到这个问题 其实把所有代码从上到下重新执行一遍错误就消失了 也不知道为什么前面执行结果会丢失 更郁闷是这种文不对题的错误信息很是头疼
  • 双系统启动无系统选择界面,直接进入Ubuntu

    安装了Ubuntu和kali双系统后 发现电脑启动的时候直接进入Ubuntu 没有系统选择界面 首先打开终端 Ctrl Alt t 输入 sudo update grub 回车 输入密码即可
  • edge浏览器如何设置始终在新标签页中打开?

    方法1 在IE浏览器里设置 方法2 用鼠标滚轮点击打开 但是这种方法 只能在旁边的新窗口打开 你还需要自己手动切换页面 因为页面不会自动显示新窗口的内容 所以建议使用第一种方法
  • Qt中使用三角函数

    哈哈 今天发现 Qt可以很方便的使用三角函数 只需要 include math h 然后就可以 double a 0 0 double b 0 0 b sin a So easy 决心用Qt进行图像处理了 QImage类很好很强大 转载于
  • Xshell 5 注册码

    留着用 Xftp 5 注册码 101210 450789 147200 Xshell 5 注册码 690313 111999 999313 Xmanager 5 注册码 101210 450789 147200 Xshell4 0
  • linux find 输出文件目录名称到txt文件(yolo图片名称)

    利用find命令得到文件夹内文件名称 find 文件夹路径 name jpg gt txt文件名 输出结果
  • python入门基础

    作者介绍 作者 小刘在C站 每天分享课堂笔记 一起努力 共赴美好人生 夕阳下 在最美的绽放 目录 一 python是什么 二 为什么使用python 1 软件质量 2 提高开发者的效率 3 程序的可移植性 4 标准库的支持 5 组件集成 6
  • Anaconda3如何安装keras

    当下机器学习很火 机器学习编程最流行的就是python语言 yangqiang200608打算自学机器学习 于是与python有了缘 对于初学者来说 配置环境是最让人头痛的事情 一周前参照网上的资料折腾一番 终于安装上了python3 为了
  • 1696:逆波兰表达式——递归(atof)

    描述 逆波兰表达式是一种把运算符前置的算术表达式 例如普通的表达式2 3的逆波兰表示法为 2 3 逆波兰表达式的优点是运算符之间不必有优先级关系 也不必用括号改变运算次序 例如 2 3 4的逆波兰表示法为 2 3 4 本题求解逆波兰表达式的
  • SLAM 轨迹评估工具——EVO安装、使用介绍

    一 概述 evo是一款用于视觉里程计和SLAM问题的轨迹评估工具 核心功能是能够绘制相机的轨迹 或评估轨迹与真值之间的误差 支持多种数据集的轨迹格式 TUM KITTI EuRoC MAV ROS的bag 同时支持这些数据格式之间的相互转换
  • Unsupported character encoding ‘UTF‐8‘

    1 无法识别utf 8 2 在保证链接与mysql链接驱动包都正确时 查看数据库编码 右键编辑数据库即可查看 发现是由于数据库字符集不为utf 8 所以把链接信息的指定utf 8删除即可
  • Android工程师学习路线

    Android工程师学习路线 1 第一行代码 2 Android编程权威指南 3 Android群英传 神兵利器 4 Android开发艺术探索 5 Android项目开发实战 6 Android源码设计模式解析与实战 7 App研发路 相
  • Python 数据分析与数据可视化(一)Python 开发环境搭建与编码规范

    文章目录 1 Python 开发环境搭建与编码规范 1 1 Python 开发环境搭建与使用 1 1 1 Python 语言的特点 1 1 2 Python 开发环境 1 1 3 安装扩展库 1 2 Python 编码规范 1 2 1 缩进
  • Maya模型导入到Unity3d 的秘诀

    看过不少文章谈论这个问题 各种复杂操作 简直想让你 Abandon 到最后还不是再Unity中一个个加材质 解决方案 大家应该都留意到了 Maya自从2016版本开始 有一个功能叫 发送到Unity 发送到UE 第一步 再Maya 中正确打
  • Python修饰符 (一)—— 函数修饰符 “@”

    今天被问到Python函数修饰符 顺手写写 Python函数修饰符 与其说是修饰函数倒不如说是引用 调用它修饰的函数 举个栗子 下面的一段代码 里面两个函数 没有被调用 也会有输出结果 def test f print before f p
  • 分类统计的controller和service

    SpringMVC框架下的 部分代码 Controller控制器 Resource ReviewTitleService reviewTitleService 调用ReviewTitleService 类时 先定义一个对象 Gson gso
  • 构筑无所不在计算的基础 —TRON技术体系结构

    本文转载至 http www zlgmcu com philips ARMStud T Kernel TRON T Kernel pdf 东京大学教授 日本泛在网络计算环境研究所所长 坂村健 日本泛在网络计算环境研究所中国室室长 梁 青 一