摘要:本文詳細介紹了PSOS嵌入式操作系統,嵌入式瀏覽器,中間件,及如何在使用PSOS的機頂盒上實現嵌入式瀏覽器中間件集成。
關鍵字:PSOS;嵌入式瀏覽器;中間件;機頂盒
一、概述:
現階段,有線電視數字化的工作正在全國有條不紊地展開,嵌入式瀏覽器技術已成為數字電視中的核心技術,在機頂盒中實現嵌入式瀏覽器將極大豐富數字交互業務。在這種情況下,各種針對數字電視的嵌入式瀏覽器紛紛出現。集成已有瀏覽器,可以避免重復開發,縮短產品周期,提高軟件復用率,是一個很好的選擇。
二、嵌入式實時操作系統PSOS簡介
目前流行的實時操作系統有Integrated Systems Incorporated公司的PSOS,Wind River System公司的VxWorks, Microware公司的DAVID OS-9,ST公司的OS20、Windows CE以及專為機頂盒開發的Power TV等。這些操作系統各有所長,在機頂盒中都有應用。
PSOS是一個由標準軟組件組成的,可剪裁的實時操作系統,在目前機頂盒中應用較為普遍。PSOS分為內核層、系統服務層、用戶層。PSOS內核負責任務的管理與調度、任務間通信、內存管理、實時時鐘管理、中斷服務;可以動態生成或刪除任務、內存區、消息隊列、信號燈等系統對象;實現了基于優先級的、選擇可搶占的任務調度算法,并提供了可選的時間片輪轉調度。PSOS內核還提供了任務間通信機制及同步、互斥手段,如消息、信號燈、事件、異步信號等。
PSOS系統服務層包括PNA+、PRPC+、PHILE+、PREPC+等組件。PNA+實現了完整的基于流的TCP/IP協議集,并具有良好的實時性能,網絡組件內中斷屏蔽時間不大于內核模塊中斷屏蔽時間。PRPC+提供了遠程調用庫,支持用戶建立一個分布式應用系統。PHILE +提供了文件系統管理和對塊存儲設備的管理。PREPC +提供了標準的C、C++庫,支持用戶使用C、C++語言編寫應用程序。
PSOS用戶層指的是用戶編寫的應用程序,它們是以任務的形式出現的。任務通過發系統調用而進入PSOS內核,并為PSOS內核所管理和調度。
三、嵌入式瀏覽器中間件選擇
數字電視中間件是指位于數字電視機頂盒內部實時操作系統與應用程序之間的軟件部分,它以應用程序接口(API)的形式存在,整個API集合被存儲在機頂盒的閃存(FLASH)中。采用中間件系統,可以跨越技術、標準等復雜的內容,用簡單的方法定制具有自己特色的應用軟件,從而在提高開發效率、減少開發成本的同時能夠跟上技術的發展,將應用的開發變得更加簡捷,使產品的開放性和可移植性更強。雖然中間件對機頂盒硬件資源的要求較高,但在開發大量應用時成本大大下降。圖2描述了中間件在數字電視機頂盒中的位置。
嵌入式瀏覽器一般作為應用程序,但當使用瀏覽器技術執行Java Script、提供對DSM-CC模塊的支持,生成豐富高效的GUI界面時,就形成了中間件,這一技術使嵌入式瀏覽器的應用更加靈活有效。
嵌入式瀏覽器技術正在蓬勃發展, 常見的瀏覽器可分為:
(1)開源瀏覽器:
Mozila,功能很強但是體積龐大;
Konqueror embedded,基于Qte,是一個不錯的嵌入式瀏覽器;
Dillo,使用GTK作為GUI平臺開發的瀏覽器;
View ML,支持X窗口系統和微軟Windows平臺,體積小,瀏覽速度較快。
(2) 商業瀏覽器:
Access Net front,來自日本瀏覽器大廠Access公司,全球應用廣泛的嵌入式瀏覽器;
Open TV device mosaic,由全球的互動電視公司Open TV提供的的嵌入式瀏覽器,基于的Web標準;
Internet Explorer for WinCE,是IE的WinCE版,功能強大,但只能在WinCE上使用;
iPanel,由深圳茁壯公司開發成功的相對實用化的成熟產品, 占用資源少,支持中日韓文。
集成開源瀏覽器的一大優點是費用低廉,但是無法獲得強大的技術支持;同時這些瀏覽器普遍沒有針對數字電視進行優化,有些瀏覽器軟件代碼過于龐大,占用資源過多,實用化程度不高且大都不支持中文。購買商業的嵌入式瀏覽器需要支付相當的費用,但卻可以獲得這些公司的技術支持,有利于縮短移植時間;同時這些瀏覽器針對數字電視應用進行了專門的優化,適合集成在數字機頂盒中。
四、嵌入式瀏覽器中間件集成原理
集成嵌入式瀏覽器就是向嵌入式瀏覽器提供底層系統的支持,使其能在PSOS系統上運行。其按模塊劃分為:
(1)基礎功能模塊:
基礎功能模塊包括內存管理、FLASH讀寫、調試輸出等。這些是保證瀏覽器能正常啟動、空轉、關閉,對程序進行查錯調試的根本基礎。
內存管理:一般瀏覽器只要求提供內存分配和內存釋放函數。內存管理對瀏覽器而言相當重要,在保證函數提供正確功能的同時,可在函數內加調試語句,跟蹤每一次分配的內存大小和地址。PSOS提供了方便的ANSI-C庫,可直接使用。
FLASH讀寫:瀏覽器有時會用到以保存配置或Cookies。由PSOS與硬件配合,提供此類函數。FLASH作用不大時,亦可用ram模擬。
調試輸出:由于硬件限制,調試輸出有時可能是的調試手段。瀏覽器一般會要求一個類似于printf的接口,PSOS可配合硬件驅動輸出到串口、網口,或屏幕等。
(2)顯示模塊:
顯示模塊提供輸出到視頻的顯示支持,直接決定了用戶能看到的終效果。
機頂盒的顯示終端一般為電視,屏幕分辨率有限,瀏覽器會要求底層提供屏幕寬度和高度(以像素為計量單位)。
現在很多瀏覽器支持8位調色板色彩甚至16位真彩色,有的支持在兩種模式間切換。PSOS必須提供相應的模式支持,并將當前模式通知瀏覽器。
在繪圖輸出部分,可提供視頻顯示緩沖區給瀏覽器直接操作,亦可提供繪圖函數,依不同瀏覽器的需求而定。
(3)輸入控制模塊:
瀏覽器必須提供交互式信息訪問,常用的輸入設備包括遙控器、硬件光標、鍵盤等。
遙控器是機頂盒的標準輸入設備,將遙控器的按鍵消息“翻譯”成瀏覽器能識別的事件消息,然后利用瀏覽器提供的接口傳遞給瀏覽器處理。
硬件光標、鍵盤不是必須的外部設備,PSOS可通過硬件驅動,直接或間接支持,如使用USB口。收到輸入后,翻譯給瀏覽器。
遙控器按鍵有限,沒有鼠標鍵盤往往不能實現瀏覽器所需的全部事件消息。這需要我們自己撰寫一套針對遙控器的輸入法,通過多個組合按鍵形成瀏覽器所需輸入。
(4)DSM-CC 數據接收功能模塊:
如前所述,提供對DSM-CC模塊的支持是嵌入式瀏覽器成為中間件的重要標志。機頂盒支持DVB標準,DSM-CC是其中重要的控制流。在瀏覽器的控制下,硬件進行DSM-CC碼流的接收、過濾,將得到的數據提交瀏覽器解析。
此部分需提供:
·DVB數據通道創建、關閉功能;
·DVB數據通道過濾器(是硬件的)功能;
·數據接收函數回調。
使用PSOS的機頂盒,這個部分的功能應當十分完善,依據瀏覽器的要求定制所需函數即可。
(5)多媒體模塊:
現在的網頁大都支持多媒體特性,此模塊提供圖象多媒體信息的底層支持以更好地顯示音頻、視頻等內容,或在瀏覽器中提供電視節目的視頻音頻播放支持。這不是瀏覽器的基本功能,一般是為了使網頁的內容更豐富,更生動,或方便的與電視節目交互,甚至以瀏覽器方式取代傳統的電視節目頻道方式。
這里的接口復雜多變,沒有一個統一的規范,需提供的接口從電視節目頻道鎖頻播放到MPEG碼流、MP3播放都有涉及,具體的實現程度由硬件、PSOS及瀏覽器功能決定。
五、總結
本文所論述的集成方案已在基于PSOS的機頂盒上實現。
機頂盒實現嵌入式瀏覽器是必由之路,在嵌入式瀏覽器大量涌現的現在,集成嵌入式瀏覽器并定制中間件服務無疑是為有效的辦法。PSOS嵌入式操作系統開發平臺為嵌入式瀏覽器的集成提供了極為的環境,能大大降低開發人員的硬件底層開發的工作量。本文所述的基于PSOS的嵌入式瀏覽器集成同樣適用于Linux、VxWorks等其它嵌入式操作系統之上。
參考文獻:
【1】PSOSystem System Concepts. Copyright/1999 Integrated Systems, Inc. Revision Date: 1999(1).
【2】顧奕,基于PSOS的嵌入式瀏覽器設計【J】.北京廣播學院學報(自然科學版),2003年6月,第10卷第2期:P42 – P48.
【3】劉撐乾等,一種嵌入式瀏覽器在數字機頂盒中的實現【J】.電視技術,2004年第5期(總第263期):P52 – P54.
基于PSOS的嵌入式瀏覽器中間件集成
更新時間: 2007-06-16 09:18:30來源: 粵嵌教育瀏覽量:1748