- 2
- 0
- 约8.43千字
- 约 8页
- 2017-09-04 发布于重庆
- 举报
CAR构件平台二进制兼容技术及其在Linux上的实现
裴睿1 陈志成2 杨维康2 张素琴1
1(清华大学 计算机科学与技术系,北京 100084)
2(清华大学 信息技术研究院操作系统与中间件技术研究中心,北京 100084)
摘要:CAR技术是新近发展起来的一种新的构件化化编程技术。文章详细阐述了CAR构件平台二进制兼容技术的设计原理,着重介绍了CAR构件平台虚拟机在Linux操作系统上运行的系统架构和重要技术环节的具体实现。通过与微软.NET和SUN JAVA虚拟机等相关技术在跨平台兼容性方面的比较,论证了这种新的二进制级别兼容技术的特点和对于软件产业的现实意义。
关键词:CAR构件,中间件,Linux,二进制兼容
Abstract: (Add the first sentence)CAR component platform is proved an innovative middleware technology which can share applications on multiple operating systems in binary level. This paper describes the major design and development theory of the CAR component platform, and also demonstrates the significance of this new arisen technology for the future software industry through detailed compares with MS .NET, as well as the Java Virtual Machine (JVM). In the end of this paper, the author illuminates the design architecture and core module implementation of this CAR middleware platform on Linux operating system.
Key Word:CAR component, Middleware, Linux, Binary compatibility
背景介绍
八十年代以来,目标指向型软件编程技术有了很大的发展,为大规模的软件协同开发以及软件标准化、软件共享、软件运行安全机制等提供了理论基础[1]。而其发展可以大致分为以下几个阶段:
面向对象编程 ― C++
面向构件编程 - MS COM
面向中间件编程 - CAR,Java和C#
由于internet的普及,构件可以来自于网络,这要求系统(操作系统或专用的服务性解释系统)要解决自动下载,安全验证等问题。因此,系统需要根据构件的自描述信息自动生成代理构件,也即中间件,通过自动生成的中间件对客户程序的运行状态进行干预或控制,或自动提供针对不同网络协议、输入输出设备的服务(即运行环境)[2]。中间件编程是网络时代编程的重要技术,它更加强调构件的自描述和构件运行环境的透明性,其代表是CAR、JAVA和.NET/Mono。
CAR技术是新近发展起来的、具有我国自主知识产权的一种构件化编程技术,目前已经得到良好的应用。作者一直参与CAR构件设计与代码编写。文章首先针对跨平台兼容特性,比较CAR构件技术与现有技术的不同之处,然后给出CAR构件平台虚拟机在Linux上实现的具体方案,并针对其中涉及的几个关键技术环节进行详细地介绍。
CAR构件平台及其二进制兼容技术
CAR构件技术是在总结面向对象编程、面向构件编程技术的发展历史和经验的基础上,为更好地支持面向以Web Service(WEB服务)为代表的下一代网络应用软件开发而发明的。(CAR全称……….)CAR很大程度地借鉴了COM技术,保持了和COM的兼容性,同时对COM进行了重要的扩展。
为了在资源有限的嵌入式系统中实现面向中间件编程技术,同时又能得到C/C++的运行效率,CAR并没有使用JAVA和.NET的基于中间代码-虚拟机的机制,而是采用了用C++编程,用Elastos SDK(和欣集成开发环境,英文名称为Elastos SDK,其中,Elastos指和欣操作系统[参考文献])提供的工具直接生成运行于CAR构件运行平台的二进制代码的机制。用C++编程实现构件技术,可以使更多的程序员能够充分运用自己熟悉的编程语言知识和开发经验,很容易掌握面向构件、中间件编程的技术。
图 1 . CAR构件平台二进制兼容特性机理图
图1为CAR构件平台二进制兼容特
原创力文档

文档评论(0)