<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Junky's IT Notebook

    統計

    留言簿(8)

    積分與排名

    WebSphere Studio

    閱讀排行榜

    評論排行榜

    OSGi技術

    OSGi技術

    原文:
    http://www.osgi.org/osgi_technology/index.asp?section=2

    簡介

    OSGi規范為網絡化的服務定義了一個標準的,面向組件的計算環境.給網絡設備添加OSGi服務平臺,使之可以有能力在網絡的任何地點管理軟件組件的生命周期.組件可以在運行期間被安裝,更新或刪除,無需打斷設備的其他操作.軟件組件是可以動態查找和使用其他組件的庫或程序.軟件組件可以通過購買或自行開發.OSGi聯盟已經開發了許多標準的組件接口,諸如HTTP服務器,配置,日志管理,安全,用戶管理,xml等等這些常用功能.可以從不同的提供商那里獲得這些即插即用的兼容實現.

    軟件組件體系正面臨一個日益凸現的問題:大量需要開發和維護的配置.而標準化的OSGi組件體系極大的簡化了這個配置過程.

    框架
    OSGi規范的核心組件是OSGi框架.他為應用提供了一個被稱為包捆(bundle)標準環境.OSGi包括這樣四層:
    L0.執行環境
    L1.模塊
    L2.生命周期管理
    L3.服務注冊表
    此外還包含一個安全系統.

    執行環境就是Java環境.J2SE,CDC,CLDC,MIDP等都是合法的執行環境.OSGi同時根據核心定義(foundation profile)和一個最簡版本制定了一個標準的執行環境.
    模塊層定義了類裝載策略.OSGi框架是一個強大的類裝載模型.以Java為基礎但加入了模塊化的思想.在Java中,只有一個包含了所有的可用類和資源類路徑.OSGi的模塊層還為一個模塊提供了私有類以及模塊之間的連接.
    生命周期層將包捆動態地安裝,啟動,停止,更新和卸載,包捆依賴于模塊層的類裝載但提供了一套API來在運行期管理所有的模塊.擴展的依賴機制用于確保正確模塊依賴關系.
    服務注冊表為包捆提供一個互操作模型實現動態性.包捆可以通過傳統的類共享來互操作,但是類共享在當動態安裝和卸載代碼時會表現得很不穩定.服務注冊表提供了一個易于理解的模型來在包捆之間共享對象.大量的事件被定義于處理服務之間的交互.服務如同Java對象一樣,可以代表任何事物.許多服務和對象是一樣的,像http服務器,服務就是現實中的一個對象,比如一個附近的藍牙電話.

    安全是建立在Java和Java2安全模型之上.語言級的限制避免了許多可能出現的隱患(The language by design limits many possible constructs). 比如,病毒常用的緩沖區溢出是不可能的.訪問修飾符可以限制代碼的可見性.OSGi通過"允許私有類"擴展了這一模型,在標準Java中不包含這種機制.Java2安全模型提供一個易理解的模型來檢查代碼對資源的訪問權限.OSGi加入了完全的對訪問請求動態管理.

    標準服務

    在框架之上,OSGi聯盟制定了許多服務.服務由一個Java接口定義.包捆可以實現這個接口并把實現注冊到服務注冊表.服務的用戶可以從服務注冊表中找到他,或者對服務的加入或取消做出反應.
    以下各部分給出OSGi release 3服務的一個簡單介紹.更多資料可以找OSGi服務平臺release 3的書籍或PDF下載.要注意每個服務都是先被抽象地定義然后由不同廠商獨立實現.

    框架服務

    OSGi框架提供一個權限管理服務(permission admin service ),一個包管理服務(package admin servie),和一個啟動級別服務(start level service).這些服務是可選的 and direct the orperation of the Framework(不知道怎么譯).
    • 訪問管理(Permission Admin) - 當前或將來的包捆的訪問權限可以通過這個服務來操作.
    • 包管理(Package Admin) - 包捆之間共享類和資源.包捆的更新可能需要系統重新更新包捆之間的依賴關系.該服務提供系統實際包的共享狀態并刷新共享的包.如,取消或者重新計算依賴關系.
    • 啟動級別(Start Level) - 啟動級別是一個包捆的集合,這個集合中的包捆必須一同運行或者要在其他服務啟動之前初始化.啟動級別服務設置當前的啟動級別,制定某個包捆的啟動級別,查看當前設置.

    系統服務

    系統服務提供橫向功能(horizontal function),這些在每個真實的系統中都是存在的.比較常見的有,日志服務(Log Service),配置管理服務(Configuration Admin Service),設備訪問服務(Device Access Service),用戶管理服務(User Admin SErvice),IO連接服務(IO Connector Service)和參數選擇服務(Preferences Service).
    • 日志服務 - 信息,警告,調試信息的紀錄,或者處理錯誤.他接收日志紀錄信息然后分配他們給其他訂閱了這些信息的包捆
    • 配置管理服務 - 該服務提供一個易伸縮的動態模型來設置和獲得配置信息
    • 設備訪問服務 - 設備訪問是配置一個驅動器到一個新設備并自動下載實現該驅動器的包捆的機制
    • 用戶管理服務 - 該服務使用一個用戶信息數據庫(私有和公有)來鑒權和授權.
    • IO連接服務 - 實現了CDC/CLDC的javax.microedition.io包作為一個服務.該服務允許包捆提供新的,可選協議方案.
    • 參數選擇服務 - 提供屬性數據庫的訪問.和Windows的注冊表或Java的Preferences類.


    協議服務
    OSGi聯盟定義了以下外部協議服務:
    • Http服務 - 一個servlet容器.包捆可以提供servlet.OSGi的動態更新機制服務平臺使得Http服務變得非常誘人,加入新的servlet而不需要重啟.

    • UPnp服務 - 通用即插即用(Universal Plug and Play)是一個正在興起的用于用戶電子設備的標準,OSGi UPnP 將一個UPnP網絡設備映射到服務注冊表.或者,將一個服務映射到UPnP網絡(該服務在release 3中被推薦).
    • Jini服務 - Jini是一個網絡協議,用于在網絡上發現Jini服務并下載執行.(該服務在release 3中被推薦).

    其他服務
    • 關聯管理服務(Wire Admin Service) - 通常包捆會自己建立查找服務的規則.但是在很多情況下,這是一個發布時需要考慮的問題.因此關聯管理服務會通過一個配置文件把不同的服務連接起來.使用消費者和生產者的概念來達到對象之間的互操作.
    • XML解析服務 - 允許一個包捆定位一個解析器并使用相應的屬性.與JAXP兼容.

    結論
    OSGi規范的適用范圍很廣.因為它通過一個很簡單的層使得同一個虛擬機的Java組件高效率的交互.通過一個擴展的安全模型來使組件運行在一個安全的環境中.通過恰當的訪問限制,組件可以被重用和組合.OSGi 框架還提供了一個擴展的部署機制來讓這種交互可行,安全.

    各個領域構建在OSGi之上的中間件的大量出現,這就給OSGi軟件組件創造了一個很大的軟件市場.The rigid definition of the OSGi Service Platform enables components that can run on a variety of devices, from very small to very big. 

    采用OSGi規范可以降低軟件開發成本,同時提供新的商業機會.

    進一步閱讀
    OSGi Service Platform, Release 3下載:
    http://www.osgi.org/osgi_technology/download_specs2.asp?section=2
    或買書:
    https://secure.inventures.com/osgi/sales/R3Book_order_form.asp

    OSGi聯盟寫的技術白皮書:
    http://www.osgi.org/documents/osgi_technology/osgi-sp-overview.pdf
    更深入介紹OSGi的白板白皮書(whiteboard whitepaper):
    http://www.osgi.org/documents/osgi_technology/whiteboard.pdf

    譯者:derekzhangv.at.hotmail.com
    歡迎指正,討論

    posted on 2008-01-21 10:11 junky 閱讀(885) 評論(0)  編輯  收藏 所屬分類: framework


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲人成网站在线观看青青| 日韩免费视频播播| 亚洲精品无码久久久久去q| 免费很黄无遮挡的视频毛片| 国产精品99久久免费| 亚洲av无码日韩av无码网站冲| 夜夜嘿视频免费看| 美丽的姑娘免费观看在线播放 | 亚洲国产精品13p| 日韩一区二区三区免费播放| 亚洲国产精品尤物YW在线观看| 一级毛片aa高清免费观看| 每天更新的免费av片在线观看| 亚洲酒色1314狠狠做| 中文字幕av无码不卡免费| 亚洲人精品午夜射精日韩| 国产在线国偷精品免费看| 亚洲av综合avav中文| 国产成人精品免费视频动漫 | 久久精品国产亚洲Aⅴ蜜臀色欲| xxxx日本在线播放免费不卡| 国产成人亚洲精品青草天美| 91精品国产免费网站| 99亚偷拍自图区亚洲| 久章草在线精品视频免费观看| 亚洲精品高清视频| 天天摸天天操免费播放小视频| 国产精品亚洲lv粉色| 亚洲人成网7777777国产| 91九色老熟女免费资源站| 色婷婷六月亚洲综合香蕉| 久久亚洲精品无码观看不卡| 一级毛片**不卡免费播| 亚洲另类无码一区二区三区| 久久精品夜色噜噜亚洲A∨| 精品免费人成视频app| 看全免费的一级毛片| 久久精品国产亚洲AV无码偷窥| 国产色爽免费视频| 日韩精品无码专区免费播放| 亚洲成AV人片在WWW|