新四季網

數據採集設備與方法

2023-05-27 13:14:16 2

專利名稱:數據採集設備與方法
技術領域:
本發明涉及一種從傳送數據流採集滿足一定條件的數據的設備,特別是涉及一種以有限的硬體資源有效採集數據的數據採集設備。
數據採集設備,如數字廣播接收機,要求以有限的硬體資源和時間,從傳送站傳送的廣播數據中提取滿足一定條件的數據。
圖28表示傳統數據採集設備的結構功能框圖。數據採集設備500包括與數字廣播接收機的硬體和軟體部分對應的數據採集請求接收單元501,該部分執行有關數據接收的基本處理,例如廣播數據的接收、復用、解碼以及濾波,數據採集請求接收單元接收來自各種類型的應用程式的數據採集請求,這些應用程式可以完成接收機的各種功能;數據採集請求設置單元509,用於將接受到的請求轉換為適用於數據採集單元507的參數,且在數據採集單元507中設置這些參數;數據採集單元507,用於從廣播數據中提取滿足設置數據採集請求的數據;及數據傳送單元508,用於傳送由數據採集單元507採集的數據給請求採集數據的應用程式。
圖29表示圖28中的傳統數據採集設備500執行的數據採集過程流程圖。
數據採集請求接收單元501接收來自應用程式的數據採集請求,請求採集諸如特定的廣播節目信息或監控信息數據,並發送接收到的數據採集請求給數據採集請求設置單元509(步驟S100)。數據採集請求設置單元509將接收到的請求轉換為適用於數據採集單元507的參數,且在數據採集單元507中設置這些參數(步驟S101)。數據採集單元507啟動與設置參數相對應的數據採集過程(步驟S102)。例如,數據採集單元507監控廣播數據是否包含滿足一定條件的程序信息。
數據採集單元507判斷目標數據是否已被採集完畢(步驟S103),當判斷結果為否定時,則數據採集單元507重複判斷直至判斷結果為肯定。當步驟S103中判斷的結果為肯定時,數據採集單元507發送數據給數據傳送單元508,數據傳送單元508將數據傳送給請求該數據的應用程式(步驟S104)。
如上所述,傳統的數據採集設備可以正確地執行來自各應用程式的每一個數據採集請求。
然而,這種傳統的數據採集設備,一旦開始某一請求的數據採集,如果不取消該數據採集則某一特定的硬體資源會被一直佔用。因此,當多個應用程式一次傳送多個數據採集請求時,或者當數據採集以低頻率開始傳送的時候,數據採集執行的效率是非常低的(低數據採集率)。
儘管考慮到內部處理過程或產生數據採集請求的時間,可以預先編好每一個應用程式以至不會產生浪費的時間,但是設計一個考慮到應用程式相互間影響的系統是困難的(同一時間兩個或多個數據採集請求的衝突問題),上述問題還未解決。
因此,本發明的目的就是為了提供一種數據採集設備,能夠利用有限的硬體資源依據應用程式發出的多個數據採集請求有效地採集數據。
上述目的通過這樣一種數據採集設備來實現,該設備依據從多個數據處理設備接收到的請求從傳送數據流中採集數據,該數據採集設備包括請求接收裝置,用於從多個數據處理設備接收多個採集數據的請求;條件產生裝置,用於產生與接收到的請求相對應的多個條件;調度裝置,用於產生多個條件的隊列,並根據產生的隊列,通過在數據提取裝置中設置與一個或多個數據相對應的一個或多個條件和從數據提取裝置中刪除一個或多個條件,來啟動和停止滿足任意條件的數據採集過程;數據提取裝置,用於從數據流中提取一個或多個數據;及輸出裝置,用於輸出由數據提取裝置提取的一個或多個數據給數據處理設備中發送過採集數據請求的數據處理設備。
以上結構中,首先由數據採集設備的調度裝置安排接收包括被採集數據的數據流,然後依據從多個數據處理設備傳送的數據採集請求執行數據採集。這樣就實現了以有限的硬體資源有效地採集數據。每一個數據處理設備還可以在任何需要的時候發送數據採集請求,而不需考慮同一時間與來自其它數據處理設備的數據採集請求之間的衝突。
在上述的數據採集設備中,請求接收裝置在接收請求的同時還接收數據採集的優先級,而調度裝置產生隊列,以使優先級高的數據採集請求優先被執行。
以上結構還可以解決優先級高的數據採集由於連續執行優先級低的數據採集而被延遲的問題。
在上述數據採集設備中,請求接收裝置在接收請求的同時還接收指定數據採集狀態的監控狀態信息,調度裝置(a)在數據提取裝置中設置一個條件,以便當調度裝置接收到帶有指定持續監控採集的監控狀態信息的請求時,執行連續地數據採集,(b)在並從數據提取裝置中設置和刪除一個條件,以便當調度裝置接收到帶有指示間歇監控採集的監控狀態信息時,以固定的時間間隔執行數據採集,(c)在並從數據提取裝置中設置和刪除一個條件,以便當調度裝置接收到帶有指示無監控採集的監控狀態信息時只執行一次數據採集。
以上結構中,可能需要執行一段時間,有效的數據採集取決於監控的傳送數據的特性(重複性、頻率、帶寬等等)和狀態(頻率、緊急程度等等)。
上述數據採集設備還包括一個記錄裝置,用於臨時記錄多個條件,其中條件產生裝置在記錄裝置中記錄產生的條件,調度裝置通過讀取記錄裝置中的產生條件來產生隊列,對讀取條件重新排序,並將重新排序的條件記錄在記錄裝置中。
以上結構中,用於存儲共用調度對象請求的存儲區域是安全可靠的,這樣可以使各種功能的裝置通過該存儲區域進行通信。
在上述數據採集設備中,請求接收裝置在接收請求的同時還接收指示請求類型的標題信息,條件產生裝置接收來自請求接收裝置的帶有標題信息的請求,產生與每一個接收到的請求相對應的條件,在記錄裝置中記錄每一個產生的條件及與之對應的接收到的標題信息,調度裝置依據與記錄在記錄裝置中的條件相對應的標題信息,通過刪除數據提取裝置中與數據採集對應的條件來結束數據採集。
以上結構中,依據數據採集請求的類型可以監控數據採集。例如,當同時出現兩個或多個相同類型的數據採集請求時,可以中止與早期數據採集請求相列應的數據採集。這樣可以避免連續的無用的數據採集。
上述數據採集設備還包括一個定時器裝置,用於提供當前時間,其中條件產生裝置在接收到請求接收裝置的請求後,產生(a)與接收到的請求對應的條件(b)條件產生時間信息,指示該條件產生的時間,並在記錄裝置中記錄每一個產生的條件和對應的該條件產生的時間信息,調度裝置通過比較當前時間與記錄在記錄裝置中的條件產生的時間信息,為每一個條件計算消耗的時間,並依據該消耗時間執行調度。
上述結構中,數據的採集是基於從發布數據採集請求之後經過的時間來監控的。這樣可以避免由於數據採集請求很長時間不被執行而引起的故障。
在上述數據採集設備中,條件產生裝置在接收到來自請求接收裝置的請求後,產生一個與接收到的請求對應的條件,通過比較新產生的條件和記錄在記錄裝置中已經存在的條件來判斷兩個條件是否可以連接起來,當判斷出這兩個條件可以連接時,通過連接這兩個條件來產生一個新的條件,並在記錄裝置中記錄該新產生的條件,調度裝置從記錄裝置中讀取新產生的條件,並將該條件放入隊列中,然後通過在數據提取裝置中設置該新產生的條件來啟動數據採集,並通過從數據提取裝置中刪除已存在的條件來結束數據採集。
在上述數據採集設備中,條件產生裝置在接收到來自請求接收裝置的請求後,產生(a)與接收到的請求對應的條件(b)用於識別產生條件的識別信息,當通過連接產生新條件之後,條件產生裝置使用識別信息產生一組表示新產生的條件與連接在一起產生新條件的兩個條件之間的對應關係的連接信息,並在記錄裝置中記錄連接信息、與識別信息對應的條件和接收到的請求,調度裝置參照識別信息和連接信息來識別新產生的條件和連接在一起產生新條件的兩個條件,並監控與識別條件相對應的每一個數據採集的開始和結束。
在上述數據採集設備中,當兩個條件有一個公共部分時,條件產生裝置判斷這兩個條件可以連接起來,並產生一個包含該公共部分的新條件。
上述結構中,多個條件被連成同時滿足多個條件的一個條件,這樣可以減少數據採集裝置中設置條件的數目,實現有效地利用硬體資源。
上述數據採集設備還包括一個定時器裝置,用於提供當前時間,其中當開始數據採集之後,調度裝置通過增加預定義時間周期到調度裝置開始數據採集的時間來產生一個超時時間,並在記錄裝置中記錄該超時時間和與數據採集對應的條件。噹噹前時間到達超時時間時,通過刪除數據提取裝置中的相應條件來結束數據採集,同時,通過增加另一預定義時間周期到數據採集結束的時間來產生一個超時取消時間,並在記錄裝置中記錄該超時取消時間和與之對應的條件。噹噹前時間到達超時取消時間時,將該條件放入隊列中,並通過在數據提取裝置中設置條件來啟動數據採集。
上述結構中,當數據對象未被傳送時,數據採集中止一定的時間然後重新啟動,這樣可以避免硬體資源的白白佔用。
在上述數據採集設備中,數據提取裝置為設置在其中的每一個條件輸出表示數據是否已被採集的數據採集信息,調度裝置為記錄在記錄裝置中的每一個條件產生數據採集確認信息,並依據產生的數據採集確認信息執行調度。
上述結構提供了一種有效地數據採集方式,由數據對象是否已被採集而確定。
上述數據採集設備還包括一個定時器裝置,用於提供當前時間,其中條件產生裝置在接收到來自請求接收裝置的請求之後,產生(a)與接收到的請求對應的條件,及(b)條件產生時間信息,用於指示條件產生的時間,並在記錄裝置中記錄每一個產生的條件和每一個與之對應的條件產生時間信息,調度裝置通過比較當前時間和記錄在記錄裝置中指示條件產生的時間信息,並參照記錄在記錄裝置中的數據採集確認信息,來判斷記錄裝置是否存儲了從條件產生以來到預定義時間間隔到期之後數據還未被採集的條件,依據判斷的結果來執行調度。
上述結構避免了由於沒有數據對象傳送而使數據採集失敗所引起的硬體資源被白白佔用的故障。
在上述數據採集設備中,條件產生裝置在接收到來自請求接收裝置的請求之後,產生一個與接收到的請求相對應的條件,通過比較新產生的條件與記錄裝置中已存在的條件來判斷兩個條件是否可以連接,當判斷兩個條件可以連接時,產生一個由兩個條件連接而成的新條件,並在記錄裝置中記錄該條件,調度裝置從記錄裝置中讀取新產生的條件,並將其放入隊列中,然後通過在數據提取裝置中設置該新產生的條件來啟動數據採集,通過從數據提取裝置中刪除已存在的條件來結束數據採集,當判斷到從接收請求以來到預定義時間間隔到期後新產生的條件的數據還未被採集時,通過刪除數據提取裝置中新產生的條件,來結束數據採集,並且從記錄裝置中讀取已存在的條件,將新產生的條件和已存在的條件放入隊列中,然後通過在數據提取裝置中設置已存在的條件來啟動數據採集。
上述結構中,由多個條件連接起來產生的數據採集條件的數據採集即使沒有成功,也可以恢復到以前的數據採集狀態。
在上述數據採集設備中,請求接收裝置在接收請求的同時還接收(a)指定數據採集狀態的監控狀態信息,(b)數據採集的優先級,及(c)用於識別請求的識別信息,條件產生裝置接收來自請求接收裝置的監控狀態信息、識別信息和請求,產生與每一個接收到的請求對應的條件,在記錄裝置中記錄每一個產生的條件和與之對應的每一個接收到的監控狀態信息和識別信息,數據提取裝置參照包含在數據流中的標題信息,提取和輸出(a1)與包含在數據流中的數據相對應的識別信息及(b1)指示數據版本的版本信息,調度裝置參照由數據提取裝置輸出的識別信息和版本信息,為記錄在記錄裝置中的每一個條件產生(a2)數據採集確認信息,指示對應的數據是否已被採集,(b2)版本更新序號信息,指示對應數據更新的版本序號,並在記錄裝置中記錄產生的數據採集確認信息和版本更新序號信息,當隊列中包含多個條件,而每一個條件(ⅰ)監控狀態信息指定無監控採集狀態,(ⅱ)指定相同的優先級,(ⅲ)數據採集確認信息有相同的內容時,通過在數據提取裝置中設置隊列的多個條件中與記錄在記錄裝置中指示版本更新最大序號的版本更新序號信息相對應的條件來優先啟動數據採集。
上述結構中,優先執行與內容經常更新的數據相對應的數據採集,這樣提供了一種有效地採集多項內容的數據採集。
上述目的依據從多個數據處理設備接受到的請求也可以通過從傳送數據流中採集數據的數據採集設備來實現,該數據採集設備包括條件採集裝置,用於從多個數據處理設備中採集與請求對應的多個條件;表控制裝置,用於控制一個表示(a)(b)(c)三者之間關係的表,其中(a)為多個條件,(b)為多條設置信息,每一條表示數據提取裝置中的條件是「設置」還是「未設置」狀態,及(c)表示已經被採集的多個條件的順序的順序值,當對應的條件從數據提取裝置中被刪除時,每一個順序值被初始化為一個值,指示其對應的條件最近被採集過;調度裝置在每次條件採集裝置採集一個新條件時,就寫下一組(a1)新條件,(b1)與新條件對應的設置信息,表示數據提取裝置中的條件是「設置」還是「未設置」狀態,及(c1)順序值,指示最近被採集的新條件,並參照記錄在表中的設置信息和順序值來監控數據提取裝置中的條件設置;數據提取裝置,用於從數據流中提取滿足多個條件的一組或多組數據;及輸出裝置,用於輸出數據提取裝置提取的一組和多組數據給多個數據處理裝置中發送過採集數據請求的數據處理裝置。
上述結構中,接收的採集條件可能比在同一時間實際用於提取和監控數據的採集條件的數目要多。
上述數據採集設備中,調度裝置還包括設置判斷裝置,用於通過判斷與表示為「設置」狀態的設置信息相對應的條件的數目是否少於數據提取裝置中可以設置的條件數目的上限值,來判斷數據提取裝置中是否設置了新條件;及設置監控裝置,用於當設置判斷裝置判斷出設置了一個新條件時,在數據提取裝置中設置確定的條件,當設置判斷裝置判斷出沒有設置新條件時,則選擇條件中與表示為「設置」狀態的設置信息相對應的條件,從數據提取裝置中刪除所選擇的條件,並在數據提取裝置中設置確定的條件。
上述結構中,用於還未被提取或監控的數據的採集條件有優先被採集的機會。
上述數據採集裝置中,確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最少被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件,表中與之對應的順序值表明該條件最近最少被採集過,然後從數據提取裝置中刪除該選擇的條件。
上述結構中,以數據處理裝置發布的對應的採集條件為順序執行數據採集。這樣可以以適當的時間間隔來響應數據處理裝置的請求。
上述數據採集裝置中,確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最多被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件,表中與之對應的順序值表明該條件最近最少被採集過,然後從數據提取裝置中刪除該選擇的條件。
上述結構中,優先執行數據處理裝置的新採集請求條件的數據採集,這樣可以加速響應來自特定數據處理設備的請求。
上述數據採集裝置還包括重新排序請求裝置,用於發送重新排序請求,請求調度裝置根據來自多個數據處理裝置的指令對設置在數據提取裝置中的條件重新排序,其中,調度裝置在接到來自重新排序請求裝置的重新排序請求時,參照記錄在表中的設置信息和順序值來監控設置在數據提取裝置中的條件的重新排序。
上述結構中,根據來自數據處理裝置的請求,提供了採集條件重新排序的時間,這樣可以使所有數據採集條件都可以自動地用於調度數據提取和監控。
上述數據採集設備中,數據提取裝置當成功地提取到滿足某一條件的數據時,將滿足成功提取數據的條件通知給調度裝置,調度裝置在接收到通知時,參照記錄在表中的設置信息和順序值來監控設置在數據提取裝置中的條件的重新排序。
以上結構中,當數據採集成功時,提供了重新排序採集條件的時間,這樣使所有數據採集條件不需要接收來自數據處理裝置的採集條件重新排序請求,就可以自動地用於調度數據提取和監控。
結合以下用來說明本發明實施例的


