複製鏈接
請複製以下鏈接發送給好友

UNO

(UNO 通用網絡對象)

鎖定
UNO(universal network object) 是通用網絡對象的簡稱。UNO(通用網絡對象)的目標是為跨編程語言和跨平台邊界的網絡對象提供環境。
中文名
通用網絡對象
外文名
UNO
英文全稱
universal network object
運行環境
UNO

目錄

UNO簡介

UNO 對象可在任何地方運行和通信。UNO 通過提供以下基礎框架達到此

UNO目標

  • UNO 對象在一種稱為 UNOIDL(UNO 接口定義語言)的抽象元語言中指定,這種語言與CORBA IDL 或 MIDL 類似。利用 UNOIDL 規範,可以生成與語言有關的頭文件和程序庫,用於在目標語言中實現 UNO 對象。在 UNO 對象中,經過編譯和綁定程序庫的那些對象稱為組件。組件必須支持某些基接口才能夠在 UNO 環境中運行。
  • 為了在目標環境中實例化組件,UNO 使用了工廠概念。該工廠稱為服務管理器。它維護一個註冊組件數據庫,這些組件可通過名稱識別,並可按名稱創建。服務管理器可能會要求 Linux 加載和實例化用 C++ 編寫的共享對象,也可能會調用本地 Java VM 以實例化 Java 類。這對於開發者來説是透明的,無需考慮組件的實現語言。通信是以獨佔方式通過 UNOIDL 中指定的接口調用來進行的。
  • UNO 提供橋,用於在用不同實現語言編寫的進程之間以及對象之間發送方法調用和接收返回值。為此,遠程橋使用一種特殊的 UNO 遠程協議 (URP) 來支持套接字和管道。橋的兩端都必須是 UNO 環境,因此,需要一種特定於語言的 UNO 運行時環境來連接任何受支持語言中的另一個 UNO 進程。這些運行時環境是作為語言綁定提供的。