欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)據(jù)處理裝置及其方法

文檔序號:7595124閱讀:162來源:國知局
專利名稱:數(shù)據(jù)處理裝置及其方法
技術領域
本發(fā)明涉及不依存于特定的操作系統(tǒng)(OS)處理數(shù)據(jù)的方法。
背景技術
近年來,作為在計算機中處理的多媒體數(shù)據(jù),在各種各樣的用途中利用了動畫以及聲音等。例如,廣泛普及了利用動畫解碼器實時地對電視播放等的動畫進行轉換,并錄像到硬盤中的被稱為硬盤錄像機的設備、將作為數(shù)字數(shù)據(jù)記錄在DVD等光盤中的動畫內(nèi)容數(shù)據(jù)顯示在視頻顯示器裝置上的播放器等。一般在這些內(nèi)容處理中,必須以指定的比特率在一定時間內(nèi)對內(nèi)容數(shù)據(jù)進行處理。另外,為了在各種各樣的裝置中能夠利用這些多媒體內(nèi)容,重要的是能夠容易地開發(fā)出執(zhí)行這些復雜的流處理的程序模塊。因此,存在在容易實現(xiàn)高性能的OS核心中執(zhí)行進行內(nèi)容處理的程序的方式。流是指必須以預先決定的順序在一個方向上進行處理的數(shù)據(jù)序列。例如,有聲音數(shù)據(jù)的數(shù)據(jù)序列、動畫數(shù)據(jù)的數(shù)據(jù)序列等。流處理是指對包含在這些流中數(shù)據(jù)進行處理。
在一般的OS中,存在作為用來執(zhí)行應用程序的空間的用戶空間、作為用來執(zhí)行OS的功能的空間的核心空間的2個空間。在核心空間中進行處理的情況下,能夠?qū)崿F(xiàn)高速的執(zhí)行,但在核心空間中執(zhí)行的程序基本都很大程度地依存于安裝該核心的OS的規(guī)格。例如,對于每個OS來說在利用功能時使用的接口都不同、根據(jù)OS的不同利用功能的步驟也不同。還可知對于各個平臺來說用來利用設備的設備驅(qū)動程序是特有的,不能通用。另外,作為執(zhí)行核心空間中的處理的方法,有通過將多個被稱為過濾器的處理數(shù)據(jù)的設備驅(qū)動程序結合起來,來進行內(nèi)容處理的方法(例如,參照特開平10-283195號公報)。
這是以下的方法根據(jù)在用戶空間中執(zhí)行的應用程序在核心空間內(nèi)生成被稱為過濾器的軟件模塊,在連接多個過濾器的輸入輸出而構筑內(nèi)容數(shù)據(jù)的流路徑后,通過從應用程序請求處理的開始、停止等,來執(zhí)行內(nèi)容處理。在此,過濾器和設備驅(qū)動程序是被特定為設備和數(shù)據(jù)形式的模塊,它們分別具有用于輸入輸出和控制的接口,通過將各個過濾器所處理過的數(shù)據(jù)傳送到其他過濾器,來對數(shù)據(jù)進行處理。由于所有的過濾器都能夠在OS的核心部分執(zhí)行,所以該方式能夠?qū)崿F(xiàn)高性能。但是,在該方式中,并沒有考慮到進行多個內(nèi)容處理時的優(yōu)先處理。例如,考慮在處理多個內(nèi)容時,在同時進行錄像和重放的情況下,產(chǎn)生了希望提高錄像的優(yōu)先度的要求,但難以與之對應。
如前面所述,在現(xiàn)有的方法中,作為能夠容易地保證性能的驅(qū)動程序,在OS的核心空間中安裝了處理流的模塊。它對OS和硬件結構(以下將該組合稱為平臺)的依存性高,程序無法對應不同的平臺,由于各平臺具有各自固有的內(nèi)容數(shù)據(jù)處理方法,所以有以下的第1個問題必須針對每個平臺開發(fā)進行內(nèi)容處理的程序,使開發(fā)工程增大。
另外,在特開平10-283195號公報中,由于在內(nèi)容處理中不存在管理功能,所以例如在同時處理多個內(nèi)容時,無法指定各個處理的優(yōu)先度。例如,在同時進行從某設備取得數(shù)據(jù)并記錄到存儲設備中的處理、從某設備取得數(shù)據(jù)并顯示在顯示器上的處理這2個處理的情況下,例如,即使在希望優(yōu)先進行前者的處理的情況下,由于不存在統(tǒng)一管理這些處理的功能,所以具有難以適當?shù)刈兏p方處理的優(yōu)先順序的第2個問題。
進而,在上述情況下,在基于獨自安裝的多個內(nèi)容處理進行處理的情況下,由于不對硬件資源進行適當?shù)墓芾砗头峙洌跃哂袝a(chǎn)生處理所必須的CPU資源不足的第3個問題。

發(fā)明內(nèi)容
本發(fā)明就是要解決上述問題中的至少一個問題。
為了解決上述第1個問題,在本發(fā)明中,提供能夠?qū)诟鞣N平臺的多媒體內(nèi)容處理裝置。
在本發(fā)明中,通過具備向上位提供吸收每個平臺的差異而使多媒體內(nèi)容的處理通用化的接口的層,來實現(xiàn)使上位的軟件模塊不依存于平臺的結構。
為了解決上述第2和第3個問題,在本發(fā)明中,通過利用一個執(zhí)行過程例如進程或線程來執(zhí)行多個流處理,統(tǒng)一地管理向內(nèi)容處理的各個處理分配哪一個資源,從而實現(xiàn)處理的優(yōu)先處理和資源的管理。
根據(jù)本發(fā)明,能夠在不同的平臺上利用使用內(nèi)容數(shù)據(jù)的程序。另外,還能夠管理多個內(nèi)容處理的執(zhí)行,能夠降低使用資源量。


