新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于ARM-Linux的高清數字機頂盒軟件系統設計與實現

        基于ARM-Linux的高清數字機頂盒軟件系統設計與實現

        作者: 時間:2010-06-18 來源:網絡 收藏

        Builder主要支持3種搜索方式:
        (1)盲掃。根據預置頻點搜索節目信息,建立完整節目數據庫。
        (2)網絡搜索。根據輸入頻點搜索NIT表,根據網絡信息搜索該網絡的所有節目信息,建立完整的網絡節目信息數據庫。
        (3)手動搜索。根據輸入頻點搜索該頻點,建立該頻點完整的節目信息數據庫。
        2.2 PSI模塊
        PSI模塊需要Demux模塊提供Section數據的搜索功能,其建立在Demux驅動之上,為EPG、Builder等模塊提供完整表及條件捕獲接口。PSI模塊結構圖如圖3所示。

        PSI模塊提供2種得到表方式:
        GetTable:通過該功能接口,直接得到表數據返回,如果超時沒有得到表數據,返回超時。
        Capture:通過該功能接口,先提出表申請,通過異步通信方式獲得表結構并通知應用模塊。
        在捕獲方式中都有3種模式:
        (1)Update Mode:在得到版本更新時通知應用模塊。
        (2)Complete Mode:當得到完整表結構時通知應用模塊。
        (3)Section Mode:當接收到Section數據時候就立即通知應用模塊。
        2.3 DBaseMgr模塊
        該模塊是一個數據庫管理系統,主要功能是對頻道、頻點、系統信息、EPG等信息的存儲與管理,以及對節目頻點的添加、刪除、排序、查找、編輯等。該模塊主要與Builder、EPG、USIF、Player 4個模塊交互,并通過與Flash交互進行物理操作。為了保證數據元素操作的效率,避免產生大量的內存碎片,也為了元素操作方便,該以靜動結合的思路采用靜態雙向鏈表的數據結構。在多個進程或線程同時對同一個數據庫進行操作時,要考慮同步互斥機制了。在對數據庫進行任何操作之前先對數據庫加鎖,當數據庫操作完成之后,再解鎖,這樣就保證了數據庫操作的一致性。數據庫模塊結構如圖4所示。

        數據庫管理系統功能特點主要有以下幾點:
        (1)功能完備。該模塊需要提供完備的功能接口,包括數據庫的創建、管理以及刪除等基本操作。另還需要滿足多視窗操作。
        (2)多用戶操作。本系統采用的是嵌入式Linux系統,它是一個多用戶分時系統,所以該數據庫需要保證同時滿足多用戶操作需要,保證系統的安全。
        (3)數據完整。本系統屬于嵌入式系統,該模塊必須保證掉電后數據庫數據的完整性。
        從前幾節的內容可以看出,有關節目的操作與PSI表的處理有著十分密切的關系。這是因為PSI表的分析管理直接影響到節目數據庫的內容,而節目的各種操作又都是與數據庫緊密相連的。節目操作管理部分的軟件主要可分成3大部分:PSI表處理模塊、節目數據庫模塊和節目操作模塊。其中PSI處理模塊主要完成PSI表的各種操作,如表的獲取、分析及管理等;節目數據庫模塊主要完成關于數據庫的操作,如數據庫的初始化、建立、內容的讀寫及更新等;節目操作模塊則有關節目的操作,如節目的搜索、刪除、恢復、選擇等。這3部分有機結合起來就形成了節目操作的整體軟件模塊。
        3 機應用程序的開發
        應用程序主要用戶交互選單的顯示等功能,因此選擇MiniGUI開源軟件開發機應用程序。
        MiniGUI作為嵌入式Linux系統下的一個輕量級圖形用戶界面支持系統已被應用到很多實際項目中。與其他嵌入式GUI相比,其具有系統資源消耗小、可配置和可定制性高、穩定性高、可移植性好等優勢。
        MiniGUI具有良好的軟件架構,通過抽象層IAL、GAL將MiniGUI上層和底層操作系統隔離開來。MiniGUI的應用程序一般通過支持庫、操作系統和驅動程序接口以及MiniGUI自身提供的API來實現自己的功能。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 磐安县| 昌都县| 桦甸市| 永福县| 新田县| 庄河市| 兴隆县| 将乐县| 洛宁县| 剑河县| 宁陕县| 桦川县| 广饶县| 沂南县| 郓城县| 仙游县| 新余市| 平遥县| 达拉特旗| 大城县| 手游| 正安县| 新余市| 奉化市| 迁安市| 阿合奇县| 印江| 嘉禾县| 石柱| 淮阳县| 乌鲁木齐市| 繁昌县| 山阳县| 乐清市| 德格县| 日土县| 普洱| 顺义区| 新疆| 福鼎市| 柳江县|