,本發明的上述和其它目的以及優點將顯而易見,其中圖1給出了本發明實施例一的數據採集設備的結構功能框圖。
圖2給出了由請求條件產生單元產生的請求條件。
圖3給出了每個請求條件的數據採集狀態的轉移。
圖4給出了請求條件設置調度單元調度之後的請求條件。
圖5給出了數據採集設備所執行的整個數據採集過程流程圖。
圖6給出了根據優先級來調度請求條件的主要過程的流程圖。
圖7給出了被請求條件設置調度單元附加有各類管理信息的請求條件表格。
圖8給出了從定時單元讀取「當前」時間的例子。
圖9給出了數據採集請求執行狀態由「正在執行」狀態改變為「等待」狀態,並進一步改變為「可執行」狀態的整個過程的流程圖。
圖10給出了請求條件是怎樣通過請求條件產生單元建立連接的。
圖11給出了連接請求條件的過程的流程圖。
圖12給出了被請求條連設置單元而附加有各種管理信息的請求條件表格。
圖13是劃分由眾多數據採集請求連接而產生的數據採集請求過程的流程圖。
圖14是作為本發明第二個實施例的數據採集設備的結構功能框圖。
圖15給出了由請求條件產生單元產生的請求條件表格。
圖16給出了如何根據由數據採集監控狀態信息指定的監控狀態來採集數據。
圖17是由數據採集設備所完成的整個數據採集過程的流程圖。
圖18給出了被數據採集設備附加有各類管理信息的請求條件表格。
圖19是在數據採集監控狀態信息指定為「無監控採集」的請求條件下,由數據採集設備控制的數據採集過程的流程圖(由「等待」變為「可執行」狀態)。
圖20給出了被請求條件設置調度單元附加有各類管理信息的請求條件的表格。
圖21是數據採集監控狀態信息指定為「無監控採集」的請求條件下,由數據採集設備控制的數據採集過程的流程圖(由「可執行」變為「正在執行」狀態)。
圖22是作為本發明第三個實施例的數據採集設備的結構功能框圖。
圖23給出了由請求條件產生單元產生的請求條件表格。
圖24是由數據採集設備產生超時時間並執行超時處理的過程流程圖。
圖25是作為本發明第四個實施例的數據採集設備的結構功能框圖。
圖26給出了被數據採集設備附加有各類管理信息的請求條件表格。
圖27給出了其中接收到的數據版本已被處理的數據採集控制過程。
圖28是傳統的數據採集設備的結構功能框圖。
圖29是由傳統的數據採集設備執行的數據採集過程的流程圖。
圖30給出了數據採集設備200的結構功能框圖。
圖31給出了將從應用單元接收到的採集條件存儲在採集條件存儲單元202中的表格的這個過程的流程圖。
圖32給出了表示採集條件設置調度單元204在數據採集單元507中設置一條存儲在採集條件存儲單元202表中的採集條件的過程。
圖33給出了存儲在採集條件存儲單元202的表的一個例子,採集條件存儲單元202存儲了多組採集條件、設置信息以及順序值。
圖34表示了圖33中所表格的內容,這些內容是在根據由採集條件設置調度單元204執行以上步驟更新之後的內容。
圖35表示在數據採集單元507中設置一個採集條件之後,由數據採集裝置20執行的處理過程。
圖36給出了將從應用單元接收到的採集條件存儲在採集條件存儲單元202中的表格的過程流程圖,除了步驟S1206被步驟S1207所替代之外,其它都與圖38相同。在步驟S1207中,採集條件設置調度單元204從採集條件存儲單元202的表中選擇一條採集條件,這一採集條件與表示「有效」的設置信息和最大順序值一起包括在一個組中;允許所述設置信息與表示「無效」的採集條件一起被存儲在所述組中,並將同一組中的所述順序值設置為初始值「0」。
圖37給出了本發明實施例六的數據採集設備的結構功能框圖。
圖38是表示採集條件設置調度單元204對存儲在採集條件存儲單元202的表中的採集條件在數據採集單元507進行設置的過程流程圖。
圖39給出了採集條件設置調度單元204對存儲在採集條件存儲單元202的表中的採集條件在數據採集單元507進行設置的過程流程圖,除了步驟S1505被步驟S1507所替代之外,其它都與圖38相同。在步驟S1507中,採集條件設置調度單元204從數據採集單元507中刪除數據已被成功提取的採集條件設置,允許與該採集條件一起存儲在該組中的設置信息表示「無效」,並將同一組中的順序值設置為初始值「0」。
圖40給出了採集條件設置調度單元204對存儲在採集條件存儲單元202的表中的採集條件在數據採集單元507進行設置的過程流程圖,除了在步驟S1503和步驟S1504之間插入了步驟S1508,其它都與圖39相同。在步驟S1508中,採集條件設置調度單元204對與已經被成功提取數據的採集條件存儲在一個組中的順序值執行加「2」操作。
(第一實施例)圖1給出了作為本發明第一個實施例的數據採集設備110的結構方框圖。數據採集設備110能夠根據優先級來調度由多個數據處理設備所產生的數據採集請求。值得注意的是數據處理設備包括軟體應用程式,在下文中簡單稱為「應用程式」。更具體地說,數據採集設備110與數字廣播接收機的硬體和軟體部分相對應,這些部分執行有關數據接收的基本操作,例如廣播數據接收、復用、解碼、濾波。數據採集設備110包括數據採集請求接收單元501,請求條件產生單元112,請求條件設置調度表單元113,請求條件記錄單元114,定時器單元115,請求條件設置單元116,數據採集單元507以及數據傳送單元508。包括在附圖28所示數據採集設備500中的上述相同單元使用相同的附圖標記。
本實施例假設每個應用程式通過發出一個數據採集請求和數據採集的優先權給數據採集設備110(數據採集請求接收單元501)來請求一個數據採集,其中數據採集請求命令包括標題信息和用來指定所要採集的數據的信息。
具體地說,數據採集請求是諸如ID表和表的序列號這樣的信息,這些信息是用來指定從廣播站發出的傳輸流(TS)中所包含的各種廣播節目信息表中的一個或一部分。廣播節目信息表包括NIT(網絡信息表),是在廣播節目當中加入了與傳輸路徑相關的信息,例如頻率調整;EIT(時間信息表)給出了與廣播節目相關的信息,例如節目名、廣播數據及內容;SDT(業務說明表)給出了與信道有關的信息,例如信道名稱及廣播員名稱。以上所有的表都是以MPEG-2系統標準所定義的層式數據結構。
在本發明的實施例中,優先級別「1」、「2」、「3」表示遞減的優先級。
數據採集請求接收單元501是數據採集設備110的輸出接口,並且從每個應用程式接收一對數據採集請求和優先權級別,並將上述這些內容發送給請求條件產生單元112。當數據採集請求接收單元501從一個應用程式或多個應用程式接收到一組數據採集請求和優先權級別,數據採集請求接收單元501就發送該組信息給請求條件產生單元112。
請求條件產生單元112給從數據採集請求接收單元501所接收到的每對數據採集請求和優先級產生一個請求條件,其中請求條件給出了每對數據採集請求的內容。請求條件產生單元112將請求條件發送給請求條件設置調度表單元113,並將請求條件存儲在請求條件記錄單元114中。
這裡,每個「請求條件」和由數據採集設備110調度並管理的數據採集請求相對應。在本實施例中,每個請求條件包括至少一個數據採集條件和優先級,請求條件是用來指定所要採集的目標數據。
圖2給出了由請求條件產生單元112產生的請求條件表格。在這個例子中,表格中的8個請求條件是按照數據採集請求的產生順序給出的。每個請求條件包括一個數據採集條件1102和一個優先級別1103。
請求條件記錄單元114是快速存儲器或類似器件,它是可以實現重寫的存儲設備,用來存儲請求條件1101。
定時器單元115是日曆時間計數器、預製計數器或類似的設備,它可以輸出當前的時間,並能一次性輸出或重複輸出(1)用來表示預製時間已經到達的標誌信息和(2)中斷信號。
數據採集單元507是一個TS解碼器,它可以根據PID包(ID包)或類似的信息包從傳輸流中提取特定的TS信息包,並把所提取的TS包解碼為基本流。在本實施例中,數據採集單元507能同時處理20個數據採集請求。更具體地說,數據採集單元507接收由請求條件設置單元116設置的20個請求條件,並根據設置的請求條件採集數據。數據採集單元507將數據採集信息發送到請求條件設置調度單元113,其中數據採集信息是用來指示是否採集到與請求條件相應的數據。並且數據採集單元507將已採集到的數據發送給數據傳送單元508。
值得注意的是,一旦相應的請求條件被請求條件設置單元116設置,數據採集單元507則不斷的採集數據,直到請求條件設置調度單元113刪除設置的請求條件。
請求條件設置單元116從請求條件設置調度單元113接收一個請求條件,並且在數據採集單元507中設置所接收到的請求條件。更具體地說,請求條件設置單元116將請求條件設置調度單元113發送的已調度的請求條件轉換成能被數據採集單元507識別的專用參數,並且將參數設置在數據採集單元507。
數據傳送單元508從數據採集單元507接收所採集的數據,並根據記錄在請求條件記錄單元114中的請求條件或類似的條件來識別提出了相應的數據採集請求的應用程式,同時將數據發送到被識別的應用程式。
請求條件設置調度單元113是由存儲空製程序的CPU或ROM來實現的,它同其他部件相連接並且根據數據條件產生單元112所產生的請求條件控制數據採集表格。為了達到這個目的,請求條件設置調度單元113具有如下的功能(a)利用請求條件記錄單元114來監控和管理每個請求條件的數據採集狀態(數據採集狀態被劃分為「可執行」、「正在執行」、「等待」和「暫時中止」)(b)在固定的時間間隔根據從定時器單元115所接收到的標誌信息來調度新產生的請求條件及優先級別;(c)從請求條件記錄單元114中讀出滿足一定條件的「可執行」請求條件,並將讀出的請求條件發送給請求條件設置單元116。
圖3給出了請求條件狀態的轉換,也就是說,數據採集設備110中的數據採集狀態(運行狀態)的轉換與請求條件相關。這裡,「正在執行」狀態表明請求條件設置在數據採集單元507中(在這個狀態下所採集的目標數據在傳輸的過程中是無誤的);「可執行」狀態表明請求條件設置在數據採集單元507之前,請求條件是在隊列中;「等待」狀態表明請求條件已經設置在數據採集單元507中,但是在從設置開始的一定時間段之後請求條件設置臨時被刪除;「暫時中止」狀態表明是由諸如請求條件的連接這樣的原因造成請求條件臨時從數據採集單元507中刪除。
除了由數據條件產生單元112所產生的請求條件之外,所有的狀態轉換都是在請求條件設置調度單元113的控制下執行的。更具體地說,請求條件設置調度單元113按照如下的方式控制狀態的轉換。當處於「正在執行」狀態下的請求條件序列號小於20時,請求條件設置調度單元113從隊列中順序讀出「可執行」狀態下儘可能多的請求條件,來提供「正在執行」狀態下的20個請求條件,並且將讀出的請求條件的運行狀態改變為「正在執行」。當預定時間間隔到了但是沒有採集到「正在執行」狀態下與請求條件相應的數據時,請求條件設置調度單元113改變請求條件的運行狀態為「等待」。當比預定時間間隔超時更長時,請求條件設置調度單元113改變請求條件的運行狀態為「可執行」。當比「正在執行」狀態下的請求條件具有更高優先級的請求條件進入隊列時,請求條件設置調度單元113將「正在執行」狀態的請求條件改變為「可執行」狀態。當採集到與「正在執行」狀態的請求條件相應的數據或者當另外一個應用程式提出一個明確的刪除指令時,請求條件設置調度單元113就從請求條件記錄單元114刪除請求條件(即「刪除狀態」)。
圖4給出了圖2所示的請求在被請求條件設置調度單元113調度之後的表格,例如根據優先級重排序後的請求條件表格。在這個例子中,請求條件是從高到底有序的排列,起始的第一個請求條件具有最高優先級。請求條件設置調度單元113從請求條件記錄單元114中讀出一個處於「可執行」狀態下並且具有最高優先級的請求條件,同時請求條件設置調度單元113通過通知請求條件設置單元116讀取請求條件來開始數據採集(即改變為「正在執行」狀態)。
現在介紹一下具有上述結構的數據採集設備110的執行過程。
圖5給出了由數據採集設備110執行的整個數據採集過程的流程圖。
數據採集請求接收單元501從應用程式同時接收一個或多個數據採集請求(步驟S200),並且數據採集請求接收單元501將接收到的數據採集請求發送給數據條件產生單元112,數據條件產生單元112給每個數據採集請求產生一個請求條件(步驟S201)。
請求條件設置調度單元113判斷是否接收到來自定時器單元115的中斷信號(步驟S202),定時器單元115是被預先安排每隔固定時間發出一個中斷信號。當請求條件設置調度單元113沒有接收到中斷信號(步驟S202的判斷結果為「否」),則重複執行步驟S202。
當請求條件設置調度單元113接收到中斷信號(步驟S202的判斷結果為「是」),請求條件設置調度單元113根據優先級調度由數據條件產生單元112所產生的請求條件的數據採集設置(步驟S203),判斷請求條件是否包括一個用來設置數據採集的請求條件(例如,數據採集能立刻執行)(步驟S204)。當步驟S204的判斷結果是否定的時,請求條件設置調度單元113將請求條件記錄到請求條件記錄單元114(步驟S205)。當步驟S204的判斷結果是肯定的時,請求條件設置調度單元113將請求條件記錄到請求條件記錄單元114(步驟S206),在請求條件設置單元116中設置請求條件(步驟S207),並允許數據採集單元507開始數據採集(步驟S208)。
數據採集單元507判斷數據是否被採集到(步驟S209)。若步驟S209的判斷結果是否定的,數據採集單元507重複執行步驟S209。若步驟S209的判斷結果是肯定的,數據採集單元507則將採集到的數據發送給數據傳送單元508。數據傳送單元508將採集到的數據發送給請求方(步驟S210)。
圖6給出了根據優先級來調度請求條件的主要過程流程圖。
數據採集請求接收單元501接收新的數據採集請求和請求的優先級別,並將數據採集請求及其優先級發送給數據條件產生單元112(步驟S300)。
如圖2所示,數據條件產生單元112產生與所接收到的數據採集請求相應的請求條件(步驟S301),並將相應的優先級加入到所產生的請求條件中(步驟S302)。
請求條件設置調度單元113判斷是否接收到來自定時器單元115的中斷信號(步驟S303),如果請求條件設置調度單元113沒有接收到中斷信號,則重複執行步驟S303。
當請求條件設置調度單元113接收到中斷信號(步驟S303的判斷結果為「是」),請求條件設置調度單元113從請求條件記錄單元114提取目前的請求條件(步驟S304),並判斷新的請求條件的優先級是否高於目前的請求條件(步驟S305)。如果判斷結果是否定的,請求條件設置調度單元113將新的請求條件存儲到請求條件記錄單元114並且對請求條件重新排序,以便新的請求條件在目前的請求條件之後處理(步驟S306)。
如果步驟S305的判斷結果是肯定的,請求條件設置調度單元113將新的請求條件存儲到請求條件記錄單元114,並且對請求條件重新排序,以便使新的請求條件在目前的請求條件之前被處理(步驟S307)。
由於已經完成了對新的請求條件和目前請求條件的重排序,所以,請求條件設置調度單元113向請求條件設置單元116發出一個請求,按照從上到下的順序逐一的註冊與請求條件相應的數據採集(步驟S308),其中請求條件是存儲在可以設置所述數據採集的請求條件記錄單元114中。更具體地說,請求條件設置調度單元113從請求條件記錄單元114讀出滿足上述條件的請求條件,並將這些請求條件送到請求條件設置單元116單元。
已經接收到請求條件的請求條件設置單元116將接收到的請求條件轉化為設置的參數,並將設置的參數放在數據採集單元507中。通過這個操作,數據採集單元507開始查詢與請求條件相關的數據(步驟S309)。
如上所述,當數據採集設備110一次從應用程式接收到多個數據採集請求時,本實施例中的數據採集設備110允許請求條件設置調度單元113單元調度接收到的數據採集請求,這樣數據採集請求結果可以獲得一個總體上有效的數據採集。
同樣本實施例的數據採集設備110調度數據採集請求,以便數據採集請求可以按照優先權的順序進行處理,這樣可防止具有高度緊急或優先執行的數據被延時處理。
下面詳細描述由數據採集設備110執行的一次數據採集控制,以便數據採集請求的執行狀態由「正在執行」改變為「等待」,並進一步改變為「執行」。
請求條件設置調度單元113為每個請求條件分配一個超時時間,並且當超時時間到達時,請求條件設置調度單元113將處於「正在執行」狀態下的請求條件改變為「等待」狀態。同時,請求條件設置調度單元113給處於「等待」狀態的請求條件分配一個超時取消時間,並且當超時取消時間到達時,請求條件設置調度單元113將處於「等待」狀態的請求條件改變為「執行」狀態。
例如,請求條件設置調度單元113給具有優先極為「1」的請求條件分配10秒作為超時時間和超時取消時間。更具體地說,在這種情況下,當請求條件從「可執行」狀態改變為「正在執行」狀態之後的10秒過去時,請求條件改變為「等待」狀態;當請求條件從「正在執行」狀態改變為「等待」狀態之後的10秒過去時,請求條件改變為「執行」狀態。同樣的,請求條件設置調度單元113給優先級別為「2」和「3」的請求分配20秒和30秒,分別作為超時時間和超時取消時間。
為了達到上述的管理操作,請求條件設置調度單元113通過給存儲在請求條件記錄單元114中的每個請求條件附加諸如執行狀態、超時時間、超時取消時間這樣的管理信息來控制每個請求條件的數據採集。
圖7給出了被請求條件設置調度單元113附加有各種類型的管理信息的表格。如圖7所示,每個請求條件1101包括執行狀態信息1104、超時時間1105和超時取消時間1106。
圖8給出了從定時器單元115讀出「當前」時間的例子。在這個例子中,當前時間是由年、月、天、小時、分和秒表示的。
圖9給出了數據採集請求執行狀態由「正在執行」狀態改變為「等待」狀態,並進一步改變為「可執行」狀態的整個過程的流程圖。
請求條件設置調度單元113從請求條件記錄單元114中提取一個請求條件(步驟S700),並判斷請求條件的執行狀態信息1104是否為「正在執行」(步驟S701)。當請求條件不是在「正在執行」狀態時,認為超時控制處理的對象不在這個流程圖中,超時控制處理結束。
當判斷所述請求條件處於「正在執行」狀態時,請求條件設置調度單元113判斷是否接收到來自定時器單元115的中斷信號(步驟S702),定時器單元115是被預先安排每隔固定時間發出一個中斷信號。當請求條件設置調度單元113沒有接收到中斷信號(步驟S702的判斷結果為否定)時,則重複執行步驟S702。
當請求條件設置調度單元113接收到中斷信號(步驟S702的判斷結果為肯定),請求條件設置調度單元113從定時器單元115讀出當前時間(步驟S703),將當前時間和附加在請求條件中的超時時間相比較(步驟S704),並判斷定時時間是否適合超時處理(即判斷超時時間是否到達當前時間)(步驟S705)。當判斷的結果是否定時,則重複執行步驟S702至步驟S704。
當步驟S705的判斷結果為肯定時,請求條件設置調度單元113單元更新請求條件的執行狀態信息1104為「等待」(步驟S706),並且將超時取消時間1106附加到請求條件中(步驟S707),向請求條件設置單元116提出一個請求來刪除與請求條件相應的數據採集請求的設置(步驟S708)。這樣與請求條件相應的數據採集就結束了(步驟S709),實際上運行狀態從「等待」狀態改變為「執行」狀態。
同樣的,經過這些步驟,當超時時間到達時,請求條件設置調度單元113將請求條件從「等待」狀態改變為「可執行」狀態。更具體地說,當從請求條件記錄單元114中讀出的請求條件具有「等待」的執行狀態信息1104時,當超時取消時間1106到達當前時間時,請求條件設置調度單元113將執行狀態信息1104更新為「可執行」,並輸出一個請求條件到上述的基於優先級別的隊列。
如上所述,根據本實施例的數據採集設備110,即使數據採集請求處於「正在執行」狀態,如果用於請求的數據在預定的時間段內沒有採集到,運行狀態也會經過「等待」變為「可執行」,並且將請求條件輸入到隊列中。這樣會阻止由於廣播站或廣播節目的變化所帶來的機器故障而使廣播數據不能被傳輸時所引起的硬體資源的浪費。
下面詳細介紹由數據採集設備110執行的用於使所述數據採集請求執行狀態從「可執行」到「暫時中止」變化的數據採集控制。
請求條件產生單元112如上所述地產生與所接收的數據採集請求對應的請求條件。數據條件產生單元112還將新產生的請求條件與存儲在請求條件記錄單元114中的目前請求條件相結合以產生一個請求條件。
更具體地說,如果多個請求條件的數據採集條件1102共用一個條件,數據條件產生單元112則判斷多個請求條件是否能被連接,並產生一個僅僅由共用條件所組成的請求條件(請求條件通過邏輯和而結合)。
圖10給出了請求條件是如何通過數據條件產生單元112連接的。在這個例子中,請求包含ID1=0×001的表格的「請求條件A」是通過將(a)和(b)連接而產生的,其中(a)是請求具有ID1(例如,表格ID)=0×001和ID2(例如,節號)=0×01的表格的「請求1」,(b)是請求具有ID1=0×001和ID2=0×02的表格的「請求2」。
假定具有ID1=0×001的表格有ID2=0×01—0×09其中的一個值,並且由共用ID1=0×001的多個請求條件的連接而產生的「請求A」是一個數據採集請求,請求10種類型表格的採集具有ID1=0×001和ID2=0×00的表格;具有ID1=0×001和ID2=0×01的表格;……具有ID1=0×001和ID2=0×09的表格。
當數據條件產生單元112通過共用一個條件的請求條件的連接而產生一個新的請求條件時,請求條件設置調度單元113將每個連接的請求條件的運行狀態經過「可執行」狀態變為」暫時中止」,並且新產生的請求條件的運行狀態經過「可執行」狀態變為「正在執行」。
圖11給出了請求條件的連接過程流程圖。
數據條件產生單元112產生一個新的請求條件(步驟S600),從請求條件記錄單元114提取目前的請求條件(步驟S601),將兩個請求條件的數據採集條件1102相互比較(步驟S602),並且判斷這兩個請求條件是否已連接(步驟S603)。當兩個請求條件沒有共用條件時,在步驟S603中判斷這兩個請求條件沒有建立連接,連接處理結束。
當兩個請求條件共用一個條件時,數據條件產生單元112在步驟S603中判斷這兩個請求條件有連接,並通過兩個請求條件的連接產生一個新的請求條件(步驟S604)。數據條件產生單元112將新產生的請求條件存儲到請求條件記錄單元114中,並從請求條件設置調度單元113提出一個請求來註冊新產生的請求條件作為控制對象(步驟S605)。
請求條件設置調度單元113向數據採集單元507提出一個請求,來中止同處於「正在執行」狀態的兩個相連接的請求條件的運行(步驟S606),並註冊新產生的請求條件到「可執行」狀態的隊列中,其中新產生的請求條件是由數據條件產生單元112提出的、並作為控制對象被註冊(步驟S607)。
請求條件設置單元113將兩個相連接的請求條件的運行狀態從「可執行」變為「暫時中止」(步驟S608)。也就是說,直到兩個相連接的請求條件被分解(下文將進行描述)相連接的請求條件才從數據採集對象中刪除。
如上所述,本實施例的數據採集設備110通過利用邏輯和連接在其數據採集條件1102中具有共用條件的多個請求條件產生一個新的請求條件,並使用該新產生的請求條件而不是所述多個請求條件來採集數據。這減少了數據採集單元507中請求條件設置的數目,允許更多的數據採集在有限的硬體資源環境中同時執行。
下面詳細介紹由數據採集設備110執行的使數據採集請求運行狀態由」暫時中止」變為「可執行」的數據採集控制過程。
請求條件設置調度單元113在一個預定的時間周期之後判斷是否已經採集到了與在所述連接之後已經變成「暫時中止」狀態的請求條件相對應的數據。當確認還沒有採集到數據時,請求條件設置調度單元113取消連接,並恢復先前的請求條件。這是因為,除了與被連接的請求條件相應的數據是通過新產生的請求條件而採集到之外,由於新產生的請求條件具有和被連接的請求條件相同或更低的精確度,所以恐怕在採集與所述被連接的請求條件對應的數據之前要佔用相當長的時間。
為達到上述控制功能,當通過連接具有共用條件的多個請求條件產生一個請求條件時,數據條件產生單元112還產生請求識別信息、請求產生時間和後連接請求識別信息,並把這些信息附加到請求條件中,再把請求條件送至請求條件設置調度單元113,並存儲在請求條件記錄單元114。請求條件設置調度單元113通過附加管理信息到每個請求條件的方式來控制存儲在請求條件記錄單元114中的每個請求條件下的數據採集過程。管理信息是指諸如以從數據採集單元507獲得的數據採集確認信息為依據而形成的數據確認信息。
值得注意的是,「請求識別信息」用於識別某個請求條件,「請求產生時間」是指產生一個新的請求條件的時間,「後連接請求識別信息」用於識別通過連接多個請求條件而產生的一個請求條件,「數據採集確認信息」則表示與請求條件記錄單元114中存儲的請求條件相應的數據是否已被採集到(即「數據已採集」或「數據未採集」)。
圖12給出了被請求條件設置調度單元113而附加有各種管理信息的請求條件表格。每個請求條件1101包括請求識別信息1110、數據採集條件1102、請求產生時間1111、執行狀態信息1104、後連接請求識別信息1112和數據採集確認信息1113。
所述表格表明被請求識別信息1110標識為「0×004」,「0×005」,「0×008」和被標識為「0×001」的請求條件已經被連接起來,以產生一個被標識為「0×0001」的請求條件,且所述請求條件處於「暫時中止」狀態;與標識為「0×001」的請求條件相應的數據採集正在處理中;並且標識為「0×004」的請求條件的數據已經被採集到,但是標識為「0×005」和「0×008」的請求條件的數據還沒有採集到。
圖13是分解數據採集請求過程的流程圖,該數據採集請求是由眾多數據採集請求連接而產生的。
請求條件設置調度單元113從請求條件記錄單元114提取一個與新產生的請求條件相連接的請求條件(步驟S800),並判斷相連接的請求條件的數據採集確認信息1113是否表明「數據未採集到」(步驟S801)。當判斷結果是否定的時,請求條件設置調度單元113就從流程圖中除去此請求條件,結束這個處理過程。
當步驟S801判斷的結果是肯定時,請求條件設置調度單元113判斷是否接收到來自定時器單元115的中斷信號(步驟S802),定時器單元115被預先安排成每隔固定時間發出一個中斷信號。當請求條件設置調度單元113沒有接收到中斷信號(步驟S802的判斷結果為否定)時,則重複執行步驟S802。
當請求條件設置調度單元113接收到中斷信號(步驟S802的判斷結果為肯定)時,請求條件設置調度單元113從定時器單元115讀出當前時間(步驟S803),將當前時間和請求條件的請求產生時間1111相比較(步驟S804),並判斷預定的時間已經過去但沒有採集到數據(步驟S805)。當未消耗掉預定的時間(步驟S805的判斷結果為否定)時,重複執行步驟S802至步驟S804。
當預定的時間被消耗,請求條件設置調度單元113單元更新請求條件的執行狀態信息1104為「暫時中止」,來存儲通過分解新產生的請求條件而產生的請求條件(步驟S806),並且向請求條件設置單元116提出一個請求來刪除與新產生的請求條件相應的數據採集請求的設置(步驟S807)。請求條件設置調度單元113更新前一個請求條件的執行狀態信息1104為「可執行」(步驟S808),然後當此請求條件在隊列之首時,將會向請求條件設置單元116提出一個請求,為此請求條件註冊數據採集(步驟S809),並開始數據採集(步驟S810)。
上述操作的結果是,與圖12中的被請求識別信息1110標識為「0×001」的請求條件相應的數據採集的狀態從「正在執行」變為「等待」,再進一步變為「可執行」,並且與被標識為「0×005」和「0×008」的請求條件相應的數據採集狀態則從「暫時中止」變為「可執行」,並進一步變為「正在執行」。
如上所述,根據本發明實施例的數據採集設備110,當與請求條件相應的數據在超出了從連接開始的預設時間而仍沒有採集到數據時,此次連接將被取消,同時前一請求條件的運行狀態將被會保存,其中的請求條件是已經建立了連接而來產生新的請求條件的。這就避免了這樣一個問題要花費相當長的一段時間來採集與已連接的請求條件相應的數據。(第二實施例)下面介紹一下本發明的第二個實施例。
圖14給出了本發明第二個實施例的數據採集設備120的結構功能框圖。數據採集設備120具有根據從應用程式發來的指令來改變數據採集頻率的特徵。數據採集設備120包括數據採集請求接收單元501,請求條件產生單元122,請求條件設置調度單元123,請求條件記錄單元114,定時器單元115,請求條件設置單元116,數據採集單元507和數據傳送單元508。包含在第一個實施例的數據採集設備110中的上述相同單元使用相同的附圖標記。以下著重描述與第一個實施例的不同之處。
本實施例假定每個應用程式通過向數據採集設備120提出一個數據採集請求,同時還發出用來指定數據採集類型的數據採集監控狀態信息。數據採集監控狀態信息是用來指定「持續監控採集」、「間歇監控採集」、「無監控採集」中的一個狀態,其中持續監控採集表明數據一直在採集;間歇監控採集表明每隔固定間隔對數據進行採集;無監控採集表明一旦獲得所需的數據,對所需數據的監控便不再執行。
當應用程式向數據採集設備120(數據採集請求接收單元501)提出一個數據採集請求時,上述三種數據採集的使用舉例如下。持續監控採集被指定為NIT,必須被無誤接收並且立刻傳送;間歇監控採集被指定為EIT,由於EIT具有過長的數據長度所以不必一直接收,但是必須在固定間隔接收;無監控採集被指定為SDT,它在固定間隔被傳送但是很少更新。
請求條件產生單元122為每一對數據採集請求和從數據採集請求接收單元501接收到的數據採集監控信息產生一個請求條件,請求條件是附加有數據採集狀態信息的,同時將產生的請求條件發送到請求條件設置調度單元123,並存儲在請求條件記錄單元114。
圖15是請求條件產生單元122產生的請求條件表格。這個例子以數據採集請求的產生順序列出了8個請求條件。每個請求條件1201包括一個數據採集條件1102和一個數據採集監控狀態信息1202。
請求條件設置調度單元123與其他單元相連並通過請求條件產生單元122產生的請求條件控制數據採集。出於此目的,請求條件設置調度單元123(a)通過請求條件記錄單元114監控和管理每個請求條件的數據採集狀態(b)具有控制作用,以便與新產生的請求條件相應的數據能被數據採集監控狀態信息1202指定的數據採集類型採集到。
圖16給出了請求條件設置調度單元123是如何控制與圖15所示的請求條件相應的數據採集。更具體地說,圖16還給出了數據如何根據監控狀態信息而被採集,監控狀態信息是由數據採集監控狀態信息1202指定的。圖16還列出了屬於同一條數據採集監控狀態信息1202的請求條件。
一旦「持續監控採集」的請求條件被設置為「執行」狀態,請求條件設置調度單元123就一直維持此狀態直到它從另一個應用程式中收到一個明確的刪除指令。而對於被指定為「間歇監控採集」的請求條件,請求條件設置調度單元123固定間隔的以「正在執行」、「等待」、「可執行」的順序循環的改變運行狀態。對於被指定為「無監控採集」的請求條件,一旦採集到目標數據,請求條件設置調度單元123的運行狀態就從「正在執行」變為「被刪除」。
現在描述一下由上述指令引起的數據採集設備120的操作過程。
圖17是由數據採集設備120所完成的數據採集整個過程的流程圖。
數據採集請求接收單元501接收新的數據採集請求和相關的數據採集監控狀態信息1202,將它們發送到請求條件產生單元122(步驟S400)。請求條件產生單元122產生與接收到的數據採集請求相應的請求條件(步驟S401),將從數據採集監控狀態信息1202收到的數據採集監控信息附加到相應的請求條件中,並將具有數據採集監控狀態信息1202的請求條件存儲到請求條件記錄單元114中,然後再將同樣的數據發送到請求條件設置調度單元123(步驟S402)。
請求條件設置調度單元123判斷接收到的請求條件中的數據採集監控狀態信息1202是否指定為「持續監控採集」(步驟S403)。當判斷的結果為肯定時,請求條件設置調度單元123執行一次控制以便持續採集數據(步驟S404)。更具體地說,通過請求條件設置單元116,請求條件設置調度單元123指示數據採集單元507將請求條件置為「正在執行」狀態,並持續此狀態直到它收到一個明確的刪除指令。
若步驟S403的判斷結果是否定,請求條件設置調度單元123將會判斷接收到的請求條件中的數據採集監控狀態信息1202是否指定為「間歇監控採集」(步驟S405)。當判斷的結果是肯定時,請求條件設置調度單元123執行一次控制以便在固定間隔採集到數據(步驟S406)。更具體地說,請求條件設置調度單元123能通過請求條件設置單元116控制數據採集單元507,將請求條件置為「正在執行」狀態,並能通過控制定時器單元115提供的時間以「正在執行」、「等待」、「可執行」的順序以固定間隔循環改變狀態。
若步驟S405的判斷結果是否定,請求條件設置調度單元123將判斷接收到的請求條件的數據採集監控狀態信息1202是否是「無監控採集」(步驟S407)。若步驟S405的判斷結果是肯定,請求條件設置調度單元123控制只採集一次數據(步驟S408—S409)。
更具體地說,請求條件設置調度單元123判斷是否接收到來自定時器單元115的中斷信號(步驟S408),定時器單元115是被預先安排每隔固定時間發出一個中斷信號。當請求條件設置調度單元123沒有接收到中斷信號(步驟S408的判斷結果為「是」),請求條件設置調度單元113調度請求條件以便不固定的採集數據(步驟S409)。更為具體地說,請求條件設置調度單元123通過請求條件設置單元116通知數據採集單元507將請求條件設置為「正在執行」狀態,監控數據採集單元507是否採集到與請求條件相應的數據,然後當檢測到數據採集時,從請求條件記錄單元114中刪除請求條件。
當步驟S407的判斷結果是否定,請求條件設置調度單元123判斷請求條件沒有被指定監控狀態,然後結束流程圖中的過程,不再採集數據。
如上所述,本實施例中的數據採集設備120通過被應用程式指定的監控狀態來採集數據。這其中排除了不得不調整定時時間和頻率來提出與被傳送數據類型一致的數據採集請求的應用程式。
這也解決了同一類型的數據採集請求被重複提出的問題,提供了根據傳送數據的大小(帶寬)、傳送頻率、接收的重要性或類似的指標而很好調整過的數據採集,並且提高單位時間的數據採集量。
接下來詳細描述了在數據採集監控狀態信息1202被指定為「無監控採集」狀態下,數據採集設備120控制的一次數據採集(從「等待」變為「可執行」)。
當確認請求條件中的數據採集監控狀態信息1202被指定為「無監控採集」,並且執行狀態信息為「等待」時,請求條件設置調度單元123監控是否到達超時取消時間,如果到達,則控制運行狀態經由「可執行」變為「正在執行」。為實現這些功能,請求條件設置調度單元123通過附加諸如執行狀態信息或超時取消時間或數據採集監控狀態信息1202到存儲在請求條件記錄單元114中的每個請求條件,並且存儲帶有這類信息的請求條件並更新它們,以此來控制每次請求條件下的數據採集。
圖18是被請求條件設置調度單元123附加有各類管理信息的請求條件表格。每個請求條件1201包括一個數據採集條件1102、一個數據採集監控狀態信息1202、執行狀態信息1104和超時取消時間1106。
許多問題都可以從圖18中得到解答。例如數據採集條件1102為「請求2」時的請求條件包括指定為「無監控採集」的數據採集監控狀態信息1202,執行狀態信息1104為「等待」、超時取消時間1106是「1999/4/1 10050」表明當取消超時時間到達時,「可執行」狀態已經被存儲。
圖19是在數據採集監控狀態信息1202為「無監控採集」的請求條件下,由數據採集設備120控制的數據採集過程的流程圖(由「等待」變為「可執行」)請求條件設置調度單元123從請求條件產生單元122接收到一個通知,要求根據由應用程式所提出的數據採集請求產生一個請求條件(步驟S900),判斷請求條件的數據採集監控狀態1202是否指定為「無監控採集」(步驟S901)。當判斷的結果是否定,請求條件設置調度單元123認為此請求條件不是作為流程圖的一個目標條件,終止當前處理。
當步驟S901判斷的結果是肯定的時,請求條件設置調度單元123將判斷執行狀態信息1104是否為「等待」(步驟S902),若判斷為否,結束流程處理。
若在步驟S902的判斷結果是肯定的,請求條件設置調度單元123從定時器單元115中提取「當前時間」(步驟S903),並將與超時取消時間1106相比較(步驟S904),判斷是否當前時間是否已經到達超時取消時間(步驟S905)。如果判斷的結果是否定,請求條件設置調度單元123則認為該請求條件不是作為流程圖的一個目標條件,結束當前處理。
若在步驟S905的判斷結果是肯定的,請求條件設置調度單元123將執行狀態信息1104改為「可執行」(步驟S906),並且當此請求條件被設置在隊列頂端時,就向請求條件設置單元116提出註冊此次數據採集的請求(步驟S907),並開始本次數據採集(步驟S908)。
如上所述,當確認請求條件中的數據採集監控狀態信息1202為「無監控採集」時,本實施例中的數據採集設備120允許運行狀態在超時時從「正在執行」變為「等待」,並且當超時時間到時允許「正在執行」狀態通過「可執行」狀態被存儲,這樣可使數據採集重複執行。這就避免了無效數據採集而導致的硬體資源的被持續佔用的浪費。
接下來詳細描述一下在請求條件的數據採集監控狀態信息1202被指定為「無監控採集」的狀態下,由數據採集設備120控制的一個數據採集過程(從「可執行」變為、「正在執行」狀態)。
當請求條件中的數據採集監控狀態信息1202被指定為「無監控採集」且處於「正在執行」狀態、並具有表示「已採集到數據」的數據採集確認信息時,請求條件設置調度單元123便尋找比當前請求條件具有更高優先級的請求條件。更高優先級的請求條件是處於「可執行」狀態的並具有表示「未採集到數據」的數據採集確認信息。當請求條件設置調度單元123尋找到符合的請求條件時,請求條件設置調度單元123便控制這些請求條件的運行狀態以相互交替的方式轉變。
為實現上述目的,請求條件設置調度單元123通過附加例如數據採集確認信息、優先級以及數據採集檢驗監控信息和執行狀態信息到請求條件記錄單元114,並將這些信息和請求條件一起存儲起來並不時更新,以此來控制每一請求條件下的數據採集。
圖20是被請求條件設置調度單元123附加有各類管理信息的請求條件的表格。每個請求條件1201包括一個數據採集條件1102、數據採集監控狀態信息1202、執行狀態信息1104、數據採集結果信息1113和優先級別1103。
圖20表明被數據採集條件1102標識為「請求3」的請求條件的「正在執行」狀態應被標識為「請求6」的請求條件的「可執行」狀態代替。
圖21為表示由數據採集設備120執行的數據採集控制的流程圖。數據採集設備120是用於數據採集監控狀態信息1202指定的「無監控採集」請求條件(從「可執行的」轉變為「正在執行」)。
請求條件設置調度單元123從請求條件記錄單元114中(步驟S1000)提取一個請求條件,然後判斷請求條件的數據採集監控狀態信息1202是否為「無監控採集」(步驟S1001)。如果步驟S1001的判斷結果為「否」,那麼請求條件設置調度單元123不識別請求條件,這一流程結束。
如果步驟S1001的判斷結果為「是」,那麼請求條件設置調度單元123判斷執行狀態信息1104是否為「正在執行」(步驟S1002)。如果步驟S1002的判斷結果為「否」,這一流程結束。
如果步驟S1002的判斷結果為「是」,那麼請求條件設置調度單元123判斷數據採集結果信息1113是否為「數據已採集」(步驟S1003)。如果步驟S1003的判斷結果為「否」,這一流程結束。
如果步驟S1003的判斷結果為「是」,那麼請求條件設置調度單元123判斷請求條件記錄單元114是否存儲了具有比第一請求條件優先權級別1103更高級別優先權的請求條件(步驟S1004),如果步驟S1004的判斷結果為「否」,這一流程結束。因為沒有可以代替第一請求條件的處於執行狀態的請求條件。
如果步驟S1004的判斷結果為「是」,那麼請求條件設置調度單元123從請求條件記錄單元114中提取較高優先權級別的請求條件(步驟S1005),然後再判斷第二請求條件的數據採集監控狀態信息1202是否為「無監控採集」(步驟S1006)。如果步驟S1006的判斷為「否」,這一流程結束。因為第二請求條件是不能夠代替第一請求條件的處於執行狀態的請求條件。
如果步驟S1006的判斷結果為「是」,請求條件設置調度單元123則判斷執行狀態信息1104是否為「可執行的」(步驟S1007)。如果步驟S1007的判斷結果為「否」,這一流程結束。
如果步驟S1007的判斷結果為「是」,請求條件設置調度單元123則將第二請求條件執行狀態信息1104更新為「正在執行」(步驟S1008)。向請求條件設置單元116提出請求,為這一請求條件註冊數據採集(步驟S1009),然後開始數據採集(步驟S1010)。
請求條件設置調度單元123將第一個請求條件執行狀態信息1104更新為「可執行的」(步驟S1011),向請求條件設置單元116提出請求,為這一請求條件註冊數據採集(步驟S1010),然後停止數據採集(步驟S1013)。
正如以上所述,當找到一個處於「可執行」狀態的請求條件,儘管數據採集確認信息1113為「數據已採集」,數據採集設備120在當前實施例設定的帶有具有較高優選權級別並且處於「可執行」狀態的請求條件。這一方案解決了這樣的問題避免較高優先權級別的數據採集被延遲,因為較低優先權級別的數據採集不斷被延遲,從而獲得一個有效的數據採集。
下面描述本發明的實施例3圖22是本發明實施例3的數據採集設備130的結構功能框圖。數據採集設備130的特徵為能夠根據由應用程式提出的數據採集請求類型對每個數據採集執行「超時」處理。數據採集設備130包括數據採集請求接收單元501,請求條件產生單元132,請求條件設置調度單元133,請求條件記錄單元114,定時器單元115,請求條件設置單元116,數據採集單元507,數據傳送單元508,其中那些與實施例1的數據採集設備110中相同的單元,用相同的附圖標記標識。下面著重描述與實施例1相區別的部分。
請求條件產生單元132產生一個請求條件,根據包括在從數據採集接收單元501接收的一個數據採集請求的標題信息確定一個超時時間,然後把超時時間附加到所產生的請求條件中。應該注意的是在當前實施例中,超時時間用於將一個請求條件從「正在執行」狀態強制轉換到「等待」狀態,再到「刪除」狀態。
圖23給出了一個由請求條件產生單元132產生的請求條件的表格。本例中6個請求條件是按照數據採集請求的產生順序給出的。每個請求條件1301包括包含在標題信息中的用來識別數據採集類型的標題識別信息1302;採集條件1102和超時時間1303。
當標題識別信息1302表明一個以諸如NIT這樣的高重要性(importance)採集一個表的請求時,請求條件產生單元132通過向產生一個請求條件的時間附加一個相對短的時間段(例如10秒)來確定一個超時時間,然後當標題識別信息1302表明一個以諸如SDT這樣的低重要性(importance)採集一個表的請求時,請求條件產生單元132通過向產生一個請求條件的時間附加一個相對長的時間段(例如30秒)來確定一個超時時間。
請求條件設置調度單元133與其他組件相連並且控制與請求條件產生單元132產生的請求條件相對應的數據採集調度。為了實現這一目的,請求條件設置調度單元133(a)監控和管理每個利用請求條件單元114的請求條件的數據採集狀態(b)根據由請求條件產生單元132配置的超時時間的請求條件,監控超時時間是否在數據採集條件開始進入「正在執行」狀態之後到達,如果超時時間到,則將請求條件從「正在執行」狀態轉換為「等待」狀態,然後更進一步地轉換為「刪除」狀態。
下面將描述具有上述結構的數據採集設備130的操作。
圖24的流程圖表示產生超時時間和執行超時處理的過程,在這一過程中,數據採集狀態從「正在執行」轉換為「等待」。
數據採集請求接收單元501接收一個新的包括標題信息的數據採集請求,然後將數據採集請求發送到請求條件產生單元132(步驟S500)。請求條件產生單元132對從數據採集請求接收單元501接收到的數據採集請求的標題信息和存儲在請求條件記錄單元114中的所有請求條件的標題識別信息1302作比較(步驟S501),然後判斷現有的標題識別信息1302是否包含在當前接收的標題信息中(步驟S502)。
如果步驟S502的判斷結果為「否」,請求條件產生單元132正常地處理接收到的數據採集請求,也就是說,無需對其附加超時時間,即產生一個新的請求條件,將產生的請求條件存儲於請求條件記錄單元114中,然後將請求條件發送到請求條件設置調度單元133。請求條件設置調度單元133將收到的請求條件放入「可執行」狀態隊列中,然後開始數據採集控制。
如果步驟S502的判斷結果為「是」,那麼請求條件產生單元132識別那些重複提出的相同的數據採集請求,產生一個新的請求條件,將其存儲在請求條件記錄單元114中(步驟S503),然後給新產生的請求條件附加一個與標題識別信息1302指示的數據採集請求類型相應的超時時間(步驟S504)。
請求條件設置調度單元133將這一請求條件的執行狀態轉換為「正在執行」,根據查找比較請求條件記錄單元114和定時器單元115以當前時間附加給請求條件的超時時間,然後判斷超時時間是否已到(步驟S505)。
如果步驟S505的判斷結果為「否」,則請求條件設置調度單元133重複處理步驟S505。如果步驟S505的判斷為「是」,則請求條件設置調度單元133將請求條件的執行狀態由「正在執行」強制轉換為「等待」(步驟S506),然後轉換為「刪除」(步驟S507)。具體地說,請求條件設置調度單元133對請求條件設置單元116提出刪除(與這一請求條件相應的)數據採集請求的設置的請求(步驟S507),然後從請求條件記錄單元114中刪除請求條件,停止數據採集(步驟S508)。
正如以上所述,當前實施例的數據採集設備130根據包括在由應用程式提出的數據採集請求中的標題信息判斷是否是重複提出的同一數據採集請求,並且在判斷為「是」時,延遲預設時間段的數據採集。這提供了一個有效的數據採集方式,解決了持續佔用硬碟資源,甚至由於請求數據低頻傳送而重複提出同一數據採集請求的問題。
實施例4
下面描述本發明的實施例4。
圖25的流程圖表示了本發明實施例4的數據採集設備140的結構。數據採集設備140的特徵為接收版本信息,根據接收到的版本信息並且擇優地採集一條與在2個或多個相同優先權級別和數據採集設備140處理過的數據採集狀態為「可執行的」請求條件中具有最大版本更新序號請求條件相應的數據。數據採集設備140包括數據採集請求接收單元501,請求條件產生單元112,請求條件設置調度單元143,請求條件記錄單元114,定時器單元115,請求條件設置單元116,數據採集單元507,數據傳送單元508。其中那些與實施例1的數據採集設備110中相同的單元,用相同的附圖標記標識。下面著重描述與實施例1相區別的部分。
在當前實施例中假定由數據採集單元507進行的數據採集的標題信息包括版本信息。在這裡「版本信息」用於標識一個數據單元的版本(例如一個表)。甚至有同樣的標識信息的數據的兩個單元,如果它們有不同的版本,則它們之間內容互不相同。(也就是,每次版本更新時,其內容都會有改變)。
根據數據採集單元507接收由請求條件設置單元116的請求條件設置,請求識別信息用於識別請求條件。數據採集單元507利用請求識別信息管理數據採集狀態或類似的狀態。同時數據採集單元507也向外輸出數據採集狀態或類似的狀態。
請求條件設置調度單元143根據請求條件產生單元112產生的請求條件與其他組件相連並且控制數據採集調度。為了實現這一目的,請求條件設置調度單元143(a)利用請求條件記錄單元114監控和管理每個請求條件的數據採集狀態。(b)將版本信息附加到存儲在請求條件記錄單元114中的請求條件。(c)更新版本信息,(d)將一個在具有相同級別優先權和數據採集狀態的2個或多個「可執行的」請求條件中具有最大版本更新序號的請求條件的執行狀態擇優地從「可執行的」改變為「正在執行」。
為達到這樣的目的,請求條件設置調度單元143通過附加了管理信息控制每一個請求條件的數據採集,管理信息例如版本信息,版本更新確認信息,每個存儲在請求條件存儲單元114的請求條件的版本更新信息,以及請求識別信息,數據採集監態狀態信息,執行狀態信息,數據採集確認信息,優先權級別,記錄和更新這些信息。
這裡應當注意,「版本更新確認信息」指示出請求的數據在相應的請求條件產生之後是否至少更新過一次(「已更新」或「未更新」)。同時,「版本更新序號信息」指明更新的序號。
圖26給出了由請求條件設置調度單元143附加的各種管理信息的請求條件的表格。如圖26所示,每個請求條件1401包括請求識別信息1110,數據採集條件1102,數據採集監控狀態信息1202,執行狀態信息1104,數據採集確認信息1113,優先權級別1103,版本信息1402,版本更新確認信息1403,以及版本更新序號信息1404。
本例給出了由請求識別信息1110分另標識為「o×0006」和「o×0007」的2個請求條件,從數據採集監控狀態信息1202來看,二者均處於「無監控採集」狀態,從執行狀態信息1104來看是「可執行的」,並且具有同樣的數據採集確認信息1113和優先權級別1103,但是從版本更新序號信息1404來看,二者卻是不相同的。
下面我們將對具有上述結構的數據採集設備140的特徵進行描述。
圖27的流程圖給出了接收的數據版本已處理的數據採集控制的過程。
請求條件設置調度單元143從數據採集單元507接收一條請求識別信息和一條已採集數據(步驟S1100),從接收到的數據的標題信息提取版本信息(步驟S1101),然後判斷請求條件記錄單元114是否存儲了一個與接收到的一條請求識別信息相應的請求條件(步驟S1102)。如果步驟S1102的判斷結果為「否」,這一流程結束。
如果步驟S1102的判斷結果為「是」,請求條件設置調度單元143將版本信息附加到請求條件作為版本信息1402(步驟S1103),產生新一條版本更新確認信息1403和版本更新序號信息1404,或將信息1403和1404更新,然後將此信息1403和1404附加到請求條件(步驟S1104),然後用請求條件記錄單元114註冊請求條件(步驟S1105)。
請求條件設置調度單元143從請求條件記錄單元114中提取任意一個請求條件(步驟S1106),然後判斷請求條件的數據採集監控狀態信息1202是否為「非監控採集」(步驟S1107),如果步驟S1107的判斷結果為「否」,重複步驟S1106的操作。
如果步驟S1107的判斷結果為「是」,則請求條件設置調度單元143判斷請求條件的執行狀態信息1104是否為「可執行的」(步驟S1108)。如果步驟S1108的判斷結果為「否」,則重複步驟S1106和S1107的操作。
如果步驟S1108的判斷結果為「是」,請求條件設置調度單元143判斷請求條件的優先權級別1103與預先提取的請求條件是否相同(步驟S1109)。如果步驟S1109的判斷結果為「否」,重複步驟S1106至步驟S1108的操作。如果步驟S1109的判斷結果為「是」,請求條件設置調度單元143判斷請求條件的數據採集確認信息1113與預先提取的請求條件是否一致(步驟S1110)。如果步驟S1110的判斷結果為「否」,這一流程結束。
如果步驟S1110的判斷結果為「是」,則請求條件設置調度單元143判斷請求條件的版本更新序號信息1404是否為最大(步驟S1111)。如果步驟S1111的判斷結果為「否」,則重複步驟S1106至步驟S1110的操作。
請求條件設置調度單元143向請求條件設置單元116提出一個請求,為請求條件註冊數據採集(步驟S1112),然後開始數據採集(步驟S1113)。例如,如圖26所示,由請求識別信息1110標識為「o×0006」和「o×0007」的兩個請求條件,相互比較後,根據版本更新信息1404,具有較大值的請求條件「o×0006」的數據採集開始執行。
正如以上所述,當前實施例數據採集設備140接收版本信息,根據接收到的版本信息,記錄應用程式的每一條數據請求版本更新的序號。數據採集設備140擇優地在兩個或多個優先權級別和數據採集狀態相同的「可執行的」請求條件中採集一條與版本更新序號值最大的請求條件相應的數據。也就是說,一條改變最頻繁的數據是預先採集出來的。這提供了有效的數據採集方式,解決相同的一條數據重複採集時硬體資源使用浪費的問題。
實施例5
圖30是表示本發明實施例5的數據採集設備200結構的功能框圖。數據採集設備200的特徵為接收從多個應用程式發出的數據採集請求(下文稱之為採集條件)並規定將被採集的數據,通過安順序將它們存儲在所述表中接收採集信息管理它們,根據從應用程式提取的重新排列的請求將表中的數據採集條件重新排列,依照重新排列的採集條件有效地採集數據。具體地說,數據採集設備200與數字廣播接收機的硬體和軟體部分相對應,這些部分執行有關數據接收的基本操作,例如廣播數據接收,復用,解碼,濾波。數據採集設備200包括一個採集條件接收單元201,一個數據採集單元507,一個數據傳送單元508,一個採集條件存儲單元202,一個重新排序請求單元203以及一個採集條件設置調度單元204。其中,那些與包含在實施例1中的數據採集設備中相同的單元以相同的附圖標記標識。下面著重描述與實施例1相區別的部分。
採集條件接收單元201從應用程式接收採集條件,並將接收到的採集條件發送到採集條件設置調度單元204。
一旦採集條件設置調度單元204設置了一個採集條件,除非採集條件被採集條件設置調度單元204刪除,否則數據採集單元507就繼續監控是否已經接收到了滿足所述採集條件的一段數據,並在接收了一條數據以後,將其提取出來。
數據傳送單元508從數據採集單元507接收它所採集的數據,通過參考存儲在採集條件存儲單元202中的所述採集條件識別已經發出用於請求所述數據的請求的應用程式,然後將數據發送到已標識的應用程式。
採集條件存儲單元202存儲了多組採集條件、設置信息以及順序值。這裡應該注意到每一條「設置信息」為「有效」或「無效」,用於指出在數據採集單元507中是否設置了同一組中的採集條件。「有效」表明採集條件設置在數據採集單元507中;「無效」則表明採集條件不設置在數據採集單元507中。同時,每一個「順序值」在採集條件接收單元201接收到的採集條件中對應一個順序。當新接收的採集條件新存儲在一個採集條件設置調度單元204的表中時,初始值為「0」表明採集條件是最新接收並附加到採集條件中的。每當另一個採集條件存儲在同一個表中,或者每當重新排序請求單元203發出一個請求來對表中的採集條件重新排序,或每當發現採集條件存儲單元202中存儲了一組包括當接收到已經成功地進行了數據採集的採集條件時表示為「無效」的一段設置信息時,初始值加「1」。當採集條件的設置從數據採集單元507中刪除後,這個值復位為初始值「0」。
重新排序請求單元203提供了設置在數據採集單元507中的重新排列採集條件的定時,並根據來自應用程式的請求向採集條件設置調度單元204發出一個用於重新排列採集條件的請求。這裡應該說明的是,重新排列序請求單元203可以根據由定時器等在固定的時間間隔傳送的標誌信息發出採集條件重新排序請求。
由CPU或者存儲了控制程序的ROM實現的採集條件設置調度單元204通過監控存儲在採集條件存儲單元202的表中每一組內的設置信息和順序值來調度數據採集單元507中每個採集條件的設置,並根據重新排序請求單元203傳送的採集條件重新排序請求控制在數據採集單元507中設置的採集條件的重新排序。
當從採集條件接收單元201接收一個採集條件時,採集條件設置調度單元204給存儲在採集條件存儲單元202內的表中的每一個順序值進行加「1」操作。然後,採集條件設置調度單元204判斷接收到的採集條件能否設置在數據採集單元507中,通過檢查包括設置信息為「有效」(在數據採集單元507中設置了相同組的採集條件)的組的總數是否少於能夠設置在數據採集單元507中的採集條件數量上限(在本實施例中,為方便起見假設上限為「3」)。當包含在設置信息為「有效」的組的總數小於「3」時,採集條件設置調度單元204把接收到的採集條件存儲在採集條件存儲單元202內的表中,允許與採集條件一起包括在一個組中的設置信息表示「有效」,將同一組中的順序值設置為初始值「0」,然後,利用數據採集單元507註冊採集條件。當包括表示「有效」的設置信息的組的總數為「3」時,採集條件設置調度單元204包接收到的採集條件存儲在採集條件存儲單元202內的表中,允許與採集條件一起包括在一個組中的設置信息表示「無效」,將同一組中的順序值設置為初始值「0」。
採集條件設置調度單元204根據採集條件重新排序請求對採集條件存儲單元202內的表中的每一個順序值加「1」操作,然後將利用數據採集單元507註冊的採集條件重新排序。
下面,將參照流程圖31、32來描述採集條件設置調度單元204如何調度從數據採集單元507中的應用程式接收的採集條件的設置。
圖31為將一個從應用程式接收到的採集條件存儲在採集條件存儲單元202表中的過程的流程圖。採集條件設置調度單元204從採集條件接收單元201接收一條採集條件(步驟S1201),然後判斷採集條件存儲單元202內的表中是否存儲了一個或多個採集條件(步驟S1202)。如果步驟S1202的判斷結果為「是」,採集條件設置調度單元204給每個順序值加「1」(步驟S1203)。
如果步驟S1202的判斷結果為「否」,採集條件設置調度單元204判斷接收到的採集條件能否通過檢查包括表示「有效」的設置信息的組的總數是否少於「3」而設置在數據採集單元507中(步驟S1204)。如果步驟S1204的判斷結果為「是」,採集條件設置調度單元204在採集條件存儲單元202內的表中存儲接收到的採集條件,允許與採集條件一起包括在一個組中的設置信息表示「有效」,將同一組中順序值設置為初始值「0」,然後在數據採集單元507中設置採集條件(步驟S1205)。如果步驟S1204的判斷結果為「否」,採集條件設置調度單元204將接收到的採集條件存儲在採集條件存儲單元202內表中,允許與採集條件一起包括在一個組中的設置信息表示「無效」,將同一組中順序值設置為初始值「0」(步驟S1206),然後等待直到接收到下一個採集條件,接收到下一個採集條件後,重複以上步驟。
圖32的流程圖表示了採集條件設置調度單元204在數據採集單元507中設置一條存儲在採集條件存儲單元202內的表中的採集條件的過程。
採集條件設置調度單元204接收一條發自重新排序請求單元203的採集條件重新排序請求(步驟S1301),然後判斷在採集條件存儲單元202內的表中是否存儲了一組包含表示「無效」的設置信息(步驟S1302)。如果步驟S1302的判斷結果為「否」,採集條件設置調度單元204等待另一條採集條件重新排序請求,因為不必對採集條件重新排序,然後重複以上步驟,直到發現採集條件存儲單元202內的表中存儲了一組包括表示「無效」的設置信息的表。
如果步驟S1302的判斷結果為「是」,採集條件設置調度單元204為存儲在採集條件存儲單元202內的表中的每一個順序值進行加「1」操作(步驟S1303),然後判斷採集條件能否通過檢查表示「有效」的設置信息的組的總數是否小於「3」而重新設置在採集單元507中(步驟S1304)。
如果步驟S1304中的判斷結果為「否」,採集條件設置調度單元204從採集條件存儲單元202內的表中選擇在一個組中同時包括表示「有效」的設置信息和具有最大順序值的採集條件,從數據採集單元507中刪除所選擇的採集條件的設置,允許與採集條件一起包括在一個組中的設置信息表示「無效」,然後將同一組中順序值設置為初始值「0」(步驟S1305),然後從表中選擇一組同時包括表示「無效」的設置信息和最大順序值的採集條件,允許與採集條件一起包括在一個組中的設置信息表示「有效」,並且將同一組中順序值設置為初始值「0」(步驟S1306),然後將所選的採集條件設置在數據採集單元507中。
如果步驟S1304的判斷結果為「是」,採集條件設置調度單元204從採集條件存儲單元202內的表中選擇一組同時包括表示「無效」的設置信息和具有最大順序值的設置的採集條件,允許設置信息表示「有效」,並將順序值設置為初始值「0」(步驟S1306),然後在數據採集單元507中設置選擇的採集條件。在以上步驟中,步驟S1301到步驟S1306將舉例詳細說明。
圖33給出了存儲在採集條件存儲單元202內的表的一個例子,採集條件存儲單元202存儲了多組採集條件,設置信息,以及順序值。在本例中,表中存儲了6個採集條件1到6。其中,採集條件1到3為在數據採集單元507中設置的。
圖34表示了圖33中所列的表的內容,這些內容是由採集條件設置調度單元204執行以上步驟更新之後的內容。圖33中的表存儲了採集條件4到6,每一條採集條件與表示「無效」的設置信息的採集條件一起包括在一個組中(「是」判斷在步驟S1302中執行)。因此,採集條件設置調度單元204對存儲在表中的每一個順序值進行加「1」操作。同時,因為包括「有效」的設置信息的組的總數為「3」,採集條件設置調度單元204判斷採集條件不能被重新設置在數據採集單元507中(「否」判斷在步驟S1304中執行),從圖33所示的表中選擇一組同時包括表示「有效」的設置信息和最大順序值的採集條件1,從數據採集單元507中刪除採集條件1的設置,允許與採集條件1一起存儲在一個組中的設置信息表示「無效」,然後將同一組中順序值設置為初始值「0」(步驟S1305),然後從表中選擇採集條件4,採集條件4同時包括設置信息表示「無效」和最大順序值的設置,然後允許同一個組中的設置信息表示「有效」和將同一組中順序值設置為初始值「0」(步驟S1306),然後將所選的採集條件4設置在數據採集單元507中。這一過程的結果為圖33所示的表被更新為圖34所示的表。
下面將描述由採集條件設置調度單元204設置在數據採集單元507中的數據採集條件之後在數據採集設備200執行的過程。
圖35是表示在一條採集條件由採集條件設置調度單元204設置在數據採集單元507之後由數據採集設備200執行的過程的流程圖。數據採集單元507接收數據(步驟S1401),然後判斷接受到的數據是否滿足被設置的採集條件(步驟S1402)。如果步驟S1402的判斷為「是」,數據採集單元507提取數據(步驟S1403)。提取出來的數據被傳送到數據發送單元508中。數據發送單元508將數據發送到需要數據的應用程式中(步驟S1404)。如果步驟S1402的判斷為「否」,數據採集單元507重複上述判斷直到數據滿足接收到的採集條件。
在當前實施例中,在圖31所示的流程圖中,如果判斷接收到的採集條件不能被設置在數據採集單元507中,採集條件設置調度單元204不在數據採集單元507中設置採集條件,但是在採集條件存儲單元202內的表中存儲接收到的採集條件,允許與採集條件一起在一個組中的設置信息表示「無效」,然後將同一組中的順序值設置為初始值「0」(步驟S1206)。而且,步驟S1206也可以由步驟S1207替代,步驟S1207即採集條件設置調度單元204從採集條件存儲單元202內的表中選擇在一組中包括表示「有效」的設置信息的和最大順序值的採集條件,從數據採集單元507中刪除所選的採集條件的設置,允許與所選的採集條件一起存儲在一個組中的設置信息表示「無效」,將同一組中順序值設置為初始值「0」。步驟S1207緊隨步驟S1205,在步驟S1205中,採集條件設置調度單元204將接收到的採集條件存儲在採集條件存儲單元202內的表中,允許與採集條件一起在一個組中的設置信息表示「無效」,將同一組中順序值設置為初始值「0」,在數據採集單元507中設置採集條件。這一流程圖表示在圖36中。再此省略這一流程圖中與圖31所示的相同的步驟S1201至S1205以及對這些步驟的解釋。
由於這樣一種結構,只要從應用程式中接收一個採集條件,則一個數據採集就預先執行。這樣就會提高從應用程式提出相應請求的速度。
由於上面的描述,根據當前實施例中的數據採集設備,它為接收比用於數據可以同時實際提取或監控的採集條件數目大的更多的採集條件提供了可能。也為自動地調整數據採集和監控調度提供了可能。
實施列6
圖37是表示本發明實施例6的數據採集設備300的結構的功能框圖。數據採集設備設備300的特徵為接收從多個應用程式中發出的採集條件,通過在表中按順序存儲,管理接收到的採集條件,根據成功採集的數據的定時對表中的採集條件重新排序,根據重新排序的採集條件有效地採集數據。具體的說,數據採集設備200與數字廣播接收機的硬體和軟體部分相對應,這些部分執行有關數據接收的基本操作,例如廣播數據接收,多路復用,解碼,以及濾波。數據採集設備300包括採集條件接收單元201,數據採集單元507,數據發送單元508,採集條件存儲單元202,以及採集條件設置調度單元204。其中,那些與實施例5中包括在數據採集設備200中的相同的單元採用相同的附圖標記標識。下面描述與實施例5相區別的部分。
當從數據採集單元507接收到數據已成功提取的採集條件的通知時,採集條件設置調度單元204判斷採集條件存儲單元202內的表中是否存儲了一組包括表示「無效」的設置信息,如果判斷結果為「是」,表中的每一個順序值都執行加「1」操作,然後判斷採集條件能否重新設置在數據採集單元507中。如果這一判斷結果為「是」,採集條件設置調度單元204在數據採集單元507中新設置一條採集條件,如果這一判斷為「否」,採集條件設置調度單元204對被設置的採集條件重新排序。
下面,將根據流程圖31和38,對採集條件設置調度單元204是如何對在數據採集單元507從應用程式接收到的採集條件的設置調度進行描述。
圖31已經在實施例5中描述過了,這裡不再加以描述。
圖38是表示採集條件設置調度單元204在數據採集單元507中設置存儲在採集條件存儲單元202內的表中的採集條件的過程流程圖。採集條件設置調度單元204從數據採集單元507中接收一個數據已被成功提取的採集條件的通知(步驟S1501),然後判斷採集條件存儲單元202內的表中是否存儲有一組包括表示「無效」的設置信息(步驟S1502)。如果步驟S1502的判斷結果為「否」,由於它不必對採集條件重新排序,所以採集條件設置調度單元204等待另一個通知,並且重複上述步驟,直到找到存儲了一組包括表示「無效」的設置信息的表。
如果步驟S1502的判斷結果為「是」,採集條件設置調度單元204對存儲在表中的每一個順序值執行加「1」操作(步驟S1503),然後判斷一條採集條件能否通過檢查包括表示「有效」的設置信息的組的總數是否小於「3」而被重新設置在數據採集單元507中(步驟S1504)。
如果步驟S1504的判斷結果為「否」,採集條件設置調度單元204從採集條件存儲單元202內的表中選擇一個與表示「有效」的設置信息和最大順序值一起包括在一個組中的採集條件,從數據採集單元507中刪除所選擇採集條件的設置,允許與所選採集條件一起存儲在同一組中的設置信息表示「無效」,將同一組中順序值設置為初始值「0」(步驟S1505),然後從表中選擇一條採集條件,這條採集條件包括一組表示「無效」的設置信息和最大順序值,然後允許同一組中的設置信息表示「有效」,將同一組中順序值設置為初始值「0」,然後在數據採集單元507中設置所選擇的採集條件。
如果步驟S1504的判斷結果為「是」,採集條件設置調度單元204從採集條件存儲單元202內的表中選擇一條與表示「有效」的設置信息和最大順序值一起包括在一個組中的採集條件,允許這一個設置信息表示「有效」,並將這一順序值設置為初始值「0」(步驟S1506),然後在數據採集單元507中設置所選擇的採集條件。
在採集條件設置調度單元204在數據採集單元507中設置採集條件之後,由數據採集單元507執行的過程,與在實施例5流程圖35所述那些步驟相同,因此這裡不再描述。
在當前實施例中,在圖31的流程圖中,如果判斷出接收到的採集條件不能設置在數據採集單元507中,採集條件設置調度單元204不會在數據採集單元507中設置採集條件,但是在採集條件存儲單元202中存儲接收到的採集條件,允許與採集條件包括在同一個組中的設置信息表示「無效」,然後將同一組中的順序值設置為初始值「0」(步驟S1206)。但是,步驟S1206可以用步驟S1207替代,在步驟S1207中,採集條件設置調度單元204從採集條件存儲單元202內的表中選擇一條與表示「有效」的採集信息和最大順序值包括在一個組中的採集條件,從數據採集單元507中刪除所選的採集條件,允許與存儲在同一個組中的所選採集條件設置信息表示「無效」,將同一組中順序值設置為「0」。這一流程圖在圖36中已表示了。注意,這一流程圖中步驟S1201至S1205與圖31中那些步驟相同,因此,在此省略對這些步驟的解釋。
利用這種結構,只要從應用程式中接收到一條採集條件,就會預先執行一個數據採集。這就提高了響應從應用程式發出的請求的速度。
在當前實施例中,圖38流程圖所示,如果判斷出接收到的採集條件不能被設置在數據採集單元507中,採集條件設置調度單元204從採集條件存儲單元202內的表中選擇一條與表示「有效」的設置信息和最大順序值一起包括在一個組中的採集條件,從數據採集單元507中刪除選擇採集條件的設置,允許與存儲在同一個組中的所選採集條件設置信息表示「無效」,然後將同一組中的順序值設置為初始值「0」(步驟S1505)。而且,步驟S1505可以用步驟S1507所替代,在步驟S1507中,採集條件設置調度單元204從數據採集單元507中刪除數據已被成功提取的採集條件設置,允許與存儲在同一組中的採集條件設置信息表示「無效」,將同一組中的順序值設置為初始值「0」。這一流程圖表示在圖39中。注意到此流程圖中步驟S1501至S1505與圖38中的那些相同,在此省略對這些步驟的解釋。
利用這種結構,數據已被成功提取的採集條件已預先從數據採集單元507所執行的數據監控和提取的對象中刪除。提供了一個到數據還未被採集的另外採集條件的有效數據採集機會。
如果流程圖36所示的過程與流程圖39所示的過程結合起來執行來調度數據採集單元507中從應用程式接收的採集條件的設置,可能會在圖39中所示流程圖中步驟S1503和S1504之間插入步驟S1508,在步驟S1508中,採集條件設置調度單元204為存儲在一組中帶有數據已成功提取的採集條件設置的順序值執行加「2」操作。這一流程圖見圖40所示。注意到這一流程圖中的步驟S1501至S1504和S1506至S1507,與圖39中那些步驟相同,在此省略對這些步驟的解釋。
利用這種結構,即使是數據已成功提取的採集條件的設置在步驟S1507中也沒有從數據採集單元507中刪除,數據已被成功提取的採集條件從數據採集單元507所執行的數據監控和提取的對象上更快地刪除(步驟S1504的判斷為「是」)。
到目前為止,本發明的數據採集設備已根據多個實施例加以描述。但是不用說,本發明並不限於這些實施例。
在以上實施例中假設數據採集設備應用於數字廣播接收機。但是不僅限於此,本發明也可以應用於連接到與諸如網際網路的通信網絡的計算機,有線電視,或者利用了視頻分區系統的接收機。
在實施例1中,由請求條件產生單元112產生的請求條件,通過請求條件設置調度單元113調度,並存儲在請求記錄單元114中。這一流程可能加以改變以便於一個由請求條件產生單元112產生的請求條件通過請求條件記錄單元114發送到請求條件設置調度單元113中。也就是說,請求條件記錄單元114可能用作為存儲單元,用來存儲在數據採集設備執行調度之前和之後的請求條件。
在以上實施例中,如果兩個請求條件共用一個相同條件時,請求條件產生單元112判斷兩個請求條件是否能夠連接,並且通過邏輯求和連接這兩個條件新產生一個請求條件。而且,三個或更多的請求條件能夠以同樣的邏輯求和的方式產生一個請求條件。這是因為,當多個相互獨立的應用程式提出採集多條包括相同部分的數據的請求時,可以為整個有效的數據採集分別預先採集相同的部分。
在請求條件的連接方面,希望儘可能多的請求條件被連接到一起。為此,請求條件的連接可以通過研究記錄在請求條件記錄單元114中的全部請求條件連接的可能性來最優化。
在以上實施例中,當通過共用一個的請求條件而建立連接產生一個請求條件時,請求條件產生單元產生附加信息,例如,請求識別信息,請求產生時間以及後連接請求識別信息。而且,請求條件設置調度單元代替了請求條件產生單元,可以產生和存儲這些附加信息。
在以上實施例中,請求條件設置調度單元根據絕對時間執行調度,例如請求產生時間,超時時間和超時取消時間。而且,請求條件設置調度單元根據相對時間(消耗時間),通過產生諸如超時時間,超時取消時間和請求條件配置時間這樣的時間信息以及給請求條件附加時間信息來執行調度。
有可能提供一種數據採集設備,它執行由實施例14中描述的請求條件產生單元和請求條件設置調度單元結合起來的功能的各種高性能調度。例如請求條件設置調度單元可以提供以上在實施例1-4中描述的功能的全部結合,以及必要時即可動態選擇一項的最合適的功能。
請求條件設置調度單元可以不刪除一個數據已採集的請求條件,但是可以用隊列中的最後一個位置替代它。例如當請求條件的數據採集監控狀態信息已為「無監控狀態」的採集數據時,數據採集設備就像以上實施例中描述的一樣可能不延遲數據採集,但是可以以不固定的時間間隔重複採集數據。
數據採集設備可能在數據採集監控狀態信息為「持續監控採集」的數據採集之間高速轉換。
請求條件設置調度單元可能改變在根據數據採集狀態轉換或在某一狀態中保持的時候要求附加在每個請求條件上的數據採集監控狀態信息。利用這種結構,監控狀態根據數據採集狀態或類似狀態是動態確定的。這樣可以實現能夠在傳送數據內容、傳送頻率或類似信息的相應轉換的數據採集設備。
本發明的獨特的組件(例如請求條件產生單元和請求條件設置調度單元)可以通過硬體實現,例如特定的電子電路或通過通用目標的CPU執行的程序實現。
在實施例5-6中,直到3的採集條件可以在數據採集單元507中設置。而且,以上數目的上限不限於「3」。如實施例5的例子中所示(圖33、34),採集條件存儲在數據採集條件存儲單元202內的表中。而且,數目上限也不限於「6」。
在實施例5-6中,順序值初始值為「0」。而且,初始值可以採用其他值而不是「0」。在這些實施例中,順序值是加「1」操作,(a)當其他採集條件在表中存儲時,或者(b)當包括表示「無效」的設置信息的組存儲在採集條件存儲單元202的表中時,(b-1)當重新排序單元203發出採集條件重新排序請求時,或者(b-2)當接收到數據已成功採集的採集條件通知時。而且,順序值的增加值也不僅限於「1」,同時順序值可以用減少操作代替增加操作。
本發明根據相應的附圖,已通過實例全部描述了,很明顯,對於本領域普通技術人員可以進行改變和修改。因此,除非這些改變和修改脫離了本發明的範圍,這些改變和修改均可以解釋為包括在本發明範圍之內。
權利要求
1.一種數據採集設備,用於根據從多個數據處理裝置接收到的請求從傳送數據流中採集數據,該數據採集設備包括請求接收裝置,用於從多個數據處理設備接收多個採集數據的請求;條件產生裝置,用於產生與接收到的請求相對應的多個條件;調度裝置,用於產生多個條件的隊列,並根據產生的隊列,通過在數據提取裝置中設置與一個或多個數據相對應的一個或多個條件和從數據提取裝置中刪除一個或多個條件,來啟動和停止滿足任意條件的數據採集過程;數據提取裝置,用於從數據流中提取一個或多個數據;及輸出裝置,用於輸出由數據提取裝置提取的一個或多個數據給數據處理設備中發送過採集數據請求的數據處理設備。
2.如權利要求1所述的數據採集設備,其中請求接收裝置在接收每個請求的同時還接收數據採集的優先級,調度裝置,用於產生隊列,以使優先級高的數據採集請求優先被執行。
3.如權利要求1所述的數據採集設備,其中請求接收裝置在接收請求的同時還接收指定數據採集狀態的監控狀態信息,調度裝置(a)在數據提取裝置中設置一個條件,以便當調度裝置接收到帶有指定持續監控採集的監控狀態信息的請求時,執行連續地數據採集,(b)在和從數據提取裝置中設置和刪除一個條件,以便當調度裝置接收到帶有指示間歇監控採集的監控狀態信息時,以固定的時間間隔執行數據採集,(c)在和從數據提取裝置中設置和刪除一個條件,以便當調度裝置接收到帶有指示無監控採集的監控狀態信息時只執行一次數據採集。
4.如權利要求1所述的數據採集設備,還包括記錄裝置,用於暫時記錄多個條件,其中條件產生裝置在記錄裝置中記錄產生的條件,調度裝置通過讀取記錄裝置中的產生條件來產生隊列,對讀取條件重新排序,並將重新排序的條件記錄在記錄裝置中。
5.如權利要求4所述的數據採集設備,其中請求接收裝置在接收請求的同時還接收指示請求類型的標題信息,條件產生裝置接收來自請求接收裝置的帶有標題信息的請求,產生與每一個接收到的請求相對應的條件,在記錄裝置中記錄每一個產生的條件及與之對應的接收到的標題信息,調度裝置依據與記錄在記錄裝置中的條件相對應的標題信息,通過刪除數據提取裝置中與數據採集對應的條件來結束數據採集。
6.如權利要求4所述的數據採集設備,該設備還包括定時器裝置,用於提供當前時間,其中請求接收裝置在接收請求的同時還接收表示請求類型的標題信息,條件產生裝置從請求接收裝置接受請求及標題信息,根據每一個接收到的標題信息,產生與每一個接收到的請求相對應的條件,當數據採集停止的時候,產生一個超時時間,在記錄裝置中記錄每一個產生的條件和對應的超時時間,調度裝置允許噹噹前時間已經到達與條件對應的超時時間時,從數據提取裝置中刪除與數據採集相對應的條件來終止數據採集。
7.如權利要求4所述的數據採集設備,該設備還包括定時器裝置,用於提供當前時間,其中條件產生裝置在接收到請求接收裝置的請求後,產生(a)與接收到的請求對應的條件(b)條件產生時間信息,指示該條件產生的時間,並在記錄裝置中記錄每一個產生的條件和對應的該條件產生的時間信息,調度裝置通過比較當前時間與記錄在記錄裝置中的條件產生的時間信息,為每一個條件計算消耗的時間,並依據該消耗時間執行調度。
8.如權利要求4所述的數據採集設備,其中條件產生裝置在接收到來自請求接收裝置的請求後,產生一個與接收到的請求相對應的條件,通過比較新產生的條件和記錄在記錄裝置中已經存在的條件來判斷兩個條件是否可以連接起來,當判斷出這兩個條件可以連接時,通過連接這兩個條件來產生一個新的條件,並在記錄裝置中記錄該新產生的條件,調度裝置從記錄裝置中讀取新產生的條件,並將該條件放入隊列中,然後通過在數據提取裝置中設置該新產生的條件來啟動數據採集,並通過從數據提取裝置中刪除已存在的條件來結束數據採集。
9.如權利要求8所述的數據採集設備,其中條件產生裝置在接收到來自請求接收裝置的請求後,產生(a)與接收到的請求對應的條件(b)用於識別產生條件的識別信息,當通過連接產生新條件之後,條件產生裝置使用識別信息產生一組表示新產生的條件與連接在一起產生新條件的兩個條件之間的對應關係的連接信息,並在記錄裝置中記錄連接信息、與識別信息對應的條件和接收到的請求,調度裝置參照識別信息和連接信息來識別新產生的條件和連接在一起產生新條件的兩個條件,並監控與識別條件相對應的每一個數據採集的開始和結束。
10.如權利要求9所述的數據採集設備,其中當兩個條件有一個公共部分時,條件產生裝置判斷這兩個條件可以連接起來,並產生一個包含該公共部分的新條件。
11.如權利要求4所述的數據採集設備,該設備還包括定時器裝置,用於提供當前時間,其中當開始數據採集之後,調度裝置通過增加預定義時間周期到調度裝置開始數據採集的時間來產生一個超時時間,並在記錄裝置中記錄該超時時間和與數據採集對應的條件,噹噹前時間到達超時時間時,通過刪除數據提取裝置中的相應條件來結束數據採集,同時,通過增加另一預定義時間周期到數據採集結束的時間來產生一個超時取消時間,並在記錄裝置中記錄該超時取消時間和與之對應的條件;噹噹前時間到達超時取消時間時,將該條件放入隊列中,並通過在數據提取裝置中設置條件來啟動數據採集。
12.如權利要求4所述的數據採集設備,其中數據提取裝置為設置在其中的每一個條件輸出表示數據是否已被採集的數據採集信息,調度裝置為記錄在記錄裝置中的每一個條件產生數據採集確認信息,並依據產生的數據採集確認信息執行調度。
13.如權利要求12所述的數據採集設備,該設備還包括定時器裝置,用於提供當前時間,其中條件產生裝置在接收到來自請求接收裝置的請求之後,產生(a)與接收到的請求對應的條件,及(b)條件產生時間信息,用於指示條件產生的時間,並在記錄裝置中記錄每一個產生的條件和每一個與之對應的條件產生時間信息,調度裝置通過比較當前時間和記錄在記錄裝置中指示條件產生的時間信息,並參照記錄在記錄裝置中的數據採集確認信息,來判斷記錄裝置是否存儲了從條件產生以來到預定義時間間隔到期之後數據還未被採集的條件,依據判斷的結果來執行調度。
14.如權利要求13所述的數據採集設備,其中條件產生裝置在接收到來自請求接收裝置的請求之後,產生一個與接收到的請求相對應的條件,通過比較新產生的條件與記錄裝置中已存在的條件來判斷兩個條件是否可以連接,當判斷兩個條件可以連接時,產生一個由兩個條件連接而成的新條件,並在記錄裝置中記錄該條件,調度裝置從記錄裝置中讀取新產生的條件,並將其放入隊列中,然後通過在數據提取裝置中設置該新產生的條件來啟動數據採集,通過從數據提取裝置中刪除已存在的條件來結束數據採集,當判斷到從接收請求以來到預定義時間間隔到期後新產生的條件的數據還未被採集時,通過刪除數據提取裝置中新產生的條件,來結束數據採集,並且從記錄裝置中讀取已存在的條件,將新產生的條件和已存在的條件放入隊列中,然後通過在數據提取裝置中設置已存在的條件來啟動數據採集。
15.如權利要求1所述的數據採集設備,該設備還包括定時器裝置,用於提供當前時間,其中請求接收裝置在接收請求的同時還接收表示數據採集狀態的監控狀態信,調度裝置,當一組監控狀態信息對應由於到達超時周期而結束數據採集的請求指示為非監控採集狀態時,通過增加一預定義時間周期到達數據採集結束的時間後產生一超時取消時間,噹噹前時間到達超時取消時間時,將該條件放入隊列中,並通過在數據提取裝置中設置該條件來啟動數據採集。
16.如權利要求1所述的數據採集設備,其中請求接收裝置在接收請求的同時還接收(a)指定數據採集狀態的監控狀態信息,及(b)數據採集的優先級,調度裝置當(ⅰ)與條件相對應的監控狀態信息指示非監控狀態,(ⅱ)請求的數據還未被採集,(ⅲ)條件比其它放入隊列中的條件的優先級高時,通過刪除數據提取裝置中與請求對應的條件來結束數據採集,並通過在數據提取裝置中設置優先級高的條件來啟動數據採集。
17.如權利要求4所述的數據採集設備,其中請求接收裝置在接收請求的同時還接收(a)指定數據採集狀態的監控狀態信息,(b)數據採集的優先級,及(c)用於識別請求的識別信息,條件產生裝置接收來自請求接收裝置的監控狀態信息、識別信息和請求,產生與每一個接收到的請求對應的條件,在記錄裝置中記錄每一個產生的條件和與之對應的每一個接收到的監控狀態信息和識別信息,數據提取裝置參照包含在數據流中的標題信息,提取和輸出(a1)與包含在數據流中的數據相對應的識別信息及(b1)指示數據版本的版本信息,調度裝置參照由數據提取裝置輸出的識別信息和版本信息,為記錄在記錄裝置中的每一個條件產生(a2)數據採集確認信息,指示對應的數據是否已被採集,(b2)版本更新序號信息,指示對應數據更新的版本序號,並在記錄裝置中記錄產生的數據採集確認信息和版本更新序號信息,當隊列中包含多個條件,而每一個條件(ⅰ)監控狀態信息指定無監控採集狀態,(ⅱ)指定相同的優先級,(ⅲ)數據採集確認信息有相同的內容時,通過在數據提取裝置中設置隊列的多個條件中與記錄在記錄裝置中指示版本更新最大序號的版本更新序號信息相對應的條件來優先啟動數據採集。
18.一種數據採集方法,根據從數據處理裝置中接收的多個請求從傳送數據流中採集數據,該方法包括請求接收步驟,從多個數據處理裝置中接收採集數據的請求;條件產生步驟,產生與接收的請求對應的條件;數據提取步驟,從數據流中提取滿足條件的一組或多組數據;調度步驟,產生多個條件的隊列,並通過在和從數據提取步驟中設置或刪除一個或多個條件,來安排數據採集的開始和停止;及輸出步驟,將數據提取步驟提取的數據輸出給多個數據處理裝置中發送過採集數據請求的數據處理裝置。
19.一種包含在計算機可讀介質中的電腦程式,用於根據從多個數據處理裝置接收的請求,從傳送數據流中採集數據,該電腦程式包括請求接收步驟,從多個數據處理裝置中接收採集數據的請求;條件產生步驟,產生與接收的請求對應的條件;數據提取步驟,從數據流中提取滿足條件的一組或多組數據;調度步驟,產生多個條件的隊列,並通過在和從數據提取步驟設置或刪除一個或多個條件,來安排數據採集的開始和停止;及輸出步驟,將數據提取步驟提取的數據輸出給多個數據處理裝置中發送過採集數據請求的數據處理裝置。
20.一種數據採集設備,用於根據從多個數據處理裝置接收的請求,從傳送數據流中採集數據,該數據採集設備包括條件採集裝置,用於從多個數據處理設備中採集與請求對應的多個條件;表控制裝置,用於控制一個表示(a)(b)(c)三者之間關係的表,其中(a)為多個條件,(b)為多條設置信息,每一條表示數據提取裝置中的條件是「設置」還是「未設置」狀態,及(c)表示已經被採集的多個條件的順序的順序值,當對應的條件從數據提取裝置中被刪除時,每一個順序值被初始化為一個值,指示其對應的條件最近被採集過;調度裝置,在每次條件採集裝置採集一個新條件時,就寫下一組(a1)新條件,(b1)與新條件對應的設置信息,表示數據提取裝置中的條件是「設置」還是「未設置」狀態,及(c1)順序值,指示最近被採集的新條件,並參照記錄在表中的設置信息和順序值來監控數據提取裝置中的條件設置;數據提取裝置,用於從數據流中提取滿足多個條件的一組或多組數據及輸出裝置,用於輸出數據提取裝置提取的一組和多組數據給多個數據處理裝置中發送過採集數據請求的數據處理裝置。
21.如權利要求20所述的數據採集設備,其中調度裝置包括條件檢測裝置,用於從表中檢測與表示「未設置」狀態的設置信息對應的條件;及確定裝置,用於參照與檢測的條件對應的順序值來確定檢測到的條件中將要被新設置在數據提取裝置中的一個條件。
22.如權利要求21所述的數據採集設備,其中調度裝置還包括設置判斷裝置,用於通過判斷與表示為「設置」狀態的設置信息相對應的條件的數目是否少於數據提取裝置中可以設置的條件數目的上限值,來判斷數據提取裝置中是否設置了新條件;及設置監控裝置,用於當設置判斷裝置判斷出設置了一個新條件時,在數據提取裝置中設置確定的條件,當設置判斷裝置判斷出沒有設置新條件時,則選擇條件中與表示為「設置」狀態的設置信息相對應的條件,從數據提取裝置中刪除所選擇的條件,並在數據提取裝置中設置確定的條件。
23.如權利要求22所述的數據採集設備,其中確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最少被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件,表中與之對應的順序值表明該條件最近最少被採集過,然後從數據提取裝置中刪除該選擇的條件。
24.如權利要求22所述的數據採集設備,其中確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最多被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件,表中與之對應的順序值表明該條件最近最少被採集過,然後從數據提取裝置中刪除該選擇的條件。
25.如權利要求20所述的數據採集設備,該設備還包括重新排序請求裝置,用於發送重新排序請求,請求調度裝置根據來自多個數據處理裝置的指令對設置在數據提取裝置中的條件重新排序,其中,調度裝置在接到來自重新排序請求裝置的重新排序請求時,參照記錄在表中的設置信息和順序值來監控設置在數據提取裝置中的條件的重新排序。
26.如權利要求25所述的數據採集設備,其中調度裝置包括條件檢測裝置,用於當接收到來自重新排序請求裝置的重新排序請求時從表中檢測與表示「未設置」狀態的設置信息相對應的條件;及確定裝置,用於參照與檢測的條件對應的順序值來確定檢測到的條件中將要被新設置在數據提取裝置中的一個條件。
27.如權利要求26所述的數據採集設備,其中調度裝置還包括設置判斷裝置,用於通過判斷與表示為「設置」狀態的設置信息相對應的條件的數目是否少於數據提取裝置中可以設置的條件數目的上限值,來判斷數據提取裝置中是否設置了新條件;及設置監控裝置,用於當設置判斷裝置判斷出設置了一個新條件時,在數據提取裝置中設置確定的條件,當設置判斷裝置判斷出沒有設置新條件時,則選擇條件中與表示為「設置」狀態的設置信息相對應的條件,從數據提取裝置中刪除所選擇的條件,並在數據提取裝置中設置確定的條件。
28.如權利要求27所述的數據採集設備,其中確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最少被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件,表中與之對應的順序值表明該條件最近最少被採集過,然後從數據提取裝置中刪除該選擇的條件。
29.如權利要求20所述的數據採集裝置,其中數據提取裝置當成功地提取到滿足某一條件的數據時,將滿足成功提取數據的條件通知給調度裝置,調度裝置在接收到通知時,參照記錄在表中的設置信息和順序值來監控設置在數據提取裝置中的條件的重新排序。
30.如權利要求29所述的數據採集設備,其中條件檢測裝置,用於當接收到通知時從表中檢測與表示「未設置」狀態的設置信息相對應的一個或多個條件;及確定裝置,用於參照與檢測的條件對應的順序值來確定檢測到的條件中將要被新設置在數據提取裝置中的一個條件。
31.如權利要求30所述的數據採集設備,其中調度裝置還包括設置判斷裝置,用於通過判斷與表示為「設置」狀態的設置信息相對應的條件的數目是否少於數據提取裝置中可以設置的條件數目的上限值,來判斷數據提取裝置中是否設置了新條件;及設置監控裝置,用於當設置判斷裝置判斷出設置了一個新條件時,在數據提取裝置中設置確定的條件,當設置判斷裝置判斷出沒有設置新條件時,則選擇條件中與表示為「設置」狀態的設置信息相對應的條件,從數據提取裝置中刪除所選擇的條件,並在數據提取裝置中設置確定的條件。
32.如權利要求31所述的數據採集設備,其中確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最少被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件,表中與之對應的順序值表明該條件最近最少被採集過,然後從數據提取裝置中刪除該選擇的條件。
33.如權利要求31所述的數據採集設備,其中確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最多被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件,表中與之對應的順序值表明該條件最近最少被採集過,然後從數據提取裝置中刪除該選擇的條件。
34.如權利要求31所述的數據採集設備,其中確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最少被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件通知數據提取裝置,並從數據提取裝置中刪除選擇的條件。
35.如權利要求31所述的數據採集設備,其中確定裝置可以在與表示為「未設置」狀態的設置信息相對應的條件中確定一個條件,作為一個在數據提取裝置中新設置的條件,表中與之對應的順序值表明該條件最近最多被採集過,當設置判斷裝置判斷出這個條件不是新設置的,則設置監控裝置在與表示為「設置」狀態的設置信息對應的條件中選擇一個條件通知數據提取裝置,並從數據提取裝置中刪除選擇的條件。
全文摘要
一種數據採集設備,包括:數據採集單元507,接收數據採集條件,當傳送的數據包含滿足任何請求條件的數據時,從傳送數據中提取數據;數據採集請求接收單元501,接收來自多個應用程式的採集數據請求及指定數據的條件;請求條件設置調度單元113,通過為所有接收到的請求產生一個請求隊列來監控數據採集的啟動,並依據隊列,在數據採集單元507中設置相應的條件。
文檔編號G06F17/40GK1326162SQ0112331
公開日2001年12月12日 申請日期2001年5月30日 優先權日2000年5月30日
發明者石川義朗, 小寺貴, 神門磨 申請人:松下電器產業株式會社

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