圖1是展示作為處理點間的數(shù)據(jù)流而構成的數(shù)據(jù)處理的處理流的結構圖。
圖2是展示本實施例的要素的整體結構的結構圖。
圖3是展示硬件結構的結構圖。
圖4是展示本實施例的處理點的定義的結構圖。
圖5是展示本實施例的控制接口的圖。
圖6是展示本實施例的處理點的調(diào)度功能的處理步驟的流程圖。
圖7是展示用來提示存儲在存儲裝置中的使用硬件解碼器被解碼的圖像過濾器的數(shù)據(jù)處理的流的例子的結構概要圖。
圖8是展示在操作系統(tǒng)的應用程序級上執(zhí)行的本實施例的實際安裝形式例子的結構圖。
圖9是展示在操作系統(tǒng)的核心級上執(zhí)行的本實施例的實際安裝形式例子的結構圖。
圖10是展示用來提示存儲在存儲裝置中的使用硬件解碼器被解碼的圖像過濾器的數(shù)據(jù)處理的流的例子的結構圖,圖11是展示管理調(diào)度時間的表的結構的圖。
圖12是展示數(shù)據(jù)對象的結構的圖。
圖13是展示管理數(shù)據(jù)存取模塊ID和數(shù)據(jù)存取模塊管理信息的地址的對應關系的表的結構的圖。
圖14是展示管理數(shù)據(jù)處理模塊ID和數(shù)據(jù)處理模塊管理信息的地址的對應關系的表的結構的圖。
圖15是展示構筑流處理的步驟的流程圖。
圖16是展示主模塊的結構的圖。
圖17是展示連接模塊的結構的圖。
圖18是展示流處理的結構的圖。
具體實施例方式
以下,說明本發(fā)明的實施例。
使用圖1,說明本發(fā)明的處理流程的概要。該圖展示了作為動畫內(nèi)容從盤101取得動畫數(shù)據(jù),通過顯示器171和揚聲器181進行重放的處理。這些處理由以下部分組成從設備101取得數(shù)據(jù)的處理點100;分離聲音數(shù)據(jù)和圖像數(shù)據(jù)的處理點120;將圖像輸出到圖像解碼器170的處理點150;將聲音輸出到聲音解碼器180的處理點160。處理點是指在實現(xiàn)處理流程的程序中為了執(zhí)行規(guī)定的處理而必需的部分。將在該處理點執(zhí)行處理的軟件模塊稱為主模塊。將在后面使用圖16說明主模塊的詳細結構。進而,連接模塊將這些主模塊相互連接起來,例如連接模塊110將主模塊100和主模塊120連接起來。連接模塊具有從連接的主模塊的一個向另一個發(fā)送數(shù)據(jù)的功能。由此,主模塊100取得的數(shù)據(jù)通過連接模塊或其他主模塊被發(fā)送到圖像解碼器170、聲音解碼器180,從而將圖像顯示在顯示器171上,從揚聲器180重放聲音。
圖2是展示本實施例的軟件結構的圖。在本結構210中,具備控制相互連接主模塊的流處理的流管理器230、管理進行數(shù)據(jù)轉換等的數(shù)據(jù)處理模塊241的數(shù)據(jù)處理模塊管理器230。流管理器由以下部分構成管理、操作主模塊的主模塊管理器231;用于依照執(zhí)行計劃執(zhí)行主模塊的處理的主模塊調(diào)度器233;記錄管理相互連接主模塊的連接模塊的連接模塊管理器232。
還具備為了利用OS所具有的功能,而經(jīng)由OS所提供的系統(tǒng)接口280來利用存儲器管理、線程管理以及時間操作等資源管理功能的通用系統(tǒng)接口260;對設備進行存取,管理進行數(shù)據(jù)的取得和設備的控制的數(shù)據(jù)存取模塊271的數(shù)據(jù)存取模塊管理器270。
應用程序200利用控制接口240控制流管理器和數(shù)據(jù)處理模塊管理器,能夠發(fā)出希望的流處理的指令。將在后面使用圖5說明能夠指示的控制。
通過包含上述通用系統(tǒng)接口260和數(shù)據(jù)存取模塊管理器270的層,形成接口層250。該接口層通過通用化了的接口向上位的層提供由OS所提供的系統(tǒng)接口280提供的功能。該通用化了的接口使由于平臺的差異而產(chǎn)生的協(xié)議或指令方式的差異共通化,并提供給上位層,例如存在在進行網(wǎng)絡通信時利用的界面接口。即使平臺不同,通過該接口執(zhí)行的功能也是相同的,但在每個平臺中利用它的步驟則不同的。例如,在包含Linux的一般的Unix(注冊商標)中,在作成通過TCP進行通信的界面時,可以順序地執(zhí)行socket函數(shù)、bind函數(shù)、listen函數(shù)以及accept函數(shù)。另一方面,在Windows(注冊商標)中,基于不同的規(guī)格,必須進行與Linux不同的步驟。如果如現(xiàn)有技術那樣在應用程序側的處理中對應這些不同,則必須針對所使用的每個平臺完全變更在平臺中步驟不同的處理。所以,在通用接口中,例如作為用指定的端口作成服務器界面的處理的通用函數(shù),提供makeServerTCPSock那樣的通用化了的接口。例如,在Linux用的通用系統(tǒng)接口中,在該makeServerTCPSock函數(shù)中以上述的Linux中的步驟執(zhí)行處理。而在Windows版的通用系統(tǒng)接口中,以Windows中的步驟執(zhí)行處理。接著,在Linux中利用本申請的軟件模塊的情況下,使用Linux用通用系統(tǒng)接口,在Windows中利用的情況下,使用Windows用通用系統(tǒng)接口。接著,在應用程序中,在作成界面時,如果調(diào)用makeServerTCPSock,則該通用系統(tǒng)接口執(zhí)行與該平臺對應的步驟,因此,不需要針對每個平臺變更應用程序。通過這樣的方法,能夠使平臺所提供的功能和對設備的存取方法通用化。這樣,在將圖2的軟件模塊轉移到不同的平臺的情況下,如上所述需要針對包含在層250中的軟件模塊中的利用了根據(jù)平臺的不同而不同的功能或使用步驟等的部分,對其處理方法進行變更,但通過該方法,上位的層,即控制接口220、數(shù)據(jù)處理模塊管理器240、流管理器230和應用程序200不需要變更程序的處理,就能夠轉移到其他OS上。
使用圖16、圖17和圖18,說明通過圖2的結構如何實現(xiàn)在圖1中說明了的處理。
圖18展示了記錄流處理的結構的表2000,由流管理器進行管理。該表的1行相當于一個流處理。流處理由以下部分組成流處理ID2001;構成它的主模塊的主模塊ID2002;構成它的連接模塊的連接模塊ID2003;流處理的狀態(tài)2004。
圖16展示了記錄主模塊的結構的表1800,由主模塊管理器進行管理。該表的1行相當于一個主模塊。一個主模塊由以下部分組成主模塊ID1801;流處理ID1802;數(shù)據(jù)處理模塊ID1803;數(shù)據(jù)存取模塊ID1804;輸入連接模塊ID1805;輸出連接模塊ID1806;執(zhí)行等待數(shù)據(jù)對象矩陣1807;以及后處理等待數(shù)據(jù)對象矩陣1808。執(zhí)行等待數(shù)據(jù)對象矩陣1807和后處理等待數(shù)據(jù)對象矩陣1808是能夠輸入輸出數(shù)據(jù)的矩陣,用數(shù)組、隊列、散列表或列表等實現(xiàn)。在圖中,記載了表示在該表內(nèi)是否存在矩陣的例子,但在主模塊管理器內(nèi)存在矩陣的情況下,也可以將其存在的地址記錄到列1807、1808中。連接模塊ID的-1的值表示連接模塊沒有與主模塊100連接。
圖17展示了記錄連接模塊的結構的表1900,由連接模塊管理器管理。該表的1行相當于一個連接模塊。一個連接模塊由以下部分組成連接模塊ID1901;流處理ID1902;開始點主模塊ID1903;終點主模塊ID1904;以及緩沖矩陣1905。緩沖矩陣1905是能夠輸入輸出數(shù)據(jù)的矩陣,用數(shù)組、隊列、散列表或列表等實現(xiàn)。在圖中,記載了表示在該表內(nèi)是否存在矩陣的例子,但在連接模塊管理器內(nèi)存在矩陣的情況下,也可以將其存在的地址記錄到列1905中。
在圖3中,展示了為了實施本實施例而使用的硬件結構。通過系統(tǒng)總線340連接了CPU300、RAM310或ROM320等存儲器、時鐘330、HDD等盤裝置350、用來接收內(nèi)容數(shù)據(jù)的播放的調(diào)諧器360、用來對多媒體數(shù)據(jù)進行編碼/解碼的多媒體解碼處理器370以及內(nèi)置揚聲器的電視信號接收機等的顯示器380。另外,將圖2中的軟件模塊裝載到存儲器中由CPU執(zhí)行。另外,例如在HDD錄像機、DVD錄像機、PC或監(jiān)視照相機等中使用本硬件結構。
在圖5中,展示了本實施例的應用程序為了向流管理器230發(fā)出指令,而向控制接口發(fā)出的指令的例子。在圖5中,定義了向流管理器230發(fā)出的指令種類501、其參數(shù)502、返回值503。例如在用C或C++等程序語言開發(fā)本實施例的情況下,作為函數(shù)或模塊實現(xiàn)這些控制接口。
另外,可以使用上述數(shù)據(jù)存取模塊ID、數(shù)據(jù)處理模塊ID、在圖5中規(guī)定的指令,生成數(shù)據(jù)處理流并開始處理。將在后面使用圖7詳細說明。
使用圖5說明作成、控制數(shù)據(jù)的處理流的指令。例如,如果執(zhí)行流處理生成指令500,則生成流處理。具體地說,分配唯一的流處理ID,將流處理ID記錄到圖18的2000的未使用的1行中,生成流處理。作為返回值返回其值。在此,將“1”返回應用程序。
接著,應用程序使用該流處理ID,執(zhí)行主模塊生成指令520,生成主模塊。具體地說,生成新的唯一的主模塊ID,將主模塊ID記錄到圖16的1800的未使用的1行中,并記錄作為參數(shù)傳送的流處理ID,通過在表2000中向與作為參數(shù)指定的流處理ID對應的流處理的主模塊ID2002的欄中記錄主模塊ID,從而生成主模塊。將分配的主模塊ID作為返回值返回到應用程序。在此,返回“100”。
接著,同樣地(如圖16的1820所示)生成其他的主模塊120。假設該主模塊的模塊ID為120。接著,通過使用連接模塊生成指令540,用連接模塊連接這些主模塊。具體地說,分配新的唯一的連接模塊ID,向圖17的1900的未使用的1行記錄連接模塊ID,作為開始點主模塊ID和終點主模塊ID分別記錄作為參數(shù)傳送來的值。在該例子中,分別為100和120。接著,向表1800的主模塊ID為100的行1810的輸出連接模塊ID記錄110,向模塊ID為120的行1820的輸入連接模塊ID記錄110。接著,向表2000的流處理ID為1的行2010的連接模塊ID2003記錄連接模塊ID。通過這些處理,完成了用來連接主模塊間的連接模塊的生成和設置。
接著,使用數(shù)據(jù)處理模塊控制指令560、數(shù)據(jù)存取控制指令570,設置在主模塊中進行怎樣的處理。將在后面使用圖14說明數(shù)據(jù)處理模塊控制指令560的參數(shù)中的數(shù)據(jù)處理模塊ID的詳細,使用圖13說明數(shù)據(jù)存取模塊控制指令的參數(shù)中的數(shù)據(jù)存取模塊ID。例如,在向主模塊ID為100的主模塊分配數(shù)據(jù)存取模塊ID為1的處理的情況下,使用數(shù)據(jù)存取模塊控制指令570。由此,向表1800的主模塊ID為100的行的數(shù)據(jù)存取模塊ID1804記錄數(shù)據(jù)存取模塊ID“1”。對于數(shù)據(jù)處理模塊,也同樣地利用數(shù)據(jù)處理模塊控制指令560進行設置。將在后面使用圖4詳細說明數(shù)據(jù)處理模塊、數(shù)據(jù)存取模塊。
進而,在使用了580的數(shù)據(jù)處理控制指令的情況下,可以使用參數(shù)中的“指令”進行數(shù)據(jù)處理模塊的控制和設置。例如,在進行網(wǎng)絡處理的數(shù)據(jù)處理模塊的情況下,可以使用“分組大小設置指令”,設置變更數(shù)據(jù)處理模塊中的分組大小的處理。另外,還可以在例如從文件中讀出數(shù)據(jù)的情況下指定其文件名、在從網(wǎng)絡輸入輸出數(shù)據(jù)的情況下指定端口編號時使用數(shù)據(jù)存取模塊控制指令570。
可以使用發(fā)出開始指令或停止指令的數(shù)據(jù)處理指令580控制數(shù)據(jù)處理的執(zhí)行,并控制與流處理關聯(lián)的各主模塊的調(diào)度。由于流處理向表2000中登記了與流處理有關的連接模塊和主模塊,所以如果指定了流處理ID,則能夠變更相關的連接模塊和主模塊的所有設置和動作。
應用程序能夠經(jīng)由事件管理指令590與數(shù)據(jù)處理模塊401進行通信,可以傳送錯誤等事件或結束數(shù)據(jù)處理。通過流處理廢棄指令510廢棄、結束數(shù)據(jù)處理,可以分別使用主模塊廢棄指令或連接模塊廢棄指令530、550有選擇地進行廢棄。該情況下的廢棄相當于刪除表的內(nèi)容。
圖13展示了管理數(shù)據(jù)存取模塊ID及其數(shù)據(jù)存取模塊的對應關系的表1300。該表存在于數(shù)據(jù)存取模塊管理器270內(nèi)。在該表1300中記錄了數(shù)據(jù)存取模塊ID1301、與之對應的輸入輸出執(zhí)行處理部分的地址1302、輸入輸出完成處理部分的地址1303以及其功能概要的記述1304、1305。在圖示的例子中,在數(shù)據(jù)存取模塊ID為1的情況下記錄“1310”、存在于第0xF98000000號位置的具有進行“向硬盤發(fā)出數(shù)據(jù)讀入請求”功能的輸入輸出執(zhí)行處理部分、存在于第0xF9808000號位置的具有進行“從硬盤取得數(shù)據(jù)”功能的輸入輸出完成處理部分。
例如在說明書等中記載數(shù)據(jù)存取模塊ID和實際執(zhí)行該模塊的處理的對應關系,從而使用者得到實現(xiàn)必要功能的數(shù)據(jù)存取模塊ID?;蛘吒鶕?jù)功能欄1304、1305所記述的內(nèi)容選擇必要的模塊。
在圖14中展示了管理數(shù)據(jù)處理模塊ID與該數(shù)據(jù)處理模塊的對應關系的表。該表存在于數(shù)據(jù)處理模塊管理器240內(nèi)。在該表1500中記錄了數(shù)據(jù)處理模塊ID1501、與之對應的前處理部分的地址1502、后處理部分的地址1503以及這些功能的記述。在圖示的例子中,在數(shù)據(jù)處理模塊ID為100的情況下,記錄“1510”、存在于0xFA8000000號位置的具有“指示讀入指定了的文件。指定下一個調(diào)度時間”功能的前處理部分、存在于第0xFA808000號位置的具有“將取得的數(shù)據(jù)輸出到輸出連接”功能的后處理部分。例如在說明書中記載數(shù)據(jù)處理模塊ID和實際執(zhí)行該模塊的處理的對應關系,從而使用者得到實現(xiàn)必要功能的數(shù)據(jù)處理模塊ID?;蛘吒鶕?jù)功能欄1504、1505所記述的內(nèi)容選擇必要的模塊。
在圖15中,展示為了進行圖1所示的數(shù)據(jù)處理,應用程序使用圖5所示的指令,連接主模塊和連接模塊,構筑數(shù)據(jù)處理程序的步驟。
最初,應用程序使用流處理生成指令500生成數(shù)據(jù)處理流(步驟1500),得到流處理ID。
接著,使用該流處理ID,并利用主模塊生成指令520生成文件讀出主模塊,得到主模塊ID。接著,在文件讀出主模塊中使用數(shù)據(jù)處理模塊ID向數(shù)據(jù)處理模塊控制指令560分配數(shù)據(jù)處理模塊(步驟1511),使用數(shù)據(jù)存取模塊ID向數(shù)據(jù)存取模塊控制指令570分配數(shù)據(jù)存取模塊(步驟1512)。同樣,作成多路復用主模塊(步驟1520),分配數(shù)據(jù)處理模塊(步驟1521)。以下,同樣地作成圖像主模塊(步驟1530),進行數(shù)據(jù)處理模塊、數(shù)據(jù)存取模塊的分配(步驟1531、1532),并作成聲音主模塊(步驟1540),分配數(shù)據(jù)處理模塊、數(shù)據(jù)存取模塊(步驟1541、1542)。接著,使用連接模塊生成指令540作成從文件讀出主模塊連接到多路復用主模塊的連接模塊(步驟1550),得到連接模塊ID,同樣地作成從多路復用主模塊連接到圖像主模塊的連接模塊、連接聲音主模塊的連接模塊(步驟1560、1570)。通過這樣從應用程序進行處理,使所使用的主模塊相互關聯(lián),并向處理分配所使用的數(shù)據(jù)處理模塊和數(shù)據(jù)存取模塊。
這樣,應用程序通過控制指令進行主模塊、連接模塊等的生成、設置?;趶膽贸绦驁?zhí)行的指令,生成必要的主模塊,使用連接模塊連接這些主模塊,作成數(shù)據(jù)處理流,在此基礎上向主模塊設置比特率等處理所必需的信息、處理所必需的數(shù)據(jù)存取模塊和數(shù)據(jù)處理模塊,通過指示數(shù)據(jù)處理的開始,能夠執(zhí)行規(guī)定的處理。
通過提供這樣的功能,大幅度地減少了進行流處理的應用程序的代碼。這是因為由于流處理以規(guī)定的比特率處理數(shù)據(jù)是重要的實時性高的處理,所以開發(fā)實現(xiàn)這樣的處理的程序需要使用平臺所提供的功能例如時間管理等,并使一部分處理占有CPU時間而使處理不停滯的高級的調(diào)度技術,但如果使用本實施例的方法,則由于由流管理器進行調(diào)度,所以利用流管理器的應用程序使主模塊的生成和連接模塊相關聯(lián),作成必要的數(shù)據(jù)存取模塊和數(shù)據(jù)處理模塊,可以將其與主模塊相關聯(lián),而沒有必要安裝上述的調(diào)度功能。
另外,由于這些模塊可以只利用流管理器所提供的不依存于平臺的接口,所以應用程序在怎樣的平臺上都不用變更就能夠使用。
圖4是展示使用圖16說明了的主模塊的邏輯結構的圖。主模塊400具備執(zhí)行依存于數(shù)據(jù)格式的數(shù)據(jù)處理的數(shù)據(jù)處理模塊401、經(jīng)由OS的系統(tǒng)接口280使用特定的硬件裝置執(zhí)行數(shù)據(jù)處理的數(shù)據(jù)存取模塊405。在流管理器中通過模塊固有的標識符(主模塊ID)識別主模塊。
通過固有的標識符(數(shù)據(jù)處理模塊ID)識別數(shù)據(jù)處理模塊401,還具備前處理部分402、后處理部分403。在表1800的列1803中記錄使哪個數(shù)據(jù)處理模塊與哪個主模塊關聯(lián)。也通過固有的標識符(數(shù)據(jù)存取模塊ID)識別數(shù)據(jù)存取模塊405,具備輸入輸出處理部分406和輸入輸出完成處理部分407。在表1800的列1804中記錄使哪個數(shù)據(jù)存取模塊與哪個主模塊關聯(lián)。
主模塊通過連接模塊410、420與其他主模塊連接。連接模塊具備緩沖矩陣411。在連接模塊410與數(shù)據(jù)處理模塊的輸入側連接的情況下,能夠?qū)⒋鎯υ谠撨B接模塊內(nèi)的緩沖區(qū)中的數(shù)據(jù)輸出到數(shù)據(jù)處理模塊的前處理部分。在與數(shù)據(jù)處理模塊的輸出側連接的輸出連接模塊420的情況下,能夠從數(shù)據(jù)處理模塊的后處理部分輸入存儲在該連接模塊內(nèi)的緩沖區(qū)中的數(shù)據(jù)。
例如,將在其他主模塊中處理的數(shù)據(jù)寫入緩沖區(qū),并輸入到輸入連接模塊410。前處理部分402接收該數(shù)據(jù),通過該前處理部分將該數(shù)據(jù)轉換為數(shù)據(jù)對象408,輸入到執(zhí)行等待數(shù)據(jù)對象矩陣412中。數(shù)據(jù)存取模塊405取得并處理它。將在后面使用圖12詳細說明數(shù)據(jù)對象408。
數(shù)據(jù)存取模塊經(jīng)由OS內(nèi)的系統(tǒng)接口280對設備驅(qū)動程序430進行存取,進行硬件設備440和數(shù)據(jù)的輸入輸出。數(shù)據(jù)存取模塊的輸入輸出執(zhí)行處理部分406進行數(shù)據(jù)的輸入輸出請求或者對從前處理部分傳送來的數(shù)據(jù)進行處理。作為處理可以考慮例如存儲在硬件設備440中的文件的讀入等的指示、數(shù)據(jù)對象中的數(shù)據(jù)408的加密處理用硬件中的加密處理的指示等數(shù)據(jù)轉換處理等。輸入輸出完成處理部分407取得處理結果,作為數(shù)據(jù)對象409輸入到后處理等待處理對象矩陣413中。后處理部分將從后處理等待處理對象矩陣413中取出的數(shù)據(jù)對象中的數(shù)據(jù)輸出到輸出連接模塊402,結束主模塊的數(shù)據(jù)處理。
主模塊調(diào)度器233一邊參照表1800、表1900一邊執(zhí)行這些動作。執(zhí)行的定時是依照圖11的調(diào)度表1100中記述的信息來執(zhí)行。將在后面詳細說明圖11。
另外,主模塊與一個或一個以上的輸入連接模塊以及一個或一個以上的輸出連接模塊連接,通過經(jīng)由該連接模塊連接2個或2個以上的主模塊,能夠?qū)崿F(xiàn)一連串的數(shù)據(jù)處理流程。由此,能夠?qū)碜远鄠€主模塊的數(shù)據(jù)收集到單一的主模塊中來對多個數(shù)據(jù)進行多路復用,或者將單一的數(shù)據(jù)流發(fā)送到多個不同的主模塊??梢栽趫D1所示的多路復用了的數(shù)據(jù)的分離、或者多個數(shù)據(jù)的多路復用等中利用它。
如果平臺所具備的硬件設備不同,則數(shù)據(jù)存取模塊的輸入輸出處理執(zhí)行部分406、輸入輸出完成處理部分407可以改變其實現(xiàn)方式。通過修改該數(shù)據(jù)存取模塊,比數(shù)據(jù)存取模塊更上位的層的模塊能夠不依存于系統(tǒng)接口地執(zhí)行處理。
圖12展示了數(shù)據(jù)對象的結構。數(shù)據(jù)對象1200由數(shù)據(jù)列表1210、指令代碼1212和指令參數(shù)1213構成。數(shù)據(jù)列表作為列表存儲數(shù)據(jù)的地址1221、數(shù)據(jù)的大小1222。數(shù)據(jù)對象通過數(shù)據(jù)列表1210保存應該處理的數(shù)據(jù),進而記錄與該數(shù)據(jù)對應的指令1211和參數(shù)1213。并不必須將指令和數(shù)據(jù)對應地進行記錄,也可以是數(shù)據(jù)為空只存儲指令,相反也可以只存儲數(shù)據(jù)。
圖11展示了主模塊調(diào)度器內(nèi)的調(diào)度表的結構。調(diào)度表1100對主模塊調(diào)度器什么時候執(zhí)行哪個主模塊進行管理。作為項目在該表中具有調(diào)度時刻1101、主模塊ID1102。在此,表1100中的調(diào)度時刻是指下一次執(zhí)行與某主模塊關聯(lián)的數(shù)據(jù)存取模塊和數(shù)據(jù)處理模塊的處理的預約時刻。另外,調(diào)度是指在必須執(zhí)行多個處理的情況下,決定并記錄以什么樣的順序什么時候執(zhí)行哪個處理。另外,調(diào)度執(zhí)行或者進行調(diào)度是指依照預先決定了的計劃執(zhí)行處理。
在圖11的例子中,例如在行1110、1120中表示在時刻250毫秒執(zhí)行主模塊ID為10和13的主模塊。即,可以存在多個應該在同一時刻執(zhí)行的主模塊。但是,即使調(diào)度時間是同一時間,但實際的處理也可以是一個處理完成以后再進行另一個的處理。
在本實施例中,以記錄在該調(diào)度表中的內(nèi)容為準執(zhí)行處理的就是主模塊調(diào)度器。即,上述的處理是主模塊調(diào)度器在上述的定時下一邊參照表1800、表1900和表2000一邊依次進行必要的處理。即,由主模塊調(diào)度器執(zhí)行各主模塊的數(shù)據(jù)處理模塊和數(shù)據(jù)存取模塊的處理。換一種說法,就是通過線程那樣的一個執(zhí)行過程進行主模塊調(diào)度器的處理、前處理部分、后處理部分、輸入輸出執(zhí)行處理部分以及輸入輸出完成處理部分的處理。
例如,定期地啟動主模塊調(diào)度器,參照該表并與現(xiàn)在時刻比較,如果是設置了在此之前的調(diào)度時刻的主模塊,則進行該主模塊的處理,根據(jù)需要更新表1100,等待下一次的啟動。
使用圖6說明主模塊的執(zhí)行步驟。
首先,主模塊調(diào)度器參照流表2000的列2004,確認是否存在已經(jīng)開始處理的流處理(步驟600)。在不存在開始了的流處理的情況下,到執(zhí)行新的流處理為止等待(步驟601)。在存在開始了的流處理的情況下,參照調(diào)度表1110,以現(xiàn)在時刻為起點直到最早執(zhí)行的調(diào)度時刻為止等待(步驟603)。時刻等待的方式可以是周期地檢查時鐘進行判斷,也可以使用只在指定的時間停止執(zhí)行的功能,如果是能夠利用時間中斷的平臺則還可以利用時間中斷。流處理開始后,由于還沒有通過主模塊向調(diào)度管理器預約處理開始時刻,所以通過由流管理器作為構成該流處理的主模塊的調(diào)度時刻登記現(xiàn)在時刻來進行最初的執(zhí)行。如果待機動作結束,則由主模塊調(diào)度器執(zhí)行記載在調(diào)度表1100的主模塊ID1102中的主模塊的數(shù)據(jù)處理模塊的前處理部分(步驟604)。在該執(zhí)行處理中,前處理部分確認在輸入連接模塊中是否存在數(shù)據(jù),如果存在則將其轉換為數(shù)據(jù)對象,并輸入到執(zhí)行等待數(shù)據(jù)對象矩陣412中?;蛘咴趶挠脖P讀出圖1的數(shù)據(jù)的主模塊那樣的作為流處理的開始點的主模塊中,作為數(shù)據(jù)對象將數(shù)據(jù)的讀出請求輸入到該矩陣中。
接著,計算下一次應該調(diào)度本模塊的時刻,并將該時刻登記到主模塊調(diào)度器(步驟605)。由前處理部分決定下一次調(diào)度時間的理由是前處理部分能夠計算出從連接模塊410得到的數(shù)據(jù)411的大小等、處理所需要的時間。例如,假設將以例如比特率為每秒1024k字節(jié),向讀出圖1的主模塊100那樣的文件的主模塊中一次讀入的數(shù)據(jù)塊的大小設置為256k字節(jié)。從應用程序使用數(shù)據(jù)處理指令580進行該指定。在這樣的情況下,如果有讀入文件的主模塊,則能夠以通過(一次讀入的數(shù)據(jù)塊大小)/(比特率)而確定的值決定讀入的時間間隔。例如,如果在每秒1024k字節(jié)下塊大小為256k字節(jié),則如果每0.25秒執(zhí)行讀入,則判斷出能夠?qū)崿F(xiàn)指定的比特率。即,在由前處理部分在輸入輸出處理部分中進行了256k字節(jié)的數(shù)據(jù)請求后,由于可以在0.25秒后進行下一個處理,所以將下一次的調(diào)度時間確定為250毫秒后。
在其后面的主模塊,例如圖10中的復用分離主模塊或圖像主模塊中,可以根據(jù)以同樣方法設置的比特率和經(jīng)由連接模塊得到的數(shù)據(jù)的大小確定這些調(diào)度時間,但也可以是將調(diào)度時間設置為比較短的時間,頻繁地執(zhí)行。這是因為由于最前面的文件讀出主模塊通過上述方法控制數(shù)據(jù)的比特率,所以如果在其后面的主模塊中,不進行特別的比特率控制而將數(shù)據(jù)輸入到輸入連接模塊中,則會馬上取出它進行處理,如果再輸出到輸出連接模塊,則能夠?qū)崿F(xiàn)預定的比特率。在該情況下,由于在后面的主模塊中,不產(chǎn)生處理的延遲而比特率不降低,所以理想的是頻繁地確認數(shù)據(jù)是否輸入到連接模塊中。因此,應該將調(diào)度時間預約為小的值。
在從前處理部分向數(shù)據(jù)存取模塊輸出了數(shù)據(jù)對象的情況下(步驟606),主模塊調(diào)度器為了開始對該數(shù)據(jù)對象進行指示的處理,而執(zhí)行數(shù)據(jù)存取模塊的輸入輸出執(zhí)行處理部分(步驟607)。這相當于例如向硬件設備請求數(shù)據(jù)的加工或取得的操作。
在執(zhí)行等待數(shù)據(jù)對象矩陣中沒有數(shù)據(jù)存取模塊,并且并沒有從數(shù)據(jù)存取模塊向后處理等待數(shù)據(jù)處理矩陣輸出新的數(shù)據(jù)對象的情況下,主模塊調(diào)度器前進到步驟611(步驟608)。
在以前執(zhí)行的輸入輸出執(zhí)行處理部分的處理結束,存在作為處理結果的數(shù)據(jù)的情況下,或者在例如向硬件設備請求的數(shù)據(jù)加工或取得處理結束,并存在作為其結果的數(shù)據(jù)的情況下,由主模塊調(diào)度器執(zhí)行數(shù)據(jù)存取模塊的輸入輸出完成處理部分(步驟609),將該數(shù)據(jù)作為數(shù)據(jù)對象輸入到后處理等待數(shù)據(jù)對象矩陣413中(步驟610)。在后處理等待數(shù)據(jù)對象矩陣413中具有數(shù)據(jù)對象的情況下,主模塊調(diào)度器執(zhí)行后處理部分,并只向輸出連接模塊傳送數(shù)據(jù)對象中的數(shù)據(jù)列表。在后處理部分的處理結束了的情況下,主模塊調(diào)度器為了進行下一個主模塊的調(diào)度,而返回開始狀態(tài)。
在本執(zhí)行方式中,例如即使在執(zhí)行多個流處理的情況下,也能夠通過主模塊調(diào)度器的一個執(zhí)行過程進行存在于各流處理中的主模塊的處理。在此,執(zhí)行過程是指具有在執(zhí)行程序的情況下所必需的信息的執(zhí)行單位,這相當于線程等。這是因為通過使用上述方法,例如即使在多個流處理的情況下,也從各個主模塊指定對各主模塊的處理進行調(diào)度的時刻,因此可以在該時間由主模塊調(diào)度器執(zhí)行。如果這樣通過一個執(zhí)行過程進行處理,則沒有必要進行在通過多個執(zhí)行過程對多個流處理進行處理時所產(chǎn)生的同步化處理。由于排他地對其設備進行存取的同步化處理負荷很高,所以通過省略該處理,能夠防止流處理的性能降低。
另外,在本方式中,例如如果提高執(zhí)行優(yōu)先度,進一步縮短由主模塊的前處理部分決定的主模塊的預約時間,則提早調(diào)度該主模塊的處理,在該主模塊的處理中就會使用更多的CPU時間。另外,在執(zhí)行多個處理的情況下,通過調(diào)整上述預約時間,能夠指定各個處理的優(yōu)先度。例如,在同時執(zhí)行從某設備取得數(shù)據(jù)并記錄到存儲裝置中的處理、從某設備取得數(shù)據(jù)并顯示在顯示器上的處理的2個處理的情況下,如果縮短設置前者處理的預約時間,則能夠?qū)⒂涗浱幚淼膬?yōu)先順序設置得高。
另外,通過在一個執(zhí)行過程中執(zhí)行多個數(shù)據(jù)處理,則不必向多個執(zhí)行過程分配多個緩沖區(qū),另外,在多個執(zhí)行過程中利用被用于并行執(zhí)行多個過程時的信號那樣的一個資源時,不必使用作為保證排他存取的組合的同步功能,能夠降低使用資源。
另外,通過在一個過程中執(zhí)行處理,主模塊調(diào)度器233能夠設置更高效率的調(diào)度。這是因為由于在現(xiàn)有的調(diào)度方式,例如朗德羅賓方式等中,在每個一定時間內(nèi)無條件地切換處理,所以有即使在沒有必要進行處理的情況下也進行調(diào)度,或者在必須進行處理的情況下沒有進行調(diào)度的情況,實時性下降,浪費了CPU時間。而在本方式中,計算出下一個處理所需要的時間,將該必要時間登記到調(diào)度表中進行調(diào)度,因此不進行多余的調(diào)度,能夠?qū)F(xiàn)有的朗德羅賓方式等中的分配給冗余時間的CPU處理分配給別的處理,所以作為整體提高了作為平臺資源之一的CPU時間的使用效率,進而在處理所需的時刻正確地進行調(diào)度,能夠提高實時性。
作為使用了本實施例的主模塊、連接模塊以及主模塊調(diào)度器的數(shù)據(jù)處理的一個例子,圖7說明了從硬盤讀入多路復用并記錄了聲音和圖像的文件再將其分離,作為動畫從顯示器以及揚聲器進行重放的情況下的數(shù)據(jù)流程。作為對聲音和圖像進行多路復用并記錄的方式,有MPEG(動畫專業(yè)組)等。在該處理中,通過復用分離主模塊730和連接模塊720連接文件讀出主模塊700,通過連接模塊740連接復用分離主模塊730和圖像主模塊760,進而,通過連接模塊750連接聲音主模塊780。
首先,文件讀出主模塊通過系統(tǒng)接口709和設備驅(qū)動程序710存取硬盤,取得數(shù)據(jù)。復用分離主模塊730解除取得的數(shù)據(jù)的多路復用。將通過該處理得到的圖像數(shù)據(jù)發(fā)送到圖像主模塊760,并通過設備驅(qū)動程序769發(fā)送到硬件圖像解碼器770,將聲音數(shù)據(jù)發(fā)送聲音主模塊780,并通過設備驅(qū)動程序789發(fā)送到硬件聲音解碼器790進行重放。
圖10說明了圖7所示的處理例子中的詳細結構。使用它說明處理步驟。
首先,主模塊調(diào)度器開始文件讀出主模塊的數(shù)據(jù)處理模塊的執(zhí)行。作為數(shù)據(jù)處理模塊701的文件讀出主模塊的前處理部分702請求向輸入輸出等待數(shù)據(jù)對象矩陣輸入向作為數(shù)據(jù)存取模塊704的文件存取模塊的輸入輸出執(zhí)行處理部分705讀入文件的作為輸入輸出處理的數(shù)據(jù)對象707。由輸入輸出處理部分705經(jīng)由系統(tǒng)接口709和存儲裝置用轉換器設備驅(qū)動程序710,進行該讀出處理。進而,由主模塊調(diào)度器檢查在該處理執(zhí)行之前執(zhí)行的讀入處理是否結束了,如果處理結束了則執(zhí)行輸入輸出完成處理部分706,將該數(shù)據(jù)作為數(shù)據(jù)對象708加入到后處理等待數(shù)據(jù)對象矩陣中。
接著,如果執(zhí)行后處理部分703,則取得存儲在后處理等待數(shù)據(jù)對象矩陣中的數(shù)據(jù)對象708,將該數(shù)據(jù)對象內(nèi)的數(shù)據(jù)列表加入到連接模塊702的緩沖區(qū)內(nèi)的等待矩陣中。
另外,在這些處理中,如下這樣檢索各處理。由于文件讀出主模塊的主模塊ID是100,所以主模塊調(diào)度器根據(jù)該值參照表1800,得到作為數(shù)據(jù)處理模塊分配的數(shù)據(jù)處理模塊ID。在圖16的例子中,其編號為100。接著,參照表1500,檢索數(shù)據(jù)處理模塊ID為100的行。由此,知道了應該執(zhí)行的前處理部分位于0xFA800000,應該執(zhí)行的后處理部分位于0xFA808000,因此執(zhí)行它們。在該情況下,存儲在本地址中的前處理部分的處理內(nèi)容是指示了指定文件的讀入后,指定下一次的調(diào)度時間的處理,后處理部分的處理內(nèi)容是將取得的數(shù)據(jù)輸出到輸出連接模塊的處理。同樣對于數(shù)據(jù)存取模塊,參照表1800得到作為數(shù)據(jù)存取模塊分配的數(shù)據(jù)存取模塊ID。在圖16的例子中該編號為1。接著,參照表1300檢索數(shù)據(jù)存取模塊ID為1的行。由此,得到應該執(zhí)行的輸入輸出執(zhí)行處理部分的地址和輸入輸出完成處理部分的地址,并執(zhí)行它們。在該情況下,存儲在該地址中的輸入輸出執(zhí)行處理部分的處理內(nèi)容是向硬盤發(fā)出數(shù)據(jù)讀入請求,輸入輸出完成處理部分的處理內(nèi)容是從硬盤取得數(shù)據(jù)。
如果由主模塊調(diào)度器執(zhí)行了復用分離主模塊730的復用分離處理模塊731,則執(zhí)行前處理部分732,從連接模塊720的等待矩陣721中取出數(shù)據(jù)列表。在等待矩陣中沒有數(shù)據(jù)的情況下,前處理部分結束處理,轉移到后處理部分的處理。
另外,上述前處理部分中的處理與數(shù)據(jù)處理流程中的從開始點連接到第2個以后的主模塊的處理相同。另外,所有的主模塊的前處理部分在結束處理前,都預約下一次應該執(zhí)行自身的時間。該預約時間依存于該流處理的比特率、所要求的實時性。例如在高比特率的數(shù)據(jù)處理、或者要求高實時性的處理的情況下,由于必須迅速地處理數(shù)據(jù)并傳送到下一個主模塊,所以必須頻繁地確認在輸入連接模塊的緩沖區(qū)中是否存儲了數(shù)據(jù)。相反,如果比特率低,則可以隔開較長的間隔進行檢查。
該復用分離主模塊的處理是數(shù)據(jù)格式的轉換,可以通過程序執(zhí)行處理,由于不需要對HDD等I/O類的硬件進行存取,所以不需要定義數(shù)據(jù)存取模塊,將在前處理部分中處理了的數(shù)據(jù)傳送到后處理部分733。該情況下的數(shù)據(jù)格式的轉換處理是預先由多路復用主模塊的前處理部分732解析該數(shù)據(jù),并將其結果寫入2個聲音緩沖區(qū)和圖像緩沖區(qū)。后處理部分從圖像緩沖區(qū)取出圖像數(shù)據(jù),并輸入到連接模塊740的等待矩陣741中,同樣從聲音緩沖區(qū)取出聲音數(shù)據(jù),并輸入到連接模塊750的等待矩陣751中。
接著,執(zhí)行作為圖像主模塊760的數(shù)據(jù)處理模塊的圖像寫入模塊761的前處理部分762,從等待矩陣741中取出待機的數(shù)據(jù)列表。應用程序與使用數(shù)據(jù)處理模塊控制指令560決定的比特率對應地,將數(shù)據(jù)發(fā)送到圖像解碼器存取模塊764,由輸入輸出執(zhí)行處理部分765將該數(shù)據(jù)輸出到硬件圖像解碼器770的設備驅(qū)動程序769,輸出到硬件圖像解碼器770,并作為其結果輸出圖像。由作為數(shù)據(jù)存取模塊的圖像解碼器存取模塊的輸入輸出完成處理部分766檢測出輸出結束的數(shù)據(jù),作為數(shù)據(jù)對象768加入到結束處理等待數(shù)據(jù)對象矩陣中。圖像主模塊是數(shù)據(jù)處理的末端,由于沒有輸出連接模塊,所以由后處理部分763廢棄被寫入到設備的圖像數(shù)據(jù)。
聲音主模塊780中的處理也與前面說明了的圖像主模塊中的處理一樣。執(zhí)行作為聲音主模塊的數(shù)據(jù)處理模塊的聲音寫入模塊781的前處理部分782,取出在等待矩陣751內(nèi)待機的聲音數(shù)據(jù)列表。根據(jù)取出的數(shù)據(jù)的比特率發(fā)送到作為數(shù)據(jù)存取模塊的聲音解碼器存取模塊784,通過輸入輸出執(zhí)行處理部分785開始進行處理。通過設備驅(qū)動程序789將聲音數(shù)據(jù)發(fā)送到硬件聲音解碼器790并進行重放。由數(shù)據(jù)存取模塊的輸入輸出完成處理部分786檢測出輸出結束了的數(shù)據(jù),將結束了的數(shù)據(jù)作為數(shù)據(jù)對象788加入到后處理等待數(shù)據(jù)對象矩陣中,然后,由后處理部分783廢棄。
圖8展示了將圖2的結構安裝在用戶空間中的例子。在安裝在用戶空間中的情況下,由于所有的模塊都安裝在用戶空間中,所以具有容易開發(fā)的效果。這是因為在能夠使用在開發(fā)應用程序時使用的開發(fā)工具、例如調(diào)試器等的基礎上,還能夠使用OS提供的存儲器管理功能,因此能夠防止來自其他應用程序的干擾,能夠提高可靠性、實用性。
圖9展示了在OS中構成圖2的結構的大部分的例子。例如,在核心空間中安裝的結構的情況下,在OS內(nèi)的模塊比應用程序優(yōu)先執(zhí)行的OS中,比在用戶空間中進行安裝的情況對性能有利。特別地可以認為在進行需要實時性的高比特率下的內(nèi)容處理的情況下特別有效。
在這2個結構中,依存于平臺的是通用系統(tǒng)接口920、931和數(shù)據(jù)存取模塊管理器932,除此以外的屬于本實施例的程序模塊都不依存于平臺。這是因為由該模塊吸收了因硬件和OS的不同而不同的OS功能利用步驟、設備的存取方法的差異,通過使用該模塊提供的通用化了的接口,能夠利用平臺所提供的功能。
另外,應該考慮用途、硬件結構以及開發(fā)難度等來決定采用哪一種結構。例如,在CPU的性能低的平臺上進行安裝、或者要求高性能的情況下,調(diào)試就會比較困難,但可以考慮比較容易的圖9的在核心空間中進行安裝來實現(xiàn)高性能。相反,在CPU充分快并且能夠充分利用存儲器等執(zhí)行資源的情況下,或不要求高性能的情況等下,可以考慮安裝容易的圖8的用戶空間的結構。
可以在例如動畫、聲音處理等流處理中利用本技術??梢赃m用于例如播放設備、信號接收機、錄像錄音設備以及監(jiān)視照相機等中。
權利要求
1.一種數(shù)據(jù)處理方法,是數(shù)據(jù)處理裝置的數(shù)據(jù)處理方法,該數(shù)據(jù)處理裝置具有數(shù)據(jù)的輸入裝置;數(shù)據(jù)的輸出裝置;存儲各處理模塊的存儲部件;發(fā)出指令的指令發(fā)出部件;使用上述處理模塊執(zhí)行處理的運算處理部件,該數(shù)據(jù)處理方法包括以下步驟根據(jù)從上述指令發(fā)出部件發(fā)出的第1指令,確定處理上述數(shù)據(jù)所必需的至少一個或一個以上的處理,在上述存儲部件中生成上述確定的處理所必需的處理模塊,在上述存儲部件中使用連接模塊連接上述處理模塊,生成執(zhí)行上述處理的處理流程,根據(jù)從上述指令發(fā)出部件發(fā)出的第2指令,將從上述輸入裝置輸入的數(shù)據(jù)輸入到上述處理流程的開始部分,通過上述運算處理部件執(zhí)行上述處理流程,從上述輸出裝置輸出執(zhí)行上述處理流程的處理結果。
2.根據(jù)權利要求1記載的數(shù)據(jù)處理方法,其特征在于上述處理模塊具有從上述輸入裝置輸入數(shù)據(jù)或向上述輸出裝置輸出數(shù)據(jù)的數(shù)據(jù)存取模塊;在對經(jīng)由上述數(shù)據(jù)存取模塊輸入的數(shù)據(jù)執(zhí)行了規(guī)定的處理后,將該處理后的數(shù)據(jù)輸出到其他處理模塊的數(shù)據(jù)處理模塊。
3.根據(jù)權利要求2記載的數(shù)據(jù)處理方法,其特征在于上述數(shù)據(jù)處理模塊具有從上述連接模塊輸入數(shù)據(jù),在執(zhí)行了規(guī)定的處理后,將該執(zhí)行后的數(shù)據(jù)輸出到上述數(shù)據(jù)存取模塊的第1處理部分;將從上述數(shù)據(jù)存取模塊輸入的數(shù)據(jù)輸出到其他處理模塊的第2處理部分。
4.根據(jù)權利要求3記載的數(shù)據(jù)處理方法,其特征在于上述數(shù)據(jù)存取模塊具有將從上述第1處理部分發(fā)送的數(shù)據(jù)的輸入輸出請求發(fā)送到上述輸入裝置或輸出裝置的輸入輸出執(zhí)行處理部分;將通過上述輸入輸出請求得到的數(shù)據(jù)輸出到上述第2處理部分的輸入輸出完成處理部分。
5.根據(jù)權利要求3記載的數(shù)據(jù)處理方法,其特征在于還具有數(shù)據(jù)處理管理模塊和規(guī)定了處理的順序的流表,上述第1處理部分根據(jù)從上述指令發(fā)出部件通知的比特率和作為該第1處理部分中的進行處理的單位的塊大小,計算出下一次啟動該處理模塊的時刻,并登記到上述流表中。
6.根據(jù)權利要求5記載的數(shù)據(jù)處理方法,其特征在于上述數(shù)據(jù)處理管理模塊參照上述流表,通過一個執(zhí)行過程執(zhí)行登記在上述流表中的處理。
7.一種數(shù)據(jù)處理裝置,其特征在于包括數(shù)據(jù)的輸入裝置;數(shù)據(jù)的輸出裝置;存儲處理模塊、連接該處理模塊的連接模塊以及數(shù)據(jù)處理管理模塊的存儲部件;發(fā)出指令的指令發(fā)出部件;使用上述處理模塊執(zhí)行處理的運算處理部件,其中上述數(shù)據(jù)處理管理模塊根據(jù)從上述指令發(fā)出部件發(fā)出的第1指令,確定處理上述數(shù)據(jù)所必需的至少一個或一個以上的處理,并在上述存儲部件中生成該確定的處理所必需的處理模塊,在上述存儲部件中使用上述連接模塊連接上述處理模塊,生成執(zhí)行上述處理的處理流程,根據(jù)從上述指令發(fā)出部件發(fā)出的第2指令,從上述輸入裝置輸入數(shù)據(jù),通過上述運算處理部件執(zhí)行上述處理流程,并將執(zhí)行上述處理流程的處理結果輸出到上述輸出裝置。
8.根據(jù)權利要求7記載的數(shù)據(jù)處理裝置,其特征在于上述處理模塊具有從上述輸入裝置輸入數(shù)據(jù)或向上述輸出裝置輸出數(shù)據(jù)的數(shù)據(jù)存取模塊;在對經(jīng)由上述數(shù)據(jù)存取模塊輸入的數(shù)據(jù)執(zhí)行了規(guī)定的處理后,將該處理后的數(shù)據(jù)輸出到其他處理模塊的數(shù)據(jù)處理模塊。
9.根據(jù)權利要求8記載的數(shù)據(jù)處理裝置,其特征在于上述數(shù)據(jù)處理模塊具有從上述連接模塊輸入數(shù)據(jù),在執(zhí)行了規(guī)定的處理后,將該執(zhí)行后的數(shù)據(jù)輸出到上述數(shù)據(jù)存取模塊的第1處理部分;將從上述數(shù)據(jù)存取模塊輸入的數(shù)據(jù)輸出到其他處理模塊的第2處理部分。
10.根據(jù)權利要求9記載的數(shù)據(jù)處理裝置,其特征在于上述數(shù)據(jù)存取模塊具有將從上述第1處理部分發(fā)送的數(shù)據(jù)的輸入輸出請求發(fā)送到上述輸入裝置或輸出裝置的輸入輸出執(zhí)行處理部分;將通過上述輸入輸出請求得到的數(shù)據(jù)輸出到上述第2處理部分的輸入輸出完成處理部分。
11.根據(jù)權利要求9記載的數(shù)據(jù)處理裝置,其特征在于還具有數(shù)據(jù)處理管理模塊和規(guī)定了處理的順序的流表,上述第1處理部分根據(jù)從上述指令發(fā)出部件通知的比特率和作為該第1處理部分中的進行處理的單位的塊大小,計算出下一次啟動該處理模塊的時刻,并登記到上述流表中。
12.根據(jù)權利要求11記載的數(shù)據(jù)處理裝置,其特征在于上述數(shù)據(jù)處理管理模塊參照上述流表,通過一個執(zhí)行過程執(zhí)行登記在上述流表中的處理。
13.一種計算機程序產(chǎn)品,是具有發(fā)出指令的指令發(fā)出部件、數(shù)據(jù)的輸入裝置和輸出裝置的計算機中的計算機程序產(chǎn)品,其特征在于使計算機執(zhí)行以下步驟根據(jù)從上述指令發(fā)出部件發(fā)出的第1指令,確定處理上述數(shù)據(jù)所必需的至少一個或一個以上的處理的步驟;在上述存儲部件中生成上述確定的處理所必需的處理模塊的步驟;在上述存儲部件中使用連接模塊連接上述處理模塊,生成執(zhí)行上述處理的處理流程的步驟;根據(jù)從上述指令發(fā)出部件發(fā)出的第2指令,將從上述輸入裝置輸入的數(shù)據(jù)輸入到上述處理流程的開始部分,通過上述運算處理部件執(zhí)行上述處理流程的步驟;從上述輸出裝置輸出執(zhí)行上述處理流程的處理結果的步驟。
14.根據(jù)權利要求13記載的計算機程序產(chǎn)品,其特征在于上述處理模塊具有從上述輸入裝置輸入數(shù)據(jù)或向上述輸出裝置輸出數(shù)據(jù)的數(shù)據(jù)存取模塊;在對經(jīng)由上述數(shù)據(jù)存取模塊輸入的數(shù)據(jù)執(zhí)行了規(guī)定的處理后,將該處理后的數(shù)據(jù)輸出到其他處理模塊的數(shù)據(jù)處理模塊。
15.根據(jù)權利要求14記載的計算機程序產(chǎn)品,其特征在于上述數(shù)據(jù)處理模塊具有從上述連接模塊輸入數(shù)據(jù),在執(zhí)行了規(guī)定的處理后,將該執(zhí)行后的數(shù)據(jù)輸出到上述數(shù)據(jù)存取模塊的第1處理部分;將從上述數(shù)據(jù)存取模塊輸入的數(shù)據(jù)輸出到其他處理模塊的第2處理部分。
16.根據(jù)權利要求15記載的計算機程序產(chǎn)品,其特征在于上述數(shù)據(jù)存取模塊具有將從上述第1處理部分發(fā)送的數(shù)據(jù)的輸入輸出請求發(fā)送到上述輸入裝置或輸出裝置的輸入輸出執(zhí)行處理部分;將通過上述輸入輸出請求得到的數(shù)據(jù)輸出到上述第2處理部分的輸入輸出完成處理部分。
17.根據(jù)權利要求15記載的計算機程序產(chǎn)品,其特征在于還具有數(shù)據(jù)處理管理模塊和規(guī)定了處理的順序的流表,上述第1處理部分根據(jù)從上述指令發(fā)出部分通知的比特率和作為該第1處理部分中的進行處理的單位的塊大小,計算出下一次啟動該處理模塊的時刻,并登記到上述流表中。
18.根據(jù)權利要求17記載的計算機程序產(chǎn)品,其特征在于上述數(shù)據(jù)處理管理模塊參照上述流表,通過一個執(zhí)行過程執(zhí)行登記在上述流表中的處理。
全文摘要
本發(fā)明提供一種為了提高移植性而構成并執(zhí)行對一連串處理點的流數(shù)據(jù)處理的數(shù)據(jù)處理裝置及其方法。該方法在數(shù)據(jù)處理中,通過連接模塊將被稱為主模塊的處理點連接起來并設置流數(shù)據(jù)路徑,通過在單一的執(zhí)行過程中進行調(diào)度,使得能夠進行高性能的處理,并通過層結構來實現(xiàn)它們,從而實現(xiàn)高移植性和開發(fā)的容易性。
文檔編號H04N7/173GK1677351SQ20041006008
公開日2005年10月5日 申請日期2004年6月25日 優(yōu)先權日2004年4月2日
發(fā)明者雷蒙爾·達米恩, 水谷美加, 森本義章 申請人:株式會社日立制作所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
霸州市| 濮阳市| 上蔡县| 洮南市| 德清县| 湖南省| 酒泉市| 平乡县| 阿鲁科尔沁旗| 德令哈市| 长垣县| 承德县| 深水埗区| 红原县| 大宁县| 新乐市| 桐庐县| 玉林市| 通江县| 湖北省| SHOW| 牟定县| 建宁县| 长寿区| 珲春市| 淄博市| 隆子县| 绵竹市| 彰武县| 德州市| 兴仁县| 峡江县| 普宁市| 南澳县| 都匀市| 万年县| 南木林县| 莱西市| 冕宁县| 梧州市| 永顺县|