|
![]() |
Glossary
Applets An application interface where referencing (perhaps by a mouse click) a remote application as a hyperlink to a server causes it to be downloaded and run on the client. attribute That part of an IDL interface that is similar to a public class field or C++ data member. The idltojava compiler maps an OMG IDL attribute to accessor and modifier methods in the Java programming language. CORBA attributes correspond closely to JavaBeans properties. avatar Geometry within a VRML scene that represents the user. The location of the avatar corresponds to the users viewing position behaviours A general term in VRML 2.0 to animate objects and to specify interactions among objects through output events, input events. routes, sensors and scripts. CGI Common-Gateway-Interface A method for communication between a browser and a server for processing user input through a script and generating output that is sent back to the user. This script is usually placed in the cgi-bin directory of the server. client Any code which invokes an operation on a distributed object. A client might itself be a CORBA object, or it might be a non-object-oriented program, but while invoking a method on a CORBA object, it is said to be acting as client. client stub A Java programming language class generated by idltojava and used transparently by the client ORB during object invocation. The remote object reference held by the client points to the client stub. This stub is specific to the IDL interface from which it was generated, and it contains the information needed for the client to invoke a method on the CORBA object that was defined in the IDL interface. COM (Common Object Model) Microsoft's windows object model, which is being extended to distributed systems and multi-tiered architectures. ActiveX controls are an important class of COM object, which implement the component model of software. The distributed version of COM used to be called DCOM. Component An object which can be modified and reused without prior knowledge of the Implementation details. ComponentWare An approach to software engineering with software modules developed as objects with particular design frameworks (rules for naming and module architecture) and with visual editors both to interface to properties of each module and also to link modules together. Component Model The latest tidal wave in Object Oriented Programming which facilitates the reuse of objects without exposing any implementation details whatsoever to the end-user or programmer. CORBA (Common Object Request Broker Architecture) An approach to cross-platform cross-language distributed object developed by a broad industry group, the OMG. CORBA specifies basic services (such as naming, trading, persistence) the protocol IIOP used by communicating ORBS, and is developing higher level facilities which are object architectures for specialized domains such as banking. CORBA Facility CORBA Facilities, occupy the conceptual void between the enabling technology defined by CORBA and Object Services, and the application-specific services, that the OMA labels "Application Objects". CORBA Horizontal Facility These Facilities are shared by many or most systems. There are four major sets of these facilities: User Interface, Information Management, Systems Management and Task Management. CORBA Vertical Facility Supports domain-specific tasks that are associated with vertical market segments. CORBA Services While the ORB specifies a systems grammar, Object Services represent its most basic vocabulary; the essential interfaces needed to create an object, intoduce it into its environment, use and modify its features , and so forth. These services, bundled with every ORB, constitute the basic enabling technology of an OMA-compliant software system. Data Mining This discribes the search and extraction of unexpected information from large databases. In a database of credit card transactions, conventional database search will generate monthly statements for each customer. Data mining will discover using ingenious algorithms, a linked set of records corresponding to fraudulent activity. Distributed Computing The use of networked hetrogeneous computers to solve a single problem. The nodes (individual computers) are typically tightly coupled. Distributed Computing Environments The OSF Distributed Computing Environment (DCE) is a comprehensive, integrated set of services that supports the development, use and maintainence of distributed applications. It provides a uniform set of services, anywhere in the network, enabling applications to utilize the power of a hetrogeneous network of computers, http://www.osf.org/dce Enterprise JavaBeans A cross-platform component architecture for the development and deployment of multi-tier, distributed, scalable, object-oriented Java applications. HLA (High Level Architecture) The High Level Architecture provides an architecture for modeling and simulation. The intent is to foster the interoperation of simulations(federation) and the re-use of simulation components. HPcc (High Performance commodity computing) NPAC project to develop a commodity computing based high performance computing software environment. Note that we have dropped "communications" referred to in the classic HPCC acronym. This is not because it is unimportant but rather because a commodity approach to high performance networking is already being adopted. We focus on high level services such as programming, data access and visualization that we abstract to the rather wishy-washy "computing" in the HPcc acronym. HPCC (High Performance Computing and Communication) Originally a formal federal initiative but even after this ended in 1996, this term is used to describe the field devoted to solving large-scale problems with powerful computers and networks. HPDC (High Performance Dictributed Computing) The use of distributed networked computers to achieve high performance on a single problem, that is the computers are coordinated and synchronized to achieve a common goal. HPF(High Performance Fortran) A language specification published in 1993 by experts in compiler writing and parallel computation, the aim of which is to define a set of directives which allow a Fortran 90 program to run effeciently on distributed memory machines. HPJava An initiative by ARPA Parallel Compiler Runtime Consortium to address the use of Java for high performance language compilers and interpreters. Hyperlink The user-level mechanism (remote address specified in a HTML or VRML object) by which remote services are accessed by Web Clients or Web Servers. HTML (Hypertext Markup Language) A syntax for describing documents to be displayed on the World Wide Web HTTP (Hyper Text Transport Mechanism) A stateless transport protocol allowing control information and data to be transmitted between web clients and servers. HTTP is the de facto standard for Web Commmunication. idltojava compiler A tool that takes an interface written in OMG IDL and produces Java programming language interfaces and classes that represent the mapping from the IDL interface to the Java programming language. The resulting files are .java files. IIOP (Internet Inter Orb Protocol) A stateful protocol allowing CORBA ORB's to communicate with each other, and transfer both the request for a desired service and the returned result. implementation A concrete class that defines the behavior for all of the operations and attributes of the IDL interface it supports. A servant object is an instance of an implementation. There may be many implementations of a single interface. initial naming context The NamingContext object returned by a call to the method orb.resolve_initial_references("NameService"). It is an object reference to the COS Naming Service registered with the ORB and can be used to create other NamingContext objects. See also: naming context Internet A complex set of interlinked national and global networks using the IP messaging protocol, and transferring data, electronic mail, and World Wide Web. invocation The process of performing a method call on a CORBA object, which can be done without knowledge of the object's location on the network. Static invocation, which uses a client stub for the invocation and a server skeleton for the service being invoked, is used when the interface of the object is known at compile time. If the interface is not known at compile time, dynamic invocation must be used. IP (Internet Protocol) The network-layer communication protocol used in the DARPA Internet. IP is responsible for host-to-host addressing and routing, packet forwarding, and packet fragmentation and reassembly. I-WAY An experimental high-performance ATM network linking dozens of the country's fastest computers and advanced visualization environments. Java An object-oriented interpreted programming language frum Sun, suitable for Web development due to the built-in portable support for mobility, networking, multithreading and GUI Java API and Frameworks A collection of packages including Java foundation classes and offering Java langauge interface to Java virtual machine (JavaVM) A Java Framework such as JDBC defines the standard Java methods and interfaces for accessing a particular service such as databases, commerce, graphics, multimedia etc. Such frameworks are determined by consensus in each area and are mirrored in CORBA as Facilities Java Applet API applet package in the Java API, the first in the long series of new APIs. Javabean Part of the Java 1.1 enhancements defining design frameworks (particular naming conventions) and inter Javabean communication mechanisms for Java components with standard (Bean box) or customized visual interfaces (property editors). Enterprise Javabeans are Javabeans enhanced for server side operation with capabilities such as multi user support. Javabeans are Java's component technology and in this sense are more analogous to ActiveX than either COM or CORBA. However Javabeans augmented with RMI can be used to build a "pure Java" distributed object model. Java Blend A development product from Sun that uses JavaTM technology to greatly simplify the complex process of building business applications that can access any database. Java Blend contains a tool and a runtime environment that simplifies the integration of Java objects with enterprise data. Java Enterprise APIs This offers connectivity to enterprise databases via the JDBC package, and to distributed objects with Java IDL interface to CORBA and via native JavaBeans model Java IDL This API provides support for defining remote CORBA interfaces in the IDL interface definition language, an industry standard by OMG. Java IDL includes an IDL-to-Java compiler and a lightweight ORB that supports IIOP. JDBC (Java Data Base Connection) A set of interfaces (Java methods and constants) in the Java 1.1 enterprise framework, defining a uniform access to relational databases. JDBC calls from a client or server Java program link to a particular "driver" that converts these universal database access calls (establish a connection, SQL query, etc.) to particular syntax needed to access essentially any significant database. JFC (Java Foundation Classes) Core to the Java platform, the Java Foundation Classes extend the original Abstract Windowing Toolkit (AWT) by adding a comprehensive set of graphical user interface class libraries Java JDK (Java Development Kit) Java Development Kit, including Java API for the language foundation classes and the base software development tools such as Java compiler or native class interface generator. Current release is JDK 1.1.5. Java Media APIs Support for real-time interactive multimedia including Sound, Animation, 2D, 3D, Java Telephony, Speech and Collaboration. Java Object Serialization Allows Java programs to serialize objects into a stream of bytes that can be later used to build equivalent objects for the same or remote JavaVM Java RMI (Remote Method Invocation) Support for creating objects whose methods can be invoked from another virtual machine, analogous to a remote procedure call (RPC). This can be looked upon as a native ORB. Java Security APIs A framework for developers to easily and securely include security functionality in their applets and applications. Functionality encompasses including cryptography, digital signatures, encryption and authentication. . JavaSpaces Distributed persistence and data exchange mechanisms for code written in the Java programming language. Facilitate the development of Systems that use flow of data to implement distributed algorithms. Java Servlet APIs Support for building customized server solutions in terms of servlets - small executable programs that users upload to run on networks or servers. Java Standard Extension APIs A standardized framework for extending the core Java API by domain specific packages. Java WorkShop Java CASE toolkit from SunSoft, includes Visual Java support for visual software engineering. JavaOS Highly compact operating system designed to run Java applications directly on microprocessors in anything from net computers to pagers. JavaScript Java-like but typeless and truly interpreted scripted language developed by Netscape and used for dynamic HTML programming both at the client (Navigator) and server (LiverWire) sides. JavaVM An abstract computer that runs compiled Java programs. Implemented in C as an interpreter of the opcode generated by Java compiler. JFactory Visual interface builder for Java applications and applets; supports click-and-drag authoring, automated code generation and user level extensibility JNDI (Java Naming and Directory Interface ) Another product from JavaSoft which allows developers to deliver Java applications with unified access to multiple naming and directory services across the enterprise. JSDA The Java Shared Data API (JSDA) defines a multipoint data delivery service for use in support of highly interactive, collaborative, multimedia applications. Jigsaw Web server written entirely in Java, recently published by the WWW Consortium, and to be used as the experimentation platform with mobile code, scripting languages, object-oriented Web etc. Just-In-Time Compiler A Just in Time Compiler is an Interpreter which "compiles on the fly" by "remembering" the native machine code produced when bytecodes are first seen. This can produce major (at least a factor of 10) improvement in performance of Java Applets when used in a browser and when code is used more than once as it is in any iteration. Symantec produced the first well known JIT for Java under Windows95. Lotus Notes A major commercial software system suporting aspects of collaboration but at its heart a web-linked document database providing the type of tools also seen in systems such as Cold Fusion for producing with high level tools general Web Interfaces to database material MBONE Multicast Backbone, a virtual network based on IETF specification and used by several hundred researchers for developing protocols and applications for group communication on the Internet Microsoft ActiveVRML Microsoft proposal for VRML 2.0 that lost with the Moving Worlds proposal from SGI and partners but is being nevertheless implemented by Microsoft Microsoft ActiveX Previous OLE framework, now reformulated as a content development and media integration environment for the Internet. Includes tools for visual programming and integration. Microsoft ActiveX Conferencing A suite of technologies that enable real-time, multiparty, multimedia communication over the Internet. Microsoft ActiveX Controls Formerly known as OLE controls, are components (or objects) that can act in a similar way as Netscape plug-ins or Java applets in the Microsoft software/database domain Microsoft ActiveX Development Kit Includes an evolving collection of technologies that Microsoft is experimenting with and introducing to facilitate development of Internet applications and content. Microsoft Jakarta Codename for JavaVM for Windows and visual Java development tools from Microsoft MPI (Message Passing Interface) The parallel programming community organized an effort to standardize the communication subroutine libraries used for programming on massively parallel computers such as Intel's Paragon, Cray's T3D, as well as networks of workstations. MPI not only unifies within a common framework programs written in a variety of exiting (and currently incompatible) parallel languages but allows for future portability of programs between machines. MIME (Multipurpose Internet Mail Extension) The format used in sending multimedia messages between Web Clients and Servers that is borrowed from that defined for electronic mail. Netscape Client Pull Netscape extension of HTML which allows servers to put the Navigator in an active pull mode, i.e. to instruct the Navigator to reload an indicated URL after a specified timeout Netscape Community System Web based community network environment, including support for bulletin boards, real-time chat sessions, electronic mail, and private discussion groups. Netscape Communications Server High-performance server software that enables organizations to publish rich hypermedia documents (standard Netscape Web server before the current series of new server products) Netscape Cookies A "cookie" is a small piece of information which a web server (via a CGI script) can store with a web browser and later read back from that browser. This is useful for having the browser remember some specific information across several pages Netscape Enterprise Server High performance, secure WWW server for HTML delivery, content management and portable access to database management systems Netscape JRI An abstract interface to Java services that allows application programs (Java service consumers) to be decoupled from the Java runtime internals (Java service producers) Netscape LDAP The Lightweight Directory Access Protocol (LDAP) is Netscape's strategic directory protocol. It defines a simple mechanism for Internet clients to query and manage an arbitrary database of hierarchical attribute/value pairs over a TCP/IP connection NCSA Habanero A framework for constructing distributed collaborative software tools. Using Habanero, programs that were designed for a single-user can be relatively easily recast as multi-user collaborative tools. object reference A construct containing the information needed to specify an object within an ORB. An object reference is used in method invocations to locate a CORBA object. Object references are the CORBA object equivalent to programming language-specific object pointers. They may be obtained from a factory object or from the Naming Service. Object Web The evolving systems software middleware infrastructure gotten by merging CORBA with Java. Correspondingly merging CORBA with Javabeans gives Object Web ComponentWare. This is expected to compete with the COM/ActiveX architecture from Microsoft. OMG (Object Management Group) OMG is the organization of over 700 companies that is developing CORBA through a process of call for proposals and development of consensus standards. ORB (Object Request Broker) Used in both clients and servers in CORBA to enable the remote access to objects. The ORB provides the basic communication channel through which all objects interact to provide system services. Since all object behaviour is specified in terms of messages exchanged among objects, the communication protocol defined by the ORB is in effect the grammar for all the other OMA specifications. ORB's are available from many vendors and communicate via the IIOP protocol. RTP A thin protocol providing support for applications with real-time properties, including timing reconstruction, loss detection, security and content identification. sandbox Java applets run in a womb provided by the web browser that offers them services, and prevents them from doing anything naughty such as file i/o or talking to strangers (servers other than the one the applet was loaded from). The analogy of applets being like children lead to calling the environment they run in the "sandbox". See womb, applet. Server This is usually a program which listens to a specific port, and accepts (processes) invocations from objects at remote locations. server skeleton A public abstract class generated by the idltojava compiler that provides the ORB with information it needs in dispatching method invocations to the servant object(s). A server skeleton, like a client stub, is specific to the IDL interface from which it is generated. A server skeleton is the server side analog to a client stub, and these two classes are used by ORBs in static invocation. Servlet A component of the Java Web Server (formerly known as Jeeves) that facilitates creation of executable programs on the server side of an HTTP connection. SSL Secure Socket Layer developed by Netscape and used as their base security enforcing technology Socket Tool for network communications, specifies end-points of a communication. Sockets identify the origin and destination of messages. SQL Structured Query Language. The language most commonly used to create database queries. stringified object reference An object reference that has been converted to a string so that it may be stored on disk in a text file (or stored in some other manner). Such strings should be treated as opaque because they are ORB-implementation independent. Standard object_to_string and string_to_object methods on org.omg.CORBA.Object make stringified references available to all CORBA Objects. Synchronized Java's Abstraction of a mutual exclusion lock. This prevents multiple threads from accessing the same piece of data, thus avoiding deadlocks. Televirtual The ultimate computer illusion where the user is fully integrated into a simulated environment and so can interact naturally with fellow users distributed around the globe. TCP (Transmission Control Protocol) A connection-oriented protocol used in the DARPA Internet. TCP provides for reliable transfer of data, as well as out-of-band indication of urgent data. VIC Public domain real-time Internet video conferencing tool from LBNL Visual Java Visual Java authoring support in the recent release of Java Workshop, a Java CASE toolkit from SunSoft VRML 1.0 A standard network protocol for 3D scene description based on a subset of the ASCII Open Inventor format VRML 2.0 Extends VRML 1.0 towards interactive 3D worlds by adding Sensor nodes that detect user events, routes that connect user events with the scene graph nodes, and Script nodes that describe interactive behavior of the scene graph objects using a scripting language such as Java, JavaScript, Tcl etc. VRMLScript Custom script for VRML 2.0 under consideration by the VRML forum Web Client Originally web clients displayed HTML and related pages but now they support Java Applets that can be programmed to give web clients the necessary capabilities to support general enterprise computing. The support of signed applets in recent browsers has removed crude security restrictions, which handicapped previous use of applets. WebCORBA Recent initiative by W3C to integrate CORBA with the Web WebObjects Web server extension technology from NeXT, including WebScript scripting language, a collection of productivity tools, and interfaces to database management systems. Web Servers Originally Web Servers supported HTTP requests for information - basically HTML pages but included the invocation of general server side programs using the very simple but arcane CGI - Common Gateway Interface. A new generation of Java servers have enhanced capabilities including server side Java program enhancements (Servlets) and support of stateful permanent communication channels. See Java Servers, CGI. |