電腦詞典/電腦詞典--名詞解釋-O
OA是Office Automation的縮寫,指辦公室自動化或自動化辦公
OAW 光學輔助溫式技術:希捷公司正在開發的OAW是未來磁頭技術發展的方向。OAW技術可以在1英寸寬內寫入105000以上的磁道,單碟容量有望突破36GB。單碟容量的提高不僅可以提高硬盤總容量、降低平均尋道時間,還可以降低成本、提高性能。
DEC的對象代理者軟件,DEC的Object Broker軟件 Object Broker,DEC數字設備公司的ObjectBroker是一種分層軟件產品,它允許軟件開發者對獨立開發的應用程式運用一種面向對象的研究和跨越多種廠商環境的服務。Object Broker V.25全面實現了對象管理組織描述的公用對象請求代管者體系結構(CORBA)。Object Broker通過在操作系統級網路級消除集成代碼的開發,簡化了客戶機/服務器應用程式的開發。
Object Broker擴展了在多廠商網路環境內實現Microsoft的對象鏈接嵌入(OLE)或動態數據交換(DDE)接口的應用能力。DEC和Microsoft聯合起來為基於對象的客戶機/服務器開發和展開,提供一種開放體系結構。這一行動導致了公用對象模型(COM),它是為允許Windows應用訪問其他平臺的應用而設計的一組基於對象的分佈式聯網接口。這裏說的其他平臺包括DEC Open VMS環境、Macintosh系統和不同的UNIX變種。
Object Broker的特徵包括:
允許應用程式在多平臺上進行處理,並以透明的方式在應用之間發送請求、控制和相互協作。
通過在操作系統和網路傳輸級上的連續,基於標準的應用程式編程接口,提供應用命名、能力登記、定位、活動、請求/數據分發。
在不修改原代碼的前提下,對現有(合法)的應用和數據進行加密,因而現有的應用可以融合進新的客戶機/服務器結構
COM的出現是Microsoft的一個重要舉措。它通過允許Windows應用和與Object Broker兼容的系統交換信息,開放了Windows環境。在環境之間使用的通信方式是基於在開放軟件基金會的分佈式計算環境中使用的遠程過程調用(RPC)的。由於Object Broker是基於OMG的CORBA,所以Microsoft可以無需和OMG捆綁在一起,就能對CORBA進行訪問了。
相關條目:Common Object Model 公用對象模型;Common Object Request Broker Archtecture公用對象請求代管者體系結構;Object Linkingand Embedding 對象鏈接和嵌入;Object Management Group 對象管理組織。
Object Linkingand Embedding對象鏈接和嵌入(OLE)提供了一條集成不同應用對象的途徑。一個對象可以是一個電子表格的信息塊、一個繪圖程式的圖形、或從一個聲音程式剪切的音頻塊,每個對象都是它的服務器應用生成和維護的。但是通過OLE,可以集成不同服務器應用的服務。這意味著用戶不需要交換到其他應用來編輯現行文檔中的對象。他們可以通過使用從服務器應用“生出”的功能,來簡單地在本地(OLE2.0)對對象進行編輯。
每個對象都有它自己的數據類型定義。例如,一個電子表格對象具有包含格式化代碼的信息單元,而一個圖形圖像包含位映射數據或重新繪製圖像的命令。OLE允許任何與OLE兼容的應用來顯示其他應用的對象,和在數據之間建立關聯。OLE應用可以識別很豐富的下面的檔案結構,並且即使對象是在其他任何地方產生的,它也能夠顯示這些對象和提供編輯功能。
一個複合文檔是包含不同應用程式生成的對象文檔,如圖O-1所示。這種文檔是一種可以存放對象的所有者。圖中點亮的窗口(Microsoft Word)是包含一個電子表格程式和一個繪圖程式的複合文檔。用戶可以集中精力于複合文檔,而不是每個用於生成文檔中對象的應用;然而,當需要時可以使用這些應用程式的功能,而無需用戶實際切換到另一個應用程式。
對象既可以嵌入到複合文檔中,也可以鏈接到複合文檔中。下文將對這兩種情況分別介紹,但是複合文檔可以同時包含這兩種類型的對象。
鏈接的對象 不象嵌入的對象那樣,一個鏈接對象並不實際存在于一個複合文檔中。複合文檔包含一個到對象的引用,這個對象是作為單獨的磁盤檔案存在的。保持一個到這個檔案的鏈接,因而如果這個檔案有任何變化,這種變化就會在包含對它的鏈接的複合文檔中反映出來。鏈接具有如下特徵:
鏈接的對象存在于複合文檔之外的檔案中。如果這些檔案被刪除了,連接就丟失了。如果它們被移動了,就必須建立新的鏈接。
由於複合文檔中只包含對鏈接的對象的引用,所以複合文檔本身體積是很小的。
鏈接可以跨越網路而存在——一個複合文檔可能存在於一個計算機上,而一個鏈接檔案卻可能存在於另一台計算機上,如對象服務器上。
如果一個複合文檔被移動到另一個系統上,那麼所有鏈接的檔案也必須隨之移動。
嵌入的對象 不象鏈接的對象那樣,一個嵌入的對象是直接存儲在複合文檔中的。一個嵌入的對象保持和創造它的應用之間的聯繫。用鼠標器雙擊對象,就可以打開這個應用,從而對對象進行編輯。嵌入具有如下特徵:
嵌入的對象可以在本地進行編輯,所以用戶從來就不需要離開複合文檔。
對嵌入的對象的改變不會影響到原始檔案(如果這個原始檔案是存在的,這裏的意思是嵌入的對象可能是這個對象的唯一存在形式)。
這個對象並不需要以一個單獨檔案的形式存在。
這個對象是和複合文檔存儲在一起的。
由於所有的元素存儲在一個檔案中,所以嵌入簡化了文檔的管理。
嵌入的對象和包含它的文檔一起移動,從而使用戶可以輕易地改變文檔。
包含嵌入對象的複合文檔是很大的,這是因為複合文檔包含構成對象的所有數據,而不象鏈接引用外部的對象。
OLE 2.0對嵌入對象使用本地活動(in-place activities)。如果用戶雙擊複合文檔中的對象,所有的交互工作都在複合文檔內發生。和對象進行交互操作所需的菜單、工具條、調色板和其他控制,暫時替代了活躍窗口的現存菜單和控制。當用戶進行完編輯後,返回到正常的控制,並且對象以改變後的形式存在。在多媒體對象的情況下,說進行“編輯”可能是一種不當的說法。用戶通過“播放(playing)”和這種對象進行交互操作,而不是“編輯(editing)”,雖然編輯有時也是可以的。
鏈接的對象也可以是一些操作,被在本地激活,如重現和顯示,但是它們不能在本地被編輯,而是為進行編輯打開一個獨立的窗口。
從用戶的角度來看,OLE為所有在Windows環境的OLE兼容的應用,提供了一種通用集成的策略。應用這時更象用戶組裝不同應用對象的工作場地。OLE通過允許用戶共享對象,使得工作小組可在一個網路上協作工作。例如,項目經理可以將協作者創作的連接對象插入到複合文檔中。這些合作者為項目進展而對這些對象進行的變動將在這個複合文檔中反映出來。
複合文檔可以被看成是有關所有將進入報告(report)的元素的中央倉庫。它既可以直接包含這些元素(嵌入對象),也可以生成到包含這些元素檔案的一個引用關係。在舊的組裝文檔的方式中,你首先需要寫下所有構成一個複合文檔或報告的相聯檔案的名字,然後在打印之後對它們進行組合。在OLE環境,你可以將所有這些部件組裝成一個複合文檔,這個複合文檔保持對每個元素的位置的跟蹤,並在打印時將它們組合在一起。
在Windows for Workgroup和Windows NT環境,一個稱為ClipBook的實用功能,提供在一個網路上進行工作的先切再貼(cut-and-paste)特徵。你可以將希望和其他用戶共享的對象放置在ClipBook中。然後,其他用戶可以在他們的計算機上打開ClipBook,並將這些對象貼到他們的文檔中去。這些對象保持一個到你的計算機上的檔案連接,因而如果你對這個檔案進行了修改,在其他用戶的文檔中的拷貝也將作相應的改變。然而,如果你的計算機沒有打開,其他用戶就不能從你的計算機上獲得這些修改。
Other OLE Features 其他OLE特徵
OLE還實現了一些其他有趣的特徵。2.0版本對早期的OLE中的特徵進行了較大的擴展,例如,那些與Windows for Workplace V3.1和Windows NT V3.1合併的特徵。下面討論版本2.0的一些特徵。
Draw and Drop拉放
在Windows環境,剪切板(Clipboard)是在應用之間傳送數據的一個通用的實用功能。以前,為達到這一目的,必須在源部分首先執行複製(Copy)命令,然後在目的地執行貼上(Paste)命令。拉放研究為達到相同的結果提供了更加自然的途徑。用戶首先描述出需要複製的對象,然後點擊這個對象,並同時按住鼠標器的按紐,拖拉這個對象到目的文檔。拉放特徵消除了應用之間的障礙。窗口框架已經不再是分離應用的一堵牆壁。用戶可以自由地從一個應用拖拉信息到另一個應用,從而簡化了創建複合文檔的過程。拉放功能還可以和源圖標(source icon),例如打印機和信箱等,一起工作。拉放一個對象到打印機的圖標上,可以使這個對象被打印出來。
性質繼承(Property Inheritance)
當對象嵌入到複合文檔中時,它可能具有和文檔其他部分不一致的性質。例如,嵌入的對象中的字體就 能和這個文檔中使用的字體不一樣。為了使嵌入的對象和複合文檔的形式保持一致,OLE允許文檔向對象送性質。然後,這個對象就可以繼承這些性質,並將它的外觀變化得和文檔的其他部分保持一致。
對象類型轉換和仿真(Object Type Converston and Emulation)
如前所述,對象具有定義數據的格式和對象其他性質類型的特徵。這些類型是由生得這個對象的應用定義的。在一些情況下,用戶可能喜歡將對象轉變為另一種不同的類型,從而他們可以和具有一些特殊特徵的應用一起編輯和管理這個對象。
OLE提供了一種機制,通過這種機制,應用可以執行類型轉換和仿真。類型轉換導致對象的永久改變。而類型仿真生成具有其他類型對象特性的對象,當時還保持它自己原始的名字和數據格式。當原始應用已經不再使用時,類型轉換是有用的。類型仿真為用戶使用相同服務器應用程式對複合文檔進行協同工作,提供了一條臨時性途徑。
查尋和拼寫(Searching and Spelling)
由於複合文檔包含許多應用生成的對象,並且用戶希望將複合文檔當成一個單一的實體來對待,因而OLE對整個文檔進行查尋和進行拼寫檢查,提供了一條途徑。它使用了一種隧道技術(tunnelling techniques),以在嵌入對象內部進行串查尋和拼寫檢查。這避免了喚醒多個應用以進行相同任務的要求。
OLE Implementations OLE實現
就象可以在Microsoft office產品組中看到的那樣,Microsoft的計劃是圍繞OLE建立它的工作組應用程式。Microsoft office產品集包括Microsoft Word、Excel、Power Point、Mail和Schedule十工作組調度軟件。這些應用可以輕易地在同一系統或其他系統的用戶之間共享信息。Windows for Workgroups使用網路數據交換,並包括Mail和Schedule十產品。Microsoft視窗開放式系統體系結構(WOSA)策略為集成消息、數據庫、跨越企業範圍網路的其他應用等提供了結構。
OLE在所有Microsoft Windows產品中實現,包括1995年將推出的Cairo面向對象操作系統和象Microsoft Office這樣的應用。DEC和Microsoft聯合力量,為基於對象的客戶機/服務器開發和展開提供一種開放的稱為“公用對象模型(COM)”的體系結構。COM是一組為允許Windows OLE應用訪問DEC的Object-Broker技術支持的平臺上的應用程式而設計的。這些平臺包括DEC Open VMS環境、Macintosh系統和不同的UNIX變種。
然而,有許多對象模型和OLE競爭。這些模型列出如下,它們在本書的其他地方都有介紹。
Sun的全分佈式對象模型(Distributed Objects Everywhere:DOE)。
OpenDoc,一種Apple、IBM、Novell和Word Perfect為與OLE 2.0一起工作而設計的對象標準。
Hewlett-Packard的分佈式對象管理設施模型(Distributed Object Management Facility,DOMF)。
對象管理組織(Object Management Group,(OMG)的公用對象請求代理體系結構(Common Object Request Broker Architecture,CORBA)。
DOEHE和DOMF是圍繞CORBA環境設計的。還要注意,Hewlett-Packard、IBM和Sun Microsystems同意在1993的中期共享他們的對象技術。雖然CORBA和Microsoft的OLE和Cairo計劃競爭,但是OLEL是一種在Windows環境的對象共享系統,而CORBA是為在異構網路環境提供對象共享而設計的,該環境包括跨越不同的互操作平臺的通信。如果需要瞭解在分佈式環境的對象共享技術,可以參閱“對象請求代管者”。
相關條目:Common ObjectModel 公用對象模型;Compound Documents 複合文檔;Dynamic Data Exchange 動態數據交換;NetDDE;Object Broker,DEC DEC的Object Broker;Microsoft Windows for Workgroups;Microsoft Windows NT。
Object Management Architecture對象管理組織(OMG)最開始的任務是創立一種體系結構,在這種體系結構上,它的成員可以標準化地開發包含不同的多廠商產品和操作環境的分佈式網路上的應用。OMG創造的體系結構包括四個主要部件。
應用程式對象 這一級別包含可以根據需要安裝和移去的可選應用。通常的應用程式包括字處理器、電子表格和圖形程式。
公用設備 這一級別包含在大多數應用中通常使用的對象,例如,電子函件系統、拼寫檢查器、I/O接口、和代理器等。它們這樣分離出來是為了避免在一些應用程式中代碼的重複。在公用設備區域的對象是可以被所有應用程式進行訪問的。
對象請求代管器(ORB)這是對象和其他對象進行通信的公用接口。它是由公用對象請求代管器體系結構定義的,並在本書的這一標題下進行討論。還可以參見“對象請求代管器”。
對象服務 這一級別提供實現對象技術的重要服務。
其中的關鍵部件是對象請求代管器(ORB),它提供了基本的對象通信、格式化和對象間的管理服務。下面繼續介紹使用OMA模型的一些優點:
它支持模塊化、即插即用軟件。
對用戶和網路管理人員,安裝系統和軟件都很容易。打印機、屏幕和其他設備的驅動程式駐留在公用設備區域,在那裏它們可以被多個應用所共享。對所有用戶都可以立即獲得修改的消息。
用戶和管理人員都可以很容易地利用分佈式環境的優勢。例如,ORB可以將對象放置在高性能或為服務請求而閒置的系統,從而充分利用企業資源。用傳統的遠程過程調用(RPC)來實現這種功能是較困難的。
相關條目:Common Object Request Broker Architecture 公用對象請求代管器體系結構;Object Management Group對象管理組織;Object Request Broker對象請求代管器。
Object Management Group對象管理組織(OMG)是擁有約300家機構的國際聯盟,它開發了對象管理體系結構(OMA)。OMA是一種描述OMG希望為面向對象的應用和環境開發的標準模型。對OMG提供了主要技術的OMG成員包括,數字設備公司、Hewlett-Packard、Hyper Desk Corporation和SunSoft。這種體系結構還被X/Open Group(它也具有開發多廠商通用應用環境的共同對象)和開放軟件基金會(OSF)採納。OSF正在開發稱為“分佈式計算環境(DCE)”和“分佈式管理環境(DCE)”的可移植系統軟件。注意,OMG對象標準和Microsoft在它的對象鏈接和嵌入(OLE)2.0 Cairo所做的工作類似。然而,OMG描述的設計是為不兼容的系統之間搭架橋梁的,而Microsoft的產品卻是為在Windows環境下工作的。
OMG最初關心開發廠商們可以用於創造在多廠商環境進行操作的應用的一組語言、接 口和協議標準。OMG的設計中接受工業標準,因而參加成員和其他廠商可以生產承認他們的產品。然後,OMG將驗證在接受標準下設計的產品對標準的接受情況。
事務處理,在分佈式系統上的事務處理,這種情況下可以在不同地點寫入修改。
併發執行,在分佈式環境下相同系統或不同系統上的對象方式的併發執行。
事件通知,可以報告在分佈式系統中任何地方發生事件的對象。
變化報告,報告對象結構的變化,可以保證對象引用總是使用合適的版本。
國際化,它提供了處理指定國家格式的途徑。
OMG工作的一個有趣特點是它建立在一些已經使用或正在被許多廠商開發的標準和接口之上。面向對象技術之所以被使用,是因為它為模塊化和可擴展系統提供了好處。
基本體系結構是以對象請求代管器(ORB)為核心的。在這種模型中,對象請求服務器。這個請求被傳到ORB,它尋找一個合適的“提供者”對這個請求服務,接著,對請求進行格式化,並將它送給提供者。然後,這個 供者再將它的響應送給ORB,ORB對這個響應進行格式化,再進一步送給原來的請求者。
OMG提出的第一個基於OMA的技術規範,稱為公用對象請求代管器結構(CORBA)。OMG還定義了接口定義語言(IDL),它是其它對象看到的一種接口對象,其中包括用於與其它對象交互的過程函數。
下面的公司支持OMG開發面向對象技術方面的努力,並在他們的產品中實現了這些技術。
Hewlett-Packard的分佈式計算環境,它包括OMG CORBA部件,以及開放軟件基金會(OSF)的分佈式計算環境(DCE)和OSF Motif圖形用戶界面的部件。
全分佈式對象(或Project DOE)是SunSoft為它的Solaris操作系統而開發的一種全分佈對象環境的嘗試。DO E的設計是基於CORBA的。
開放軟件基金會(OSF)已經在它的分佈式管理環境(DME)規範中採納了CORBA。
以前,Hewlett-Packard、IBM和SunMicrosystems獨立開發面向對象的接口技術,但是已經同意在1993年中期共享他們的技術。這些面向對象技術是IBM的系統對象模型(SOM),Sun的全分佈式對象模型(DOE)和HP的分佈式對象管理設施(DOMF)。通過共享和標準化他們的技術,用戶和開發商將從一個更加開放的環境獲益。這一認同產生了對Microsoft的Cairo計劃更大的競爭力。
相關條目:Common Object Request Broker Architecture公用對象請求代管器體系結構;Object Management Architecture 對象管理體系結構;Object-Oriented Interfaces and Operating Systems面向對象接口和操作系統;Object-Oriented Technology面向對象技術;Object Request Broker對象請求代管器;Objects 對象。
Object Request Broker 對象請求代管者在一個面向對象的分佈式計算環境,一個對象請求代管者(ORB)可以為應用程式、服務器、網路設施之間分發消息提供關鍵通信設施。可以將ORB想像成一組軟件總線、支柱,它提供了一個公用消息傳遞接口通過這個接口,許多不同類型的對象可以以對等層策略進行通信。
對象產生一個請求,並將這個請求發送給ORB。然後,ORB再放置一個可以對請求服務、格式化消息和把它發送到對象的對象。然後,這個接收對象對這個請求作出響應,並向ORB返回一個響應,ORB格式化並轉發這個響應到請求者。
在這個模型中,對象只簡單地描述要操作的任務。它們不需要知道更多的細節或能夠為這個任務服務的那個對象在哪里。ORB處理所有的細節工作,包括放置對象、格式化消息和傳遞這些消息。在分佈式環境,ORB是所有對象的一個公用接口。
ORB處理類似于遠程過程調用,但是ORB自身就有能力找到能夠對請求提供服務的其他對象。
公用對象請求代管者體系結構(CORBA)是一個基本的消息傳遞技術規範,它是對象管理組織(OMG)在其對象管理體系結構(OMA)中定義的。CORBA已經被許多公司實現,這些公司包括Hewlett-Packard、SunSoft(Sun Microsystem 的一個分支機搆)和其他公司,介紹如下:
Hewlett-Packard的分佈式計算環境包括OMGCORBA部件,以及一些來自開放軟件基金會(OSF)的部件,如分佈式計算環境(DCE)和OSF Motif圖像用戶界面。
全分佈式對象(或ProjectDOE)是SunSoft為它的Solaris操作系統開發的一個全分佈式對象環境的初始產品。
開放軟件基金會在它的分佈式管理環境(DME)規範中採納了CORBA。
開放軟件基金會的分佈式計算環境(DCE)和分佈式管理環境(DME)使用ORB概念,因而這些對象可以對其他對象產生請求。
相關條目:Common Object Request Broker Architecture公用對象請求代管器體系結構;Compound Document複合文檔;distributed Computing Environment 分佈式計算環境;Distributed Objects Everywhere,SunSoft SunSoft的全分佈式對象;Object Management Architecture 對象管理體系結構;Object-Oriented Interfaces and Operating Systems面向對象接口和操作系統;Workplace OS Workplace操作系統;Objects。
Object-Oriented Database面向對象數據庫 參見Distributed Database 分佈式數據庫。
Object-Oriented echnology 面向對象技術 面向對象技術使軟件的開發超越了過程式編程,而進入了簡化應用程式開發的可重用編程世界。不象舊的編程方式,當程式的體積增長時,程式維護和調試並不變得更複雜。對象技術在兩個級別發揮作用:在數據級別,對象技術可以集成一個機構中的許多不同類型的信息,過去的信息已經不再兼容了。
在程式開發級別,對象技術提供模塊化程式構造,這時,程式員在現有對象的基礎之上進行開發。對象可以被其他對象再使用,以利用它們的過程,從而消除了當再次需要它們的時候,必須每次都重寫這些代碼。
由於無需改變或分解整個系統,所以再設計或擴展系統是很容易的。實際上,是放棄或修改這些模塊,並且增加新的模塊以提供增強的功能。
一個對象是一個完整的數據分組,它包括對數據進行處理的功能。在一個面向對象的環境,對象的數目是數不清的。它們可能包括一個數據庫的記錄、一個檔案、一個物理資源、甚至是一個用戶(它是用戶的登錄帳戶)。為了使開發人員使用面向對象編程語言工作,對象是一個自滿足模塊,它包含數據、以及數據的結構、和處理數據的功能。
對象可以是下面情況的任何之一:
在一個面向對象操作系統中實現一個進程的代碼,例如驗證安全權限。
程式員和開發人員用於彙編程式的預定義代碼模塊。
來自一個應用程式的數據塊,如一個繪圖程式、電子表格或多媒體工具。
在一個數據庫中的對象,例如庫存條目或顧客。
在一個面向對象的數據庫中,對象可以代表跟蹤的商務中的實際實體,例如生產的產品、庫存、顧客和廠商。相應地,在面向對象的操作系統中,對象也是一些實體,如檔案、設備和用戶,或構成一個複合文檔的實體數據塊。在面向對象的環境,首先定義基本的對象,然後圍繞這些對象建造系統。
有許多潛在對象,並且它們可以歸化到定義不同類型對象的層次化類(hierarchical classes)。父類可以對子類傳遞特性。讓我們來考慮一個類“people”,它擁有兩個子類“male”和“female”。這些子類又可以擁有它們自己的子類,如圖O-3所示。每個子類都有從它的父親處繼承來的綜合特徵,以及它們自己的專有特徵。另外,一些繼承來的特徵由於它們對子類不合適,而會被阻擋。
這和計算機如何關聯昵?記住,現在我們在討論存儲許多不同數據類型,和訪問許多不同類型應用程式數據的途徑。通過按這種方式對數據分類,我們可以在一個對象內,直接包括進行抽取、顯示、合併和打印的過程數據。如果需要,對數據進行分類,可以簡化構造過程和改造(revision)過程。例如,一個數據塊對象可能包括一個對這些數據按特定的方式進行排序的過程,它可以被許多不同的使用這個數據的應用程式所激活。
下面是對象類和對象實例:
對象類 一個類定義了一組對象。類具有行為(be-havoir),它描述一個對象能夠做什麼以及做的方法(method),它們是可以對這個對象進行操作的程式和過程。
對象實例 一個對象是一個類的一個實例,它代表一個現實物理“事件”,例如在一個財物系統數據庫中的一個顧客或一個庫存部分。類的繼承(class inheritance)是一個重要的概念,它為一個子類繼承它的父類的內置描述提供了途徑。在父類中使用的代碼被向下傳給這個類指定的一個類(子類)。
例如,一個面向對象的數據庫可以有一個稱為“client”的類,這個類有兩個子類,分別稱為“company”和“individual”。首先,創立稱為“client”的對象。它包含一個結構和一些過程,這些過程處理數據和從對象之外獲得信息。然後,company和individual對象作為client的子類進行定義。作為一個子類,它們繼承client對象的結構和特徵,但是這些特徵中的一些可能被屏蔽,或可以增加一些附加特徵。例如,company子類可以具有一個特定的折算,而individua1子類卻不具有。如果你需要一個關於客戶的列表,你可以請求client對象進行列表。然而,如果你希望知道客戶的帳目平衡,你就需要從每個包含客戶平衡的子類對象獲得信息。
對象包含數據和過程,並且當被請求時提供信息。想像一個包含數據的箱子,它有一些按鈕,你可以按這些按鈕來對數據運行過程。方法是,一些對對象進行操作的過程或程式,它們可以使對象根據對象的內部代碼和結構來以特定的形式進行動作。相似地,可以對對象的不同的類進行操作。有一個概念稱為多態性(poly-morphism)或重載(overloading)。使用多態性,一組通用的方法可以在很大範圍的類上進行操作。然而,具有相同名字和稱呼的方式卻可能誘發不同的事情。例如,在文本數據的“next”導致光標跳到下一個工作,而在電子表格的“next”卻導致光標跳到下一個單元。
對象通過發送消息與另一個對象對話。這些消息在本質上是通過按下對象上的“按鈕”從對象請求過程。在一個網路環境,你可以查看和消息總線相連的對象,如圖O-4所示。消息傳遞為對象在一個面向對象的分佈式計算環境進行通信提供了一條有效途徑。消息傳遞是一種存儲再轉發方式,就象在電子函件系統中使用的那樣。消息被從一台計算機傳送到另一台計算機,直到它們抵達目的地。
所有這些都加到軟件中,它們易於維護,並且在連續的基礎之上改進,即無需對整個系統進行重新設計。
對象是可重用的,使得系統增長時,它易於加入系統,這是因為在現有對象中的代碼對創造新的對象是可重用的。
對象系統是可擴展的,開發人員增加模塊,而模塊重用內置數據結構,無需重編譯操作系統。
易於建造系統,這是因為面向對象對設計系統和實現系統提供了一條很自然的途徑。
對象可以提供了一種通用接口,因而許多不同應用程式能夠訪問數據。
也有許多不利的方面,包括大量增加了前端設計的時間,減低了性能和技術的不成熟。然而,隨著系統的成長和硬件的不斷強大,這些不利可以減退。這些缺陷,在對象系統可以在遍佈分佈網路上的許多不同類型的系統上向用戶提供數據這一事實面前,也會減少。
Objects in Distributed Environments 分佈式環境中的對象
對象技術被認為對實現未來的分佈式系統是很有生命力的。這樣,系統的複雜性可以通過實現消息傳遞服務(如對象請求代管器)的模型而簡化。對象只是簡單地請求服務,並且其他對象提供這些服務。開發人員不需要更多地知道對象將在上面通信的系統情況。事實上,對象技術為局部使用、將來擴展到異構分佈式環境、設計應用提供了途徑。
在這一領域的發展包括:
對象管理組織(OMG)的公用對象請求代管器體系結構(CORBA)是一種規範,它的設計是為對象產生和接收請求提供了途徑。
Microsoft的對象鏈接和嵌入(OLE),為在單一臺式系統或一個網路上的應用程式共享數據提供了一條途徑。
IBM的系統對象模型(SOM)和分佈式系統對象模型(DSOM)提供了低級對象語言
OpenDoc是一種為共享文本、圖形和多媒體對象,而由Apple、Borland、IBM、Novel1和WordPerfect等公司開發的開發環境。
相關條目:Cario;Common Object Model 公用對象模型;Common Object Request Broker Architecture 公用對象請求代管器體系結構;Compound Documents 複合文檔;Object Broker,DEC DEC的Object Broker;Object Linking and Embedding對象鏈接和嵌入;Object Management Architecture對象管理體系結構;Object-Oriented Interfaces and Operating Systems面向對象的接口和操作系統;Object Request Broker 對象請求代管器;Workplace OS。
Object-Oriented Interfaces and Operating Systems 面向對象接口和操作系統 面向對象技術在軟件開發、用戶界面和數據庫設計等領域帶來了一場革命。在一個面向對象的環境,數據和對數據進行加工的方法被合併為一個對象。一個面向對象的操作系統包括一組小的實用程式(也稱為工具(tools)、附件(accessories)或applets),它們可用于編寫、編輯、繪圖、做圖表、編譯或做其他一些專用任務。這些實用工具對結構化的數據進行操作,因而,任何一種實用工具加入操作系統都既能處理數據也可以顯示它,就象創造複合文檔時那樣。在舊的模型中,一個應用程式生成的檔案並不總是可以被其他應用程式訪問的。對象還可以包括一些象文本、電子表格、圖形、聲音和視頻的信息,這些信息可以被一個應用程式生成,並插入另一個應用程式中。
對象系統是模塊化的。當增加一個新的模塊時,它可以使用現存的數據結構,因而整個操作系統無需再編譯。模塊只需簡單地插入現存結構。想像一個建築物,它的一些部分框架是為了允許將來擴展而暴露的。雖然這個建築物可能看上去並不吸引人,但是它卻具有很好的可擴展性。這方面的內容將在“面向對象技術”中進一步討論。
面向對象的操作系統正變得越來越通用。大多數主要的廠商,如IBM、Microsoft、Apple、Sun Microsystems等等都開始轉向面向對象系統。下面討論一些這樣的計劃。
TALIGENT的PINK Pink是Apple Computer和IBM為開發一種企業計算平臺而聯合開發的產品的代碼名稱。它是一種完全的面向對象的32位操作系統,它的設計是為了在不同的硬件平臺上運行不同的操作系統(DOS、OS/2、Windows)。直到1995年才有可能完全地提供它。
MICROSOFT CAIRO Cairo是Microsoft正在開發的一種分佈式操作系統,它可能在1995年投入市場。它在WindowsNT之上建造,並且增加了許多新的功能,例如,一個面向對象檔案系統、Kerberos安全性和重複服務、目錄服務、單代碼支持和一個可安裝檔案系統。從目前的情況來看,Cairo使自己看起來有些類似Windows的一個圖形用戶界面。Cairo完全實現了對象鏈接和嵌入(OLE)。
IBM的WORKPLACE環境IBM的Workplace操作系統使用與Apple Computer在它的Taligent基地共同開發的技術。這種操作系統可在精簡指令系統計算機(RISC)處理器、Motorola的PowerPC處理器和基於Intel系統上工作。WorkplaceOS是一種高性能的基於微內核的操作系統。雖然它也使用和OS/2相同的Workplace Shell圖形用戶界面,但是它可以運行64位內核,64位內核是為一些現存的操作系統設計的應用。這些現存的操作系統包括DOS、Windows、UNIX,當然還有OS/2。
對象管理組織 推動轉向面向對象系統的主要力量是對象管理組織(OMG)。IMG是一組專門定義面向對象技術之間互操作性的廠商們。OMG已經定義了公用對象請求代管器體系結構(CORBA),CORBA為跨越多廠商產品建造面向對象系統提供了一個平臺。
OPENDOC OpenDoc Alliance,它是Apple Computer首先倡導的,它目前正在開發OpenDoc規範。OpenDoc規範的設計是為了幫助開發人員在網路環境建立對象共享應用。它是為創建複合文檔的一種規範。OpenDoc類似於Microsoft的OLE,並且被許多公司支持,這些公司包括IBM、Novell、Borland、WordPerfect和其他一些不願意完全依賴於Microsoft對象技術的公司。
相關條目:Cario;Common Object Model 公用對象模型;Common Object Request Broker Architecture 公用對象請求代管器體系結構;Compound Document複合文檔;DEC Object Broker;Object Linking and Embedding對象鏈接和嵌入;Object Management Architecture 對象管理體系結構;Object-Oriented Technology面向對象技術;Object RequestBroker對象請求代管器;Workplace OS。
Objects 對象,目標,實體 面向對象系統為創建應用程式,建造操作系統,以及存儲數據提供了一種獨特的解決途徑。面向對象系統具有如下特徵:
在一個數據庫系統,對象是現實世界的實體抽象,如在一個顧客數據庫中的人們,在一個財務系統中的發票,或在一個網路目錄服務數據庫中的打印機和服務器。
對象包含數據,並包括一組過程,激活這些過程可以處理或報告這個對象內的數據。
存在對象的類和子類。首先定義一個類,它就象在這個類中創立的對象的一個樣本。例如,一個計算機倉庫的一個庫存可以具有一個稱為“計算機”的類。
子類是以一種層次結構對一個類的特例化。在一個倉庫的庫存中,一個稱為“膝上型”的子類可以在“計算機”類之下定義。
繼承是類層次的一個重要的方面。任何在一個類下定義的子類將繼承它的父類的特性,並且能夠具有一些它自己的特殊性質。繼承通過增進可重用對象而易於開發。
對象通過發送可以激活對象過程的消息,來實現相互間的協作。
對象是多態的,即一個消息可以被不同的對象以不同的方式激活。例如,可以為一個顧客對象打印一個名稱和地址而激活一個打印命令,也可以為一個發票對象激活打印命令來打印發票。用戶執行打印命令而不需要知道如何打印對象的細節情況。
在一個對象中的信息是加密的,並且只能通過激活屬於這個對象的過程來進行改變。一個外部的實體不能旁路這些過程,不能改變這個對象的內部數據。這創立了一種高度可控制的環境,並易於圍繞它來維護和建立應用程式。
由於對象以類似域表項的形式包含數據,所以你可以將一個對象與數據庫中的一個記錄進行比較,但是這是它們之間唯一的相似點。對象具有為其包含的數據進行加工的內部過程,而對關係數據庫的任何操作都是由外部過程進行處理的。這給予了對象一定的獨立性。如果你移動一個對象,這些過程需要抽取與這個對象一起移動的這些過程的信息。
現在,已經有一些面向對象的編程語言、面向對象的操作系統和面向對象的數據庫。下面列出了一些例子。
一個對象是一個面向對象編程語言的一個模塊,它包含其他對象可以用於簡化程式開發的代碼。
一個對象是在一個層次命名系統中的一些信息的集合。例如X.500目錄信息庫(DIB)或Novell Net Ware 4.x目錄服務(NDS)。NDS目錄樹包括包容器和葉對象。包容器包含其他小包容器或葉對象,葉對象代表實際生命的實體,如用戶、打印機、服務器、數據卷宗。
複合文檔包括其他應用創造的對象,如文本和圖形對象。Microsoft Windows的對象鏈接和嵌入(OLE)提供了一種複合文檔功能的例子。
相關條目:Compound Document複合文檔;Directory Services,NetWare NetWare目錄服務;Object Linking and Embedding 對象鏈接和嵌入;Object-Oriented Technology 面向對象技術。
Objects,NetWare Directory Services NetWare目錄服務中的對象在NetWare 4.x中NetWare目錄服務(NDS)的功能適用於X.500的命名服務,其中,用戶帳戶和網路中的資源是以對象的形式進行管理的。一個用戶對象包括名稱、計算機結點地址、登錄原語和其他關於一個網路用戶的有生命力的管理信息。資源,如服務器、打印機、卷宗,也表示為對象。這些對象具有描述誰能使用和改變它們的性質。
對象存儲在NetWare目錄數據庫(NDB)中,並且以層次樹的結構進行組織。“包容器對象”通常表示一個機構的分支機搆或部門。包容器對象包含其他對象,如用戶對象、服務器對象和打印機對象。樹的組織形式是重要的。由於一個對象表示一個分支機搆或部門,因而管理人員可以授予一位經理或超級用戶對一個包容器對象的不同權力,即授予這位經理或超級用戶對這個包容器對象內所有對象的管理權限。
相關條目:Directory Services,NetWare NetWare目錄服務;X.500 Director yServices X.500目錄服務。
OCR 光學字符識別 :OCR(Optical Character Recognition)是指電子設備(例如掃描儀或閱讀器)檢查紙上打印的字符,通過檢測暗、亮的模式確定其形狀,然後用字符識別方法將形狀翻譯成計算機文字的過程。
OEM 原裝備生產廠商 :OEM(Original Equipment Manufacturer)指某個設備的製造者。在製造計算機極其相關設備的過程中,原裝備生產商通常從其他原裝備生產商購買元件,將它們集成為自己的產品,然後提供給公眾出售。
OH 調制解調器連線:OH(Off Hook)是調制解調器上面的一個燈號。當電腦使用調制解調器連上Internet的時候,這個燈號會亮,表示目前是處於連線的狀態。反之,離線之後這個燈號就不會亮。
On-line Transaction Processing 聯機(在線)事務處理 通常在一個數據庫系統中,一個事務是工作的一個離散單位。例如,一個數據庫事務是一個修改一個用戶的帳戶平衡或修改一個庫存項的寫操作。聯機事務處理以實時的方式發生。民航定票系統和銀行ATM機器是聯機事務處理系統的一些例子。
傳統上,大多數聯機事務處理系統在大型計算機系統上實現,這是由於業務處理操作的複雜性,需要快速輸入/輸出、禁止和管理。一些系統每秒處理400到500個或更多的事務。如果一個事務必須在多個場地進行修改,那麼就需要一個管理機制以防止重寫數據並提供同步。其他的需求包括具有卷回失效事務的能力、提供安全性特徵、如果需要提供數據恢復的能力。這是通過一個事務處理監督器來處理的。這個監督器保證了事務是完全完成的,或進行卷回,因而數據庫保證它的每個事件發生前的狀態。
在一個分佈式環境,寫操作經常並行地在多個數據庫服務器上發生。這樣的併發事務處理需要一個“卷回”機制,以保證在一次寫操作中系統失效的情況下,數據庫的完整性。事務要麼一起確認,要麼放棄。如果一個或多個和事務有關的系統響應不一致,這意味著系統可能出現故障或通信出現了故障,因而就會放棄一個事務。
下面,列出了一些通用的事務處理(TP)監督器:
IBM顧客控制系統(CICS)是一種在IBM主機系統上運行的TP監督器。
Tuxedo 是一種分佈式TP監督器,它是AT&T開發的,並由Novell的UNIX系統組推向市場。它在許多不同的計算機系統上運行,並被一些客戶支持,這些客戶包括DOS、OS/2以及Windows。
Encina TP監督器 是一種基於開放軟件基金會的分佈式計算環境的監督器。主要廠商,如IBM和Hewlett-Packard計劃使用Encina。
相關條目:Encina;Transaction Processing事務處理;Tuxedo,UNIXS ystem Laboratories UNIX系統實驗室的Tuxedo;Two-Phase Commit 兩階段提交。
Apple的開放協作環境 Open Collaborative Environment(OCE),Apple Apple OCE(AOCE)是一組服務和工具,它可以幫助軟件開發人員為網路環境快速開發合作應用產品,如工作組和工作流軟件。這種環境的實現就象一組應用程式編程接口(API)、允許應用使用消息傳遞服務、電子激活應用、和目錄命名進行通信的軟件模塊。還包括安全性特徵。
用戶將能夠操作網路並從他們的應用程式之內使用通信服務,以及為一些項目與其他用戶進行合作。組調度、文檔流、組間通信是由AOCE認同的應用程式來處理的。有三種類型的應用程式加入了這個環境:
集成個人通信應用 它能自動進行電子函件、傳真和語音消息傳遞。
工作流自動化 它模仿在網路計算環境中的紙張路由選擇過程。
小組(team)應用程式在廣域提供工作組通信。
相關條目:Apple Open Collaborative Environment Apple的開放協作環境。
Open Database Connectivity(ODBC),Microsoft Microsoft的開放式數據庫互聯性 為使Microsoft Windows用戶能夠訪問多種臺式數據庫和檔案格式,設計了開放式數據庫連接(ODBC)描述。ODBC 使得Windows用戶可以訪問存儲在公司大型計算機上的數據,以及通過使用數據庫程式或其他在Windows環境上運行的應用程式,來訪問存放在基於LAN的數據庫服務器的數據。
ODBC是IBM的Windows開放式系統體系結構(WOSA)策略的一部分,WOSA策略是一個為在Win-dows環境上的不同平臺進行應用程式開發的計劃。WOSA包括模塊化應用程式編程接口(API),它提供了一種任何開發商創造的應用程式都可以訪問網路服務(如電子函件、數據庫、主機連接)的途徑。WOSA還提供了一條“插入”任何開發商創造的後端服務的途徑。WOSA是一種所謂的“中間件”策略,它直接建造在操作系統中,以激發允許用戶在網路上相互協作的工作組應用的增長或對數據庫提供通用接口。
WOSA紮根于從應用程式中分離打印機驅動程式的Microsoft的策略。在Windows環境,一個打印機驅動程式是在最初的安裝時裝入的,並且可以在以後的任何時間通過一個簡單的過程進行升級或改變。Windows應用程式不需要任何特殊的配置就可以使用安裝的打印機驅動程式。Windows應用程式自動地接口到打印機驅動程式,並且利用打印機驅動程式的特定特徵和可用字體。ODBC 使用類似的策略以象Windows客戶應用提供對後端數據庫系統的通用訪問。沒有ODBC,後端開發人員必須為每個前端應用編寫驅動程式,或前端開發人員必須為每個後端服務器系統編寫驅動程式。
0DBC提供被多數後端數據庫系統操作的通用功能。它使用結構化查詢語言(SQL)來操縱後端系統,並為不同的數據庫管理器和不同的SQL實現方式,提供到帳戶的獨立接口。前端應用是為ODBC接口和利用它的功能而編寫的。然而,這種研究可能僅僅提供一組最通用的功能,可能不能利用在每個後端系統可用的一些特殊特徵。獨立的實現將需要測試。ODBC是走向互操作性的一個步驟,它將允許用戶訪問以前不能訪問的後端數據。
Microsoft以一組驅動程式的形式提供ODBC,它們可以在一些前端應用上運行,如Microsoft Excel、Microsoft Access、FoxPro、Btrieve、dBASE和Paradoc。後端系統支持是向IBM、Oracle、Paradox和其他數據庫系統提供的。這些驅動程式可以為軟件廠商們再分發,也可以與一些應用程式打包。ODBC研究賦於Microsoft為在企業環境訪問工業標準數據庫領域,在提供Windows和Windows應用程式作為基本客戶平臺上以主要優勢。
相關條目:Client-Server Computing客戶機/服務器計算;Database Connectivity API sand Middleware數據庫連接性的API和中間件;Database Management System 數據庫管理系統;Distributed Database 分佈式數據庫;Enterprise Network 企業級網路;Interoperability互操作性;Middleware中間件;Structured Query Language 結構化查詢語言;Windows Open System Architecture Windows開放式系統體系結構。
OPEN DECconnect Structured Wiring 開放DECconnect結構化佈線系統 一種緊跟EIA/TIA 568商務建築佈線標準的結構化佈線系統。
相關條目:Cabling 布纜;Digital Equipment Corporation 數字設備公司;EIA/TIA 568 Commercial Building Wiring Standard EIA/TIA 568商務建築佈線標準。
Open Document Architecture 開放文檔體系結構 參見Document Interchange Standards文檔互換標準。
Open Messaging Interface(OMI)開放消息傳遞接口OMI最早是由cc:Mail開發的,cc:Mail是一個電子函件軟件開發商。它的設計是為了幫助程式通信,而不管是什麼樣的網路連接環境。Lotus購買了cc:Mail,並使它與Lotus、IBM、Apple及其他廠商提供的軟件兼容。現在OMI被稱為廠商無關消息傳遞(VIM)。VIM和Microsoft的郵件應用程式編程接口(MAPI)進行競爭,MAPI是Windows開放式系統體系結構(WOSA)的一部分。
相關條目:Vendor Independent Messaging,Lotus Lotus的廠商無關消息傳遞
Open Network Computing(ONC),SunSoft SunSoft的開放式 網路計算環境 SunSoft的ONC技術是一組聯網協議,可用于建立一個異構分佈式計算環境的分佈式服務。ONC和它的下一代產品ONC+,是為獨立於操作系統、計算機體系結構和網路運輸協議而設計的,它還提供到基於網路的數據和計算資源的透明訪問。它們為程式員提供開發和實現分佈式應用的積木,並可以簡化小型和大型網路的管理。
150多家公司在不同的硬件平臺和操作系統上開發實現ONC。NetWare檔案系統(NFS)是著名的ONC服務系統。Sun Microsystems最初以NFS的名稱開拓ONC市場,並且許多許可繼續描述它們的產品是NFS,雖然它們支持完全的ONC平臺。ONC包括如下核心協議,如圖O6所示。
Remote Procedure Cal1(RPC) 遠程過程調用(RPC)
RPC是通過網路在遠程系統上執行過程的獨立於操作系統的一組操作。RPC基於程式員通常使用的過程調用機制,提供了一種處理低級進程間通信的客戶機/服務器通信結構,因而程式員可以開發在異構網路上運行的分佈式應用程式。
External Data Representation(XDR) 外部數據表示(XDR)
XDR是SunSoft的開放網路計算環境的一種功能。XDR提供了一種與體系結構無關的表示數據,解決了數據字節排序的差異、數據字節大小、數據表示和數據對準的方式。使用XDR的應用程式,可以在異構硬件系統上交換數據。從SunSoft使得可以免費獲得RPC/XDR規範和源代碼。
Transport Layer Interface(TLI) 運輸層接口(TLI)
在AT&TUNIX系統V版本4中,TLI是ONC底下的一層,它是一個編程接口庫,它使得RPC具有與協議無關的性質,並允許RPC程式在多協議網路傳輸,如TCP/IP和OSI上運行。為TLI編寫的增強型RPC就是傳輸獨立RPC(TI-RPC)。TI-RPC是在UNIX系統V版本4中的標準,並且它與現存的ONCRPC協議兼容。另外,Novell也提供TI-RPC技術。
Distributed Services NFS 分佈式服務NFS
於1985年宣佈的網路檔案系統(NFS),是一種允許用戶在網路區域系統共享信息的開放式系統技術。NFS提供對遠程檔案系統的透明訪問。存儲在和網路相連的任何系統的檔案可以被任何用戶訪問。訪問是基於管理人員和檔案所有人所授予的權限的。下面討論的模塊是分佈式服務的組成部分。
網路信息服務(NIS)NIS是一種網路範圍的數據管理設備。它提供了一個擴展的數據庫,以存儲系統信息,如主機名稱、網路地址、用戶名稱和網路等。NIS的正式名稱是黃頁YP(Yellow Pages)。
鎖定管理器(LM)LN通過支持一個網路上的檔案和記錄鎖定,而允許用戶對訪問信息進行協調和控制。它阻止兩個或多個用戶同時修改同一個檔案或記錄(從而可能破壞有用數據)。
遠程執行(REX)服務 REX用於在遠程系統上運行用戶命令或程式。它提供在本地計算機上不能獲得的計算能力的訪問。
網盤(NETDISK) 這個模塊允許無盤工作站從支持ONC/NETdisk協議的服務器中得到自舉能力。
自動裝入器(AUTOMOUNTER) 自動裝入器根據是否需要的原則,自動地裝入或卸載遠程目錄。這提供了NFS檔案系統增加的透明性和可用性。它通過允許將遠程裝入指向一組服務器而不是一個服務器,來支持對經常讀並很少寫的檔案的複製,例如,系統二進制代碼的複製。
PC-NFS守護程式 這個在基於ONC的服務器上運行的小程式,對在實現ONC的DOS上運行的PC提供鑒別和打印池服務。
ONC+and Federated Services ONC+和聯合服務
ONC+是ONC的下一個階段,聯合服務將允許ONC和其他分佈式計算環境共存,如NetWare、開放軟件基金會的分佈式計算環境(DCE)和開放式系統互聯(OSI)。新的特徵包括多線程和一個命名服務。下面將介紹這方面的內容。
修改的NFS特徵 新的NFS包括多線程和新增的Kerberos鑒別服務(參見“Kerberos 鑒別”)。其他一些計劃增強的特徵包括對面向連接的傳輸支持,如傳輸控制協議(TCP),以及書寫簇(write clustering)和一個新的高速緩衝檔案系統,以改進性能。
NIS十命名服務器 NIS+是替代NIS的。它為大型網路提供了一種層次式的企業命名服務。它比NIS具有更好的可擴展性和安全性,並且易於管理。NIS+對NIS客戶具有互操作性。
TI-RPC ONC+將包括以前討論過的TI-PRC和遠程異步調用設施,它保證了對遠程過程調用的無阻塞性。其他增強包括多線程能力、共享存儲器特徵和改進的連接管理設施。
安全性 除了Kerberos安全性特徵之外,還提供RSA數據安全性。可以從SunSoft獲得ONC許可,從而有權使用RSA認同的RSA技術。
聯合服務 SunSoft的動機是,使它的Solaris操作系統用戶,能夠在支持多廠商分佈式服務的一個異構網路上訪問資源。這些服務當然是可以共存的。聯合服務是對Solaris分佈式計算環境的擴展。
Solaris操作環境提供標準化的聯合服務接口(FSI),它允許廠商們以良好的集成方式,將他們的分佈式服務加入Solaris中,從而這些服務在Solaris內的ONC十核心服務中的地位是對等的。
相關條目:Distributed Computing 分佈式計算;Distributed File Systems分佈式檔案系統;Enterprise Networks 企業級網路;Remote Procedure Ca11遠程過程調用;Security安全性;SunSoft Solaris;Sun Microsystems,Inc.Sun Microsystems公司;SunSoft SunOS;Transport Layer Interface運輸層接口。
Open Shortest Path First(OSPF)Protocol 優先開放最短路徑(OSPF)協議 是一種鏈路狀態路由選擇算法,它來自開放式系統互聯(OSI)的中間系統對中間系統(IS-IS)域內路由選擇協議方面的工作。與距離向量路由選擇相比,鏈路狀態路由選擇需要的更多處理性能,但是卻提供了對路由選擇過程的更多控制和對改變情況更快的反應。根據下面的數據,採用Dijkstra算法來計算路由:
分組為了達到目的地而必須經過的路由器數目。這個數目通常被稱為步數(hops),在大多數情況下,步數越少越好。
LAN間傳輸線路的速度。有一些路由可能會使用慢速的異步連接,而其它一些路由可能使用高速的數字連接。
由於傳輸擁擠而產生的延遲。可變長度幀可以保持住路由器上的通信量。一個路由器可能為了避免擁擠而將分組沿另外一條路由發送出去。
路由的費用。這是由管理人員定義的一個指標,通常它是依賴於傳輸介質的。便宜的介質可能不是太快,但是卻對一些類型的通信傳輸非常合適。
OSPF路由選擇表只有在需要時,才進行修改,而不是每隔固定間隔就發生一次。這十分明顯地減少了通信量,並且節省了網路帶寬。穿越網路的路徑是基於上面列出的原則來選擇的。一個網管人員可以根據通信的類型來規劃穿越網路的路徑。例如,如果線路具有較高的傳輸率,那麼用較多步數來穿越網路可能是比較合適的。相應地,如果線路是低速的,並且是低費用的,就可能在規劃時較少考慮通信量。
相關條目:Link State Routing鏈路狀態路由選擇;NetWare Link Service Protocol NetWare鏈路服務協議;Routing Protocol 路由選擇協議。
Open Software Foundation(OSF)開放軟件基金會(OSF)開放軟件基金會是一個會員式機構,它從其它廠商處獲得技術來建立計算環境。它定義需要什麼,然後向任何人提供這些定義,稱為“為技術而請求(RFT)”。OSF實際創造的技術只是那些獲得技術的組合。
OSF開放式系統軟件環境是一組開放式系統技術的集合,這些技術使用戶能夠在虛擬無縫的環境,對來自多廠商的軟硬件進行融合和匹配。廠商無需考慮的軟件環境包括如下:
分佈式計算環境?DCE)一種平臺或基礎設施,它可以簡化異構環境中的產品開發。
分佈式管理環境(DME)為分佈式混合廠商環境中的系統和網路管理人員提供工具。
開放軟件基金/1(OSF/1)開放環境的UNIX操作系統,它支持對稱多處理機工作,增強的安全性功能,和動態配製。它是圍繞Carnegie Mellon大學的Mach操作系統微內核建造的。
OSF/Motif 一種圖形化的用戶接口,它具有與Microsoft Windows和Apple Macintosh操作系統相似的界面,提供一種通用的外觀和感覺。它在IBM系統上廣泛使用,並且和IBM的通用用戶訪問(CUA)有關係。
OSF體系結構無關分佈格式(ANDF)它使得開發人員可以生產和包裝一個應用成為在不同的硬件體系結構上使用的一個版本,它為大市場開放式系統軟件開闢了一個市場。
OSF在開放式系統和互操作產品標準開發中扮演著關鍵角色。通過OSF的分佈式計算環境,向開發人員提供了可以隱藏不同技術和產品間差異的軟件。DCE使得開發人員可以建造在分佈式客戶機/服務器環境工作的應用產品。圖O-7示意了一個分佈式環境。它是一種許多不同服務器向客戶提供服務和數據的環境。這些系統可以是放在統一地點的,也可以是分散在廣闊地理區域的。
典型的分佈式環境是異構的,他們包括許多不同廠商的產品、操作系統、應用和數據庫。OSFDCE通過提供可以隱藏操作系統、通信協議和多廠商產品差異的一種公共基礎設施,來簡化在分佈式客戶機/服務器環境的產品開發。
在過去,可以從IBM、DEC等廠商處獲得公共基礎設施,但是他們都是專有的。OSFDCE的基本目標是提供一個開放環境。它定義了一種客戶可以與後端服務器進行交互的客戶機-服務器體系結構。然而,在分佈式環境,服務器可能是分散放置的,並且是通過廣域網(WAN)鏈路連接的。由於這種網路可能是範圍很廣的,而且數據訪問速度也是可變的(WAN連接的結果),數據同步和其它問題將出現,從而導致了創建分佈式應用的複雜性。由於在創建這樣的應用時的複雜性,OSFDCE,以及類似產品,已經變得至關重要,並且被許多廠商支持,如IBM、DEC、Hewlett-Packard等廠商。
廠商無關DCE平臺提供如下核心服務。這些服務在“OSF分佈式計算環境”下討論得更細緻。
分佈式目錄服務,源於DEC的DECdns目錄服務。
基於Andrew檔案系統(AFS)的分佈式檔案系統。
源於Apollo(現在的Hewllet-Packard)開發的網路計算系統的遠程過程調用。
安全性服務,如鑒別、數據完整性,和Kerberos提供的數據個人性(它是在麻省理工學院發明的)。
一些主要廠商將OSFDCE集成到了他們的產品中。Novell將要把DCE以可裝入模塊的形式集成到NetWare中,它還在一些大學資助了一些與DCE相關的計劃。IBM為它的OS/2產品增加了DCE客戶機軟件,因而用戶可以在包括運行DCE的OS/2在內的IBMDCE服務器上訪問DCE檔案和目錄服務。Hewllet Packard也加入了DCE,它提供聯機事物處理(OLTP)產品、對象管理系統和其它基於DEC的產品。
相關條目:Directory Service目錄服務;Distributed Computing 分佈式計算;Distributed Computing Environment分佈式計算環境;Distributed Database 分佈式數據庫;Distributed File Systems分佈式檔案系統;Mach,Carnegie-Mellon Microkernel Carnegie-Mellon大學的微內核Mach;Microkernel 微內核;OSF/1,Open Software Foundation開放軟件基金OSF/1;Remote Procedure Call遠程過程調用;Security安全性。
Open Source 開放源代碼 一個用來指免費軟件的術語。對於一個開放源代碼的應用程式來說,允許公眾獲得該應用程式的源程式代碼,並可以對獲得的源程式代碼進行修改和發放。
Open Systems Interconnection(OSI)Model 開放式系統互聯(OSI)模型 OSI模型是國際標準化組織創建的一種標準。它為開放式系統環境定義了一種分層模型,其中,如果兩個系統採用了相同的OSI層通信協議,那麼,在一台計算機上運行的一個進程就可以和另一台計算機上的類似進程通信。
協議是以軟件驅動程式的形式被裝載到計算機中的。協議棧的每一層都定義一些特定的功能。當最高層的應用程式需要發送消息到網路上的其它系統時,這個應用程式就和下面的層進行交互。這個請求是在一個層進行包裝,並向下傳送到下一個層的,它將增加一些和這個層處理功能相應的信息,在一個分組內產生一個新的分組的應用程式需要發送消息到網路上的其它系統時,這個應用程式就和下面的層進行交互。這個請求是在一個層進行包裝,並向下傳送到下一個層的,它將增加一些和這個層處理功能相應的信息,在一個分組內產生一個新的分組。然後,這個分組被向下傳遞到下一個層,並且這個過程將繼續。每個層都向這個消息分組增加信息,並且這個信息將被接收系統的協議棧的相應層進行讀取。按照這個方式,每個協議層與它對應的協議層進行通信以完成通信。
每個層定義通信子系統必須遵守的規則和規程,以達到和其它系統對等進程進行通信的目的。下面列出了通信子系統處理進程的一些例子:
在應用程式之間相互協作和交互,以及對語法和數據表示的差異進行翻譯。
在全雙工或半雙工模式下的數據交換管理。
面向連接的會話管理(這是指監控和維護兩個系統間的通信通道)。
網路路由選擇和尋址過程。
網路驅動程式(這是指為傳輸做準備而將數據編幀)。
網路接口卡功能(這是指在網路介質上傳輸電子、光或無線電信號)。
產品開發人員利用協議標準來創造能夠和其它廠商的產品進行相互操作的產品。例如,底層的一些層定義了硬件接口技術,一個在這一層次設計硬件驅動程式的開發人員,將遵守在這一層定義的規則。
在一次實際的通信會話中,在協議棧中的每個層和在其它系統的對等層進行通信,但這是通過對被傳送到下一較低協議層的分組加上它需要通信的信息來實現的。如前所述,這個過程在“分層體系結構”中有更詳細的介紹。
下面介紹網路協議。在進行任何通信層的工作之前,你必須安裝了網路硬件——物理層,因而物理層被首先介紹。
物理層 物理層定義接口的物理特性,例如機械部件和連接器,電器特性,如表示二進制值的電壓級,和功能性特性,如建立、維護和拆除物理鏈路。用於數據通信的著名物理層接口包括EIARS-232和RS-449,RS449是RS232的後繼,它允許更長的電纜距離。著名的局域網(LAN)系統是以太網、令牌網和光纖分佈式數據接口(FDDI)網。
數據鏈路層 數據鏈路層定義在兩個系統的物理連接之間發送和接收信息的規則。這一層為進行傳輸,對數據進行編碼和編幀,另外還提供出錯檢測和控制。由於數據鏈路層已經能夠提供對出錯的控制,所以更高的層就不再需要處理這種服務了。然而,當使用可靠傳輸介質時,在這一層不進行出錯控制,而是在更高的層執行這種工作,這將可以提供更高的性能。網橋在協議棧的這一層進行操作。下面是一些用於數據鏈路層的通用協議:
高級數據鏈路控制規程(HDLC)和相應的同步、面向位的協議。
LAN驅動程式和訪問方式,例如以太網和令牌環。
快速分組廣域網,例如幀中繼和異步傳輸模式(ATM)。
Microsoft的網路驅動程式接口規範(NDIS)。
Novell的開放數據鏈路接口(ODI)。
網路層 網路層定義為在系統之間開闢和維護網路路徑的協議。它和數據傳輸和交換過程有關,而對上面的層隱藏了這些過程。路由器在網路層進行操作。網路層可以查看分組地址以確定路由選擇的方式。如果一個分組是被編址到一個本地網路上的工作站的,那麼它就被直接送到那裏。如果它是被編址到其它段的一個網路的,那麼這個分組就被送到一個路由選擇服務那裏,再在網路上被轉發。下面是一些用於網路層的通用協議:
因特網協議(IP)。
X.25協議。
Novell的網間分組交換(IPX)。
Banyan的VINES網間互聯協議(VIP)。
運輸層 運輸層為在系統間移動信息提供了一種高級控制,包括更加複雜的出錯處理、優先分級和安全性特徵。運輸層通過在兩個端系統間提供面向連接的服務,提供了高質量的服務和準確的傳遞。它控制分組的次序、節制通信流和識別重分組。運輸層對編址分組的信息賦予一個跟蹤號,這個跟蹤號在目的地將被檢查。如果分組丟失了數據,在接收端的運輸層協議和在發送系統的運輸層聯繫,對這個分組進行重發。這一層保證了所有數據都接收,並且是按正確的次序被接收。一個邏輯電路(Logical Circuit)就象一個專用連接,可以建立邏輯電路來在系統間提供可靠的傳輸。下面列出了可以提供面向連接服務的非OSI運輸層協議:
網間傳輸控制協議(TCP)。
Internet用戶數據報協議(UDP)。
Nove1l串行分組交換(SPX)。
Banyan VINES進程間通信協議(VIPC)。
口Microsoft NetBIOS/NetBEUI。
會話層 會話層通過使用會話技術或對話,協調系統間的信息交換。並不總是需要對話,但是一些應用程式在一個連接暫時失效時,可能需要知道從哪里重新開始傳送數據,或可能需要一個固定間隔的對話以確定一組數據已經發送完畢,可以開始發送新的數據了。
表示層 表示層上的協議是工作站上運行的操作系統和應用程式的一部分。為了顯示或打印信息,在這一層對信息格式化。數據內的代碼(例如標簽或特定的圖形序列)將被解釋。在這一層還進行數據加密和其它字符集的翻譯。
應用層 應用層用於定義一系列應用程式,這些應用程式處理檔案傳輸、終止會話和消息交換(例如電子函件)。應用使用這一層定義的過程來訪問下面的網路服務。下面列出OSI應用層協議:
虛擬終止。
檔案傳輸訪問和管理(FTAM)。
分佈式事務處理(DTP)。
信報處理系統(X.400)。
目錄服務(X.500)。
相關條目:Connection-Oriented and Connectionless Protocols面向連接和無連接協議;Layered Architecture 分層體系結構;Packet 分組;Protocol Data Unit協議數據單元;Protocols,Communication通信協議;ProtocolStack 協議棧。
Open Systems 開放式系統是在計算機體系結構、計算機系統、計算機軟件和通信系統等領域廣泛使用的一種術語。開放式系統鼓勵開發兼容的廠商產品。顧客可以從開放式系統中獲益,這是因為他們可以在很廣範圍的、可與系統一起工作的產品中進行選擇,更為重要的是,易於和其它廠商的產品互聯。一個開放環境提供標準通信設施和協議,或提供一條使用不同協議的途徑。計算機社會給要開放的廠商施加了更多的壓力,這是因為他們在銷售產品時必須公開承諾這些設備將能和現有的系統一起工作。
開放式系統是由廠商、廠商的國際聯盟、政府部門和世界範圍的標準化組織進行定義的。典型情況是,發起廠商、國際聯盟或標準化機構控制規範,但是他們是在公共會議上,與其它廠商和用戶一起來定義規範的。最近的趨勢已經開始偏離了拼命地追求完全的開放,而轉向了接受正在使用的標準。例如,傳輸控制協議/因特網協議(TCP/IP)被證明比開放式系統互聯(OSI)協議更加流行,這是因為Internet將永遠把TCP/IP協議作為它的基本協議。大多數廠商現在支持TCP/IP,然而還有少數廠商支持OSI協議。
相關條目:Distributed Computing Environment 分佈式計算環境;Enterprise Networks 企業級網路;Government OSI Profile政府OSI描述;IBM Networking Blueprint IBM聯網方案;Interoperability互操作性;Middleware 中間件;Open Systems Interconnection Model 開放軟件基金會;Open Systems Interconnection Model 開放式系統互聯模型;Windows Open System Architecture Windows開放式系統體系結構。
Open View Management System,Hewlett-Packard HP的Open VieW管理系統 Sun Microsystem的SunNet管理器和Hewlett-Packard的OpenView使用一種平臺體系結構,其中一個是設計處理網路管理系統所有核心功能所需的平臺。這些功能包括通信協議接口、數據定義和其它管理特徵。然後,其他廠商設計的產品可以插入或接口到平臺廠商所設計的平臺上,從而獲得所有它的內置功能,如訪問多協議網路、多廠商系統和數據管理策略。
相關條目:Management Standard sand Tools管理標準與工具。
OpenData-link Interface 開放數據鏈路接口 NetWare使用眾所周知的與協議無關的開放數據鏈路接口結構,來對網路上的不同協議同時提供支持。如圖O-5所示,網路驅動程式將它們自己連接到ODI層。分組被指向ODI層之上的相應的協議棧,例如網間分組交換(IPX),傳輸控制協議/因特網協議(TCP/IP),或App leTalk。接近頂端,服務協議對可以在NetWare服務器上安裝的不同操作系統提供檔案和系統支持。