(Common Object Request Broker Architecture). The integration
- 格式:pdf
- 大小:157.62 KB
- 文档页数:2
CORBA技术简介⾸先CORBA是⼀个协议,和语⾔和平台⽆关通⽤对象代理体系结构CORBA(Common Object Request Broker Architecture)是对象管理组织所定义的⽤来实现现今⼤量硬件、软件之间互操作的解决⽅案,CORBA也是迈向⾯向对象标准化和互操作的重要⼀步。
■CORBA技术简介 简单地说,CORBA允许应⽤之间相互通信,⽽不管它们存在于哪⾥以及是谁设计的。
CORBA1.1于1991年由OMG发布,其中定义了接⼝定义语⾔(IDL)以及在对象请求代理(ORB)中实现客户对象与服务器对象之间交互的应⽤编程接⼝(API)。
CORBA2.0于1994年发布,规定了各个供应商之间的ORB的通信规则。
CORBA标准主要分为三个部分:接⼝定义语⾔(IDL)、对象请求代理(ORB)以及ORB之间的互操作协议IIOP。
ORB是对象之间建⽴Client/Server关系的中间件。
使⽤ORB,客户可以透明地调⽤⼀个服务对象上的⽅法,这个服务对象可以在本地,也可以在通过⽹络连接的其他机器上。
ORB截获这⼀调⽤同时负责查找实现服务的对象并向其传递参数、调⽤⽅法返回最终结果。
客户并不知道服务对象位于什么地⽅,它的编程语⾔和操作系统是什么,也不知道不属于对象接⼝的其他系统部分。
这样,ORB在异构分布环境下为不同机器上的应⽤提供了互操作性,并⽆缝地集成了多种对象系统。
在开发传统的Client/Server应⽤时,开发者使⽤他们⾃⼰设计的或⼀个公认的标准来定义⽤于设备之间通信的协议。
协议的定义依赖于实现语⾔、⽹络传输和许多其他因素,⽽ORB的出现简化了这⼀过程。
使⽤ORB时,协议是使⽤接⼝定义语⾔(IDL)定义的,⽽ IDL是独⽴于语⾔的。
并且ORB提供很强的灵活性,它使程序员选择最适合的操作系统、执⾏环境,甚⾄系统各个组件也可以采⽤不同的编程语⾔实现。
更重要的是,它允许现有组件的集成。
java corba 编译Java CORBA是一种基于Java语言的分布式对象技术。
CORBA (Common Object Request Broker Architecture)是一种面向对象的中间件,通过它可以实现不同平台、不同语言的对象之间的通信和交互。
本文将对Java CORBA进行详细介绍,包括其基本概念、使用方法以及优缺点等方面。
一、CORBA基本概念CORBA是一种分布式对象技术,它建立在面向对象的基础上,通过定义标准接口和协议,使得不同平台、不同语言的对象能够相互通信和交互。
CORBA的核心是对象请求代理(Object Request Broker,ORB),它充当了分布式对象之间的中间人角色,负责对象的寻址、消息传递和通信协议的实现等功能。
二、Java CORBA的使用方法1. 定义IDL接口:IDL(Interface Definition Language)是CORBA的接口定义语言,用于定义接口的操作和数据结构。
首先需要在IDL文件中定义接口的方法和参数等信息。
2. 编译IDL文件:使用IDL编译器将IDL文件编译成Java代码,生成对应的Java接口文件。
3. 实现接口:根据生成的Java接口文件,编写具体的实现类,实现接口中定义的方法。
4. 编译和打包:将实现类的源代码编译成Java字节码文件,然后将字节码文件打包成Java Archive(JAR)文件。
5. 启动ORB:在应用程序中启动ORB,创建ORB实例,并通过ORB连接到CORBA服务。
6. 注册对象:将实现类的对象注册到ORB中,使得其他对象能够通过ORB访问该对象。
7. 远程调用:通过ORB提供的接口,远程调用其他对象的方法,实现分布式对象之间的通信和交互。
三、Java CORBA的优缺点1. 优点- 跨平台、跨语言:CORBA使用IDL作为接口定义语言,使得不同平台、不同语言的对象能够相互通信和交互。
CORBA分布式构件CORBA分布式构件是一种用于分布式计算的基础技术。
它可以使得不同的应用程序和设备通过网络互相通信和共享资源,从而达到更高效和灵活的分布式计算。
CORBA是“Common Object Request Broker Architecture”的缩写,它是一种基于对象的分布式计算技术。
这个技术的核心在于“Object Request Broker”(ORB),它是一个中间件,负责将分布式系统中的不同对象链接起来,并协调消息传递和方法调用。
CORBA构件的特点是支持多种编程语言和平台,因此可以方便地将不同的应用程序和设备链接起来,实现分布式计算的整合。
CORBA构件包含了许多基本的概念,包括对象、接口、服务、ORB等等。
每一个对象都有一个唯一的标识符和一组特定的方法接口,其他对象可以通过ORB访问这个对象并调用它的方法。
由于CORBA构件中的所有对象都是基于通用的接口定义语言(IDL)编写的,因此不同编程语言和平台的应用程序都可以通过ORB访问它们。
CORBA构件的优点是可以支持多种协议和架构,包括TCP/IP、UDP、HTTP等等,因此可以满足不同应用场景的需求。
此外,CORBA构件还可以提供多种服务,包括命名服务、交易服务、安全服务等等,可以使得分布式计算更加可靠和安全。
但是,CORBA构件也存在一些缺点。
首先,它的实现复杂,需要开发人员具备较高的技术水平。
其次,CORBA构件的性能相对较低,因为它需要进行多次消息传递和方法调用,而且ORB本身也需要消耗一定的系统资源。
此外,CORBA构件还存在一些安全隐患,需要开发人员进行必要的安全设置和管理。
综上所述,CORBA分布式构件是一种重要的分布式计算技术。
通过它,我们可以方便地将不同的应用程序和设备链接起来,实现资源共享和协作。
虽然它存在一些缺点,但是随着技术的不断发展和完善,我们相信它会变得越来越优秀,为分布式计算领域带来更多的价值。
J2EE常见术语及缩写RMIRmote Method Invocation(远程方法调用)用于Java平台中的远程方法调用。
它具有分布式垃圾收集、可自动下载类文件等功能。
位于java.rmi包中。
注意:RMI只能在Java平台中使用。
通过RMI传输的参数必须可以序列化CORBACommon Object Request Broker Architecture(公共对象请求代理体系结构)用于实现独立于平台及编程语言的分布式应用ORBObject Request Broker(对象请求代理)负责具体的网络通信,是构建分布式应用的基础。
STUB与SKELETON存根与骨架无论是RMI还是ORB,其实现本质都是采用了代理模式。
其中存根为客户端使用的代理,拥有通过网络访问远程对象的能力;骨架为远程对象的代理,用来接受存根的调用,并返回结果。
附:在CORBA和JAVA 5中也支持动态调用,即存根不是必须存在的。
RMI-IIOPRemote Method Invocation over the Internet-ORB Protocol(基于互联网的对象请求代理协议实现的远程方法调用)J2EE和EJB事实上的网络通信标准,基于RMI,同时又兼容CORBA,使得EJB组件可以被Java 之外的客户端调用。
位于javax.rmi包中。
话题1:为何J2EE要兼容CORBACORBA是OMG(对象管理组织)推出的成功的分布式对象通信标准,为了占领企业级市场,EJB必须考虑和遗留系统的集成,以及为异构系统提供服务,这都需要采用更加通用的CORBA,而不是只能在Java平台下使用的RMI。
话题2:引入CORBA之后面临的问题1,分布式垃圾收集:并非所有支持CORBA的语言都有垃圾收集机制。
2,窄化(Narrowing):当通过RMI或RMI-IIOP获取一远程对象时,实际上获取的是其存根(Stub)。
在RMI中,会自动下载此存根;而CORBA没有这个机制,必须用额外的方法解决(其实是通过javax.rmi.PortableRemoteObject的narrow方法解决的)。
corba协议-概述说明以及解释1.引言1.1 概述Corba(Common Object Request Broker Architecture)是一种面向对象的分布式计算的标准化协议。
它定义了一套标准化的通信协议,使得不同的对象能够在网络上进行通信和交互。
Corba协议通过对象请求代理(ORB)实现对象之间的通信,使得对象在不同的计算机上可以相互调用,实现分布式计算。
该协议被广泛应用于企业级软件系统中,能够提高系统的可扩展性、可维护性和灵活性,为分布式系统的开发提供了良好的支持。
在本文中,我们将介绍Corba协议的基本原理、特点和应用领域,以便更好地理解和使用这一重要的分布式计算协议。
1.2文章结构1.2 文章结构本文将首先介绍Corba协议的概念和背景,包括其起源、发展历程和基本原理。
接着将详细探讨Corba协议的特点,包括其跨平台、语言中立和分布式的优势。
然后将深入分析Corba协议在各个应用领域的具体应用,包括企业级系统、网络通信和物联网等方面。
最后对Corba协议的发展前景进行展望,探讨其在未来的发展趋势和潜在挑战。
通过本文的阐述,读者将能够全面了解Corba协议的重要性和应用领域,以及对其发展方向有更深入的认识。
1.3 目的本文的主要目的是介绍和探讨Corba(通用对象请求代理结构)协议,旨在帮助读者了解该协议的基本概念、特点和应用领域。
通过对Corba协议的介绍,读者可以深入了解面向对象技术在分布式系统中的应用,以及Corba协议在不同领域中的实际应用情况。
同时,本文也将分析Corba 协议的优势和局限性,以及未来在分布式计算领域的发展趋势。
通过本文的阐述,读者将能够更好地理解和应用Corba协议,为其在实际项目中的应用提供参考和指导。
2.正文2.1 Corba协议介绍CORBA(Common Object Request Broker Architecture)是一种用于分布式系统中对象通信的协议。
corba标准CORBA(Common Object Request Broker Architecture)是一种面向对象的分布式计算标准,它定义了如何在一个分布式系统中使用对象来交互和共享数据。
CORBA提供了一种通用的框架,使得不同的对象可以在不同的平台上进行交互和通信,从而实现跨平台的互操作性。
CORBA标准包括以下几个主要部分:1. ORB(Object Request Broker):ORB是CORBA的核心组件,它负责对象之间的通信和交互。
ORB提供了一种标准的通信协议,使得对象可以相互发现和调用对方的方法。
2. IDL(Interface Definition Language):IDL是一种用于定义对象接口的语言。
它定义了对象的行为和交互方式,包括对象的方法、参数和返回值等。
3. IIOP(Internet Inter-ORB Protocol):IIOP是一种基于TCP/IP的协议,用于在分布式系统中进行对象通信。
它提供了一种通用的传输机制,使得ORB可以相互通信。
4. OMG(Object Management Group):OMG是一个组织,负责管理和维护CORBA标准。
它定义了CORBA的核心组件和相关规范,并提供了相关的文档和指南。
CORBA标准的主要优点包括:1. 跨平台性:CORBA对象可以在不同的操作系统和硬件平台上进行交互和通信,从而实现跨平台的互操作性。
2. 语言无关性:CORBA标准支持多种编程语言,包括C++、Java、Python等,使得开发人员可以使用自己熟悉的编程语言来开发分布式应用程序。
3. 易于集成:CORBA提供了一种标准的接口定义语言,使得不同的系统可以更容易地集成在一起。
4. 安全性:CORBA提供了一些安全机制,如身份验证、授权和数据加密等,确保分布式系统中的数据安全。
总之,CORBA是一种重要的分布式计算标准,它提供了一种通用的框架,使得不同的对象可以在不同的平台上进行交互和通信,从而实现跨平台的互操作性。
CORBA IIOP Protocol and ApplicationsIntroductionThe Common Object Request Broker Architecture (CORBA) and the Internet Inter-ORB Protocol (IIOP) are two technologies that enable distributed computing across heterogeneous systems. CORBA defines the total architecture required for communication between distributed objects and IIOP is the most important specification of CORBA. IIOP focuses on interoperability of distributed objects in heterogeneous environments. CORBA, created by the Object Management Group (OMG) in 1991, enables an application's components to communicate without regard for their locations on a network. A CORBA-compliant object is guaranteed to be able to communicate with other distributed objects because the technology defines a common interface. IIOP was introduced in Dec. 1994 as a component of CORBA 2.0 specification. Netscape and Sun Microsystems support CORBA and IIOP in their next-generation products. Group project by: Fei Zhang Chunsong JI Fenghua Ji 7/21/98BackgroundToday, using of Internet and Web has been changing our life in all aspects. It also changes the way we use computers. One of the biggest changes is that it gives a new meaning to distributed computing. Instead of the traditional client/server network, the new era of distributed computing make it possible for enterprise systems, whose objects are distributed across multiple computers, that they can all communicate, regardless of operating system, platform, or programming language. Even more amazing is that these distributed objects can be components of a single application or of the dozens of applications that form the enterprise system. The application modular evolved from monolithic to multtiered.Figure 1 Application Modular: A, B--monolithic, C--multi-tieredPage - 1 -It is the technology such as the Common Object Request Broker Architecture (CORBA) and the Internet Inter-ORB Protocol (IIOP) that enables distributed computing across heterogeneous systems. CORBA specifies the complete architecture necessary for communication between distributed objects. The specification includes IIOP and a host of other technologies. IIOP is the most important piece of CORBA, because it focuses on interoperability of distributed objects in heterogeneous environments. In addition, CORBA and IIOP define the middleware that could cause developers around the world to rethink how they create applications in networked environments. CORBA is a standard created by the Object Management Group. It is first implemented in 1991. The organization's goal is to provide a common framework for application development using object-oriented techniques. Instead of applications, OMG produces specifications that make distributed-object computing possible. By describing a common architecture for communication between distributed objects, CORBA makes it possible for an application's components to communicate, regardless of their locations on a network. Further, because CORBA defines a common interface between objects, the operating system and the programming language of the object don't matter. As long as an object is CORBA-compliant, it can communicate with other distributed objects. IIOP is another success standard of OMG. It is introduced as part of the CORBA 2.0 specification in December 1994. Before IIOP, the CORBA specification defined interaction only for distributed objects created by the same vendor; the objects had to be designed for a specific implementation. Using IIOP, the second CORBA specification became the definitive solution for object interoperability that wasn't tied to a specific platform or implementation.Inside CORBAAs a technology that provides the framework for interaction between dissimilar objects, CORBA succeeds admirably, yet that is only a piece of a greater picture called the Object Management Architecture (OMA), the primary components of which are: CORBA ORB--handles requests among objects; CORBA Services--defines system-level services that help manage and maintain objects; CORBA Facilities--defines facilities and interfaces at the application level; application objects--the objects themselves.ORB The Object Request Broker (ORB) is the heart of CORBA. It is the object bus. The ORB allows objects to make requests of each other. Although the ORB operates in a client/server environment, objects in ORB can function as either clients or servers, depending on the circumstances. If an object is receiving and processing a request, then it is acting as a server. If the object is making a request, then it is acting as a client.Page - 2 -The ORB lets objects transparently make requests to and receive responses from other objects located locally or remotely. The client is not aware of the mechanisms used to communicate with, activate, or store the server objects. The ORB lets objects discover each other at runtime and invoke each other's services. Brokering requests and returning results is all the job for the ORB. It involves intercepting each request from one object to another, locating the object that's supposed to handle the request, invoking the appropriate method in the receiving object, passing parameters if necessary, and returning the result to the object that made the request. Because the ORB handles requests transparently, it doesn't matter whether the request is from a local or a remote object. ORBs are the common denominators that bridge the differences in location, platform, and programming language that can separate a client and a server. ORBs can contact each other across the network, can create and interpret object references, and can marshal parameters into and out of the format used by IIOP (Internet InterORB Protocol). The ORB is an architectural abstraction rather than a process executing on a specific machine. In practice, this abstraction is usually implemented as a library linked into clients and servers. An ORB daemon can optionally support the automatic launching of ORB servers for persistent objects.Fig 2, Structure of Object Request Broker interface IDL The ORB handles these requests regardless of programming language, operating system, or platform. The mechanism that allows ORBs to handle requests transparently is the Interface Definition Language (IDL), which is used to declare the boundaries and interfaces of an object. Much like an independent arbitrator, the IDL is neutral and independent of the object and the ORB, yet it binds providers of distributed-object services to their clients. CORBA supports multiple inheritance, and its IDL uses inheritance to encapsulate objects. This makes reuse of code very easy.Page - 3 -IDL expresses operating system and programming language-independent interfaces to all the services and components that reside on a CORBA bus. It allows client and server objects written in different languages to interoperate across networks and operating systems. IDL is purely declarative; it provides no implementation details. IDL-specified methods can be written in and invoked from any language that provides CORBA bindings, including Java, C, C++, and Smalltalk. IDL is mapped into each programming language to provide access to object interfaces from that language. The advantage of IDL is that you can concisely define APIs yet still have the freedom to define the IDL methods in any programming language that provides CORBA bindings. As anyone who has done object-oriented programming knows, you need to know a receiving object's interface before you can make a request, and you design your objects so that they know the interfaces of the objects they interact with. But with distributed computing between heterogeneous objects, you'll run into lots of problems if you try that approach. To make IDL truly independent, CORBA uses an interface repository, the purpose of which is to store the method signatures of objects so that the signatures can be dynamically retrieved and updated at runtime. In this way, all objects in the enterprise system can learn about other objects' interfaces, the methods the interfaces support, and the parameters the interfaces require.Figure 3 CORBA ORB Architechture CORBA Object Services CORBA services is used to manage and maintain objects through their life cycles. It provides the interfaces that can be used to create objects, handle object security, determine the location of objects, and perform class-level management of objects. Because they are system-level rather than applicationlevel services, it can be implemented across the enterprise. It is easy to create consistency throughout the enterprise system. There are 16 object services, including: CollectionPage - 4 -PropertiesConcurrency control Event notification Externalization Licensing Life cycle Naming PersistenceQuery Relationships Security Startup Time Trader TransactionsCORBA object services let developers focus their efforts on their objects, without having to worry about system-level services. You can develop a class for your object and then use the object services to add the functionality they provide. You handle this with subclassing and multiple inheritance. For example, if you create a Widget class, you can then create a subclass called aWidget that is persistent simply by inheriting from the Persistence service. You could also handle event notification, security, and queries by inheriting from the appropriate services. CORBA extends the power of subclassing and multiple inheritance with metaclasses. A metaclass is a class of objects that can be created at runtime. Using metaclasses, you can dynamically add services to CORBA objects, allowing you to customize objects on demand. CORBA Object Facilities CORBA Facilities define frameworks that provide interfaces and other services. These frameworks are divided into broad categories that include application interfaces, domain interfaces, and networking facilities. Application interfaces consist of non-standardized facilities specific to individual applications, such as a reservation system or inventory management system. The domain interfaces consist of facilities for end users in specific application domains. (Here a domain refers to a specific vertical market or industry.) Whereas domain interfaces focus on specific markets, Internet facilities are the application-level functions and interfaces that reach a broad market. These facilities include common user-oriented tasks within applications, such as printing or saving a file, yet also reach into common networked tasks, such as using email and networking facilities. Application Objects Application objects are the actual objects that form the core of a CORBAcompliant application. They are also called business objects. A business object is a way of describing concepts that are independent of an application, such as a customer, order, or payment. You will use a collection of business objects to create an application. Unlike system-level objects, which handle tasks such as persistence, business objects handle real-world business processes. Although a typical business object may handle only a single task (such as working with reservations, customers, orPage - 5 -inventory), collections of business objects can be used to handle an entire business process, such as booking and managing reservations for an airline. Because business objects come with ready-to-use functionality, a developer can stitch them together to create a custom application. In order to manage the complexity of an application with distributed business objects, the business objects know only what services other objects provide, not how those services are actually implemented. Business objects hide the complexities of back-end processing by focusing on interfaces rather than on implementation.COBRA/IIOPOMG create standards for distributed object computing that are realistic, commercially available and usable through its Object Management Architecture (OMA) at the heart of which is the Common Object Request Broker Architecture (CORBA). CORBA specifies the Object Request Broker (ORB) that allows applications to communicate with one another no matter where they reside on a network. The CORBA 2.0 specification, adopted in 1994, created true out-of-thebox interoperability in heterogeneous environments and delivers this interoperability over the Internet through IIOP – the Internet Inter-ORB Protocol. A common misconception about IIOP is that it is a "separate" specification that developers need to write to in order to allow CORBA to work over the Internet. This is not so. A properly constructed CORBA 2.0 ORB already incorporates IIOP. IIOP is an underlying mechanism of CORBA technology which is transparently managed by ORBs. So IIOP and CORBA are, essentially, inseparable. Therefore, programmers and users are never required to interact with IIOP in any way; it is invisible to them. IIOP allows their programs to interact transparently while executing, so one does not have to write "IIOP programs." The IIOP specification defines a set of data formatting rules, called CDR (Common Data Representation), which is tailored to the data types supported in the CORBA Interface Definition Language (IDL). Using the CDR data formatting rules, the IIOP specification also defines a set of message types that support all of the ORB semantics defined in the CORBA core specification. Together, the CDR formatting rules and the message formats constitute an abstract protocol called GIOP, which stands for General Inter-ORB Protocol. GIOP messages can be sent over virtually any data transport protocol, such as TCP/IP, Novell SPX, SNA protocols, etc. To ensure "out-of-the-box" interoperability between ORB products, the IIOP specification requires that ORBs send GIOP messages over TCP/IP connections because TCP/IP is the standard connection-oriented transport protocol for the Internet. To put it very simply, GIOP + TCP/IP = IIOP. Objects publish their identities and locations in the form of object references. The CORBA 2.0 specification dictates a common format for object references exchanged over IIOP, called IOR (Interoperable Object Reference) format. An IOR contains one or more profiles. Each profile describes how a client can contact and send requests to the object using a particular protocol. All legal IORs must have at least one IIOP profile, thus ensuring that wherever that reference goes, any CORBA-compliant ORB will be able to locate the object and sendPage - 6 -requests to it. The IIOP profile contains the Internet address of the object's server and a key value used by the server to find the specific object described by the reference. Object references can be converted into character strings, which can be published arbitrarily, like URLs, in email messages, files, databases, directories, and so on. Any CORBA-compliant application can convert the string into an IOR and use it to locate and invoke the object. When a client program built with ORB vendor B's product needs to talk to an object in a server built with ORB vendor A's product, the client program opens a TCP/IP connection to the server, and sends one or more IIOP request to the server. The ORB component linked into the server locates or activates the object specified in the request and invokes the appropriate method on the object. The fact that the object is not built with the same ORB product is invisible to the client. One of the most important aspects of CORBA/IIOP is its platform independence. CORBA ORBs interoperate without regard to vendor origin making CORBA/IIOP the truly ideal solution for the Internet, especially when one considers its vast size and the disparate hardware and software that is deployed there. This platform independence allows businesses to take advantage of the Internet without having to rebuild systems and networking hardware and software or forcing them to commit to a single vendor solution. CORBA/IIOP will allow most every system that is now in operation to be incorporated with comparatively minor modifications so that a business's installed base, even if it is made up of equipment and software packages from a variety of vendors, will be able to work together seamlessly. IIOP, the Internet Inter-ORB Protocol, is a projection on TCP/IP of the more general GIOP. GIOP, the General Inter-ORB Protocol which is defined in the CORBA 2.0 specifications, allows different ORBs to work together. The GIOP specification consists of three main elements: The transport management requirements The GIOP message formats The CDR, Common Data Representation, transfer syntax definition With respect to GIOP, IIOP is not a distinct interoperability protocol. IIOP implements GIOP over the TCP/IP transport layer. It extends the GIOP specification by mapping GIOP connections to TCP/IP socket connections. It is only possible for two ORBS to work together, after both the client and the server have an ORB. It is intuitive that the server would be set up with an ORB already installed and running, but not so intuitive that everyone who is going to access the environment has installed CORBA, so to solve this We just have to use an ORB written in Java, which will be in a class format like any other Java objects. We will then download the ORB within the Web browser, along with the applet that will use it. Those ORBs written in Java are generally called Java ORBs. `` ORBlets'' is also sometimes used for Java ORBs that are downloaded like an applet in a Web browser. Then the Web users can first use HTTP to download texts, images and applets, and then use IIOP for Java-CORBA, client-server communications. Moreover, with IIOP, the server programs are not limited to be located on the same machinePage - 7 -as the Web server. This means that unlike CGI applications and traditional Java, clients can communicate with any machine on the network, under the only condition that it supports IIOP. With IIOP, Web applications are not locked into a single machine that must manage both requests of HTML files and executions of server programs, either through CGI or Java. A Web server can now be installed on a dedicated Internet host that is free to serve only incoming HTTP requests, while all the other client/server applications are run on different machines.Application of CORBAEmploying CORBA, you can create an enterprise-wide system with objects distributed throughout the network. Within the enterprise system, your Windows NT server could store core file-services objects used by the application. These objects could be programmed in C++. Your mainframe could store the application's primary back-end functions--perhaps using objects programmed in COBOL. Each of your desktop systems running Windows 95 could store the application's front-end interfaces, using objects created in Visual Basic. And all of the objects could communicate by brokering requests with CORBA. IBM, Netscape Communications Corp., Oracle Corp., and Sun Microsystems Inc. – jointly are going to make enhancements to the CORBA specification in an attempt to create a component model that better interacts with a number of other component models, most notably JavaBeans (attempt to fight off Microsoft Corp.). Sun uses CORBA and IIOP to implement heterogeneous remote procedure calls in Java 1.1, and without those technologies, the Java Platform for enterprise networks wouldn't be possible. Further, the Enterprise JavaBeans API will use CORBA and IIOP to allow scalable business applications with reusable server components. There are many successful stories of companies use CORBA to solve problems or development software. For example, CNN Interactive, a division of Cable News Network from Atlanta, GA is just one of the benefices. It has built and is deploying a system using CORBA (Common Object Request Broker Architecture) to gather, store and disseminate news material. The project has enabled the organization to tie together its various clients and servers that include Windows and Mac desktops, Windows NT, Sun Solaris and Netscape server platforms so that all internal users can access the material and all servers can talk to one another. CNN Interactive has realized many benefits through its use of CORBA: Ability to build both clients and servers simultaneously and IDL interfaces allow them to be married together quickly and seamlessly. Time savings, ability to build clients and servers simultaneously is allowed because IDL interface works so well. Shortened development cycle Object reusability saves time, money and minimizes debugging of new programs.CORBA/IIOP: Empowering the WebAs the Internet and network computing evolved, protocols were needed to allow applications to work over these networks. As an application specific (actually display specific) protocol HTTP is fine but as web applications become more complex, they are running up against the limitations of HTTP. Any problem thatPage - 8 -requires dynamic interaction with the user, such as an on-line reservation system, exposes some of the problems inherent in using HTTP to build non-trivial applications. The available mechanisms, such as CGI and NSAPI, are not objectoriented -- they do not enforce any type-safety. There is no standard way of defining the service interfaces, so there is no repository of interfaces or selfdescription capability. Consequently, developers have to write more code with clumsier interfaces, the applications are more error-prone, they are harder to maintain, and are not likely to permit any meaningful re-use. So as web-based applications become more complicated CORBA/IIOP becomes the natural solution for handling them. Using CORBA means that applications can communicate with each other over the Internet no matter where they are or who built them. For the most part, moving from HTTP to IIOP will be transparent to end-users, except for the fact that with IIOP the applications they use will become more sophisticated and have better performance. Initially, web applications that use IIOP will most likely take the form of Java applets downloaded via HTTP. Once the applet is downloaded, it takes over communication with remote objects using IIOP. The CORBA model and tools that support it allow programmers to build this kind of application more quickly, develop more functionality, and make use of existing components.Figure 4. Web tiers using CORBA/IIOPCompare IIOP with DCOMCORBA and IIOP aren't the only distributed-computing solutions. Microsoft has a competing architecture called the Distributed Computing Object Model (DCOM), basically an Object Request Broker (ORB) that is part of Windows NT 4.0 and will be part of the next release of Windows.Page - 9 -It's possible to make remote procedure calls to Java using DCOM. The necessary hooks are available with Visual J++. But DCOM is available only on Windows NT 4.0 and Windows 95 (through an Internet Explorer Extension), which means you cannot use DCOM to implement communications to other operating systems. Microsoft has announced that DCOM will be ported to other platforms in the future. IIOP lets Netscape's Open Network Environment (ONE) communicate with enterprise-wide systems. IIOP also lets programmers connect Java, JavaScript, and C or C++ code to enterprise-wide systems. In Netscape Navigator, IIOP is the protocol within LiveConnect that lets applets, plug-ins, and scripts communicate with each other. If you like to see more information about the difference between DCOM and IIOP, you can visit . Using CORBA, you can easily scale up from a network of three computers to an Internet-size network. CORBA provides the framework that lets you connect objects programmed in different languages, and you can do so regardless of the platform or operating system for which the objects were designed, as long as CORBA mappings are available. Because CORBA can operate across heterogeneous platforms, it has an advantage over DCOM at the present time. But with the Microsoft powerhouse behind it, DCOM is sure to be a force to reckon with in the coming years. As some expert said, CORBA has a handicap. ORBs based on CORBA are too difficult to implement and write applications for. As a result, they take up too much time and money for most users to work with. However, as we all know that there is an inherent immaturity to distributed object computing in general. The stranglehold for CORBA, DCOM, and even Distributed Java, is the lack of expertise in the mainstream marketplace for developing distributed systems. OMG is working to deal with the complexity issue. In June 1997, a Component Initiative was submitted to the OMG Technical Committee, the purpose of which is to ease application construction by composing components with a simple scripting language.SummaryWith its backing consortium of more than 700 companies, CORBA is anything but the latest craze to hit the market. CORBA and IIOP are developments that are in the right place at the right time, and not a prototype churned out quickly in response to "web time" demands. From the beginning, CORBA/IIOP was intended to meet even the needs of the large, multinational enterprise where robustness, scalability, security, and value are critical elements of their information systems. CORBA/IIOP perfectly meets these criteria making it the architecture/protocol of choice for the future of World Wide Web.Page - 10 -。
[A]Alphamosic Graphics字母镶嵌图形Active Directory动态目录ADSI动态目录服务接口Autosizing自动调整大小Anonymous FTP 匿名文件传输Access Control 访问控制ARP地址解析协议API 应用程序界面ACL 访问控制表Attenuation 衰减ARP 地址解析协议Adapter 适配器Average seek time 平均寻道时间Authorization 授权,认证Adapter 适配器A3D 3D定位音效技术Acrobat Adobe阅读软件AC97 音响数字/模拟转换ACL 访问控制表A3D Aureal声音技术ATAPI AT附件包接口aliasing 混淆utoexec.bat 自动批处理文件API 应用程序设计接口ASP服务器开发专用脚本ADSL 非对称数字用户线路AVI 影音文件ADSL 非对称数字用户环线Algorithm 算法Alpha DEC公司微处理器Authorwsre Authorware 多媒体创作软件AMI BIOS BIOS基本输入/输出系统AGP 加速图形接口Aactive matrix 动态矩阵Aactive Network 动态网络Authentication and Authorization 鉴别与授权Auditing 审计,计审At Work Architecture,Microsoft Microsoft 的At Work体系结构[B]BISDN宽带综合业务数字网BRI基本速率接口BIS商务信息系统Bundled Software捆绑软件Bluetooth蓝牙Back Door 后门Bridge 网桥Bit 比特Backup 备份Beta Test Beta测试Bookmark 书签BASIC 编程语言B2B 商务对商务Bandwidth 带宽BBS 电子布告栏系统Beta 测试第二版bit 位Bug 程序缺陷、臭虫Byte-Oriented Protocol 面向字节规程Bus Topology 总线拓扑Bursts 突发传送Burst Mode,NetWare NetWare的突发方式Bulletin Board System 公告牌系统Brouter(Bridge/router)桥路器(桥接器/路由器)Broadcast Storm 广播风暴Broadcast 广播Broadband Services 宽带(通信)服务Broadband ISDN 宽带综合业务数字网Bridging 桥接Breakout BoX 中断盒Border Gateway Protocol 边界网关协议BNC Connector BNC连接器Block Suballocation 磁盘块再分配Bit-Oriented Protocol 面向位协议BITNET BITNET网Bindery 装订Binary Synchronous Communications 二进制同步通信(规程)Bell Operating Companies 贝尔运营公司Bell modem Standards 贝尔调制解调器标准Bellman-Ford Distance-Vector Routing Algorithm Bellman-Ford距离向量[C]CFTV付费电视CDMA码分多址技术CRC循环冗余检查CD-ROM只读光盘机CMIP 通用管理信息协议Cable 电缆Cable Modem 电缆调制解调器Chipset 芯片组CNNIC 中国互联网络信息中心CRT 阴极射线管Cache 高速缓冲存储器Client/Server 客户机/服务器Cookie 网络小甜饼Cache 高速缓冲存储器CMOS 可读写芯片CGI 公共网关接口Cryptography 密码术;密码学Corporation for Open Systems 开放系统公司Copper Distributed Data Interface 铜质分布式数据接口Cooperative Accessing 协同处理Controlled Access Unit 受控访问单元Contention 争用Container Objects 所有者对象Connection-Oriented and Connectionless Protocols 面向连接和无连接协议Connectionless Network Protocol 无连接网络协议Connectionless and Connection-Oriented Transactions 无连接和面向连接事务Configuration Management 配置管理Conditioning 调节Concentrator Devices 集中器设备Compression Techniques 压缩技术Compound Documents 复合文档Complex Instruction Set Computer 复杂指令系统计算机Communication Services 通信服务Communication Server 通信服务器Communication Controller 通信控制器Communication 通信Common Programming Interface for Communication IBM IBM的通信公用编程接口Common Open Software Environment 公用开放软件环境Common Object Request Broker Architecture 公用对象请求代管者体系结构Common Object Model 公用对象模型[D]Dvorak Keyboard Dvorak键盘DDR双倍速率SDRAMDAO 数据访问对象Daemon 后台程序DTR 数据终端就绪DASD 直接访问存储设备DMI 桌面管理界面DPI 打印分辨率DHCP动态主机配置协议Driver 驱动程序DDN 数字数据网络DRAM 动态随机存取内存DSL 数字用户环线Desktop 桌面、台式电脑Download 下载Digital camera Digital camera 数码相机Dynamic Routing 动态路由选择Dynamic Data Exchange 动态数据交换Duplex Transmission 双工传输Duplexed Systems 双工系统Downsizing 向下规模化,下移DOS Requester,NetWare NetWare礑OS请求解释器Domains 域Domain Name Service 域名服务Document Management 文档管理Document Interchange Standards 文档交换标准Distributed System Object Model 分布式系统对象模型Distributed Relational Database Architecture 分布式关系数据库体系结构Distributed Queue Dual Bus 分布式队列双总线Distributed Processing 分布式处理Distributed Objects EveryWhere(DOE),SunSoft SunSoft的全分布式对象Distributed Object Management Systems 分布式对象管理系统Distributed Object Management Facility (DOMF),Hewlett-Packard HP的分布式对象管理设施Distributed Name Service,DEC DEC的分布式命名服务Distributed Management Environment 分布式管理环境Distributed Management 分布式管理Distributed File Systems 分布式文件系统Distributed File System,OSF DCE OSF DCE 的分布式文件系统Distributed Database 分布式数据库Distributed Computing Environment(DCE),OSF 开放软件基金会(OSF)的分布式计算环境[E]Edge Device 边界设备Email Filter 电子邮件过滤器EPP 增强型并行端口Extranet 外联网EISA总线扩展工业标准结构External Bus 外部总线EDO RAM 动态存储器Ethernet 以太网Email client 电子邮件客户端程序Exterior Gateway Protocols 外部网关协议Extended Industry Standard Architecture Bus 扩展工业标准体系结构(EISA)总线EtherTalk EtherTalk 适配器Ethernet100VG-AnyLAN(Voice Grade)100VG-AnyLAN(语音级)以太网Ethernet 100Base-X 100Base-X以太网Ethernet 10BaSe-T(Twisted-pair)10Base -T(双绞线)以太网Ethernet 10Base-5(Thicknet)10Base-5(粗电缆)以太网Ethernet 10Base-2(Thinnet)10Base-2(细电缆)以太网Ethernet 以太网Error Detection and Correction 检错和纠错Enterprise System Connections(SCON),IBM IBM的企业级系统连接Enterprise System Architecture,IBM IBM的企业级系统体系结构Enterprise Networks 企业网Enterprise Management Architecture,DEC DEC的企业(点)管理体系结构End System-to-Intermediate System(ES-IS)Routing 端系统对中间系统Encryption 加密Encina Encina应用程序Encapsulation 封装E-Mail电子函件Elevator Seeking 电梯式查找[寻道]算法Electronic Software Distribution(ESD)and Licensing 电子软件分发(ESD)和特许(ESL)Electronic Mail Broadcasts to a Roaming Computer 对漫游计算机的电子函件广播Electronic Mail 电子函件Electronic Industries Association 电子工业协会Electronic Data Interchange 电子数据交换Electromagnetic Interference 电磁干扰EISA(Extended Industry Standard Architecture)Bus EISA(扩展工业标准体系结构)总线EIA/TIA 568 Commercial Building Wiring Standard EIA/TIA 568 商用建[F]File Server文件服务器FCC & BCC转发与密送Flash动画制作软件Failback 自动恢复FAT 文件分配表FTP Server 文件传输服务器Fax modem 传真调制解调器FDDI 光纤分布式数据接口FAT 文件分配表FLASH 动感网页制作工具FTP 文件传输协议FAT32 32位文件分配表Firewall 防火墙Flash FlashFull-Duplex Transmissions 全双工传输Front-End System 前端(台)系统Front-End Processor 前端(台)处理机Frequency Division Multiplexing 频分多路复用Frames in Communication 通信帧Frame Relay 帧中继Fractional T1/Fractional T3 部分T1/部分T3Forwarding 转发Flow Control Methods 流控方法FINGER FINGER实用程序Filtering 筛选,过滤File Transfer Protocol 文件传输协议File Transfer Access and Management 文件传输访问和管理File Systems in the Network Environment 网络环境中的文件系统File Systems,Distributed 分布式文件系统Filesharing 文件共享File Server 文件服务器Fileand Directory Permissions,Windows NT Windows NT的文件和目录许File and Directory Attributes,NetWare NetWare的文件和目录属性Fiber Channel 光纤通道Fiber-Optic Cable 光缆Fiber Distributed Data Interface 光纤分布式数据接口Federated Naming Services,SunSoft ONC SunSoft ONC的联合命名服务Federated Database 联合数据库Federal Information Processing Standards 联邦信息处理标准FAX Servers 传真服务器[G]GPRS通用分组无线业务GPRS通用分组无线业务3G 第三代移动通信GUI 图形用户界面Gateway 网关Groupware 群件Groups 组Grounding Problems 接地问题Government OSI Profile 政府OSI框架文件Glue,Oracle Oracle的Glue解决方法Global Naming Services 全局命名服务Gateway-to-Gateway Protocol 网关对网关协议Gateway 网关,信关[H]HDF 层次型数据格式Hardware 硬件HTTP 超文本传输协议Hacker 黑客HTML超文本标记语言HUB 集线器HTTP 超文本传输协议HTML 超文本链接标示语言Hard Disk 硬盘Hubs Hub,集线器,集中器Hub Management Interface Hub管理接口Hot Fix,Novell NetWare Novell NetWare的热修复Host 主机Horizontal Wiring System 水平布线系统Hop 跳跃(计)数,过路数,中继数Homogeneous Network Environments 同构网络环境Home Directory 私人目录High-Speed Serial Interface 高速串行接口High-Speed Networking 高速联网高速网包括传输速度高于在1990年前占主导地位的传统传输速度的LAN和WHigh Performance Routing(HPR),IBM IBM 的高性能路由选择High Performance Parallel Interface 高性能并行接口High Performance File System 高性能文件系统High-Level Data Link Control 高级数据链路控制(规程)High Capacity Storage System(HCSS),Novell NetWare Novell NetWare的大容量存储系统High-bit-rate Digital Subscriber Line 高位速率数字用户专用线Heterogeneous Network Environments 异构网络环境Hermes,Microsoft Microsoft的企业网管理系统Handshaking 握手,联络,信号交换Half-Duplex Transmission 半双工传输[I]IMAP4信息访问协议4Insert Mode插入模式iPAQ Pocket PCIIS Internet信息服务器IB 智能大厦IrDA 红外线传输装置IIS 网络信息服务器IA 信息家电INF File 适配器安装信息文件Instructions Cache 指令缓存INF File 信息文件Internet backbone Internet骨干网Interface 界面Icon 图标Icon 图标Icon 图标Icon 图标Icon 图标IT 信息技术产业Internal Bus 内部总线IIS Internet信息服务器IT 信息技术IDE 集成驱动电子设备IP 网络协议IRC 互联网中转聊天ICP 互联网内容提供商ICP 互联网内容提供商Isohronous Service 等时服务IS-IS Interdomain Routing Protocol IS-IS 域间路由选择协议ISDN/B-ISDN 综合业务数字网/宽带综合业务数字网Iridium System 铱系统Interrupts 中断Interprocess Communication 进程间通信Interoperability 互操作性,互用性Internetwork Routing 网间路由选择Internetwork Packet Exchange 网间分组交换Internetworking 网络互联Internet Protocol Internet网络协议,因特网协议Internet Engineering Task Force Internet工程任务组Internet Internet网因特网[J]JPEG 联合图像专家组规范JSP网页控制技术Java编程语言Jukebox Optical Storage Device 自动换盘光盘存储设备Jabber 超时传输,Jabber传输[K]Key recovry 密钥恢复Knowbots Knowbots智能程序Key Encryption Technology 密钥加密技术Kernel 操作系统内核Kermit Kermit文件运输协议Kerberos Authentication Kerberos鉴别[L]LCD 液晶显示屏Light Cabel 光缆Leased line 专线LPT 打印终端LPT 打印终端接口LAN 局域网LU 6.2 LU 6.2协议Lotus Notes Lotus的Notes软件Logons and Logon Accounts 用户登录和登录帐号Login Scripts 登录原语Logical Units 逻辑单元Logical Links 逻辑链路LocalTalk LocalTalk网Local Procedure Calls 本地过程调用Local Loops 局部环路Local Groups 本地组Local Exchange Carrier 本地交换电信局Local Area Transport 局域传输协议Local Area NetWorks 局域网Local Access and Transport Area 本地访问和传输区域Load-Balancing Bridges 负载平衡桥接器,负载平衡网桥Link State Routing 链路状态路由选择Link Services Protocol,NetWare NetWare的链路服务协议Link Layer 链路层Link Access Procedure 链路访问规程Line Conditioning 线路调节Licensing Server API 许可证服务器API Legacy Systems 保留系统Leased Line 租用线路Learning Bridges 自学习桥接器Leaf Objects 叶对象Layered Architecture 分层体系结构Large Internetwork Packet Exchange 大型网间分组交换Laptop Connections 膝上机联网LAN Workplace Products,Novell Novell的LAN Workplace产品,Novell的局域网Workplace产品LAN Troubleshooting 局域网故障诊断LANtastic LANtastic局域网操作系统LAN Server 局域网服务器LAN Requester 局域网请求解释器LAN Manager,Microsoft Microsoft的局域网管理器,Microsoft的LAN Manager[M]Mosaic 摩塞克浏览器MO 磁性光盘Mac OS Mac操作系统MO 磁光盘MCSE 微软认证系统工程师MUD 分配角色的游戏环境Mainbus 系统总线Mainboard 主板MAN 城域网Memory Stick Memory Stick 存储棒MSI MSI 微星科技Multistation Access Unit 多站访问部件Multipurpose Internet Mail Extension Internet 多功能邮件传递扩展标准Multiprotocol Transport Network(MPTN),IBM IBM的多协议传输网络Multiprotocol Router 多协议路由器Multiprotocol Networks 多协议网络Multiprocessor Systems 多处理器系统Multiprocessing 多处理器处理Multiplexing 多路复用技术Multimedia 多媒体Multidrop(Multipoint)Connection 多点连接MOTIS(Message Oriented Text Interchange System)MOTIS(面向消息的文本交换系统)Motif Motif 工具Modems 调制解调器Mobile Computing 移动计算Mirroring 镜像Middleware 中间件Microwave Communication 微波通信Micro-to-Mainframe Connectivity 微型计算机到大型计算机的互联性Microsoft At Work Architecture Microsoft At Work体系结构Microsegmentation 微分段Microkernel 微内核Microcom Networking Protocol(MNP)Microcom的联网协议MicroChannel Architecture(MCA)Bus 微通道体系结构(MCA)总线Metropolitan Area Networks 城域网Messaging Application Programming Interface 消息应用程序编程接口Messaging API,Inter-Application 应用程序间的消息传递APIMessaging API,E-mail E-mail的消息传递APIMessage Transfer Agent 消息传送代理Message Queuing Interface(MAI),IBM IBM 的消息排队接口[N]NOC网络操作中心NAT网址解析NOC网络操作中心NAT 网址解析NDIS 网络驱动程序接口Network Architecture 网络体系结构NSR 渲染引擎NFS 网络文件系统NAT 网址转换NWLink IPX/SPX协议微软执行部分NetBIOS 网络基本输入/输出系统Network interface card 网卡NTFS(New Technology File System)NTFS (新技术文件系统)Novell Novell公司Node 节点,结点,网点Network Troubleshooting 网络故障诊断与维修Network Service Protocol,DEC DEC网络服务协议Networks 网络NetWork Management 网络管理Network Layer,OSI Model OSI模型的网络层Network Interface Card 网络接口卡Networking Blueprint 联网方案Network File System 网络文件系统Network Dynamic Data Exchange 网络动态数据交换Network Driver Standards 网络驱动程序标准Network Driver Interface Specification 网络驱动程序接口规范NetWork Control Program 网络控制程序Network Architecture 网络体系结构NetWare Volumes NetWare的(文件)卷宗NetWare Shell NetWare工作站外壳程序NetWare SFT Level ⅢNetWare的三级系统容错NetWare Products NetWare软件产品NetWare Loadable Module NetWare的可装入模块NetWare Link Service Protocol NetWare的链路服务协议NetWare Electronic Software Distribution NetWare的电子软件分发NetWare Disks,Partitions,and Volumes NetWare的磁盘、分区和卷宗NetWare Core Protocol NetWare的核心协议NetWare NetWare网络操作系统NetView,IBM IBM的NetView网络管理系统NetLS(Network License Server)NetLS(网络许可权服务器)[O]OEM原装备生产厂商OH调制解调器连线OSD 屏幕视控系统OAW 光学辅助温式技术OA 办公自动化Open Source 开放源代码OSF/1,Open Software Foundation 开放软件基金会OSF/1操作系统OS/2 OS/2操作系统Organization Containers 机构包容器对象Optical Libraries 光盘库,光盘存储库Optical Fiber 光纤Open View Management System,Hewlett-Packard HP的Open VieW管理系统Open Systems Interconnection(OSI)Model 开放式系统互联(OSI)模型Open Systems 开放式系统Open Software Foundation(OSF)开放软件基金会(OSF)Open Shortest Path First(OSPF)Protocol 优先开放最短路径(OSPF)协议Open Network Computing(ONC),SunSoft SunSoft的开放式网络计算环境Open Messaging Interface(OMI)开放消息传递接口Open Document Architecture 开放文档体系结构OpenDoc Alliance,Apple Apple的OpenDoc 联盟OPEN DECconnect Structured Wiring 开放DECconnect结构化布线系统OpenData-link Interface 开放数据链路接口Open Database Connectivity(ODBC),Microsoft Microsoft的开放式数据库互联性Open Collaborative Environment(OCE),Apple Apple的开放协作环境On-line Transaction Processing 联机(在线)事务处理Objects,NetWare Directory Services NetWare 目录服务中的对象Objects 对象,目标,实体Object Request Broker 对象请求代管者Object-Oriented echnology 面向对象技术Object-Oriented Interfaces and Operating Systems 面向对象接口和操作系统Object-Oriented Database 面向对象数据库Object Management Group 对象管理组织Object Management Architecture 对象管理体系结构Object Linkingand Embedding 对象链接与嵌入Object Broker,DEC DEC的对象代理者软件,DEC的Object Broker软件[P]Packetsniffer包嗅探器PHP4嵌入式脚本描述语言Push Technology推技术PVM并行虚拟机Path 路径、通路PKI 公开密钥基础设施Pull-down Menu 下拉菜单PAP 密码验证协议PnP 即插即用PCL 打印机指令语言PDS 个人数字系统PCI 周边元件扩展接口POP3 高级网络协议PHP 服务器端编程语言Plasma Display Plasma Display 等离子显示器Punchdown Block 穿孔板,分线盒Pulse-Code Modulation 脉码调制,脉冲代码调制Public Switched Data NetWork 公共交换数据网Public Key Cryptographic Systems 公开密钥加密系统Public Data NetWorks(PDNs)公用数据网(PDN)PU2.1 物理单元(PU)2.1Protocol Stack 协议栈Protocols,Communication 通信协议Protocol Data Unit 协议数据单元Protocol Converters 协议转换器Protocol Analyzers 协议分析器(程序)Protected of Data 数据的保护Protected Mode (受)保护模式Properties of Objects 对象的性质,对象的特性Propagation Delay 传播延迟Project DOE(Distributed Objects Everywhere)企业(工程)DOE(全分布式对象)Private Network 私用网,专用网Private Key Cryptography 私用密钥密码学Privacy Enhanced Mail增强安全的私人函件Print Server 打印服务器Printingon NetWare Networks NetWare网上打印(服务)Premises Distribution System 规整化布线系统Preemptive Multitasking 抢先多任务处理PowerPC PowerPC微处理里器系列PowerOpen Environment PowerOpen环境Q]Quadrature Amplitude Modulation 正交振幅调制,正交调幅[R]RDRAM高频DRAMRAID冗余独立磁盘阵列Registry 注册表RISC CPU 精简指令集CPURegistry 注册表RDRAM Rambus动态随机存取内存RSA Data Security RSA数据安全性RSA数据安全性Routing Protocols 路由选择协议Routing Information Protocol 路由选择信息协议Routing,OSI OSI的路由选择Routing,NetWare NetWare的路由选择Routing,Internet Internet路由选择Routing,IBM IBM路由选择Routing,AppleTalk AppleTalk路由选择AppleTalk路由选择Routers 路由器RJ-11and RJ-45 Connections RJ-11和RJ -45连接Ring Network Topology 环网拓扑结构环网拓扑结构Rights(Permissions)in Windows NT Windows NT权限(准许权限)Rightsin Windows for Workgroups Windows for Workgroups中的权限Rightsin Novell NetWare Novell NetWare中的权限RG-62 Coaxial Cable RG-62同轴电缆RG-58 Coaxial Cable RG-58同轴电缆Replication 复制Repeater 中继器,重复器Remote Procedure Call 远程过程调用Remote Access Software 远程访问软件Regional Bell Operating Companies(RBOC)地方贝尔运营公司Redundant Arrays of Inexpensive Disks (RAID)廉价磁盘冗余阵列Reduced Instruction Set Computer 精简指令系统(集)计算机Redirector 重定向器(程序)RAM Mobile Data RAM 移动数据公司[S]SSL安全套层SAA系统应用架构SMP 对称多处理结构SET 安全电子商务协议SNA 系统网络结构Subnet 子网SSL 安全套接层协议Server 服务器SMP 对称式多处理器Serial Interface 串行接口SOHO 小型办公与家庭办公Scanner 扫描仪Search Engine 搜索引擎Screen Saver 屏幕保护程序Socket 7 接口结构SONET 同步光纤网SMTP 简单邮件传送协议SCSI 小型计算机系统接口SGRAM 同步图形动态随机存取内存SDRAM 同步动态随机存取内存SystemView,IBM IBM的SystemView网络管理系统Systems Network Architecture(SNA),IBMIBM 系统网络体系结构Systems Application Architecture 系统应用体系结构System Object Model(SOM),IBM IBM的系统对象模型(SOM)System Fault Tolerance 系统容错Synchronous Optical Network 同步光纤网Synchronous Data Link Control 同步数据链路控制(规程)Synchronous Communication 同步通信Symmetrical Multiprocessing 对称多处理Switching Hubs 交换式集线器Switched Virtual Circuit 交换式虚电路Switched Services 交换式服务Switched Multimegabit Data Service 交换式多兆位数据服务Switched-56 Services Switched-56服务,交换式56服务Surge Suppressors 浪涌电压抑制器,电涌抑制器Supervisor 超级用户,监管员SunOS,SunSoft SunSoft的SunOS操作系统SunNet Manager,Sun Microsystems,Inc.Sun公司的SunNet ManagerSun Microsystems,Inc.Sun 微系统公司SunLink Network Sunlink网[T]TFT 有源矩阵彩色显示器TFTP 小文件传输协议Transport layer 传输层Taskbar 任务条Twisted-Pair Cable 双绞线,双绞线电缆Tuxedo,UNIX System Laboratories UNIX系统实验室的Tuxedo中间件Tunneling 管道传送,隧道,管道传输Trustees 受托者Troubleshooting 故障诊断与维修,排错Trivial File Transfer Protocol 普通文件运输协议Transport Protocol 传输协议Transport Layer Interface 运输层接口Transport Layer,OSI Model OSI模型的运输层Transmission Media,Methods,and Equipment 传输介质、方法和设备Transmission Control Protocol/Internet Protocol 传输控制协议/Internet协议Transfer Rates 传输率Transceiver,Ethernet 以太网收发器,以太网的接收发送器Transaction Processing 事务处理Topology 拓扑结构Token Ring NetWork 令牌环网Token Bus NetWork 令牌总线网Token and Token Passing Access Methods 令牌和令牌传递访问方式Time Synchronization Services 时间同步服务Time Domain Reflectometer 时域反射计(仪,器)Throughput 吞吐率,处理能力Threads 线程Testing Equipment and Techniques 测试设备和技术Terminator 终端器,终结器,终止器Terminal Servers 终端服务器Terminal 终端Telnet Telnet程序Telenet Telenet网Telecommunication 电信,远程通信Technical Office Protocol 技术办公系统协议TeamLinks,DEC DEC的群件TeamLinks Taligent Taligent公司T1/T3 Services T1/T3服务[U]UDA统一数据读取UML 统一建模语言UTP 无屏蔽双绞线URL 统一资源定位格式UPS 不间断电源Ultra DMA 33 同步DMA协定UNIX 32位操作系统UNIX 操作系统USB 通用串行总线Users and Groups 用户和(小)组User Datagram Protocol 用户数据报协议User Agent 用户代理USENET USENET网Unshielded Twisted Pair 非屏蔽双绞线UNIX-to-UNIX Copy Program UNIX系统间文件拷贝程序UNIX System Laboratories UNIX系统实验室UNIX International UNIX国际UNIX UNIX操作系统Unit of Work 作业单元,工作单元Uninterruptible Power Supply 不间断电源Unified Network Management Architecture (UNMA),AT&T AT&T的统一网络管理体系结构[V]Virtual Desktop虚拟桌面VoxML语音标记语言Video Compression 视频压缩Virtual reality 虚拟现实VOD 视频传播系统VESA 视频电子标准协会VRML 虚拟现实建模语言VESA 视频电子标准Volume Spanning 卷宗的跨越Volumes,NetWare NetWare的卷宗Virtual Terminal(VT)虚拟终端Virtual Telecommunication Access Method 虚拟远程通信访问方法Virtually Integrated Technical Architecture Lifecycle 虚拟集成技术体系结构生命周期Virtual File Systems 虚拟文件系统Virtual Data Networks 虚拟数据网Virtual Circuit 虚电路VINES,Banyan Banyan的VINES操作系统Videoconferencing and Desktop Video 电视会议和台式(桌面)视频系统Very Small Aperture Terminals(VSATs)卫星小站电路设备Vertical Wiring 垂直布线系统Vendor Independent Messaging (VIM),Lotus Lotus 的厂商无关消息传递应用程序编程接口“V dot”Standards,CCITT CCITT(ITU)的“V点”标准VAX,Digital Equipment Corporation(DEC)数字设备公司(DEC)的VAXValue-Added Carrier 增值网[W]WINS IP解析WYSIWYG 所见即所得WEB VOD WEB视频点播Wizard 向导Wavetable 波表合成Windows CE 操作系统WAP 无线应用协议Workstation 工作站Workplace OS Workplace操作系统Workgroups 工作组,(用户)组Workflow Software 工作流软件Wiring 布线Wireless Mobile Communication 无线移动通信Wireless LAN Communication 无线局域网通信Windows Telephony Application Interface Windows 电话应用程序接口Windows Sockets API Windows套节字(嵌套字)APIWindows Open System Architecture(WOSA)Windows开放式系统体系结构(WOSA)Windows NT Advanced Server,Microsoft Microsoft的Windows NT高级服务器操作系统Windows NT,Microsoft Microsoft的Windows NT操作系统Windows for Workgroups,Microsoft Microsoft的Windows for Workgroups操作系统Wide Area Networks 广域网WHOIS(“Who Is”)WHOIS数据库[X]XUL扩展用户接口语言XON/XOFF异步通信协议X2/DSL调制解调器XSLT XSL变换描述XUL 扩展用户接口语言XQL XML查询语言XML 扩展标签语言X Window X窗口,X Windows图形用户接口X/Open X/Open公司,X/Open国际联盟有限公司XMODEM Protocol XMODEM协议Xerox Network System Xerox网络系统X.500 Directory Services X.500目录服务X.400 Message Handling System X.400消息处理系统X.25 X.25 协议[Y]Ymodem Ymodem协议[Z]Zmodem Zmodem协议Zip Drive Zip驱动器ZIP 压缩文件格式Zone Multicast Address,AppleTalk AppleTalk的区广播地址Zone Information Table(ZIT),AppleTalk AppleTalk 的区信息表Zone Information Protocol(ZIP),AppleTalkAppleTalk的区信息协议Zone,AppleTalk AppleTalk 的区,AppleTalk 的域ZMODEM Protocol ZMODEM 协议。
The WITAS UA V System Demonstration Mariusz Wzorek and Patrick DohertyDepartment of Computer and Information ScienceLink¨o ping University,SE-58183Link¨o ping,Sweden{marwz,patdo}@ida.liu.seThe Autonomous UA V Technologies Laboratory1at Link¨o ping University,Sweden,has been developing fully autonomous rotor-based UA V systems in the mini-and micro-UA V class.Our current system design is the result of an evolutionary process based on many years of develop-ing,testing and maintaining sophisticated UA V systems.In particular,we have used the Yamaha RMAX helicopter plat-form(Fig.1)and developed a number of micro air vehicles fromscratch.Figure1:The WITAS UA V platform. Integrating both high-and low-end functionality seam-lessly in autonomous architectures is currently one of the major open problems in robotics research.UA V platforms offer an especially difficult challenge in comparison with ground robotic systems due to the often tight time con-straints present in the plan generation,execution and recon-figuration stages in many complex mission scenarios.The WITAS2UA V system built at our Lab is fully intergrated with the Yamaha RMAX platform.It is highly distributed system that includes components ranging from control to deliberation.Its backbone is implemented using CORBA (Common Object Request Broker Architecture).The inte-gration between control and deliberative components have Copyright c 2006,American Association for Artificial Intelli-gence().All rights reserved.1www.ida.liu.se/patdo/auttek/2WITAS is an acronym for the Wallenberg Information Tech-nology and Autonomous Systems Lab which hosted a long term UA V research project(1997-2004).This research is partially founded by the Wallenberg Foundation under the WITAS Project and an NFFP4-S4203grant.been the driving force of the WITAS UA V system design. Much effort has also gone into the development of useful ground control station interfaces which encourage the idea of push-button missions,letting the system itself plan and execute complex missions with as little effort as possible re-quired from the ground operator other than stating mission goals at a high-level of abstraction and monitoring the exe-cution of the ensuing mission.The mission scenarios we use are generic in nature and may be instantiated relative to dif-ferent applications.For example,the functionality required for the monitoring/surveillance mission described below can be modified slightly and used in mission scenarios such as power line inspection.An example of such a push-button mission that has been used as an application scenario in our research is a com-bined monitoring/surveillance and photogrammetry mission out in thefield in an urban area with the goal of investigat-ing facades of building structures and gathering both video sequences and photographs of building facades.Let us as-sume the operational environment is in an urban area with a complex configuration of building and road structures.A number of these physical structures are of interest since one has previously observed suspicious behavior and suspects the possibility of terrorist activity.The goal of the mission is to investigate a number of these buildings and acquire video and photos from each of the building’s facades.It is assumed the UA V has a3D model of the area and a Geographical Information System(GIS)with building and road structure information on-line.The only ground operator’s task is to simply choose build-ing structures of interest on the map and press a button.The multi-segment mission is automatically generated tofly to each building,move to waypoints to view each facade,po-sition the camera accordingly and gather and/or relay video sequence.The motion plans generated are also guaranteed to be collision-free from static obstacles.If the ground oper-ator is satisfied with the generated mission,he or she simply clicks a confirm button and the mission begins.During the mission,the ground operator has the possibility of suspend-ing the mission to take a closer look at interesting facades of buildings,perhaps taking a closer look into windows or openings and then continuing the mission.This mission has been successfully executed robustly and repeatedly from take-off to landing using the RMAX.Other mission scenario includes gathering video footage of an arbitrary polygonal area using multiple UA V plat-forms.The ground operator would simply mark the area to be scanned and the algorithm would calculate multiple multi-segment paths for each UA V.The algorithm takes into account the maximum velocity of each UA V and its camera aparture.The collision-free motion plans are distributed to each UA V platform and executed.Such a mission has been executed using two RMAX platforms from take-off to land-ing.A hybrid deliberative/reactive software architecture(Do-herty et al.2004)has been developed for the WITAS UA V system.Conceptually,it is a layered,hierarchical system with deliberative,reactive and control components,although the system can easily support both vertical and horizontal data and controlflow.The main execution component is a reactive Task Procedure(TP).The TP is a high-level proce-dural execution component which provides a computational mechanism for achieving different robotic behaviors.TPs can call both deliberative andflight control services concur-rently.We have developed and tested several autonomousflight control modes:take-off,landing via visual navigation (Merz,Duranti,&Conte2004),hovering,dynamic path fol-lowing(Conte,Duranti,&Merz2004),and reactiveflight modes for tracking and interception.There are currently two motion planners used in the sys-tem which are based on two sampling techniqes,namely Probabilistic Roadmaps(PRM)and Rapidly Exploring Ran-dom Trees(RRT)(Pettersson2006;Wzorek&Doherty 2006).The planners use a GIS database available on-board,that provides a3D map of the evironment,to produce collision-free paths.The paths are represented as a set of cu-bic splines.The path planners ensure continuity of thefirst-order derivative(i.e.velocity)at the waypoints between seg-ments.Different contraints can be added dynamically during run-time which are taken into account while planning.Con-straints include e.g.no-fly zones,bounds on minimum and maximum altitude etc.The WITAS system also includes an execution monitor-ing component which uses the linear temporal logic(LTL), with extensions to handle intervals,to express safety con-straints of the execution(Heintz&Doherty2006).The LTL formulas are evaluated on-line,as the execution takes place, over a sequence of states by a method called progression. This state sequence is created by a component called the dynamic object repository(DOR),which takes streams of sensor data and extracts a sequence of coherent states as a stream of“current”states,taking different delays and sam-pling rates into account.If a formula is evaluated to false, then the UA V knows that a safety contraint has been violated and can execute an appropriate recovery action.To operate our UA Vs we have devoloped a number of graphical user interfaces ranging from low-level con-trol/flight test interface to high-level mission specification interface.The latter has been implemented on the standard PC machine and a mobile phone.The control interface is more a traditional user interface used mainly for development of different control modes and image processing algorithms.It displays telemetry data(i.e. position,altitude etc.)transmitted by the UA V during the flight.It also provides a set of indicators showing the status of the UA V and its sensors(e.g.GPS sensor).The ground operator can view debug messages that are sent by UA V’s control modes and image processing components.The in-terface can display the video stream with overlayed image processing results from the on-board camera.The high-level graphical user interface is used to specify missions were deliberative services are used.Such missions include basicflying to a coordinate with use of the GIS and the path planners and more sofisticated missions as the one descibed earlier.Our simulation environment includes3D vizualization tool that can display arbitrary environment models.It can display many objects with real-time update e.g.helicopters, simulated cars,planned trajectories,flown trajectories,view from the helicopter’s camera etc.The visualizer is used dur-ing simulation and realflight tests.We use two simulators of the WITAS RMAX platform. First one,is a simple non-real-time simulator which does not include the helicopter dynamics.Second one,includes dynamic model of the helicopter and it is strictly used on the helicopter computers during hardware in the loop simu-lation.The sensor noise is not modeled.The model of the RMAX helicopter was created by using model identification techniques.Demonstaration of the system includes running both mis-sion scenarios described earlier i.e.building survey and scanning of the area.If the quality of the Internet connec-tion allows,we will give a live demonstration of our system with the hardware in the loop.The low-level part of our sys-tem will be running on the RMAX helicopters’computers at Link¨o ping University in Sweden.ReferencesConte,G.;Duranti,S.;and Merz,T.2004.Dynamic3D Path Following for an Autonomous Helicopter.In Proc.of the IFAC Symp.on Intelligent Autonomous Vehicles. Doherty,P.;Haslum,P.;Heintz,F.;Merz,T.;Persson,T.; and Wingman,B.2004.A Distributed Architecture for Au-tonomous Unmanned Aerial Vehicle Experimentation.In Proc.of the Int.Symp.on Distributed Autonomous Robotic Systems,221–230.Heintz,F.,and Doherty,P.2006.A Knowledge Processing Middleware Framework and its Relation to the JDL Data Fusion Model.Journal of Intelligent and Fuzzy Systems. To appear.Merz,T.;Duranti,S.;and Conte,G.2004.Autonomous Landing of an Unmanned Helicopter based on Vision and Inertial Sensing.In Proc.of the9th International Sympo-sium on Experimental Robotics.Pettersson,ing Randomized Algorithms for Helicopter Path Planning.Lic.Thesis Link¨o ping Univer-sity.Wzorek,M.,and Doherty,P.2006.Reconfigurable Path Planning for an Autonomous Unmanned Aerial Vehicle.In Proceedings of the ICAPS-06.To Appear.。