專利名稱:分配可加載軟件飛行器部件(lsap)的方法和設備的制作方法
技術領域:
本公開一般涉及改進的數據處理系統并且具體涉及用于管理飛行器的軟件的方 法和設備。更具體地,本公開涉及計算機實現的方法、設備和計算機可用的程序產品,用于 管理可加載的軟件飛行器部件和其他關于部件的文件,所述部件被認為是部分使用資源或 被簡單地認為是資源。
背景技術:
現代化飛行器及其復雜。例如,飛行器可能具有很多種類型的機載電子系統。飛 行器上的一種特定電子系統也可以被稱為外場可更換單元(LRU)。每個外場可更換單元都 可以進一步呈現不同的形式。外場可更換單元可以是,例如而不限于飛行管理系統、自動駕 駛儀、飛行娛樂系統、通信系統、導航系統、飛行控制器、飛行記錄器和碰撞避免系統。外場 可更換單元可以使用軟件或程序,從而為不同的操作和功能提供邏輯或控制。在這些外場 可更換單元中使用的軟件通常被視為航空業的一部分。具體地,使用在飛行器上的外場可 更換單元中的軟件應用也可以被單獨地跟蹤并且被稱為可加載軟件飛行器部件(LSAP)或 軟件飛行器部件。如美國聯邦航空局(FAA)所定義的,該軟件應用程序也可以被認為是飛 行器配置的一部分。當某個實體(例如航空公司、維護、修理和檢修服務供應商“MR0”或軍事飛行中 隊)收到飛行器時,軟件飛行器部件典型地已經被安裝在飛行器中的外場可更換單元中。 例如,航空公司在這些軟件飛行器部件需要被重新安裝或重新加載到已經故障和已經被替 換的外場可更換單元的情況下也可以收到這些軟件飛行器部件的復本。進一步地,航空公 司有時也可以接收可加載軟件飛行器部件的更新。這些更新可以包括在當前所安裝的軟件 飛行器部件中沒有的額外特征,并且可以被認為是對一個或更多外場可更換單元的升級。用于管理、處理和分配可加載軟件飛行器部件的當前系統是繁瑣的并且是耗時 的。當前,軟件飛行器部件被存儲在物理介質中,例如磁盤、光盤或數字多功能光盤(DVD)。 航空公司收到傳送的物理介質并且將該物理介質保存在諸如檔案柜的地方。在許多情況 下,該介質也可以被放置在飛行器上。有時也可以對飛行器進行維護操作以安裝或重新安裝軟件飛行器部件。當需要一 個軟件飛行器部件時,必須定位和獲取包含該部件的介質以供維護人員使用。這種類型存 儲和獲取系統和過程占用空間和時間。因此,具有改進的方法和設備用于分配軟件飛行器部件,以解決上述問題是有利 的。
發明內容
不同的有利實施例提供計算機實現的方法和設備,用于管理軟件飛行器部件。在 一個有利實施例中,軟件飛行器部件管理設備包括庫、接收模塊、代理服務器、飛行器上的 機載電子分配系統和便攜式的軟件維護工具。地面數據處理系統上的庫為多個飛行器存儲和管理多個軟件飛行器部件。接收模塊能夠從供應方接受該多個軟件飛行器部件并且將該 多個軟件飛行器部件發送給庫進行存儲。代理服務器與庫進行通信并且能夠將軟件分配給 多個飛行器客戶系統。機載電子分配系統是飛行器客戶系統并且能夠通過代理服務器從庫 為飛行器接收軟件飛行器部件。便攜式軟件維護工具提供將軟件飛行器部件發送到飛行器 的機載電子分配系統的替代途徑。在另一個有利實施例中,一種設備包括庫、代理服務器和機載電子分配系統。庫位 于數據處理系統上并且存儲和管理飛行器部件。代理服務器能夠從庫接收軟件飛行器部件 以分配給一組飛行器。飛行器的機載電子分配系統能夠將從代理服務器接收的軟件飛行器 部件分配到飛行器中的外場可更換單元。在再一個有利實施例中,計算機實現的方法用于管理多個軟件飛行器部件。軟件 飛行器部件保存在庫中。為軟件飛行器部件識別飛行器以形成已識別的飛行器。軟件飛行 器部件被發送到代理服務器。軟件飛行器部件從代理服務器被發送到已識別飛行器上的機 載電子分配系統。有利實施例提供一種計算機實現的方法、設備和計算機程序產品,用于處理軟件 飛行器部件。在一個有利實施例中,一種方法用于處理軟件飛行器部件。從軟件飛行器部 件管理設備外的源處接收包含軟件飛行器部件的輸入包。為該輸入包和軟件飛行器部件驗 證一組簽名。響應該組組簽名是有效的,解包(打開)輸入包。輸入包的內容被顯示。軟 件飛行器部件被解包以獲取軟件飛行器部件。響應將保存的軟件飛行器部件上載到軟件飛 行器部件管理設備中的庫的請求,判斷所保存的軟件飛行器部件是否符合規定。如果所保 存的軟件飛行器部件符合規定,那么所保存的軟件飛行器部件被簽名以形成已簽名的軟件 飛行器部件。已簽名的軟件飛行器部件被置入輸入包。包含已簽名的軟件飛行器部件的包 被簽名以形成已簽名的包,其中已簽名的軟件飛行器部件和已簽名的包的簽名與輸入包中 的該組簽名不同。已簽名的包被發送到軟件飛行器部件管理設備中的庫。在另一個有利實施例中,計算機實現的方法用于處理配置項。接收包含配置項的 包以形成接收的包。判斷包和配置項的一組簽名是否是有效的。響應該組簽名被判斷為有 效而存儲配置項。在再一個有利實施例中,數據處理系統包括總線、存儲裝置和處理器單元。存儲裝 置連接到總線并且包括程序代碼。處理器單元連接到總線并且能夠執行所述程序代碼以從 軟件飛行器部件管理設備外的源處接收包含軟件飛行器部件的包,驗證輸入包和軟件飛行 器部件的一組簽名,響應該組簽名是有效的而解包輸入包,顯示輸入包的內容,存儲軟件飛 行器部件,響應將軟件飛行器部件上載到軟件飛行器部件管理設備的庫中的請求,判斷軟 件飛行器部件是否符合規定、響應符合規定的軟件飛行器部件而將軟件飛行器部件簽名以 形成已簽名的軟件飛行器部件,將已簽名的軟件飛行器部件置于包內,將包含已簽名的軟 件飛行器部件簽名以形成已簽名的包,其中已簽名的軟件飛行器部件和已簽名的包的簽名 與輸入包中的該組簽名不同,以及將已簽名的包發送到軟件飛行器部件管理設備中的庫。不同的有利實施例提供計算機實現的方法、設備和計算機程序產品,用于管理軟 件飛行器部件。在一個有利的實施例中,方法包括從飛行器網絡數據處理系統中的庫檢索 一組軟件飛行器部件和關于該組軟件飛行器部件的元數據,以形成一組檢索到的軟件飛行 器部件。該組軟件飛行器部件被存儲在文件系統中。元數據被存儲在數據庫中。該組軟件飛行器部件和元數據被發送到機載電子分配系統以及地面組件接口和機載電子分配系統 之間的通信鏈接。關于通信鏈接上的活躍性的狀態信息被保持。在另一個有利實施例中,設備包括文件系統、數據庫、存儲在文件系統中的一組 軟件飛行器部件、存儲在數據庫中的一組命令、地面組件、控制進程和數據處理系統。地面 組件能夠與在多個飛行器上的多個機載電子分配系統交換信息。控制進程能夠從庫中接收 該組命令和該組軟件飛行器部件,并且將該組命令和該組軟件飛行器部件發送到多個飛行 器。文件系統、數據庫、該組軟件飛行器部件、該組命令、地面組件和控制進程是數據處理系 統中的軟件組件。在又一個有利實施例中,計算機程序產品包括計算機可讀介質和存儲在該計算機 可讀介質上的程序代碼。給出程序代碼,用于從飛行器網絡數據處理系統中的庫檢索一組 軟件飛行器部件和關于該組軟件飛行器部件的元數據以形成一組檢索到的軟件飛行器部 件。程序代碼被存儲在計算機可讀介質中用于在文件系統中存儲該組軟件飛行器部件。也 給出用于將元數據存儲在數據庫中的程序代碼。程序代碼被存儲在計算機可讀介質中用于 將該組軟件飛行器部件和元數據發送到機載電子分配系統以及地面組件接口和機載電子 分配系統之間的通信鏈接。給出程序代碼用于維持關于通信鏈接的活躍性的狀態信息。不同的有利實施例提供計算機實現的方法、設備和計算機程序產品,用于處理網 絡數據處理系統中的命令。在一個有利的實施例中,一進程為多個飛行器中的飛行器創建 一組命令。該命令組被存儲在網絡數據處理系統中的庫中的一組隊列中,以形成存儲的命 令組。響應事件,存儲的命令組被發送到在網絡數據處理系統上執行的代理服務器應用程 序以形成已分配的命令組。建立代理服務器應用程序與在飛行器上的飛行器數據處理系統 上執行的機載分配系統之間的連接。機載電子分配系統從代理服務器應用程序請求已分配 的命令組。機載電子分配系統從代理服務器應用程序接收已分配的命令組以形成接收的命 令組。該接收的命令組由機載電子分配系統處理,以形成經處理的命令組。如果經處理的 命令組是一組上行鏈路命令,則使用該組經處理的命令將一組軟件飛行器部件轉發到在飛 行器上的一組目標數據處理系統。在另一個有利實施例中,計算機實現的方法識別在網絡數據處理系統中的庫中的 一組命令,以形成已識別的命令組。該已識別的命令組被發送到在網絡數據處理系統上執 行的代理服務器應用程序以形成已分配的命令組。在代理服務器應用程序與在飛行器上的 飛行器數據處理系統上執行的機載電子分配系統之間建立連接。從代理服務器應用程序發 送已分配的命令組到機載電子分配系統以形成通過連接接收的命令組。接收的命令組由機 載電子分配系統處理以形成已處理的命令組。如果已處理的命令組是一組上行鏈路命令, 那么使用已處理的命令組將位于飛行器數據處理系統中的存儲的軟件飛行器部件組發送 到飛行器上的一組目標數據處理系統。在又一個有利實施例中,計算機程序產品包括計算機可讀介質和存儲在該計算機 可讀介質中的程序代碼。程序代碼包括用于為在多個飛行器中的飛行器創建一組命令的程 序代碼和用于將該組命令存儲在網絡數據處理系統中的庫中的一組隊列中以形成存儲的 命令組的程序代碼。程序代碼也包括用于響應事件,將存儲的命令組發送到在網絡數據處 理系統上執行的代理服務器應用程序以形成已分配的命令組的程序代碼。程序代碼也包括 建立代理服務器應用程序和在飛行器上的飛行器數據處理系統上執行的機載電子分配系統之間的連接的程序代碼,和用于由機載電子分配系統從代理服務器應用程序請求已分配 的命令組的程序代碼。程序代碼包括用于由機載電子分配系統從代理服務器應用程序接收 分配的命令組以形成接收的命令組的程序代碼和用于由機載電子分配系統處理接收的命 令組以形成已處理的命令組的程序代碼。該程序代碼也包括程序代碼,用于在如果已處理 的命令組是一組上行鏈路命令時使用已處理的命令組將一組軟件飛行器部件轉發給飛行 器上的一組目標數據處理系統。不同的有利實施例提供計算機實現的方法、設備和計算機程序產品,用于管理軟 件飛行器部件。在一個有利實施例中,一種方法被用于通過地面網絡建立便攜式數據處理 系統和源之間的連接以形成建立的連接。通過建立的連接從源檢索一組上行鏈路命令。通 過建立的連接從源檢索與該組上行鏈路命令相對應的一組軟件飛行器部件以形成一組檢 索到的軟件飛行器部件。在便攜式數據處理系統中存儲該組檢索到的軟件飛行器部件以形 成一組存儲的軟件飛行器部件。斷開具有該組存儲的軟件飛行器部件的便攜式數據處理系 統與地面網絡的連接。將具有該組存儲的軟件飛行器部件的便攜式數據處理系統連接到飛 行器中的飛行器網絡。通過便攜式數據處理系統中的地面組件從該組上行鏈路命令發出上 行鏈路命令給飛行器網絡。通過地面組件發送與該上行鏈路命令相對應的存儲的軟件飛行 器部件給飛行器網絡。在另一個有利實施例中,設備包括數據庫、文件系統、庫服務、管理器和便攜式數 據處理系統。數據庫能夠存儲一組命令并且文件系統能夠存儲一組軟件飛行器部件。庫服 務能夠與從庫和代理服務器應用程序之一中選出的源進行通信,地面組件能夠與飛行器網 絡中的飛行器數據處理系統直接連接。管理器能夠通過庫服務從地面網絡中的源接收該組 命令和該組軟件飛行器部件,斷開和源的連接,并且通過地面組件發送該組命令和該組軟 件飛行器部件給飛行器網絡中的飛行器數據處理系統。便攜式數據處理系統能夠建立與地 面網絡和飛行器網絡的連接,其中庫服務、地面組件、數據庫和文件系統位于便攜式數據處 理系統上。在還另一個有利實施例中,計算機程序產品包括計算機可記錄存儲介質和存儲在 計算機可記錄存儲介質上的程序代碼。該程序代碼包括用于通過地面網絡建立便攜式數據 處理系統和源之間的連接以形成建立的連接的代碼。該程序代碼也包括代碼,用于通過建 立的連接從源檢索一組上行鏈路命令并且通過建立的連接從源檢索與該上行鏈路命令組 相對應的一組軟件飛行器部件以形成一組檢索到的軟件飛行器部件。該程序代碼包括代 碼,用于在便攜式數據處理系統中存儲該組檢索到的軟件飛行器部件以形成一組存儲的軟 件飛行器部件。該程序代碼具有代碼,用于斷開具有該組存儲的軟件飛行器部件的便攜式 數據處理系統與地面網絡的連接并且用于將具有該組存儲的軟件飛行器部件的便攜式數 據處理系統連接到飛行器中的飛行器網絡。該程序代碼具有代碼,用于通過便攜式數據處 理系統中的地面組件從該組上行鏈路命令發出上行鏈路命令給飛行器網絡并且用于通過 地面組件發送與該上行鏈路命令相對應的存儲軟件飛行器部件給飛行器網絡。不同的有利實施例提供計算機實現的方法、設備和計算機程序產品,用于與飛行 器傳輸信息。在一個有利實施例中,計算機實現的方法被用于與飛行器傳輸信息。在執行 在飛行器中的飛行器數據處理系統中的機載電子分配系統和地面組件之間建立連接。響應 地面組件通過連接做出的對命令的請求,由機載電子分配系統執行的命令被識別,以形成已識別的命令。該已識別的命令從地面組件發送給機載電子分配系統。將事務處理標識符 分配給命令。與該命令關聯的事務處理狀態通過使用事物處理標識符被保持在機載電子分 配系統和地面組件上。由地面組件啟動上行鏈路。軟件飛行器部件被從地面組件發送給機 載電子分配系統以進行上傳。地面組件上的軟件飛行器部件的傳輸狀態被保存。在另一個有利實施例中,計算機實現的方法被用于與飛行器傳輸信息。從地面組 件請求命令。響應從地面組件收到上行鏈路命令,請求與該上行鏈路命令相對應的軟件飛 行器部件。響應發送對軟件飛行器部件的請求,從地面組件接收軟件飛行器部件以形成接 收的軟件飛行器部件。該軟件飛行器部件被存儲。在又一個有利實施例中,設備包括地面組件、機載電子分配系統、數據處理系統 和飛行器數據處理系統。機載電子分配系統能夠從地面組件接收命令;響應從地面組件接 收上行鏈路命令而請求對應于上行鏈路命令的軟件飛行器部件;響應發送對軟件飛行器部 件的請求,從地面組件接收軟件飛行器部件以形成接收的軟件飛行器部件;以及存儲軟件 飛行器部件。地面組件在數據處理系統上執行。機載電子分配系統在飛行器數據處理系統 上執行。不同的有利實施例提供計算機實現的方法、設備和計算機程序產品,用于管理軟 件飛行器部件。在一個有利實施例中,在庫接收軟件飛行器部件以形成接收的軟件飛行器 部件。將接收的軟件飛行器部件存儲在具有多個軟件飛行器部件的庫中的存儲器中。提供 用戶界面系統以操控庫中的多個軟件飛行器部件。響應從用戶界面系統接收從庫中的多個 軟件飛行器部件上傳所選的軟件飛行器部件給目標飛行器數據處理系統的用戶輸入,創建 命令以發送所選的軟件飛行器部件給在其中置有目標飛行器數據處理系統的飛行器以形 成上行鏈路命令。將上行鏈路命令存儲到庫中的存儲器中的隊列中以形成存儲的上行鏈路 命令。響應來自代理服務器應用程序的對命令的請求,分配存儲的上行鏈路命令給代理服 務器應用程序。響應接收來自處理所存儲的上行鏈路命令的代理服務器應用程序的對所選 軟件飛行器部件的請求,發送所選的軟件飛行器部件給代理服務器應用程序。在另一個有利實施例中,設備包括位于存儲裝置上的文件系統、位于存儲裝置上 的數據庫、管理組件和用戶界面。文件系統存儲多個軟件飛行器部件并且數據庫存儲用于 管理多個軟件飛行器部件的多個命令。管理組件能夠生成多個命令。用戶界面系統能夠接 收用戶輸入以操作管理組件。在又一個有利實施例中,計算機包括總線、連接到總線的通信適配器、連接到總 線的存儲器以及連接到總線的處理器單元,其中計算機可用的程序代碼被存儲在總線上。 處理器單元執行計算機可用程序代碼以在庫上接收軟件飛行器部件,從而形成接收的軟件 飛行器部件;在具有多個軟件飛行器部件的庫中的存儲器中存儲接收的軟件飛行器部件; 提供用戶界面系統以操控庫中的多個軟件飛行器部件;響應從用戶界面系統接收將從庫的 多個軟件飛行器部件中選出的軟件飛行器部件上傳給目標飛行器數據處理系統的用戶輸 入,創建命令以發送所選的軟件飛行器部件給在其中置有目標飛行器數據處理系統的飛行 器,從而形成上行鏈路命令;將上行鏈路命令存儲到庫中的存儲器中的隊列中以形成存儲 的上行鏈路命令;響應來自代理服務器應用程序的對命令的請求,分配存儲的上行鏈路命 令給代理服務器應用程序;以及響應從處理所存儲的上行鏈路命令的代理服務器應用程 序接收的對所選軟件飛行器部件的請求,發送所選的軟件飛行器部件給代理服務器應用程序。在再另一個有利實施例中,計算機程序產品包括計算機可記錄的存儲介質和程 序代碼。該程序代碼包括用于接收庫上的軟件飛行器部件以形成接收的軟件飛行器部件的 代碼。程序代碼也包括用于將接收的軟件飛行器部件存儲在具有多個軟件飛行器部件的庫 中的存儲器中以及提供用戶界面系統以操控庫中的多個軟件飛行器部件的代碼。程序代碼 包括代碼,用于響應從用戶界面系統接收從庫中的多個軟件飛行器部件上傳所選的軟件飛 行器部件給目標飛行器數據處理系統的用戶輸入,創建命令以發送所選的軟件飛行器部件 給在其中置有目標飛行器數據處理系統的飛行器以形成上行鏈路命令。也給出代碼,用于 將上行鏈路命令存儲到庫中的存儲器中的隊列中以形成存儲的上行鏈路命令。程序代碼包 括用于響應來自代理服務器應用程序的對命令的請求,分配存儲的上行鏈路命令給代理服 務器應用程序的代碼,以及用于響應接收來自處理所存儲的上行鏈路命令的代理服務器應 用程序的對所選軟件飛行器部件的請求,發送所選的軟件飛行器部件給代理服務器應用程 序的代碼。特征、功能和優勢可以獨立地在本公開的多個實施例中獲得或者也可以與其他實 施例結合,在這些實施例中的進一步的細節可以參考下列描述和附圖看出。
在所附的權利要求中闡述被認為是新穎特征的有利實施例的特性。然而,參考下 列對本發明的有利實施例的詳細描述,結合附圖閱讀將最佳地理解有利實施例以及優選的 使用方式及其目的和優點。圖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是根據有利實施例調度命令結構的過程流程圖;圖31是根據有利實施例調度命令文件的過程流程圖;圖32是根據有利實施例調度部件的過程流程圖;圖33是根據有利實施例的出列命令的過程流程圖;圖34是圖解說明根據有利實施例的代理服務器應用程序中的數據流的圖示;圖35是圖解說明根據有利實施例的代理服務器應用程序的圖示;圖36-39是圖解說明根據有利實施例的數據結構的圖示;圖40是根據有利實施例的代理服務器文件系統目錄結構的圖示;圖41是根據有利實施例從庫中接收信息的過程流程圖;圖42是根據有利實施例發送下行鏈路文件給庫的過程流程圖;圖43是根據有利實施例庫發送事件文件給庫的過程流程圖;圖44是根據有利實施例發送信息給飛行器的過程流程圖;圖45是根據有利實施例接收軟件飛行器部件的過程流程圖;圖46是根據有利實施例從飛行器接收命令狀態信息的過程流程圖;圖47是根據有利實施例接收下行鏈路文件的過程流程圖;圖48是根據有利實施例從軟件維護工具接收狀態信息的過程流程圖;圖49是根據有利實施例向軟件維護工具發送信息的過程流程圖;圖50是根據有利實施例發送軟件飛行器部件的列表給軟件維護工具的過程流程 圖;圖51是根據有利實施例從軟件維護工具接收下行鏈路文件的過程流程圖;圖52是根據有利實施例從軟件維護工具接收事件日志文件的過程流程圖;圖53是圖解說明根據有利實施例的數據流和軟件維護工具的圖示;圖54是根據有利實施例的軟件維護工具的框圖;圖55是根據有利實施例描寫的命令表和命令資源表的圖示;圖56是根據有利實施例的部分下行鏈路數據的圖示;圖57是根據有利實施例的下行鏈路表的圖示;圖58是根據有利實施例的軟件維護工具文件系統目錄結構的圖示;圖59是圖解說明根據本發明有利實施例的實現在軟件維護工具中的界面組件的圖示;圖60-65是根據本發明有利實施例的用戶界面組件的用戶界面的示例性實現;圖66是圖解說明根據本發明有利實施例,通過軟件維護工具發送命令和軟件飛 行器部件給飛行器的數據流的圖示;圖67是圖解說明根據本發明有利實施例在處理下傳的文件的過程中在軟件維護 工具中的數據流的圖示;圖68是圖解說明根據本發明有利實施例的數據流和由軟件維護工具記錄輸入事 件的圖示;圖69是圖解說明根據本發明有利實施例從庫檢索部件過程中軟件維護工具中的 數據流的圖示;圖70是圖解說明根據本發明有利實施例在檢索和創建命令期間軟件維護工具中 的數據流的圖示;圖71是圖解說明根據本發明有利實施例從可替代源上傳軟件飛行器部件的圖 示;圖72是根據本發明有利實施例用于管理軟件飛行器部件的過程的高級流程圖;圖73是根據本發明有利實施例用于管理軟件飛行器部件的過程的更詳細流程 圖;圖74是根據本發明有利實施例從軟件維護工具發送軟件飛行器部件給機載電子 分配系統的過程流程圖;圖75是根據本發明有利實施例接收下行鏈路數據的過程流程圖;圖76是根據本發明有利實施例被用于與飛行器傳輸信息的組件的圖示;圖77是圖解說明根據本發明有利實施例被用于輪詢命令的消息流的消息流圖 示;圖78-79是圖解說明根據本發明有利實施例發送狀態信息的消息流圖示;圖80是根據本發明有利實施例用于下傳數據的消息流圖示;圖81是圖解說明根據本發明有利實施例當文件被部分地傳輸時的消息流圖示;圖82是圖解說明根據本發明有利實施例的上傳過程的消息流圖示;圖83是圖解說明根據本發明有利實施例的上傳過程中的消息流的圖示;圖84是根據本發明有利實施例上傳數據的過程流程圖;圖85是根據本發明有利實施例下傳數據的過程流程圖;圖86是圖解說明根據本發明有利實施例的打包工具的圖示;圖87是圖解說明根據本發明有利實施例的打包工具的圖示;圖88是圖解說明根據本發明有利實施例的包處理的消息流圖示;圖89是圖解說明根據本發明有利實施例的打包工具的用戶界面的一個實現的圖 示;圖90是圖解說明根據本發明有利實施例檢驗包和將包解包的過程中的數據流圖 示;圖91是圖解說明根據本發明有利實施例創建包的過程中的數據流的圖示;圖92是圖解說明根據本發明有利實施例處理被接收的包的過程流程圖。
具體實施例方式現在參考附圖,尤其是參考圖1,給出了根據有利實施例的數據處理環境的示例性 圖示。應該意識到圖1僅僅是示例性的并且沒有聲稱或暗示對其中可實施不同實施例的環 境的任何限制。如同在這里所使用的,術語示例性是指例子并且該例子不一定是理想的實 施。可以對所描述的環境進行多種修改。現在轉到圖1,圖1是根據有利實施例描述圖解說明網絡數據處理系統的圖示,在 該數據處理系統中可以實施軟件部分管理環境。在該例子中,網絡數據處理系統100是在 其中信息可以在飛行器網絡101和地面網絡103之間傳輸的網絡數據處理系統。該信息可 包括,例如而不限于命令、軟件飛行器部件、下行鏈路數據、錯誤日志、使用歷史、飛行日期、 狀態信息和使用手冊。地面網絡103包括位于地面的網絡和計算機。飛行器網絡系統101 是位于飛行器上的網絡和計算機。在這些例子中,命令可以產生于位于庫服務器計算機104上的庫102。庫服務器計 算機104和其他數據處理系統,例如服務器計算機105和106都連接到內聯網108。這些命令可以通過網絡(諸如互聯網112)分配到在代理服務器計算機110上的 地面組件(OGC) 109。內聯網108和互聯網112可以包括多個連接,例如電線、光纖光纜或無 線通信鏈接。代理服務器計算機110可以位于機構例如機場114中。代理服務器,例如代 理服務器計算機110可以位于其他的機場和其他的地點,例如維修地點。代理服務器計算 機110為從庫102接收的命令和部件提供臨時部件存儲器111。命令和軟件飛行器部件也可以被發送到便攜式計算機上的軟件維護工具,例如維 護筆記本計算機116上的軟件維護工具115。代理服務器計算機110和維護筆記本計算機 116共同被稱為地面工具。地面工具可以是任何數據處理系統,該數據處理系統被合適的應 用程序配置以傳輸信息,諸如命令、軟件飛行器部件和下行鏈路數據。代理服務器計算機110可以通過不同類型的連接或鏈接連接到飛行器118。例如, 無線單元120可以與飛行器118上的無線單元124建立無線連接122。無線單元124連接 到飛行器118中的開放式數據網絡126。維護筆記本計算機134具有軟件維護工具136和 地面組件(OGC) 138并且可以建立與機艙無線訪問單元142的通信鏈接140與飛行器118 通信。該通信鏈接140是無線虛擬專用網絡通路。機艙無線訪問單元142在這些例子中連 接到開放式數據網絡126。開放式數據網絡126為不同的通信鏈接(諸如無線鏈接122)提 供接口。此外,連接到機場114的代理服務器計算機110的衛星單元128可以與衛星單元 132建立衛星鏈接130,該衛星單元132同樣也連接到開放式數據網絡126。開放式數據網絡126連接到飛行器數據處理系統144,其包含機載電子分配系統 (OBEDS) 146。存儲裝置148也位于飛行器數據處理系統144中。存儲裝置148提供存儲信 息例如飛行器部件的位置。飛行器數據處理系統144也包括文件傳輸系統(FTS) 150、機載 存儲管理器(OSM) 152、機載數據加載功能塊(ODLF) 154和簽名者一打包者模塊(SCM) 156。 在這些例子中,SCM模塊156可以實現成編譯到機載電子分配系統146中的Java 庫。同樣 地,飛行器數據處理系統144可以采用成員信息系統/維護系統計算機的形式。文件傳輸系統150用于將文件從存儲裝置148向外場可更換單元傳輸。機載存儲 管理器152管理存儲在存儲裝置148中的信息。機載數據加載功能塊154是用于將軟件飛行器部件加載到外場可更換單元的軟件組件。簽名者一打包者模塊156用于處理進入的包 和將這些包中的內容存儲在存儲裝置148中。此外,簽名者一打包者模塊156可以將下載 數據打包,用于下載到代理服務器計算機110。在這些例子中,所有的命令處理都由位于飛行器數據處理系統144中的機載電子 分配系統146啟動。機載電子分配系統146監視空對地鏈接狀態并且確定是否已經建立通 信鏈接。如果鏈接可用,那么機載電子分配系統146通過此鏈接連接到地面數據處理系統。在其他有利實施例中,維護筆記本計算機158可以與隔離的數據網絡166建立通 信鏈接164。維護筆記本計算機158具有軟件維護工具160和地面組件162。通信鏈接 164可以是有線連接。外場可更換單元可以例如是中央服務器模塊(CSM) 168、電子飛行包 (EFB) 170和機艙服務系統(CSS) 172。中央服務器模塊168為飛行器118上的不同網絡提 供常規聯網功能。這些服務包括例如包路由、防火墻和無線接入。機艙服務系統172為飛 行器上的控制系統提供應用,例如照明系統、艙門系統和地址系統。如果機載電子分配系統146建立與地面裝置的連接,那么機載電子分配系統146 請求為飛行器118排隊或存儲的一列命令。在這些例子中,數據處理系統(諸如代理服務器 計算機110、維護筆記本計算機134和/或維護筆記本計算機162)上的機載地面組件109、 138或162與飛行器數據處理系統144上的機載電子分配系統136通信。這種類型的軟件 組件為地面工具提供應用程序接口以向飛行器118上傳命令和軟件飛行器部件以及下傳 數據或文件。對網絡數據處理系統100中的特定組件和配置的圖解說明并不意圖暗示對不同 實施例的實現方式的架構限制。例如,盡管在飛行器網絡101中只顯示了一個飛行器,但在 飛行器網絡101中也有可能存在多個飛行器。另一個例子,在地面網絡103中的航空公司 網絡108可以通過不同于互聯網112的其他類型網絡連接到計算機,例如在機場(諸如機 場114)的代理服務器計算機110。例如,廣域網(WAN)可以被用于替代互聯網112或者與 互聯網112結合。轉到圖2,根據有利實施例描述數據處理系統的圖示。在這些例子中,數據處理系 統200是可用于實現多個數據處理系統的數據處理系統的例子,該數據處理系統例如為圖 1中的庫服務器計算機104、維護筆記本計算機116、代理服務器計算機110、維護筆記本計 算機134、維護筆記本計算機158和飛行器數據處理系統144。在該說明性例子中,數據處理系統200包括通信組織202,該通信組織202提供處 理器單元204、內存206、持久性存儲器208、通信單元210、輸入/輸出(I/O)單元212和顯 示器214之間的通信。處理器單元204用于執行加載到內存206中的軟件的指令。取決于特殊的實現, 處理器單元204可以是一組一個或更多個處理器或者也可以是多處理器核。進一步地,處 理器單元204可以使用一個或更多個異類處理器系統實現,在該系統中,主處理器與次處 理器都在單個芯片上。作為另一個說明性實施例,處理器單元204可以是包含多個相同類 型的處理器的對稱多處理器系統。在這些例子中,內存206可以例如是隨機存取存儲器或任何其他合適的易失性或 非易失性存儲裝置。持久性存儲器208可以依據特殊的實現而采用不同的形式。例如,持 久性存儲器208可以包含一個或更多個組件或裝置。例如,持久性存儲器208可以是硬盤驅動器、閃存、可擦寫光盤、可擦寫磁帶或上述裝置的某個組合。持久性存儲器208所使用 的介質也可以是可拆卸的。例如,可拆卸硬盤驅動器可以被用于持久性存儲器208。在這些例子中,通信單元210提供與其他數據處理系統或裝置的通信。在這些例 子中,通信單元210是網絡接口卡(網卡)。通信單元210可以通過使用物理和無線通信鏈 接兩者之一或同時使用物理和無線通信鏈接提供通信。輸入/輸出單元212允許與連接到 數據處理系統200的其他裝置輸入和輸出數據。例如,輸入/輸出單元212可以通過鍵盤 和鼠標為用戶輸入提供連接。進一步地,輸入/輸出單元212可以向打印機發送輸出。顯 示器214提供向用戶顯示信息的機構。用于操作系統和應用程序或程序的指令位于永久性存儲器208。這些指令可以被 加載到內存206中用于由處理器單元204執行。處理器單元204可以使用計算機實現的指 令執行不同實施例的處理,指令可以位于內存中(諸如內存206)。這些指令被稱為程序代 碼、計算機可用的程序代碼或計算機可讀的程序代碼,該代碼可以被處理器單元204中的 處理器讀取和執行。在不同實施例中的程序代碼可以包含在不同的物理或有形的計算機可 讀介質上,例如內存206或永久性存儲器208。程序代碼216以功能形式位于計算機可讀介質218上并且可以被加載到或傳輸到 數據處理系統200以供處理器單元204執行。在這些例子中,程序代碼216和計算機可讀 介質218形成計算機程序產品220。在一個例子中,計算機可讀介質218可以具有有形的形 式,例如光盤或磁盤,光盤或磁盤可以被插入或置于作為永久性存儲器208的一部分的驅 動器或其他裝置中以用于傳遞到存儲裝置上,例如作為永久性存儲器208的一部分的硬盤 驅動器。在有形形式中,計算機可讀介質218也可以采用永久性存儲器208的形式,例如連 接到數據處理系統200的硬驅動或閃存。計算機可讀介質218的有形形式也稱為計算機可 記錄存儲介質。替代地,程序代碼216可以通過與通信單元210的通信鏈接和/或通過與輸入/ 輸出單元212的連接從計算機可讀介質218被傳輸到數據處理系統200。通信鏈接和/或 連接在說明性例子中可以是物理的(實體的)或無線的。計算機可讀介質也可以采用非有 形介質的形式,例如包含程序代碼的通信鏈接或無線傳輸。為數據處理系統200所說明的不同組件并不意圖提供對不同實施例的實現方式 的架構上的限制。不同的說明性實施例可以實現在數據處理系統中,該數據處理系統包括 除為數據處理系統200圖解說明的那些組件以外的組件或替代為數據處理系統200圖解說 明的那些組件的組件。其他顯示在圖2中的組件可以與所顯示的說明性例子不同。例如,可以使用總線系統實現通信組織202并且該總線系統由一個或更多總線組 成,例如系統總線或輸入/輸出總線。當然,總線系統可以使用任何適當類型的架構實現, 該架構提供在連接到總線系統的不同組件或裝置之間的數據傳遞。此外,通信單元可以包 括一個或更多個用于傳輸和接收數據的裝置,例如調制解調器或網絡適配器。此外,內存例 如可以是內存206或諸如在存在于通信組織202中的接口或內存控制器集線器中的緩存。不同的有利實施例提供了計算機實現的方法、設備和計算機可用的程序產品,用 于管理軟件飛行器部件。現在參考圖3,根據本發明有利實施例描述圖解說明軟件飛行器部件管理設備的 圖示。在本例子中,軟件飛行器部件管理設備300包括接收模塊302、庫304、代理服務器應用程序306、軟件維護工具308和機載電子分配系統310。接收模塊302能夠從源接收軟件飛行器部件并且向庫304發送軟件飛行器部件以 進行存儲。該源可以包括,例如,飛行器制造商、軟件供應商、庫供應商或航空公司。在這些例子中,庫304位于數據處理系統上,例如圖1中的庫服務器計算機102。 庫304為軟件飛行器部件提供存儲系統。同樣地,庫304也可以用于管理軟件飛行器部件。 舉例而非限制性的,對部件的管理可以包括組織軟件飛行器部件、刪除軟件飛行器部件和 分配軟件飛行器部件。安全控制處理以及版本化控制處理可用于管理軟件飛行器部件。代理服務器應用程序306可以根據特定的實施而位于相同的數據處理系統或不 同的數據處理系統上。代理服務器應用程序306與庫304通信并且能夠為不同的飛行器客 戶系統服務。軟件維護工具308可以是位于便攜式計算機上的軟件維護工具,該便攜式計算機 提供從庫304向機載電子分配系統310發送軟件飛行器部件的替代途徑。軟件維護工具 308根據特定的實施可以直接從庫304或者通過代理服務器應用程序306接收軟件飛行器 部件。機載電子分配系統310是位于飛行器上的飛行器客戶系統的例子。機載電子分配 系統310是在飛行器上的數據處理系統上執行的軟件客戶系統。機載電子分配系統310可 以通過代理服務器應用程序306從庫304為飛行器接收軟件飛行器部件。當機載電子分配 系統310接收軟件飛行器部件后,軟件飛行器部件可以被安裝在外場可更換單元中以供使用。除了使用軟件飛行器部件管理設備300向飛行器分配軟件飛行器部件以外,該設 備也可以被用于接收飛行器產生的數據。該數據也被稱為下行鏈路數據。例如,飛行記錄 器可以生成描述在飛行期間發生的不同事件的數據。該數據可以通過代理服務器應用程序 306和/或軟件維護工具308通過機載電子分配系統310被下傳回庫304,用于之后的使用 和分析。該數據也可以包括關于軟件飛行器部件、外場可更換單元或飛行器配置的配置數 據。現在參考圖4,根據有利實施例描述軟件部件管理環境的框圖。軟件管理環境400 是圖3中的軟件飛行器部件管理設備300的一個實施的例子。在本例子中,打包工具402在計算機404上運行。打包工具402是圖3中接收模 塊302的一個實現的例子。庫406位于服務器計算機410上。庫406是圖3中庫304的一 個實現的例子。代理服務器應用程序412在服務器計算機414上運行并且是圖3中代理服 務器應用程序306的一個實現的例子。軟件維護工具416在便攜式計算機418上運行。軟 件維護工具416是圖3中軟件維護工具308的例子。機載電子分配系統420運行在飛行器 424上的飛行器計算機422上。機載電子分配系統420是圖3中的機載電子分配系統310 的一個實現的例子。在這些例子中,打包工具402可以接收和處理軟件部件,例如包428中的軟件飛行 器部件426。包428是軟件飛行器部件426的打包系統并且不是實體物體。在這些例子中, 包428是包含軟件飛行器部件426的文件。包428例如可以是使用zip文件格式的zip文 件。zip文件格式是數據壓縮和存檔格式,在該zip文件格式中,zip文件可以包括一個或更多個被壓縮的文件。文件打包系統的其他例子例如可以是Java (JAR)檔案文件。 根據特定的實施,這些文件也可以被加密或數字簽名。當然,可以使用為軟件飛行器部件 426提供包裝器的任何類型的機制。在這些例子中,包裝器是安全包裝,其被設計為滿足為 軟件飛行器部件426設定或要求的不同安全要求。在這些例子中,軟件飛行器部件426可以是用于飛行器中的數據處理系統上的軟 件應用程序。數據處理系統可以是位于飛行器424中的外場可更換單元430內的數據處理 系統。應用程序可以包括一組文件。該組文件例如可以包括一個或更多個程序、數據文 件、庫、配置文件或其他信息或代碼。這里所使用的“一組”指一項或更多項。作為例子,在 這些例子中,一組軟件飛行器部件是一個或更多個軟件飛行器部件并且一組命令是一個或 更多個命令。打包工具402接收包428并且處理包428以將軟件飛行器部件426存儲到庫406 中的軟件飛行器部件組432中。該處理例如可以包括為包428和軟件飛行器部件426驗證 簽名。該驗證可以被執行以確保在包428或軟件飛行器部件426中沒有損壞和錯誤。存儲 在庫406內的不同部件可以通過代理服務器應用程序分配給飛行器(諸如飛行器424)。庫406在軟件飛行器部件管理環境400中提供組件以對軟件飛行器部件組432進 行不同的管理操作。舉例而非限制的,這些管理操作可以包括將軟件飛行器部件分配到飛 行器、組織軟件飛行器部件、刪除軟件飛行器部件、從存在軟件飛行器部件的飛行器接收數 據并且接收新的軟件飛行器部件。代理服務器應用程序412可以從軟件飛行器部件組432獲取一組軟件飛行器部件 并且將這些部件發送到機載電子分配系統420。代理服務器應用程序412通過通信鏈接與 機載電子分配系統420通信。該通信鏈接可以采用不同的形式。例如,可以使用無線通信鏈 接。以這種方式,當飛行器在地面上或者甚至在飛行時飛行器部件和數據可以被交換。在 其他例子中,服務器計算機414可以通過網絡中的有線鏈接連接到服務器計算機422。機載電子分配系統420處理該組飛行器部件并且將這些部件作為軟件飛行器部 件434存儲在飛行器計算機422上的存儲裝置436中。如果需要的話,來自軟件飛行器部 件434的軟件飛行器部件可以被安裝在外場可更換單元430中。被發送到飛行器的數據, 諸如軟件飛行器部件、使用手冊、文檔和命令被稱為上行鏈路數據。此外,數據可以在另一個方向通過代理服務器應用程序412從飛行器424流回庫 406。這種類型的數據被稱為下行鏈路數據。在這些例子中,外場可更換單元430可以生成 暫時存儲在存儲裝置436中的下行鏈路數據438。機載電子分配系統420可以將下行鏈路 數據438發送到代理服務器應用程序412。隨后,代理服務器應用程序412將下行鏈路數 據438發送到庫406用于存儲。該數據接著可以被處理和分析。該數據也可以包括,例如 飛行器上軟件的狀態。該狀態信息可以被用于將操作器發送到飛行器以啟動將外場可更換 單元加載和安裝到飛行器上。此外,在便攜式計算機418上的軟件維護工具416提供用于傳輸軟件飛行器部件 和下行鏈路數據的替代途徑。便攜式計算機418例如可以是筆記本計算機。根據特殊的實 現,便攜式計算機418可以通過代理服務器應用程序412從軟件飛行器部件組432獲取軟 件飛行器部件或者直接從庫406獲取軟件飛行器部件。因此,便攜式計算機418可以被傳 輸到飛行器424并且與飛行器計算機422上的機載電子分配系統420建立通信鏈接以向機載電子分配系統420發送軟件飛行器部件。當在服務器計算機414和飛行器424上的飛行器計算機422之間無法建立網絡連 接或通信鏈接時,這種類型的軟件飛行器部件的分配特別地有用。這種情況的發生取決于 機場或維修機構中可使用的裝備的類型。此外,在某些情況下,提供通信鏈接的網絡或通信 系統可能會暫時不可以使用或需要維修。以這種方式,軟件維護工具416將軟件飛行器部 件傳輸到機載電子分配系統420。此外,軟件維護工具416在與機載電子分配系統420通信 時也可以接收下行鏈路數據438。這樣,不同的有利實施例提供計算機實現的方法、設備和計算機可用的程序代碼, 用于管理軟件飛行器部件。此外,不同的有利實施例也將數據從飛行器傳輸到機構或位置 以用于之后的分析或審查。現在轉到圖5,根據有利實施例描述圖解說明軟件部件管理環境的操作模式的表 格。在本例子中,表格500圖解說明不同的操作模式中的一些操作模式,其發生在圖4中的 軟件部件管理環境400中。在這些例子中,不同的操作模式包括接收和存儲部件模式502, 分配命令模式504、分配部件模式506和接收下行鏈路數據模式508。圖解說明在表格500 中的這些不同的操作模式是可能發生在圖4中的軟件部件管理環境400中的一個或更多個 組件中的模式。在接收和存儲部件模式502中,軟件飛行器部件可以被接收和存儲在圖4中的庫 406中。分配命令模式504被用于向飛行器發送命令。這些命令可以是例如上行鏈路數據。 該數據可以包括,例如,向飛行器發送軟件飛行器部件。上行鏈路數據也可以包括向飛行器 發送文檔或其他信息的命令。分配部件模式506是其中軟件飛行器部件被實際發送到飛行 器的操作模式。接收下行鏈路數據模式508是其中將數據從飛行器中的不同組件發送到軟 件部件管理環境中的庫的操作模式。命令協議處理細節現在參考圖6,圖6根據有利實施例描述圖解說明命令類型的圖示。在該例子中, 命令類型600包括上行鏈路命令602、下行鏈路命令604和刪除命令606。上行鏈路命令 602用于從庫向飛行器發送信息。該信息可以包括,例如,軟件飛行器部件、配置信息和其他 數據。下行鏈路命令604用于啟動從飛行器向庫傳輸數據。該信息可以包括,例如,關于軟 件飛行器部件的上傳的狀態信息和配置飛行器上的外場可更換單元的報告。刪除命令606 用于刪除飛行器上的信息。例如,刪除命令606可以用于刪除飛行器上選中的軟件飛行器 部件。在這些例子中,在包中將這些不同的命令發送到飛行器。現在轉向圖7,圖7示出根據有利實施例的命令格式。在該例子中,命令700采用 可擴展標記語言(XML)數據結構。在該例子中,命令700是上行鏈路命令。命令700中的消息標識符元素702提供對命令的唯一標識符。類型元素704指出 命令的類型。在該例子中,命令的類型被標識為上行鏈路命令。系統元素706標識命令的 目標系統。應用程序標識符元素708標識接收命令的目標系統上的應用程序。鏈接標簽元素710標識用于將命令從庫傳輸到飛行器的網絡鏈接的類型。例如, 鏈接可以是有線鏈接或無線鏈接。服務器地址元素712標識被標識裝置的地址。數據類型 元素714提供從屬于命令的信息類型的標識。資源類型元素716標識從屬于命令的特定文 件。
現在轉向圖8,圖8根據有利實施例描述圖解說明上行鏈路命令的處理的消 息流圖示。在該例子中,上行鏈路命令的處理涉及地面系統800、機載電子分配系統 (OBEDS)802、文件傳輸系統(FTS)804和外場可更換單元(LRU)806。在這些例子中,地面系 統800例如是在計算機上的代理服務器應用程序或位于筆記本計算機上的軟件維護工具。該過程始于機載電子分配系統802建立與地面系統800的連接(消息Ml)。響應 該連接,地面系統800激活下一個命令。在該例子中,下一個命令是上行鏈路命令。地面系 統800發送上行鏈路命令給機載電子分配系統802 (消息M2)。機載電子分配系統802檢查 上行鏈路命令的簽名。之后,機載電子分配系統802向地面系統800發送請求,請求資源(消息M3)。地 面系統800使對應于該請求的包可用于傳輸。在消息M3中的請求是從消息M2中的接收的 從上行鏈路命令中被識別的。機載電子分配系統802從地面系統800上傳包(消息M4)。在接收到包之后,機載 電子分配系統802驗證包上的簽名。該驗證包括驗證包上的簽名,同時也驗證軟件飛行器 部件的簽名。此后,機載電子分配系統802向文件傳輸系統804發送傳輸請求(消息M5)。作為 響應,傳輸系統804將軟件飛行器部件傳輸到外場可更換單元806 (消息M6)。接著狀態從文件傳輸系統804被傳輸到機載電子分配系統802 (消息M7)。現在轉向圖9,圖9根據有利實施例描述圖解說明下行鏈路命令的處理的消息傳 送圖示。在該例子中,存在和圖8中相同的組件用于處理下行鏈路命令。在該例子中,機載 電子分配系統802連接到地面系統800 (消息Ni)。地面系統800使下一個命令可用于處 理。下行鏈路命令被發送到機載電子分配系統802 (消息N2)。機載電子分配系統802 向文件傳輸系統804發送請求,以向外場可更換單元806發送下行鏈路命令(消息N3)。接 著,文件傳輸系統804向外場可更換單元806發送下行鏈路命令(消息N4)。外場可更換 單元806處理該命令并且接著向文件傳輸系統804發送下行鏈路數據(消息N5)。文件傳 輸系統804向機載電子分配系統802發送請求,以將下行鏈路數據發送到地面系統800 (消 息N6)。作為響應,機載電子分配系統802將下行鏈路數據打包并且簽名。此外,機載電子 分配系統802也在包中加入元數據。此后,機載電子分配系統802向地面系統800發送包 (消息N7)。現在轉向圖10,圖10根據有利實施例示出圖解說明刪除命令的處理的消息流圖 示。和在圖8和圖9中所描述的組件相同的組件也用于處理刪除命令。該過程始于將機載 電子分配系統802連接到地面系統800 (消息01)。作為響應,地面系統800使下一個命令 可由機載電子分配系統802使用。機載電子分配系統802接收刪除命令(消息02)。此后,機載電子分配系統802檢驗命令的簽名。如果簽名是有效的,則機載電子分 配系統802向文件傳輸系統804發送請求,以向外場可更換單元806發送刪除命令(消息 03)。在這些例子中,只有在命令是發送自代理服務器的時候才檢驗命令上的簽名。對于下 行鏈路命令也是這樣。此后,文件傳輸系統804將刪除命令發送到外場可更換單元806 (消 息 04)。響應于接收到刪除命令,外場可更換單元806刪除由刪除命令標識的資源。
文件傳輸系統804向機載電子分配系統802發送請求,以向地面系統800發送狀 態(消息05)。該狀態指出資源是否已經由外場可更換單元806成功刪除。作為響應,機載 電子分配系統802將該系統發送到地面系統800 (消息06)。響應收到該請求,機載電子分 配系統802將狀態打包并且簽名。此后,包被發送到地面系統800 (消息07)。現在轉向圖11,圖11根據有利實施例示出用于分配軟件飛行器部件的過程的高 級流程圖。在圖11中圖解說明的過程是可在圖4中的軟件部件管理環境400中找到的將軟 件飛行器部件安裝到飛行器上的過程的例子。該流程開始于將軟件飛行器部件存儲到庫中(操作1100)。在這些例子中,庫是軟 件飛行器管理組件,例如圖4中的庫406。該流程接著識別飛行器以接收軟件飛行器部件從 而形成被識別的飛行器(操作1102)。在操作1102中,庫的操作員可以選擇用于分配給一 組飛行器的軟件飛行器部件。在其他實施例中,可以通過通信或從其他系統接收的文件來 預選軟件飛行器部件的目標飛行器。此后,以上行鏈路命令的形式向代理服務器應用程序發送軟件飛行器部件(操作 1104)。代理服務器應用程序將上行鏈路命令和軟件飛行器部件發送到被識別的飛行器上 的機載電子分配系統(操作1106),此后終止流程。現在轉向圖12,圖12根據有利實施例示出接收和存儲軟件飛行器部件的流程圖。 圖解說明在圖12中的過程可以在圖4中的軟件部件管理環境400中實現。該過程是圖5 中接收和存儲部件模式中執行的步驟的例子。該流程開始于打包工具接收包(操作1200)。該工具可以是,例如在圖4中的打包 工具402。在該例子中,包包括可從源點(諸如飛行器制造商或飛行器中的外場可更換單 元)請求得到的軟件飛行器部件。響應軟件飛行器部件可用的通知,該軟件飛行器部件可 以被接收并且通過某傳輸機制被傳遞。包可以在物理介質或有形介質諸如光盤、閃存或數 字通用光盤上接收。在其他實施例中,包可以通過傳輸介質,例如網絡上的通信鏈接接收。打包工具驗證并且將包拆包(操作1202)。在該操作中,如果簽名是無效的或者摘 要與打包工具所計算的摘要不匹配,則生成通知。如果沒有探測到問題,則包被拆包到不同 的位置以進行另外的處理。接著,打包工具驗證軟件飛行器部件的簽名(操作1204)。如果 簽名是無效的或者軟件飛行器部件的摘要與所計算的摘要不匹配,則生成通知。如果沒有 探測到問題,則在包的內容被驗證或校驗后該部件準備好被簽名。打包工具接著檢驗包內容(操作1206)。在本操作中,包的內容可以向檢驗者顯 示,以供檢驗者校驗該內容。在其他實施例中,本操作可以自動進行,用來比較該內容與標 識包期望內容的文件或配置信息。一旦內容已經被校驗,打包工具以航空公司簽名為軟件飛行器部件簽名(操作 1208)。根據實現,也可以使用其他實體的簽名。例如,該簽名可以是客戶的簽名或管理庫 的其他組織的簽名。如果在為軟件飛行器部件簽名過程中沒有發生錯誤,則該部件準備好 被存儲。此后,打包工具將軟件飛行器部件置于庫中(操作1210),此后該流程結束。該操 作包括將軟件飛行器部件從其在文件系統上的當前位置轉移到包含不同軟件飛行器部件 的庫的存儲區域。在這些例子中,庫可以例如是圖4中的庫406。
參考圖13,圖13根據有利實施例示出通過代理服務器分配命令的過程流程圖。圖 13中圖解說明的過程可以在圖4中的軟件部件管理環境400中實現。具體地,該過程是在 圖5中的分配命令模式504期間執行的過程的例子。該流程開始于代理服務器應用程序接收和處理排隊的命令(操作1300)。在這些 例子中,排隊的命令以包發送,稱為命令包。該包被處理并且發送到庫中合適的飛行器命令 隊列中。代理服務器應用程可以自庫的隊列中訪問和檢索排隊的命令。如果這些命令包括 上行鏈路命令,那么打包的軟件飛行器部件也被置于代理服務器的本地清單中。在這些例 子中,命令被置于包中以分配給代理服務器。此后,代理服務器應用程序連接到飛行器上的機載電子分配系統(操作1302)。代 理服務器應用程序可以同時連接到多個飛行器。在這些例子中,飛行器通過無線連接或通 信鏈接連接到代理服務器應用程序。一旦建立通信鏈接,信息可以在代理服務器應用程序 和機載電子分配系統之間傳輸。該信息可以包括,例如,命令、數據、軟件飛行器部件、配置 文件、使用手冊和狀態信息。代理服務器應用程序接著自動將針對飛行器的打包命令傳輸到機載電子分配系 統(操作1304)。在這些例子中,指定給飛行器的打包命令可供機載電子分配系統用于檢索。機載電子分配系統讀取命令并且執行命令(操作1306)。在這些例子中,機載電子 分配系統輪詢代理服務器應用程序上的命令隊列并且每次為一個命令檢索飛行器的每個 命令。機載電子分配系統接著檢驗打包的命令(操作1308)。如果包經過檢驗,那么命令 接著傳遞到指定的系統和應用程序。此后,機載電子分配系統返回命令傳輸的狀態(操作 1310),并且此后該過程結束。接著轉向圖14,圖14根據有利實施例示出通過代理服務器應用程序接收和分配 下行鏈路數據的過程流程圖。在圖14中圖解說明的過程可以在圖4中的軟件部件管理環境 400中實現。具體地,圖14中圖解說明的過程是發生在圖5的接收下行鏈路數據模式508 期間的操作的例子。該流程始于代理服務器應用程序連接到飛行器上的機載電子分配系統(操作 1400)。此后,代理服務器應用程序接收數據下行鏈路(操作1402)。在這些例子中,機載電 子分配系統為在包含下行鏈路數據的隊列中的每一項生成下行鏈路。此后,代理服務器應用程序將下行鏈路數據置于本地清單中(操作1404)。該下行 鏈路數據被存儲,以基于某個事件傳輸回到庫。在這些例子中,事件可以是周期性事件,例 如計時器終止。在其他例子中,事件可以是非周期性的事件,例如用戶生成的請求。然后, 代理服務器應用程序向庫發送下行鏈路數據(操作1406),此后該流程結束。在操作1406 中,下行鏈路數據被置于目錄中,供以后使用或分析。現在轉向圖15,圖15根據有利實施例示出使用軟件維護工具分配軟件飛行器部 件的過程流程圖。圖15中圖解說明的過程可以在圖4中的軟件部件管理環境400中實現。 在該過程中的不同操作是發生在圖5中的分配部件模式506期間的操作的例子。該流程開始于軟件維護工具連接到網絡(操作1500)。該網絡是庫存在于其中的 網絡。在該例子中,部件并不存在和位于軟件維護工具上。下一步,軟件維護工具檢索一組 上行鏈路命令并且與軟件飛行器部件一起打包(操作1502)。
此后,軟件維護工具從網絡斷開連接(操作1504)。軟件維護工具接著被移走并 且連接到飛行器上的機載電子分配系統(操作1506)。在這些例子中,該連接需要操作人 員來啟動(發起)該連接。軟件維護工具自動地將該組上行鏈路命令傳輸到機載電子分配 系統(操作1508)。在這些例子中,以一次一條命令的形式將命令發送到機載電子分配系 統。在操作1508中每次發送一條命令,在發送下一條命令前檢查機載電子分配系統是否已 經完成上傳命令或其他信息。機載電子分配系統讀取該組命令并且接收包含軟件飛行器部件的包組(操作 1510)。在這些例子中,機載電子分配系統從軟件維護工具以一次一條的形式檢索該命令組 中的每一條命令。機載電子分配系統檢驗包組(操作1512)。如果包被檢驗,則繼續傳遞軟 件飛行器部件以存儲并且在飛行器中分配。接著,機載電子分配系統將傳輸的狀態返回給軟件維護工具(操作1514)。軟件維 護工具接著返回傳輸狀態(操作1516),此后該過程結束。在該例子中,軟件維護工具將狀 態返回到軟件飛行器部件源,例如庫或代理服務器應用程序。在這些例子中,可以手工添加上行鏈路命令而不是從庫自動地接收。例如,軟件維 護工具的操作者選擇傳輸到飛行器的軟件飛行器部件。該選擇會導致軟件維護工具產生傳 輸軟件飛行器部件的適當命令。該過程還接收軟件飛行器部件組的包。然而,在這種類型的實現中,該流程從操作1508繼續進行以接收選擇的軟件飛行 器部件(操作1518)。在這些例子中,該選擇是基于用戶輸入。此后,軟件維護工具向機載 電子分配系統發出上行鏈路命令(操作1520)。該命令可以被置于命令隊列中供機載電子 分配系統檢索。現在轉向圖16,圖16根據有利實施例示出使用軟件維護工具接收數據的過程流 程圖。圖16中圖解說明的過程可以使用圖4中的軟件部件管理環境400實現。圖16中圖 解說明的操作是在圖5中的接收下行鏈路數據模式508期間發生的操作的例子。該流程開始于軟件維護工具連接到機載電子分配系統(操作1600)。軟件維護工 具從機載電子分配系統接收數據下行鏈路(操作1602)。機載電子分配系統為其下行鏈路 數據隊列中的每一項啟動下行鏈路。此后,軟件維護工具將數據置于本地清單中(操作1604)。在該操作中,軟件維護 工具接受該下行鏈路并且將數據置于該鏈路的清單中。其他與該下行鏈路數據有關的數據 可以顯示在用戶界面中。該用戶界面允許用戶使用不同的參數將下行鏈路數據排序為經過 過濾的下行鏈路數據。這些參數可包括例如而不限于飛行器標識、系統標識、應用程序標識 或數據類型。下一步,軟件維護工具從機載電子分配系統斷開連接(操作1606)。軟件維護工具 從飛行器轉移到另一個位置以傳輸下行鏈路數據。軟件維護工具連接到網絡(操作1608)。 軟件維護工具接著向庫發送下行鏈路數據(操作1610),此后該過程結束。庫圖17-33描述了在軟件部件管理環境下的庫。具體地,這些解說明了在圖4 中的軟件部件管理環境400中實現庫406的一個例子。參考圖17,圖17根據有利實施例示出庫的功能框圖。庫1700是圖4中的庫406 的更詳細例子。庫1700包括用戶界面系統1702和后端1704。后端1704包括接口 1706、存儲器1708和管理組件1710。接口 1706包括消息收發服務1712、超文本傳輸協議(HTTP)服務1714和Web網絡 服務1716。存儲器1708包括文件系統1718和數據庫1720。在這些例子中,管理組件1710 包括部件室1722、命令調度器1724、命令隊列管理器1726、系統配置器1728、輸入文件集合 器1730、報告管理器1732、事件記錄器1734和安全管理器1736。用戶界面系統1702為操作員提供對后端1704的訪問,以進行不同的任務和操作。 用戶界面系統1702可以是圖形用戶界面。更具體地,用戶界面系統1702可以是基于網絡 的應用程序,其允許用戶從遠程位置訪問庫1700。接口 1706包括多個用于將信息輸入到 庫1700和從庫1700輸出信息的不同界面。在接口 1706中,消息收發服務1712允許管理 組件1710內的各種組件和其他應用程序通信。在這些例子中,報告管理器1732使用消息 收發服務1712分配報告以響應請求。消息收發服務1712可以使用各種類型的消息收發服 務實現。例如,消息收發服務1712可以使用Java 消息收發服務實現,Java 消息收發服 務是Java 2企業版套裝中的一部分。該產品由Sun微系統(SunMicrosystems)有限公司 提供。Web網絡服務1716可以使用任何Web網絡服務系統實現。Web網絡服務1716被 設計為提供庫1700和網絡上的其他裝置之間的交互。通過使用可通過網絡(諸如因特網) 訪問的應用程序接口來實現接口 1706中的Web網絡服務1716。Web網絡服務1716可以使 用各種協議來實現,例如簡單對象訪問協議(SOAP)或網絡服務描述語言(WSDL)。超文本傳 輸協議(HTTP)服務1714可以被實現以提供請求和響應系統來管理客戶的響應。這些請求 一般稱為HTTP請求。在這些例子中,超文本傳輸協議服務1714可以用于發送和接收信息,例如文件。 這些文件例如可以是包含軟件飛行器部件的文件、命令、下行鏈路數據和其他合適的信 息。在這些例子中,超文本傳輸協議服務1714被部件室1722、命令調度器1724、輸入文件 集合器1730、報告管理器1732和事件記錄器1734使用。如所描述的,來自于管理組件1710中組件的不同組件可以以不同的理由訪問存 儲器1708。存儲器1708包含不同的存儲系統,其用于在庫1700的后端1704中存儲信息, 例如文件系統1718和數據庫1720。存儲器1708是存儲信息的功能組件并且可以位于一個 或更多個存儲裝置,例如硬盤驅動器或隨機存取存儲器上。存儲器1708例如可以位于單個 存儲裝置,諸如硬盤驅動器上。在其他實施例中,存儲器1708可以位于多個存儲裝置上,該多個存儲裝置可以位 于相同的物理地址或不同的物理地址。在存儲器1708中,文件系統1718提供用于存儲數 據的結構或體系結構。該數據例如可以包括軟件飛行器部件、文檔、下行鏈路數據或其他文 件。在這些例子中,數據庫1720可以包含例如與位于文件系統1718中的文件相關的元數 據和命令。此外,數據庫1720可以包括用于執行其他功能的其他命令,該功能例如為刪除 飛行器上下載下行鏈路數據的文件。部件室1722提供管理存儲和將軟件飛行器部件分配到不同飛行器上的過程。具 體地,部件室1722提供對部件的安全分配。這些過程可以接收新的軟件飛行器部件并且將 軟件飛行器部件封包或打包,以分配到飛行器。命令隊列管理器1726是管理飛行器命令的組件。命令隊列管理器1726可以允許用戶或操作員通過用戶界面系統1702檢查、記錄和改變數據庫1720中的命令的狀態。命 令的檢查可以允許用戶看到不同的命令或基于不同的標準來過濾命令。命令調度器1724是管理創建和調度命令的組件。該組件允許用戶或操作員通過 用戶界面系統1702創建上行鏈路并刪除上下行鏈路命令。命令調度器1724也提供在創建 這些不同類型的命令時的輸入參數確認。當外部裝置以不同的標準請求時,該組件提供分 組、打包和調度命令的機制。在這些例子中,系統配置器1728管理數據的配置以支持由命令調度器1724進行 的操作。系統配置器1728允許用戶定義、選擇或輸入信息以定義可連接到庫1700的外部 裝置。此外,該組件允許為軟件飛行器部件定義飛行器模型、特定飛行器和目的地系統。在 這些例子中,這些目的地系統可以包括位于飛行器中的外場可更換單元。輸入文件集合器1730執行并發引入由外部裝置發送到庫1700的大量文件。報告 管理器1732允許操作員定義由庫1700生成的報告。這些報告可以是包括來自事件日志的 信息的報告,該事件日志可以從和軟件部件管理環境的操作相關的不同源集合。例如,報告 管理器1732可以允許用戶定義報告,該報告標識成功地將特定類型的軟件飛行器部件上 傳到軟件部件管理環境下管理的飛行器的特定模型。事件記錄器1734記錄關于庫1700的操作的事件。此外,事件記錄器1734可以從 連接到庫1700的不同裝置集合日志。這些事件可以包括,例如而不限于從外部源接收的軟 件飛行器部件、軟件飛行器部件到飛行器的成功傳輸、為上傳數據生成的命令、為下傳數據 生成的命令以及產生的用于刪除軟件飛行器部件的命令。下一步,安全管理器1736提供一種機制,以管理操作員使用用戶界面系統1702對 庫1700的訪問。可以通過使用可為特定用戶配置的任務和責任實現安全管理器1736。這 種類型的訪問可以提供訪問庫1700中的不同特征或功能的用戶特權。進一步地,安全管理 器1736也可以提供外部裝置和庫1700之間的安全通信。例如,安全管理器1736可以確保 通過接口 1706的通信通過諸如加密或虛擬專用網絡的機制發生。在操作中,庫1700可以從外部程序,例如在圖4中的打包工具402接收軟件飛行 器部件。在這種類型的操作中,外部程序連接例如超文本傳輸協議服務1714的服務和接口 1706。安全管理器1736執行對連接的鑒定并且確定軟件飛行器部件是否可以被引入。如 果連接被允許,那么超文本傳輸協議服務1714可以接著向部件室1722發送請求以處理輸 入過程。在該過程中,部件室1722將關于軟件飛行器部件組的元數據寫入到數據庫1720 中并且將文件系統1718中實際的軟件飛行器部件組存儲到某選定的文件目錄下。在管理庫1700中的部件時,通過部件室1722從文件系統1718中檢索出軟件飛行 器部件并且將該軟件飛行器部件發送到用戶用于檢查或審查。此外,軟件飛行器部件可以 被存檔到文件系統1718中。這種類型的存檔將部件保存在某指定的目錄或其他存儲裝置 中。此外,部件室1722也可以掃描文件系統1718中部件的證書,以識別將部件簽名的任何 證書是否已經過期。過期的通知通過用戶界面系統1702預先產生。此外,證書過期也會導 致部件室1722使任何包含該部件的命令失效。庫1700也可以被用于創建命令和向外部裝置分配命令。這些命令可以由操作員 通過用戶界面系統1702創建。用戶界面系統1702允許用戶為命令輸入信息。一旦生成命 令,則將這些命令存儲在數據庫1720中。
當外部裝置需要這些命令時,將這些命令打包并且通過接口 1706發送。具體地, Web網絡服務1716可以被用于將這些命令發送到外部組件,諸如代理服務器應用程序或軟 件維護工具。在這些例子中,如果軟件飛行器部件是由命令指定的,那么這些部件可以以分 開傳輸的方式通過超文本傳輸協議服務1714發送。根據特殊的實現方式,這些軟件飛行器 部件可以在被請求時發送或作為傳輸的一部分被發送。此外,報告是可存儲在文件系統1718中的其他數據的例子。這些報告可以是,例 如,電子表格、部件列表和實況報告。從下行鏈路數據獲取的信息,諸如文件和裝置日志可以被存儲在文件系統1718 中。這些文件可以使用輸入文件集合器1730被集合。除了將文件保存在文件系統1718中 以外,該組件可以接受文件并且在數據庫1720中創建元數據項。為庫1700圖解說明的不同組件作為用于不同功能的通信的一個例子給出。這些 不同組件的描述和組織并不意味著暗示對組件實現方式的架構限制。例如,庫1700中的不 同組件可以以與所顯示方式不同的方式再分組或組合。此外,在其他的實現中,某些功能可 以被省略而另外的功能可以被添加。進一步地,某些功能可以被組合并且實現為庫1700中 的單個模塊或應用程序。作為另一個例子,接口 1706可以使用除了圖解說明的接口以外的 其他接口或替代圖解說明的接口的其他接口來實現。現在轉向圖18,圖18根據有利實施例示出圖解說明文件系統目錄布局的圖示。文 件系統目錄布局1800是在圖17的文件系統1718中使用的布局或方案的例子。在本例子 中,文件系統目錄布局1800定義用于在圖17中的文件系統1718中定位文件的信息。文件 類型包括,例如下行鏈路1802、日志1804、部件1806、替換部件簽名列表(APSL) 1808、電子 表格1810和檔案1812。在文件系統目錄布局1800中依據不同類型的信息標識這些類型的文件中的每一 種類型。例如,下行鏈路1082包括日期1814、裝置1816、尾數1818、唯一標識符(UID) 1820 和下行鏈路文件名1822。日期1814標識下行鏈路文件的創建日期。裝置1816標識將下行 鏈路數據從飛行器傳輸到庫的裝置。該裝置可以是,例如代理服務器應用程序或軟件維護 工具。尾數1818標識在其上安置有下行鏈路數據的特定飛行器。唯一標識符1820唯一地 標識文件系統中的文件。下行鏈路文件名1822是下行鏈路文件的名字。下一步,日志1804包括裝置1824、唯一標識符(UID) 1826和事件日志文件名 1828。部件1806用于軟件飛行器部件并且包括唯一標識符(UID) 1830、包1832、包文件名 1834和打包的部件文件名1836。包1832標識具有軟件飛行器部件的包所位于的目錄。包 文件名1834是包文件的名字。打包的部件文件名1836是包含軟件飛行器部件的文件的名 稱。互換部件簽名列表(APSL) 1808包括唯一的名稱1838并且電子表格1810包括唯 一的名稱1840。檔案1812包括軟件飛行器部件(SAP) 1842、唯一標識符(UID) 1844和包文 件名1846。給出的文件系統目錄布局1800作為在圖17中的文件系統1718的一個實現的例 子。在其他有利實施例中可以使用其他適用于特殊實現的文件系統布局或方案。現在參考圖19,圖19根據有利實施例示出圖解說明隊列中命令的組織的圖示。在 本例子中,隊列1900、1902和1904是位于圖17中的數據庫1720中的隊列例子。
隊列1900包括命令1906 ;隊列1902包括命令1908 ;并且隊列1904包括命令 1910。在這些例子中,命令1906、1908和1910是去往特定飛行器的命令。命令可以是,例 如上行鏈路命令、下行鏈路命令或刪除命令。上行鏈路命令是從圖17中的庫1700向飛行 器發送信息的命令而下行鏈路命令是從飛行器向圖17中的庫1700發送信息的命令。刪除命令是用于刪除飛行器上的信息的命令。該信息例如可以是,軟件飛行器部 件、配置文件或使用手冊。在這些例子中,這些隊列中的每一個都與一個特定的地面工具或 裝置相關。在這些例子中,隊列1900、1902和1904與不同的裝置關聯或指派給不同的裝置, 所述裝置將命令分配給飛行器。例如,隊列1900可以與第一代理服務器應用程序關聯,隊列1902與第二代理服務 器應用程序關聯并且隊列1904與軟件維護工具關聯。當不同的裝置與圖17中的庫1700 聯系時,命令被分配到哪個裝置取決于命令是否存在于與所述裝置關聯的隊列中。現在轉向圖20,圖20根據有利實施例示出軟件飛行器部件的框圖。在該例子中, 軟件飛行器部件2000存儲在包2002中。包2002存儲在圖17的文件系統1718中。在這些例子中,包2002是文件。包2002可以為,例如而不限于zip文件格式。包 2002在一些實施例中也可以包含多于一個軟件飛行器部件。軟件飛行器部件2000可以包 括一組為特定部件提供功能性的文件。這些文件例如可以包括,可執行文件、數據文件、配 置文件和庫文件。在所描述的實施例中,包2002和軟件飛行器部件2000被簽名。換句話說,軟件飛 行器部件2000被一個數字簽名簽名而包2002被另一個數字簽名簽名。根據特定的實施例, 這些數字簽名可以是相同的或不同的。當然,在其他的實現中,軟件飛行器部件2000可以 不存儲在包2002中。現在參考圖21至23,圖21至23是根據有利實施例描述的命令數據結構的例子。 圖解說明在這些圖中的不同命令數據結構是從存儲在隊列,例如圖19中的隊列1900、1902 和1904中的命令創建的臨時數據結構例子。現在轉向圖21,圖21根據本發明有利實施例描述刪除命令的命令數據結構。在這 個例子中,刪除命令數據結構2100包括參數2102、2104、2106、2108、2110和2112。參數2102標識要被刪除的一組文件名。參數2104標識要被刪除的一組部件標識 符。參數2106是一組飛機標識符,其標識接收刪除命令的特定飛行器。該列飛機標識符可 以是例如尾數。參數2108標識要發送命令的一組裝置。這些裝置例如可以是地面工具,諸 如代理服務器應用程序或軟件維護工具。參數2110標識接收命令的目的地系統。在這些例子中,目的地系統是要接收命令 的特定外場可更換單元。參數2112標識請求命令的用戶。在圖22中根據有利實施例描述圖解說明上行鏈路命令的命令數據結構的圖示。 在該例子中,上行鏈路命令數據結構2200包括參數2202、2204、2206、2208和2210。參數 2202標識要被上傳或發送的軟件飛行器部件。參數2204標識接收命令的一組飛機。這些 參數包括飛行器標識符。參數2206是針對處理命令的裝置的一組裝置標識符。參數2208 是標識接收命令的目的地系統的一組參數。參數2210標識請求命令的用戶。下一步轉向圖23,圖23根據有利實施例描述圖解說明下行鏈路命令的數據結構 的圖示。在該例子中,下行鏈路命令數據結構2300包括參數2302、2304、2306、2308和2310。
參數2302標識正在被下傳的數據的類型。參數2304標識接收下傳數據的命令的 一組飛行器。參數2306針對一組將命令發送到飛行器組的裝置。參數2308標識接收命令 的飛行器組上的一組外場可更換單元。參數2310標識請求命令的用戶。這些命令數據結構是命令的縮寫形式,這些命令允許諸如代理服務器應用程序或 軟件維護工具的裝置開始處理由命令數據結構引用的命令。在這些例子中,這些命令數據 結構可以降低經過不同通信鏈接的通信總量。裝置在接收到這些命令數據結構后可以請求 實際的命令。在這些例子中,這些命令數據結構在被發送到地面工具后被刪除。現在參考圖24,圖24根據有利實施例描述調度命令的用戶界面的圖示。窗口 2400 是用戶界面的例子,該用戶界面通過圖17中的命令調度器1724的用戶界面系統1702呈 現。在該例子中,用戶可以在創建命令,諸如上行鏈路命令和下行鏈路命令之間做選 擇。可以通過控件2402和2404做出該選擇。控件2402可以用來生成上行鏈路命令而控 件2404可以用來生成下行鏈路命令。控件2406可用來生成刪除命令。在這個描述的例子中,控件2402已經被選擇,導致區域2408顯示在窗口 2400中。 區域2408使用戶能夠輸入信息以創建一個上行鏈路命令。例如,用戶可以從列表2410中 選擇飛機尾數。這些飛機尾數對于特定的飛行器是唯一的。用戶也可以從列表2412中選擇代理服務器應用程序形式的裝置以分配命令。同 樣地,也可以從列表2414中選擇軟件維護工具形式的裝置。飛行器上的目的地系統可以通 過欄2416選擇。在這些例子中,目的地系統是特殊的外場可更換單元。欄2418允許輸入 部件號碼。所輸入的該部件號碼提供了關于顯示在欄2420、2422、2424、2426和2428中的 部件的其他信息。根據特殊的實現,所顯示的關于部件的特定信息可以變化。欄2416具有針對不同命令類型的不同的可選擇值并且規則由欄1724來執行,欄 1724表示在圖17的控件1702和控件1704中。圖25至26是根據有利實施例的圖形用戶界面的圖示。這些圖形用戶界面是通過 圖17中的用戶界面系統1702呈現的界面的例子。呈現這些被描述的圖形用戶界面是為了 圖解說明一個特殊實現而并不意圖限制由圖17中的用戶界面系統1702設計或呈現圖形用 戶界面的方式。轉向圖25,圖25根據有利實施例示出圖解說明瀏覽命令的用戶界面的圖示。在 該例子中,窗口 2500是圖形用戶界面的例子,該圖形用戶界面可以通過用戶界面系統1702 顯示,其針對在圖17中的命令隊列管理器1726。在該例子中,用戶可以瀏覽不同命令的狀 態。具體地,特定類型的命令可以通過窗口 2500瀏覽。可以使用控件2502、2504和2506瀏覽命令。未決的命令可以通過選擇控件2502 瀏覽,已經執行的命令可以通過選擇控件2504瀏覽并且出隊列命令可以通過選擇控件 2506瀏覽。用戶可以通過控件2508記錄或改變命令在隊列中的存儲順序。在該例子中,未 決的命令已經被選擇并且顯示在窗口 2500的區域2510中。現在參考圖26,圖26根據有利實施例描述瀏覽部件的用戶界面的圖示。窗口 2600 是通過用戶界面系統1702呈現的圖形用戶界面的例子,其針對圖17中的部件室1722。在該所描述的例子中,庫中的軟件飛行器部件可以被瀏覽。有效的部件可以通過 控件2602的選擇瀏覽,引入的部件可以通過控件2604的選擇瀏覽,過期的部件可以通過控件2606的選擇瀏覽,并且故障的部件可以通過控件2608的選擇瀏覽。在該例子中,控件 2602已經被選擇并且位于庫中的有效部件被顯示在窗口 2600的區域2610中。現在參考圖27,圖27根據有利實施例描寫用于接收庫中軟件飛行器部件的過程 流程圖。圖27中圖解說明的過程可以在圖17中的庫1700中實現。具體地,這些過程可以 在圖17中庫1700的管理組件1710中的部件室1722中實現。該流程開始于接收軟件飛行器部件(操作2700)。在接收軟件飛行器部件過程中 也接收元數據以及用于軟件飛行器部件的數據流。該流程確定軟件飛行器部件的元數據是 否正確(操作2702)。在這些例子中,元數據是與軟件飛行器部件相關的數據和/或描述軟 件飛行器部件的數據。在這些例子中,下列元數據可以被檢查部件名是否符合規則表達 /:* \”<>,I. \\]*并且是否少于或等于200字符;生產狀態是否是BLACK_LABEL、RED_LABEL 或BLUE_LABEL ;可應用的標準的長度是否大于或等于0并且小于或等于500字符;知識產 權所有者的長度是否大于或等于0并且小于或等于100字符;版本日期是否是正確的日期 格式;以及描述的長度是否大于或等于0并且小于或等于2000字符。如果部件的元數據是正確的,那么該流程將臨時條目登記到庫中的數據庫(操作 2704)。該臨時條目用于提供接收部件的過程的狀態。該條目最初指出已經開始接收部件。 該流程也在文件系統中創建目錄結構(操作2706)。當文件被接收時,該目錄結構用于保存 包含軟件飛行器部件的文件的各部分或各段。判斷是否已經完成軟件飛行器部件的接收(操作2708)。如果還沒有完成軟件飛 行器部件的接收,則在數據庫中更新該進展(操作2710)并且將所接收的文件段保存在文 件系統中(操作2712)。該進展可以顯示在用戶界面中。該流程接著返回到操作2708繼續 檢查軟件飛行器部件的接收操作的狀態。當在操作2708中完成軟件飛行器部件的接收時,該流程判斷該部件是否完整(操 作2714)。進行此操作以判斷軟件飛行器部件是否完整以及該部件是否有錯誤。該檢查是 通過匹配證書和接收到的部件來進行的。如果軟件飛行器部件是完整的,則該流程將軟件飛行器部件打包(操作2716)。該 流程接著判斷該打包操作是否成功(操作2718)。如果打包操作是成功的,則在數據庫中將 該部件標記為完整的(操作2720)。打包的文件被保存在文件系統中用于以后的檢索(操 作2722),此后該流程結束。再參考操作2718,如果打包操作不成功,則生成錯誤(操作2724)。此后,該流程 將該條目從數據庫中移除(操作2726)并且將已經保存的軟件飛行器部件的數據移除(操 作2728),此后該流程結束。再次參考操作2714,如果軟件飛行器部件是不完整的,該流程 也進行到操作2724。執行操作2726和2728以為軟件飛行器部件接收失敗清除數據庫條目 以及文件系統條目。再次參考操作2702,如果軟件飛行器部件的元數據是不正確的,則該流程生成錯 誤(操作2730),此后該流程結束。在操作2730和2724中生成的錯誤可以被存儲在日志中 用于以后使用。現在轉向圖28,圖28根據有利實施例示出創建命令的過程流程圖。圖28中圖解 說明的過程可以在圖17的庫1700中實現。具體地,該過程可以在圖17中的命令調度器
271724中實現。該流程始于接收創建命令的用戶請求(操作2800)。該命令可以通過例如由圖17 中的用戶界面系統1702提供的用戶界面接收。在這些例子中,用戶可以選擇三種命令類型 中的一種。命令類型包括上行鏈路、下行鏈路和刪除。該流程識別來自用戶輸入的命令類 型(操作2802)。響應識別的命令類型,該流程生成參數和可能值的一個列表(操作2804)。該列表 例如包括飛行器尾數、適用的裝置名列表和接收命令的目的地外場可更換單元。該流程接 著選擇性地向用戶呈現列表和值(操作2806)。在這些例子中,列表是上下文敏感的列表, 其根據用戶之前做出的選擇提供額外的選項或值。該流程接收從呈現的列表和值選擇值的用戶輸入(操作2808)。該流程接著驗證 參數的上下文關系(操作2810)。在這些例子中,上下文敏感的值存在于圖17中的用戶界 面1702中。該界面實現命令類型中允許的目的地系統的值。操作2810在圖17中的后端 1704再次檢查這些規則。后端1704可以服務于除圖17中的用戶界面1702以外的用戶界 面,該用戶界面可以具有不同的驗證規則。該流程創建一組命令(操作2812)。在操作2812中,該流程為命令類型、尾數和裝 置名的每個組合創建一個命令。當然,其他的規則和政策可以用于識別根據用戶選擇創建 的命令。典型地,屬于相同飛行器的相同類型的命令在邏輯上被分組。此后,命令組被保存 在庫的數據庫中(操作2814),此后該流程結束。參考圖29,圖29根據有利實施例描述管理軟件飛行器部件的過程的高級流程圖。 在這些例子中,圖29中圖解說明的過程可以在圖17的庫1700中實現。該流程開始于向分配裝置發送命令結構(操作2900)。這些命令結構可以是,例如 圖21中的刪除命令數據結構2100、圖22中的上行鏈路命令數據結構2200或圖23中的下 行鏈路命令數據結構2300。這些命令結構響應來自于不同的裝置的對命令的請求而被發 送,該裝置例如為代理服務器應用程序或軟件維護工具。此后將命令文件發送到裝置(操作2902)。在特定裝置執行命令時,響應對命令 本身的請求發送這些命令文件。取代發送命令文件,發送命令結構以減少在多個裝置持續 輪詢時產生的通信總量。取而代之的是,在裝置實際開始執行該命令時命令文件才被發送。 此后,該流程發送軟件飛行器部件(操作2904),此后該流程結束。在該操作中,軟件飛行器 部件作為命令執行的一部分發送。現在轉向圖30,圖30根據有利實施例描寫調度命令結構的過程流程圖。圖30中 圖解說明的過程是對圖29中的操作2900更詳細的描述。該流程開始于從裝置接收請求(操作3000)。在這些例中,裝置可以是,例如代理 服務器應用程序或軟件維護工具。當然該裝置可以是任何與庫聯系或連接以獲取命令的裝置。該流程接著查詢數據庫,以獲得相關聯的命令或置于特定裝置的命令隊列中的命 令(操作3002)。操作3002可以使用圖17中的命令隊列管理器1726實現。該流程接收查 詢的結果(操作3004)。此后,該流程創建包含該裝置的命令的命令數據結構(操作3006)。該流程接著 將命令數據結構返回給裝置(操作3008),此后該流程結束。在這些例子中,基于裝置對命令的請求創建命令數據結構。在其他實施例中,基于某事件或周期性事件(諸如計時器到 期)來創建命令數據結構并且將命令數據結構廣播到多個裝置。現在轉向圖31,圖31根據本發明有利實施例描寫調度命令文件的過程流程圖。圖 31中圖解說明的過程是對圖29中的操作2902更詳細的描寫。圖31中圖解說明的過程可 以在組件中,例如圖17中的命令調度器1724中實現。在該流程的這點上,裝置已經接收要處理的命令數據結構。基于該命令數據結構, 該裝置可以進行該命令的某些處理。例如,裝置可以開始建立與飛行器的通信鏈接。命令 數據結構為裝置提供了充足的信息以執行不同的過程。然而命令向飛行器的傳播要求命令 文件中的另外的信息。該流程開始于從裝置接收對命令文件的請求(操作3100)。該流程查詢數據庫由 該裝置識別的命令(操作3102)。使用之前在命令結構中發送的唯一標識符進行該查詢。該流程接著從數據庫接收結果(操作3104)。在這些例子中,操作3102基于命令 ID查詢數據庫并且檢索關于該命令的所有信息,該命令用于創建打包版本的可擴展標記語 言形式的命令。操作3104可能是多余的。這些結果用于創建命令文件(操作3106)。該流 程將命令文件打包(操作3108)。此后,該流程將包返回給裝置(操作3110),此后該流程 結束。現在參考圖32,圖32根據本發明有利實施例描述調度部件的過程流程圖。圖32 中圖解說明的過程是對圖29中的操作2904的更詳細描述。在本例子中的過程可以使用圖 17中的命令調度器1724實現。該流程開始于從裝置接收對軟件飛行器部件的請求(操作3200)。該流程為軟件 飛行器部件查詢數據庫(操作3202)。該流程從文件系統檢索打包的軟件飛行器部件(操 作3204),并從數據庫檢索軟件飛行器部件的元數據(操作3206)。該流程接著對軟件飛行 器部件進行完整性校驗(操作3208)。進行該完整性校驗是為了確保軟件飛行器部件在存 儲期間中沒有被破壞。該完整性校驗可以使用各種錯誤校驗處理進行,包括哈希算法。基于完整性校驗對軟件飛行器部件是否有效做出判斷(操作3210)。如果軟件飛 行器部件是有效的,那么將打包的軟件飛行器部件返回到裝置(操作3212),此后該流程結 束。另一方面,如果軟件飛行器部件是無效的,則返回錯誤消息(操作3214),此后該流程結 束ο現在轉向圖33,圖33根據本發明有利實施例描述命令出隊列的過程流程圖。圖 33中圖解說明的過程可以使用圖17中的命令隊列管理器1726執行。該過程被用于在命令 已經被處理后將命令從數據庫中的隊列中移除。該流程開始于接收命令執行的通知(操作3300)。在該例子中,通知是從執行命令 的裝置接收的。該流程查找該命令以及其相關的組(操作3302)。該查找是使用命令的唯 一標識符進行的。此外,與已經執行的命令相關的其他命令是冗余命令,這些命令可能已經 被發送到同一飛行器的不同裝置。該流程標記數據庫的命令隊列中的該命令并且使該命令出隊列(操作3304)。該 流程也使該組中的所有其他命令出隊列(操作3306)。使其他命令出隊列防止在今后將冗 余的命令分派到不同的裝置。此后,保存狀態(操作3308),此后該流程結束。代理服務器
現在轉向圖34,圖34根據本發明有利實施例描述圖解說明代理服務器應用程序 中的數據流的圖示。代理服務器應用程序3400與組件相互作用,組件例如為庫3402、軟件 維護工具3404和機載電子分配系統3406。在這些例子中,地面組件3408提供用于在庫 3402和機載電子分配系統3406之間的信息傳輸。庫3402可以向代理服務器應用程序3400發送新的命令和軟件飛行器部件(消息 Al)。處理這些命令的結果以及部件組作為命令狀態信息可以由代理服務器應用程序3400 返回給庫3402 (消息A2)。此外,代理服務器應用程序3400也可以向庫3402發送下行鏈路 以及事件日志文件(消息A3)。關于與機載電子分配系統3406傳輸信息,地面組件3408和代理服務器應用程序 3400可以向機載電子分配系統3406發送新命令和軟件飛行器部件(消息A4)。命令狀態 信息可以返回到地面組件3408,標識發送到機載電子分配系統3406的命令和部件的狀態 (消息A5)。此外,機載電子分配系統3406可以向地面組件3408發送下行鏈路文件(消息 A6)。代理服務器3400是代理服務器應用程序(諸如圖36中的代理服務器應用程序3606) 的一個例子。代理服務器應用程序3400可以向軟件維護工具3404發送新命令和部件(消息 A7)。軟件維護工具3404在處理這些文件后返回命令狀態(消息A8)并且發送下行鏈路 文件或事件日志(消息A9)。在這些例子中,軟件維護工具3404可以與機載電子分配系統 3406通信。軟件維護工具3404提供與機載電子分配系統3406交換信息的備選路徑。軟件 維護工具3404位于便攜式數據處理系統中,該數據處理系統可以從與代理服務器應用程 序3400相關的地址轉移到機載電子分配系統3406所在的飛行器上。下面關于軟件維護工 具3404的描述對這些細節進行更詳細的描述。盡管以特定的順序描述了不同的交互,但是任何不同的消息和交互可以在任何時 候同時發生。例如,在代理服務器應用程序3400向機載電子分配系統3406發送命令和飛行器 部件的同時,機載電子分配系統3406可以將下行鏈路數據下載到代理服務器3400。此外, 代理服務器應用程序3400可以同步地服務多個飛行器客戶系統,例如軟件維護工具3404 和機載電子分配系統3406。現在參考圖35,圖35根據本發明有利實施例描述圖解說明代理服務器應用程序 的圖示。代理服務器應用程序3500是圖34中的代理服務器應用程序3400的實現的例子。 在本例子中,代理服務器應用程序3500包括控制進程3502、數據庫3504、文件系統3506、地 面組件接口 3508、軟件維護工具接口 3510和地面組件3512。在這些例子中,這兩個接口可 以使用應用程序接口(API)調用實現。數據庫3504包括由控制進程3502處理的命令。在數據庫3504中的每條記錄都 標識命令的狀態。例如,記錄可以標識命令是否已經被處理并且標識目標飛行器和飛行器 上的目標外場可更換單元。在這些例子中,文件系統3506存儲軟件飛行器部件和下行鏈路 數據。地面組件3512是在代理服務器應用程序3500中的軟件組件,其與飛行器上的機 載電子分配系統通信。地面組件應用程序接口 3508提供控制進程3502用以與地面組件 3512交換信息的調用。
30
運行地面組件3512以允許任何進程,例如在代理服務器應用程序3500中的控制 進程3502,與機載電子分配系統通信而不必為了與機載電子分配系統通信而進行特別的設 計。結果,控制進程3502可以被改變或修改而不必包括用于與機載電子分配系統通信的協 議。進一步地,可以進行對機載電子分配系統的改變不需要改變代理服務器應用程序3500 中的所有進程。替代地,可以對地面組件3512進行修改或改變。軟件維護工具應用程序接口 3510提供的調用可以被控制進程3502用于與軟件維 護工具通信。數據庫3504和文件系統3506的結構和組織可以與在軟件飛行器部件維護環 境的庫中使用的數據庫和文件系統的結構和組織相似。轉到圖36至39,圖36至39根據本發明有利實施例描述圖解說明在圖35中的數 據庫3504中所使用的數據結構的圖示。命令結果數據庫表3600圖解說明了命令結果的信 息和記錄。命令結果數據庫表3600包括命令結果標識符3602、命令標識符3604、地面狀態 3606、飛行器狀態3608、日期3610、命令類型3612、飛行器標識符3614和裝置名3616。命令結果標識符3602唯一地標識特定的命令結果記錄,并且命令標識符3604唯 一地標識特定命令記錄。在多個表中都可以發現命令標識符3604,以使表中的數據與特定 的命令記錄相關。地面狀態3606標識命令狀態消息的來源,在這些例子中,該命令狀態消 息可以來自地面組件或機載電子分配系統。飛行器狀態3608是源自于地面組件或機載電 子分配系統的命令狀態消息。地面狀態標識被上傳或下傳的文件的上行鏈路或下行鏈路的 狀態。該信息提供文件的實際上行鏈路或下行鏈路完成的百分比。每個百分數可以被報 告成獨立的狀態。以上行鏈路為例,完成四分之一的狀態消息后接著是完成一半的狀態消 息,接著是完成四分之三的消息,最后是完成的狀態消息,它們都作為發送到機載電子分配 系統的文件的內容發送。每條消息的報告都指出適當數量的文件內容已經被成功地傳送。 同樣的事情也發生在下行鏈路操作期間將文件內容寫入到地面組件的情況。日期3610標識特定裝置發送命令結果的日期。命令類型3612標識命令的類型, 例如上行鏈路、下行鏈路或刪除。飛行器標識符3614是標識在航空公司的機隊中的特定飛 行器的唯一值。裝置名3616標識將命令結果發送到代理服務器應用程序的裝置的名稱。現在轉向圖37,圖37根據本發明有利實施例描述下行鏈路文件數據庫表的圖示。 在該例子中,下行鏈路文件數據庫表3700圖解說明下行鏈路文件數據庫表中的信息。在該 例子中,下行鏈路文件數據庫表3700包括下行鏈路文件標識符3702、飛機標識符3704、裝 置3706、日期3708、文件名3710、文件通用資源定位器3712和文件狀態3714。現在參考圖38,圖38根據本發明有利實施例描述命令和命令資源數據庫表。在 本例子中,命令數據庫表3800表示命令而命令資源數據庫表3802表示命令資源。命令數 據庫表3800包括命令標識符3804、飛機標識符3806、應用程序名3808、命令類型3810、裝 置名3812、系統名3814、日期3816、服務狀態3818、優先級3820、命令組3822、打包的命令 3824和打包的命令路徑3826。命令資源數據庫表3802包括命令資源標識符3828、數據類型3830、應用程序標 準3832、部件期滿日期3834、所有者3836、名稱3838、生產狀態3840、發布日期3842、供應 商3844、路徑3846、包期滿日期3848和命令標識符3850。在命令資源數據庫表3802中標 識的命令資源是在上行鏈路命令的包中的軟件飛行器部件、下行鏈路命令的文件或配置報告和刪除命令的文件或軟件飛行器部件文件。命令標識符3804唯一地標識特定的命令結果記錄。飛機標識符3806標識特定的 飛行器。應用程序名3808標識外場可更換單元和飛行器。例如,應用程序名3808可以標 識特定的外場可更換單元。裝置名3812標識不同的裝置,為該裝置將命令分派給飛行器。 裝置名標識例如特定的代理服務器應用程序或軟件維護工具。在這些例子中,名稱可以是特定代理服務器應用程序或軟件維護工具的特定名 稱。系統名3814標識應用程序存在于其上的系統的名稱。日期3816標識庫中的命令調度 器創建該命令的日期。服務狀態3818被用于標識命令的狀態。該字段可以標識已經被成功地發送到機 載電子分配系統的命令并且標識被軟件維護工具報告為已經成功地上傳到機載電子分配 系統的命令。優先級3820是用來將隊列中的命令排序以分配到機載電子分配系統的值。命令 組3822可以用來為命令分組。打包的命令3824是包括打包格式的命令的文件的名稱。打 包的命令路徑3826是標識存儲有打包的命令的位置。在命令資源數據庫表3802中,命令資源標識符3828唯一地標識命令資源記錄。數 據類型3830標識資源數據的類型。例如,數據類型可以是軟件飛行器部件或文件。所有者 3836標識軟件飛行器部件的知識產權所有者。在這些例子中,名稱3838是文件或軟件飛行 器部件的名稱。生產狀態3840標識包中的軟件飛行器部件的生產狀態。該狀態可以是,例如紅標 簽、藍標簽或黑標簽。紅標簽部件是處在工程開發中的不可交付的生產質量硬件或軟件部 件。藍標簽部件是被控制的和維護的,其僅限于在實驗室環境下使用。黑標簽部件被認為 是生成完成的并且能夠被交付給航空公司客戶。發布日期3842標識包中的軟件飛行器部件發布的日期。供應商3844標識軟件飛 行器部件的供應商。在這些例子中,路徑3846標識軟件飛行器部件的位置。例如,通用資源 定位器字符串可以被用來檢索部件。包期滿日期3848是為包簽名的證書期滿的日期。命 令標識符3850標識特定的飛行器命令記錄。通過將文件名存儲在打包的命令字段中并結合文件路徑字符串,可以將打包的命 令文件與命令表中的記錄相關聯。通過將文件保存在名稱3838中并結合文件路徑字符串, 軟件飛行器部件包文件可以與命令資源數據庫表3802中的命令資源表中的記錄相關聯。在圖39中,根據本發明有利實施例描述圖解說明飛機命令數據庫表的圖示。在該 例子中,飛機命令數據表3900提供為飛機命令找到的信息例子。飛機命令數據庫表3900 包括飛機命令標識符3902、消息標識符3904、飛機標識符3906、命令類型3908和命令XML 3910。飛機命令標識符3902被用于唯一地標識特定的飛行器命令記錄。消息標識符 3904是與特定下行鏈路命令相關的部分下行鏈路的標識符。為下行鏈路文件生成該標 識符,所述下行鏈路文件不是發送到機載電子分配系統的下行鏈路命令的結果。命令XML 3910標識機載電子分配系統所發送的特定下行鏈路命令的可擴展標記語言文檔文件格式, 該命令XML將在機載電子分配系統請求部分下行鏈路文件時被檢索。在這些例子中,不同表通過命令標識符彼此相關。不同的數據庫表定義針對由代理服務器應用程序所處理的不同的數據元素。不同的過程可以使用這些表中的一個或更多 個,以指出何時插入、更新或刪除記錄。現在轉向圖40,圖40根據本發明優選實施例描述代理服務器文件系統目錄結構 的圖示。在該例子中,目錄結構4000代表文件系統目錄結構。目錄結構4000是一種類型的 目錄結構的例子,該類型的目錄結構可以在圖35的文件系統3506中實現。目錄結構4000 可以標識存儲在代理服務器應用程序上的文件系統中的不同類型的文件。在這些例子中,目錄結構4000包括打包的命令4002、包4004、下行鏈路文件4006、 下行鏈路文件檔案4008、下行鏈路文件部分4010、存檔的事件文件日志4012、事件日志 4014和臨時文件4016。在這些說明性例子中,該類型的目錄結構被用于在文件系統中存儲 文件并且標識或定位文件系統中的文件。現在轉向圖41,圖41根據本發明有利實施例描述從庫接收信息的過程流程圖。在 該例子中,在圖41中圖解說明的過程可以在圖35的控制進程3502中實現。該過程被用于 從軟件飛行器部件維護環境中的庫接收命令和部件。響應一個事件而啟動該過程。例如, 該事件可以是計時器到期。在其他實施例中,事件可以由其他的源引起。例如,該事件可以 通過用戶輸入啟動。該流程開始于成功地標識已經執行的命令(操作4100)。這些命令是代理服務器 應用程序發送至一組飛行器的命令,在該組飛行器中成功地處理這些命令。命令可以是,例 如刪除軟件飛行器文件、加載軟件飛行器文件或從飛行器上的外場可更換單元下傳數據。這些命令可以從代理服務器應用程序中的數據庫(諸如圖35中的數據庫3504) 識別。該特定的命令可以根據命令結果數據庫表(諸如圖36中的命令結果數據庫表3600) 中的命令標識符被識別。這些命令的標識形成發送給庫的命令列表(操作4102)。操作 4100和4102被用于發送命令狀態信息給庫。下一步,該流程向庫請求命令列表(操作4104)。進行操作4104,以啟動將新命令 分配到一組飛行器的處理。該流程接收對請求的響應(操作4106)。判斷是否進行響應而接 收命令列表(操作4108)。如果命令列表沒有被接收,該流程結束,沒有新命令要處理。否 則的話,該流程刪除存儲在數據庫中、不在從庫接收的新命令列表中的命令(操作4110)。在操作4110中,存在于具有代理服務器應用程序的數據庫中的、不包括在從庫檢 索的命令列表中的命令被認為是不必要由代理服務器應用程序處理或操作的命令。在這些 例子中,該特征使得庫成為假定在不同的代理服務器應用程序上處理的或存在的命令的權 威源。如果代理服務器應用程序接收一個命令,并且該命令在處理前被用戶刪除了,那 么庫中的命令調度器為裝置刪除該命令。結果,代理服務器應用程序在以后的請求命令的 周期中將不會接收命令列表中的該命令。通過這種方式,用戶可以通過從命令隊列屏幕刪 除代理服務器應用程序的未決命令為該特定代理服務器應用程序移除所有的命令。此后,該流程將新命令存儲到數據庫中(操作4112)。在這些例子中,命令列表可 以采取命令數據結構的形式。代理服務器應用程序或者立即地或者在其他時間點上選擇性 地請求實際命令本身。該流程接著選擇一條未處理的新命令進行處理(操作4114)。該流程請求包含該 命令的包(操作4116)。響應該請求,該流程接收包(操作4118)。所接收的包接著被存儲在文件系統中(操作4120)。該流程接著判斷是否仍有未處理的新命令(操作4122)。如 果還存在額外的未處理的新命令,則該流程返回到操作4114以選擇另一個未處理的新命 令進行處理。否則,在操作4122中該流程判斷在接收到的新命令中是否存在上行鏈路命令(操 作4124)。如果存在上行鏈路命令,那么選擇未處理的上行鏈路命令進行處理(操作4126)。 該流程接著判斷包含軟件飛行器部件的包是否已經存在于文件系統中(操作4128)。如果 存在該包,那么該流程返回到如上所述的操作4124。如果不存在包,則該流程請求包含軟件飛行器部件的包,該包對應來自庫的命令 (操作4130)。此后,該流程接收該包(操作4132)并且將該包存儲在文件系統中(操作 4134)。接著,該流程返回到操作4124以判斷是否還存在額外的未處理的上行鏈路命 令。如果不存在額外的未處理的上行鏈路命令,則流程結束。否則的話,該流程返回到操作 4126,按照上面所描述的那樣選擇另一條未處理的上行鏈路命令。在執行圖41中的流程期間,三種類型的事件日志消息被創建和記錄。指出代理服 務器應用程序成功地連接到庫的記錄是一個記錄在日志中的事件。指出已經從庫接收到所 接收的命令列表的事件是另一個記錄的事件。也為每條命令記錄事件,事件置于由該命令 識別的飛行器的隊列中。成功發送到庫的命令列表可以被用以輔助航空公司計劃維護操作。現在轉向圖42,圖42根據本發明有利實施例描述向庫發送下行鏈路文件的過程 流程圖。圖解說明在圖42中的流程可以在控制進程(諸如圖35中的控制進程3502)中實 現。該流程圖解說明在代理服務器應用程序向庫發送從機載電子分配系統接收的下行鏈路 文件時發生的不同操作。該流程可以由事件(諸如計時器)啟動。本流程可以在和圖解說 明在圖41中用于處理命令的流程不同的時間開始,以幫助展開通信網絡和減少堵塞。該流程開始于識別數據庫中未傳輸的下行鏈路數據的下行鏈路記錄(操作 4200)。判斷在數據庫中是否有未處理的記錄(操作4202)。如果有未處理的記錄,那么選 擇下行鏈路文件的未處理的記錄進行處理(操作4204)。該流程向庫發送包含下行鏈路數 據的文件(操作4206)。此后,該流程將發送到庫的文件存檔(操作4208)。該流程接著將該文件的數據 庫記錄更新為被存檔的(操作4210)。接著判斷是否還存在額外的未處理的記錄(操作 4212)。如果還存在額外的未處理的記錄,則該流程返回到操作4204。否則,該流程識別數據庫中比某選擇的閾值更早的記錄(操作4214)。該閾值可以 是,例如從在指出下行鏈路文件被接收時間的時間戳中的日期和/或時間開始的某個所選 擇的小時數。該流程從數據庫刪除任何被識別的記錄(操作4216),此后該流程結束。再次 參考操作4202,如果不存在未處理的記錄,則該流程同樣結束。現在轉向圖43,圖43根據本發明有利實施例描述向庫發送事件文件的過程流程 圖。圖43中圖解說明的流程可以在代理服務器應用程序組件(諸如圖35中的控制進程 3502)中實現。像其他流程一樣,圖43中圖解說明的流程可以響應事件(諸如計時器)被啟動。在本圖中的流程支持將事件日志發送回庫,用于分析在規劃操作(諸如維護操作)中使用。發送到圖43的庫的事件日志獲取事件消息,該事件消息是用戶與應用程序用 戶接口系統的交互和/或應用程序組件之間的接口交互的結果。這種類型的信息可以在航 空公司的業務處理期間被使用,用于在確保各種處理跟隨特定操作的檢查期間進行報告。該流程開始于比較當前日志文件和來自之前的處理循環的日志文件的副本(操 作4300)。該流程標識任何從比較兩個日志文件以后出現的任何新事件(操作4302)。該 流程接著將在比較中發現的新條目的事件發送給庫(操作4304)。發送到文件系統的文件 的副本被存檔(操作4306)。該流程接著發送任何延期日志文件給庫(操作4308)。延期 日志文件是從上一個時間段例如上一個日期開始就存在的文件。該流程將任何文件的副本存檔在發送給庫的文件系統中(操作4310)。該流程接 著刪除發送到庫的延期日志文件(操作4312)。下一步,日志文件的上一個副本被刪除并且 當前的日志文件被設為副本用于下一次比較(操作4312)。該流程接著在事件日志目錄內 搜索裝置名子目錄(操作4314)。在操作4314中,具有裝置名的子目錄在代理服務器應用 程序將從軟件維護工具接收到文件的事件日志文件寫入到文件系統時被創建。該流程在任何找到的子目錄中搜索事件日志文件(操作4316)。然后,該流程將在 子目錄中發現的任何事件日志文件發送給庫(操作4316)。該流程接著刪除所有被發送的 文件并清空子目錄(操作4318)。此后該流程結束。現在轉向圖44,根據本發明有利實施例描述了發送信息給飛行器的過程流程圖。 在這些例子中,圖44中圖解說明的流程可以在軟件組件中實現,該軟件組件例如是圖35中 的代理服務器應用程序3500中的控制進程3502。在這些例子中,信息采取被發送到飛行器 上的機載電子分配系統的命令和軟件飛行器部件的形式。該流程開始于從機載電子分配系統接收對下一條命令的請求(操作4400)。然后, 該流程獲取機載電子分配系統請求的下一條命令(操作4402)。在這些例子中,命令的實際 文件被置于代理服務器應用程序的文件系統中。在數據庫中的記錄包括關于文件系統中的 命令的元數據。該流程接著為命令更新數據庫記錄以指出該命令已經被服務(操作4404)。該流 程判斷下一條命令是否是刪除命令(操作4406)。如果下一條要被處理的命令不是刪除命 令,則該流程接著判斷當前飛行器是否在上傳信息(操作4408)。如果飛行器當前正在上傳信息,則該流程判斷該飛行器是否也正在下傳信息(操 作4410)。如果該流程沒有下傳信息,則判斷下一條命令是否是上行鏈路命令(操作4412)。 如果下一條命令不是上行鏈路命令,則該流程尋找下一條命令并且將該命令返回給機載電 子分配系統(操作4414),此后該流程結束。再次參考步驟4406,如果下一條被處理的命令是刪除命令,則該流程進入到如上 所述的操作4414。再次參考操作4412,如果下一條命令是上行鏈路命令,則該流程尋找并 且返回飛行器的下一條下行鏈路命令或刪除命令(操作4416),此后該流程結束。再次參考 操作4410,如果飛行器正在下傳,則該流程尋找并且返回飛行器的隊列中的下一條刪除命 令(操作4418),此后該流程結束。返回參考操作4408,如果飛行器沒有在進行上傳,則判斷該飛行器是否在下傳 (操作4420)。如果飛行器在操作4420中不進行下傳,則該流程尋找并且返回飛行器的下 一條命令(操作4422),此后該流程結束。如果飛行器在操作4420中正在下傳,則判斷飛行
35器的下一條命令是否是下行鏈路命令(操作4424)。如果下一條命令不是下行鏈路命令,則該流程進入到如上所述的操作4422。否則 該流程尋找并且返回下一條上行鏈路命令或刪除命令(操作4426),此后該流程結束。在這些例子中,執行判斷發送哪條命令給飛行器的不同決定是為了避免在同一時 刻向同一飛行器發送過多的上傳和/或下行鏈路命令。這種類型的處理被用于改進或優化 飛行器在和代理服務器應用程序通信時對帶寬的使用。在該流程期間,事件日志消息被寫 入到日志文件,該消息報告何時軟件飛行器部件被上傳到飛行器。在其他有利的實施例中, 其他類型的決定可以被用于實現其他期望的方針。例如,某些類型的命令可以被給予相對 其他類型的命令的優先權。所選類型的飛行器可以被給予相對其他類型飛行器的優先級。下一步參考圖45,根據本發明有利實施例描述接收軟件飛行器部件的過程流程 圖。圖45中圖解說明的流程可以在軟件組件中實現,例如圖35中的控制進程3502。在本 例子中說明的流程被用于從代理服務器應用程序獲取軟件飛行器部件。該流程開始于從機載電子分配系統接收對包含軟件飛行器部件的包的請求(操 作4500)。該流程定位對應該請求的包(操作4502)。接著該流程返回該包給機載電子分 配系統(操作4504),此后該流程結束。現在轉向圖46,根據本發明有利實施例描述了從飛行器接收命令狀態信息的過程 流程圖。圖46中圖解說明的流程可以在軟件組件中實現,例如圖35中的控制進程3502。 該流程用于從飛行器上的機載電子分配系統接收狀態信息。圖46中的流程可用來獲取關于在飛行器上的命令處理的狀態信息。該狀態信息 可以指出關于特定外場可更換單元的命令發送是否成功。另外,對于上行鏈路命令,狀態也 將指出軟件飛行器部件是否被存儲在飛行器上并且準備安裝。在這些例子中,由機修工或 技術員啟動在外場可更換單元上安裝軟件飛行器部件。在其他實施例中,這種類型的安裝 可以是自動的。該流程開始于從具有命令狀態的機載電子分配系統接收調用(call)(操作 4600)。該流程將具有來自命令狀態的信息的新記錄插入到命令結果數據庫表中(操作 4602),此后該流程結束。借助該信息,代理服務器應用程序可以將關于命令是否成功的狀態信息發送回 庫。該信息允許標識軟件飛行器部件何時存在在飛行器上并且準備安裝在外場可更換單元 上。在這些例子中創建三個事件日志消息。一個消息指出特定命令是否成功。消息也被發 送回庫,指出命令中哪些刪除的文件被成功地刪除。此外,標識失敗的命令的標識也被記錄 到狀態消息中。現在轉向圖47,根據本發明有利實施例描述了接收下行鏈路文件的過程流程圖。 圖47中圖解說明的流程可以在軟件組件中實現,例如圖35的控制進程3502。該流程 解說明在下行鏈路文件從機載電子分配系統被發送到代理服務器應用程序時發生的過程。該流程開始于從機載電子分配系統接收調用以下載下行鏈路數據(操作4700)。 在這些例子中,地面組件在文件寫操作在之前被中斷并且文件的完整內容沒有被寫入到文 件時標識部分下行鏈路。如果成功地完成文件寫操作,則該下行鏈路是完成的下行鏈路。如 果該調用是為了發送下行鏈路的額外數據,則借助代理服務器應用程序,所接收的信息被 添加到之前為文件系統上的下行鏈路存儲的文件。
該流程接著從下行鏈路文件接收數據(操作4702)。下一步,該流程判斷該數據是 否是針對部分下載的下行鏈路文件的數據(操作4704)。如果該數據是針對新下行鏈路文 件的數據,則該流程創建下行鏈路文件(操作4706)。然后,該數據被存儲在下行鏈路文件 中(操作4708)。接著判斷是否已為下行鏈路文件接收額外數據(操作4710)。如果已經接 收額外數據,則該流程返回到操作4708。否則,該流程判斷文件是否已完成(操作4712)。 如果文件已完成,則該文件被存儲在代理服務器上的文件系統中(操作4714),此后該流程 結束。再次參考操作4712,如果文件沒有完成,則該流程將文件標記為部分下載的下行 鏈路文件(操作4716),此后該流程結束。再次參考操作4704,如果要下載的數據是針對 部分下載的下行鏈路文件的數據,則該流程判斷是否存在針對該數據的部分下行鏈路文件 (操作 4718)。如果存在下行鏈路文件,則該流程進入到如上所述的操作4708。否則,該流程發送 錯誤給機載電子分配系統(操作4720),此后該流程結束。這個區域指出機載電子分配系統 發送的數據的部分下行鏈路文件不存在于代理服務器上。在這種情況下,機載電子分配系 統可在另一個數據傳輸中重新發送完整文件。在這些例子中,在機載電子分配系統接收來自代理服務器應用程序的命令的同 時,機載電子分配系統可以發送下行鏈路文件給代理服務器應用程序。該流程考慮到在將 數據下傳到代理服務器應用程序期間可能會發生中斷。如果下行鏈路數據的發送被中斷, 則成功寫入的部分被保存供以后寫入剩下的數據時使用。以這種方法,重新寫入先前的數 據是不必要的。在這些例子中,可以記錄事件日志消息,該消息指出從特定飛行器的代理服 務器應用程序接收到下行鏈路數據。現在參考圖48,根據本發明有利實施例描述了從軟件維護工具接收狀態信息的過 程流程圖。圖48中圖解說明的流程可以在圖35中的控制進程3502中實現。該流程圖解 說明在從軟件維護工具接收狀態消息時發生的不同操作。該流程開始于從具有命令的命令狀態信息的軟件維護工具接收調用(操作 4800)。然后,該流程將新記錄插入到在調用中標識的命令的命令結果數據庫表中(操作 4802)。該流程將記錄標記為軟件維護工具報告成功(操作4804)。該流程返回確認給軟件維護工具(操作4806)。這些不同的消息可以與其他消息 集合起來以傳輸回庫。該流程接著將命令的本地副本標記為已發送到飛行器(操作4808), 此后該流程結束。該流程防止代理服務器應用程序將命令重新發送回軟件維護工具。現在轉向圖49,根據本發明有利實施例描述了向軟件維護工具發送信息的過程流 程圖。圖49中圖解說明的流程可以在圖35的控制進程3502中實現。該流程將消息以上 行鏈路命令和軟件飛行器部件的形式發送給軟件維護工具。該流程開始于從軟件管理工具接收對一列命令的請求(操作4900)。該操作可以 針對各種類型的命令。例如,該請求可以針對任何已經指派給特定軟件維護工具的命令。該 請求可以為特定飛行器、飛行器上的特定外場可更換單元或某標識符獲取命令。作為對接收到該請求的響應,該流程在數據庫中定位對應于該請求的命令(操作 4902)。該流程接著從數據庫接收結果(操作4904)。該流程將結果發送回軟件維護工具 (操作4906),此后該流程結束。軟件維護工具可以使用與在圖45中說明的用于將軟件飛行器部件發送到機載電子分配系統的流程相似的流程請求包含軟件飛行器部件的包。現在轉向圖50,根據本發明有利實施例描述發送軟件飛行器部件列表給軟件維護 工具的過程流程圖。該流程可以在軟件組件中實現,例如圖35中的控制進程3502。該流程 可以被用于標識在代理服務器應用程序上可使用的軟件飛行器部件。該流程開始于從軟件維護工具接收對軟件飛行器部件列表的請求(操作5000)。 該流程接著向數據庫發送查詢,以識別存儲在文件系統中的軟件飛行器部件(操作5002)。 從數據庫接收結果(操作5004)。該軟件飛行器部件列表被發送到軟件維護工具(操作 5006),此后該流程結束。在這些例子中,在操作5006中返回的列表可以包含代理服務器應用程序的目錄 中的唯一的軟件飛行器部件名,即使該軟件飛行器部件在該代理服務器應用程序上僅用于 支持特別分派到該代理服務器應用程序而不是其他裝置的命令。現在參考圖51,根據本發明有利實施例描述了從軟件維護工具接收下行鏈路文件 的過程流程圖。在該例子中圖解說明的流程可以在代理服務器應用程序組件中實現,例如 圖35中的控制進程3502。該流程開始于從軟件管理工具接收請求以下傳文件(操作5100)。在操作5100 中,該請求可以作為超文本傳輸協議請求。判斷是否存在針對飛行器的目錄(操作5102)。 如果存在目錄,則判斷該文件是否已經存在于該目錄中(操作5104)。如果該文件沒有存在于該目錄中,則該文件被寫入到該飛行器的子目錄中(操作 5106)。然后,該流程在下行鏈路文件數據庫表中為下載的文件插入新記錄(操作5108),此 后該流程結束。再次參考操作5104,如果該文件已經存在于該子目錄中,則為文件名添加時間戳 (操作5110),接著該流程進入到如上所述的操作5106。在操作5110中,時間戳被添加到文件名以允許同一文件的額外副本被寫入而不 覆蓋或丟失原始文件。結果是,原始文件名連同額外文件一起存在,該額外文件具有除了添 加的時間戳外都相似的文件名。文件的內容在某些情況下是相同的。再次參考操作5102, 如果不存在飛行器的目錄,則該流程為該飛行器創建一個子目錄(操作5112)。該流程接著 進入到如上所述的操作5106。在圖52中,根據本發明有利實施例描述了從軟件維護工具接收事件日志文件的 過程流程圖。在圖52中圖解說明的流程可以在圖35的代理服務器應用程序3500中的控 制進程3502中實現。該流程開始于從軟件維護工具接收請求以將事件日志文件下傳到代理服務器應 用程序(操作5200)。該流程接著判斷是否存在裝置的子目錄(操作5202)。在該例子中, 該裝置是軟件維護工具。如果存在該裝置的子目錄,則為從軟件維護工具接收的文件的文 件名添加時間戳(操作5204)。該流程接著將該文件寫入到裝置名子目錄(操作5206),此 后該流程結束。再次參考操作5202,如果不存在該裝置的子目錄,則該流程為該裝置創建子目錄 (操作5208)。該流程接著進入到如上所述的操作5204。軟件維護工具在圖3的軟件飛行器部件管理設備300中,不同的有利實施例提供用于管理軟件飛行器部件的計算機實現的方法、設備和計算機程序產品。不同的有利實施例提供位于便 攜式數據處理系統上的軟件維護工具,該數據處理系統被用于通過地面網絡建立與源的連 接。通過該連接從源檢索一組上行鏈路命令。通過建立的連接從源檢索與上行鏈路命令相 對應的一組軟件飛行器部件以形成一組檢索的軟件飛行器部件。該組軟件飛行器部件存儲 在便攜式數據處理系統中。該便攜式數據處理系統接著可以斷開與地面網絡的連接并且連接到飛行器中的 飛行器網絡。上行鏈路命令通過位于便攜式數據處理系統中的地面組件從該組上行鏈路命 令發給飛行器網絡。所存儲的對應于上行鏈路命令的軟件飛行器部件接著可以通過地面組 件被發送到飛行器網絡。該軟件維護工具可以被用于飛行器網絡不能建立與地面網絡的連接的情況下。例 如,在某些機場,飛行器網絡可能與存在的特定的地面網絡不兼容。在其他例子中,地面網 絡中的失效或錯誤可以防止飛行器網絡與地面網絡通信以接收命令和軟件飛行器部件。另外,在便攜式數據處理系統上的軟件維護工具也可以被用于從飛行器接收數 據。該數據可以是,例如下行鏈路文件。下一步參考圖53,根據本發明有利實施例描述圖解說明數據流和軟件維護工具的 圖示。軟件維護工具5300與組件交互,組件例如為庫5302、代理服務器應用程序5304和機 載電子分配系統5306。這些組件也被稱為源。在這些例子中,軟件維護工具5300提供庫 5302和/或代理服務器應用程序5304與機載電子分配系統5306之間的信息的傳輸。庫5302可以是,例如圖3中的庫304,而代理服務器應用程序5304可以是圖3中 的代理服務器應用程序306。機載電子分配系統5306可以是,例如圖3中的機載電子分配 系統310。庫5302發送新命令和部件給軟件維護工具5300 (消息El)。在部件中處理這些命 令的結果可以通過軟件維護工具5300返回給庫5302(消息E2)。此外,軟件維護工具5300 也可以返回下行鏈路和事件日志文件(消息E3)。依據特殊的實現或使用,軟件維護工具5300可以通過代理服務器應用程序5304 直接從庫5302接收新命令和部件(消息E4)。以相似的方式,軟件維護工具5300可以返回 命令狀態(E5)以及下行鏈路和事件日志文件(消息E6)給代理服務器應用程序5304,該代 理服務器應用程序接著將該信息發送給庫5302。關于與機載電子分配系統5306傳輸信息,軟件維護工具5300可以發送新命令和 軟件飛行器部件給機載電子分配系統5306 (消息E7)。軟件維護工具5300可以從機載電子 分配系統5306接收命令狀態(消息E8)。該命令狀態也可以包括發送給機載電子分配系統 5306的軟件飛行器部件的狀態。機載電子分配系統5306可以發送下行鏈路和事件日志文 件給軟件維護工具5300用于傳輸給庫5302 (消息E9)。下面更詳細地描述這些類型的傳輸的例子。另外,這些步驟和交互可以以特定的 順序發生并且任何不同的消息和交互可以在任何時間同時發生。例如,在軟件維護工具 5300從機載電子分配系統5306接收下行鏈路文件的同時,軟件維護工具5300可向機載電 子分配系統5306發送新命令和軟件飛行器部件。在這些例子中,軟件維護工具5300在便 攜式數據處理系統例如筆記本計算機上執行。圖2中的數據處理系統200是用于實現筆記 本計算機的數據處理系統的一個例子。
39
軟件維護工具5300可以從一個位置傳送到另一個位置從而分配軟件飛行器部件 并且下載信息,例如從飛行器上的外場可更換單元下載數據或文件。在不同的有利實施例 中,軟件維護工具5300建立與機載電子分配系統5306的直接連接。在這些例子中,直接連 接可以是有線連接或無線連接。這種類型的連接的建立不需要連接飛行器上的一個或多個 數據處理系統與設置有軟件維護工具5300的數據處理系統的網絡。現在轉向圖54,根據本發明有利實施例描述了軟件維護工具的框圖。在本例子中, 軟件維護工具5400包括庫服務5402、數據庫5404、文件系統5406、管理器5408、地面組件 接口 5410和地面組件5412。庫服務5402提供與軟件飛行器部件管理設備中的其他組件通信的接口。庫服務 5402為軟件維護工具5400提供與組件,諸如庫和代理服務器應用程序通信的接口。數據 庫5404包括信息,諸如關于文件系統5406中的一個或多個軟件飛行器部件中的命令的元 數據。此外,數據庫5404也包含關于下行鏈路信息的信息。該信息以表或記錄的形式存 儲在數據庫5404中。另外,數據庫5404可以存儲從代理服務器應用程序接收的命令,以供 飛行器中的飛行器數據處理系統上的機載電子分配系統執行。文件系統5406存儲文件,諸如命令、軟件飛行器部件和下行鏈路文件。根據特殊 的實現,不同的文件可以被存儲在文件系統5406中的包內。管理器5408包括用于管理軟 件維護工具5400的操作的進程。在這些例子中,管理器5408可以合并進程從而向用戶呈 現用戶界面視圖。這些視圖為用戶提供啟動操作并且瀏覽信息的界面。地面組件接口 5410提供到地面組件5412的接口。在這些例子中,地面組件接口 5410可以使用應用程序接口調用實現。地面組件5412與飛行器通信。在這些例子中,地 面組件5412可以與位于飛行器中的飛行器數據處理系統上的機載電子分配系統通信。通 過具有到地面組件5412的接口,可以為特定的飛行器或飛行器類型改變或修改地面組件 5412而不影響軟件維護工具5400中的其他組件。現在轉向圖55,根據本發明有利實施例描述命令和命令資源表的圖示。在該例子 中,命令表5500代表命令而命令資源表5502代表命令資源。這些表是在圖54中的軟件維 護工具5400中的數據庫5404中存在的表的例子。命令表5500包括命令標識符5504、飛機標識符5506、系統名5508、應用程序 名5510、命令類型5512、優先順序5514、裝置名5516、裝置類型5518、日期5520、服務狀態 5522、執行狀態5524、完成百分比5526、執行完成日期5528和命令資源列表5530。命令資 源表5502包括命令標識符5532、命令資源標識符5534、數據類型5536、包名5538、包路徑 5540、包文件大小5542、產品狀態5544、應用程序標準5546、所有者5548、供應商5550、包期 滿日期5552和發布日期5554。為命令表5500和命令資源表5502說明的不同字段表示可能在軟件維護工具數據 庫中的表中存在的字段。在命令表5500中,命令標識符5504唯一地標識特定的記錄。命 令標識符5504可以在各種表中存在,從而指向特定的命令記錄。飛機標識符5506標識特定的飛機。在這些例子中,標識符可以唯一地標識在特定 航空公司的飛行器機隊中的飛行器。系統名5508標識在其上設置有軟件飛行器部件的外 場可更換單元的名字。系統名5508包括路徑信息以標識外場可更換單元。日期5520標識在庫中創建命令的日期和時間。服務狀態5522標識已經成功發送到機載電子分配系統的 命令并且標識已經報告給庫的命令,該命令已經被成功地上傳或在機載電子分配系統上執 行。 執行狀態5524提供命令是否已經在飛行器上執行的通知。具體地,該命令提供關 于飛行器上的機載電子分配系統是否已經執行該命令的信息。在這些例子中,完成百分比 5526指出由機載電子分配系統上傳包中的軟件飛行器部件的進展。執行完成日期5528標 識何時完成命令的執行。命令資源列表5530標識包含關于包的信息的數據結構,諸如圖55 中的命令資源表5502。 在命令資源表5502中,命令標識符5532與命令表5500中的命令標識符5504相 似并且提供對特定命令記錄的標識。命令資源標識符5534被用于標識數據庫中特定的命 令資源記錄。數據類型5536標識資源的數據類型。例如,資源可以是軟件飛行器部件或文 件。在這些例子中,每條命令允許不同類型的信息與特定的命令關聯。包名5538標識在其中置有軟件飛行器部件的包的名字。包路徑5540標識包含軟 件飛行器部件的包的位置。包文件大小5542標識包的大小。產品狀態5544指出包含在包 中的特定軟件飛行器部件的產品狀態。這些值可以是,例如,紅標簽、藍標簽或黑標簽。應用程序標準5546在這些例子中標識軟件飛行器部件的可應用的標準。所有者 5548標識包含在包中的軟件飛行器部件的任何知識產權的所有者。發布日期5554標識軟 件飛行器部件的發布日期。現在參考圖56,根據本發明有利實施例描述了部分下行鏈路數據的圖示。在該例 子中,部分下行鏈路數據表5600是軟件維護工具內的數據庫中存在的表的例子,該數據庫 例如是圖54中的數據庫5406。如所描述的,部分下行鏈路表5600包含消息標識符5602、 飛機標識符5604、下行鏈路文件5606和部分文件XML 5608。消息標識符5602是與發送到機載電子分配系統的下行鏈路命令相關的部分下行 鏈路的命令標識符。該標識符由飛行器上的機載電子分配系統為下行鏈路文件生成并且不 是由庫通過代理服務器應用程序或軟件維護工具發送到機載電子分配系統的下行鏈路命 令的結果。飛機標識符5604標識一組飛行器中的特定飛行器。下行鏈路文件5606指定到部分下傳的文件的完整目錄路徑。當機載電子分配系 統請求下行鏈路文件(已經在之前的時間嘗試下傳該文件)時,軟件管理工具返回至部分 下傳的文件的路徑。部分文件XML 5608包含關于部分下傳的文件的信息。該信息可以被機載電子分 配系統使用,以從之前下傳中斷的地方恢復下傳該被下傳的文件。通過這種方法,文件的下 傳可以從其中斷的地方開始,從而避免必須重新發送整個文件。接著轉向圖57,根據本發明有利實施例描述了下行鏈路表的圖示。下行鏈路表 5700是軟件維護工具中數據庫中的表的例子,該數據庫例如是圖54中的數據庫5406。在這 些例子中,下行鏈路表5700存儲關于由機載電子分配系統發送的每個下傳的文件的信息。 下行鏈路表5700包括文件名5702、文件路徑5704、飛機標識符5706、系統名5708、數據類 型5710、文件大小5712、下傳狀態5714、已接收的下行鏈路5716,發送到庫5718和發送到 庫的下行鏈路5720。文件名5702標識包含下行鏈路信息的文件的名字。在這些例子中,文件路徑5704標識包含下行鏈路信息的文件的位置。飛機標識符5706標識飛行器,從該飛行器接收下行 鏈路文件。該標識符是一組飛行器的唯一標識符,該組飛行器例如是特定航空公司的飛行 器。該標識符可以是部件尾數。系統名5708標識在其上放置有軟件飛行器部件的外場可 更換單元的名字。數據類型5710標識數據的類型。對于下行鏈路信息,該數據被標識為文 件。應用程序名5711標識在飛行器數據處理系統上的應用程序,該應用程序負責獲取軟件 飛行器部件。文件大小5712標識包含下行鏈路數據的文件的大小。下行鏈路狀態5714指示下 行鏈路操作的狀態。在這些例子中,下行鏈路狀態5714示出成功的下行鏈路。在某些實施 例中,部分下行鏈路可以由下行鏈路狀態5714標識。庫5718指出文件被下傳到軟件和維 護工具的時間。發送到庫5720的下行鏈路指出下傳的文件被發送到庫或代理服務器應用 程序的時間。該信息被用于判斷何時從軟件維護工具刪除已下傳的文件。已下傳的文件可 以在下行鏈路文件被發送后一段可配置的時間后被刪除,從而確保該已下傳的文件在下行 鏈路文件所發送到的庫或代理服務器應用程序上備份。現在轉向圖58,根據本發明有利實施例描述了軟件維護工具文件系統目錄結構的 圖示。在該例子中,目錄結構5800代表可以在文件系統例如圖54中的文件系統5406中使 用的文件系統目錄結構。目錄結構5800標識工作在軟件維護工具上的文件系統中的不同 類型的文件。在這些例子中,目錄結構5800包括部件5802、下行鏈路5804、下行鏈路拆包 目錄5806、路徑5808、應用程序5810、日志5812和配置5814。部件5802標識存儲從庫接收到的包的目錄,該接收是直接從庫接收或通過代理 服務器應用程序接收。在這些例子中,包可以包括命令和/或軟件飛行器部件。另外,包也 可以從介質裝載,例如從附連到在其上具有軟件維護工具的筆記本計算機的閃存或硬盤驅 動器。該目錄中的包可以被發送到飛行器上的機載電子分配系統。下行鏈路5804是用于存儲從機載電子分配系統接收的下行鏈路文件和部分下行 鏈路文件的目錄。在這些例子中,下行鏈路文件可以通過飛行器的尾數組織,所述文件源自 該飛行器。在這些例子中,下行鏈路5804可以包括以飛行器尾數命名的子目錄。下行鏈路 文件在這些例子中以打包的形式存儲。已經被發送到庫的下行鏈路文件不會自動地從下行 鏈路5804刪除。相反,這些文件在從其被發送至庫或代理服務器應用程序后經過所選的時 間之后被刪除。下行鏈路拆包目錄5806標識被軟件維護工具用來將包的內容分開的目錄。這些 包被拆包,以提取關于下行鏈路文件的信息。未打包形式的文件可以使用文件的名字被存 儲在下行鏈路拆包目錄5806內的目錄中。路徑5808標識包含SMT-route info, xml文件的目錄。該文件包含系統、應用程 序和由每個應用程序揀選的命令的列表。這些文件的內容被軟件維護工具使用并且非直接 地被庫使用,從而確保上行鏈路命令被發送到適當的飛行器系統。應用程序5810標識其中安裝軟件維護工具的不同進程的目錄。此外,與軟件維護 工具相關的日志也可以被存儲在該目錄下。這些日志包括,例如,在軟件維護工具的操作期 間記錄的事件。日志5812是應用程序5810中的子目錄并且在這些例子中包含最后被發送到庫和 /或代理服務器應用程序的事件logger, xml文件。配置5814是應用程序5808中的子目錄并且包含屬性文件,以定義軟件維護工具的操作或行為,從而定義軟件維護工具中不同組 件的行為。下面轉向圖59,根據本發明有利實施例描述了圖解說明在軟件維護工具中所實現 的界面組件的圖示。在本例子中,用戶界面組件5900是在圖54的軟件維護工具5400中的 管理器5408中實現的用戶界面組件的例子。用戶界面組件5900包括連接視圖5902、上行 鏈路命令隊列視圖5904、上行鏈路本地清單(inventory)視圖5906、下傳文件視圖5908、事 件控制視圖5910和從庫檢索視圖5912。連接視圖5902是用戶界面組件,其提供一個區域以顯示功能標簽。在這些例子 中,用戶界面提供裝置標識信息和下拉包,下拉包允許用戶在不同的組件之間選擇,組件例 如有機載電子分配系統、庫、代理服務器應用程序或其他裝置。另外,該界面組件也可以提 供將軟件維護工具連接到從下拉包中選出的特定裝置的控件。上行鏈路命令隊列視圖5904提供瀏覽上傳命令和部件的進展的界面。該視圖具 有刪除命令和軟件飛行器部件的控件。上行鏈路本地清單視圖5906提供用戶界面以允許 軟件維護工具的操作員從介質載入或輸入軟件飛行器部件。該視圖允許用戶無需連接到地 面網絡而創建上行鏈路命令。用戶可以選擇上傳到特定飛行器上的特定外場可更換單元的 軟件飛行器組件。該介質可以,例如,便攜式介質,諸如閃存、便攜式硬盤驅動器、光盤或數 字通用光盤。下傳文件視圖5908提供用戶界面以瀏覽從機載電子分配系統接收的下行鏈 路文件。用戶也可以使用該視圖來刪除下行鏈路文件和發出下行鏈路控制命令。事件控制視圖5910允許用戶瀏覽發生在軟件維護工具的各種進程執行過程中的 不同事件。例如,事件控制視圖5910可以呈現發生在發送軟件飛行器部件給機載電子分配 系統期間的不同動作。這些事件可以包括,例如,連接到飛行器、發送文件和標識文件的成 功加載。從庫檢索視圖5912是可以被用來啟動從庫或代理服務器應用程序獲取命令和軟 件飛行器部件的過程的用戶界面。圖55中的命令表5500標識在命令表5500發現的字段。 該視圖往回發送成功上傳的命令、下行鏈路文件和事件日志。下一步參考圖60至65,這些圖描述圖59中用戶界面組件5900的用戶界面的示 例實現。首先參考圖60,窗口 6000圖解說明主屏幕或界面,其存在于圖59中的用戶界面 組件5900中。具體地,窗口 6000是圖59中的連接視圖5902的例子。窗口 6000包括標簽 6002、6004、6006、6008和6010。這些標簽可以被選擇以給出軟件維護工具中的不同功能和 進程的控件和信息。區域6012顯示關于軟件維護工具的信息。在本例子中,區域6012指出軟件維護 工具連接到尾數標識的飛行器。列表6014提供軟件維護工具與其建立連接的一列其他組 件。控件6016允許用戶啟動與其他組件的連接。在這些例子中,用戶可以選擇各種組件, 例如機載電子分配系統、庫或來自一組代理服務器的代理服務器應用程序。現在參考圖61,所選的標簽6002在窗口 6000中啟動上行鏈路命令隊列視圖。在 本例子中,該上行鏈路隊列視圖是由圖59中的上行鏈路命令隊列視圖5904給出的用戶界 面的例子。在本例子中,區域6100以樹形隊列顯示特定飛行器的命令。用戶可以通過選擇 這些命令并且按下刪除命令6102,從而從區域6100中刪除一組命令。關于命令的狀態信息 在區域6103中給出。
被顯示的信息包括,例如,條目6104、期限6106、優先級6108、目的地系統6110、文 件類型6112、命名6114、文件大小6116、上傳狀態6118和上傳狀態進展6120。條目6104 標識特定的條目,例如軟件飛行器部件名。期限6106是特定命令的期滿日期。優先級6108 標識命令被上傳到飛行器上的目的地系統的順序。目的地系統6110標識飛行器上的應用 程序中的特定外場可更換單元,在其中部件被發送。類型6112標識包含在包中的條目的類 型,諸如文件或軟件飛行器部件。命名6114提供部件的簡短的標識或描述。文件大小6116標識包含特定條目的包 的大小。上傳狀態6118提供關于命令的處理、成功或失敗的狀態。上傳狀態進展6120提 供圖形進展條,顯示特定命令完成的百分比。現在參考圖62,根據本發明有利實施例描述了圖解說明上行鏈路本地清單視圖的 用戶界面的圖示。在本例子中,標簽6004已經被選擇并且給出圖59中的上行鏈路本地清 單視圖5906的用戶界面。該特定的視圖允許用戶從本地源加載包或軟件飛行器部件。這種 類型的功能性允許用戶在對庫或代理服務器應用程序的訪問是不可行的或被中斷的的情 況下從另一源加載軟件飛行器部件。此外,在庫或代理服務器應用程序新部件中未找到的 新部件或者更新的軟件飛行器部件版本也可以以這種方法加載。軟件飛行器部件或其他條 目的本地清單可以在存儲裝置中找到,諸如硬盤驅動器、閃存、光盤或數字多功能光盤中。區域6200圖解說明對本地清單的標識,該清單可以被加載到軟件維護工具中。這 些條目可包括軟件飛行器部件和命令。特定的條目可以通過在區域6200中選擇該條目并 且按下從介質加載清單按鈕6202來加載。在特定存儲裝置中找到的當前清單可以通過按 下刷新清單6204而被刷新。關于區域6200中所選擇條目的細節可以顯示在區域6206中。在這些例子中,信 息可以包括,例如,清單條目6208、期滿日期6210、飛機標識符6212、飛機目的地6214、類型 6216、命名6218、文件大小6220、上傳狀態6222和上傳狀態進展6224。該信息與為軟件飛 行器部件顯示的信息相似,該信息接收自庫代理服務器應用程序,如同顯示在圖61的窗口 6000中的信息。現在參考圖63,根據本發明有利實施例描述下載文件視圖的用戶界面的圖示。在 該例子中,窗口 6000顯示用戶界面組件的用戶界面,諸如圖59中的下傳文件視圖5908。該 視圖響應標簽6006的選擇而給出。在該用戶界面中,關于從不同飛行器下傳的數據的信息 被顯示在區域6300中。用戶可以通過選擇中止下行鏈路按鈕6302中止或停止從飛行器上的機載電子分 配系統的下傳。當該按鈕被選擇,軟件維護工具不再從飛行器接收任何額外的下行鏈路或 信息,軟件維護工具與該飛行器存在連接。下行鏈路可以通過按下所顯示的恢復按鈕被恢
Μ. ο另外,用戶可以通過選擇重定向下行鏈路按鈕6304將目的地是代理服務器應用 程序的下行鏈路重定向到軟件維護工具。該按鈕的選擇使得機載電子分配系統為目的地為 代理服務器應用程序的所有下行鏈路信息重新選擇路徑,從而被發送到軟件維護工具。如 果軟件維護工具與機載電子分配系統的連接是斷開的,則該下行鏈路自動地發送到原始目 的地。區域6306為在區域6300中給出的下行鏈路數據顯示額外的信息。另外,用戶可以在區域6306中瀏覽或刪除下行鏈路文件。該刪除可以通過選擇特定的下行鏈路文件并 且啟動該刪除命令來進行。在區域6306中給出的關于下傳的文件的信息包括,例如,文件名6308、飛機標識 符6310、系統6312、應用程序6314、數據類型6316、描述6318、文件大小6320、下傳狀態 6322和下傳日期和時間6324。文件名6308標識從飛行器下傳或接收的文件的名稱。飛機 標識符6310標識從其處接收數據的飛行器。系統6312標識從其處接收數據的外場可更換 單元。應用程序6314標識與數據相關的外場可更換單元上的軟件飛行器部件。數據類型6316標識應用程序產生的數據的類型。在這些例子中,軟件維護工具 接收下傳的文件,該文件具有表示未經請求(unsolicited)的下行鏈路的數據類型。描述 6318在本例子中標識下傳的文件的名稱。文件大小6320標識下傳的文件的大小。下傳狀 態6322標識數據是否成功地被下傳到軟件維護工具。下傳日期和時間6324標識何時完成 下傳。該完成依據特定的情況可以是成功下傳、失敗下傳或部分下傳。現在轉向圖64,根據本發明有利實施例描述了圖解說明事件控制的用戶界面的圖 示。在本圖示中,窗口 6000顯示了用戶界面組件的用戶界面,諸如圖59中的事件控制5910。 在所描述的例子中,本特定的視圖響應選擇標簽6008而在窗口 6000中給出。區域6400給 出伴隨特定軟件維護工具時期發生的操作。在這些例子中,軟件維護工具時期是一個時間 段,軟件維護工具在該時間段期間運行。圖解說明在區域6400中的事件可以實時地給出。在這些例子中,可以通過選擇保存事件控制按鈕6402保存這些事件。通過選擇清 除事件控制按鈕6404可以將事件從在區域6400中的顯示中清除。此外,軟件維護工具可 以不需要用戶干涉而自動地保存事件。在這些例子中,在區域6400中顯示的每個條目包括 日期和時間戳、執行特定操作的用戶的用戶標識符和標識操作已經被執行的消息。現在轉向圖65,根據本發明有利實施例描述了圖解說明從庫檢索視圖的用戶界面 的圖示。在本例子中,窗口 6000顯示了圖59中的從庫檢索視圖5912的用戶界面。響應對 標簽6010的選擇給出該用戶界面。該用戶界面可以用于從庫或代理服務器應用程序檢索 命令,以及瀏覽或看各種軟件飛行器部件。此外,這就是丟包(loss)可以被用于創建命令 以上傳軟件飛行器部件到機載電子分配系統的時候。在庫中可獲得的部件顯示在區域6500中。為軟件維護工具指派的特定軟件飛行 器部件可以通過按下執行庫事務按鈕6502被檢索。用戶也可以使用該界面創建上傳軟件 飛行器部件給機載電子分配系統的命令。用戶還可以從區域6500選擇軟件飛行器部件并 且使用列表6504和列表6506指派特定飛行器和外場可更換單元。列表6504提供飛行器 的標識。列表6506為軟件飛行器部件標識在飛行器上的特定外場可更換單元。在進行完這些識別以后,可以通過按下從庫中檢索所選的清單按鈕6508從庫中 檢索軟件飛行器部件。選擇該按鈕導致檢索軟件飛行器部件并且創建將軟件飛行器部件上 傳到飛行器的命令。現在轉向圖66,根據本發明有利實施例描述了圖解說明將命令和軟件飛行器部件 發送給飛行器時通過軟件維護工具的數據流的圖示。在本例子中為軟件維護工具6600顯 示數據發送流,將命令和軟件飛行器部件從庫6602或代理服務器應用程序6604發送到飛 行器上的機載電子分配系統(OBEDS) 6606。軟件維護工具6600執行的每一個不同步驟以及 這些步驟的結果可以被記錄為下載到庫6602或代理服務器應用程序6604的事件。
在本例子中,該流程開始于用戶使用來自用戶界面組件的用戶界面啟動與庫6602 或代理服務器應用程序6604的事務處理,該用戶界面例如是圖59中的從庫檢索視圖5912。 庫服務6608檢索已經成功地上傳到機載電子分配系統6606的一列上行鏈路命令。庫服務 6608接著調用庫6602或代理服務器應用程序6604并且傳遞成功地上傳到機載電子分配 系統6606的命令的命令標識符列表。庫服務6608檢索已經被成功地從命令表6610上傳 的上行鏈路命令列表。命令表6610是數據庫6612中存在的表的例子。圖55中的命令表 5500標識在命令表6610中存在的字段。對于發送給庫6602或的代理服務器應用程序6604的每一個命令標識符,相應的 命令從數據庫6612中的命令表6610中被刪除。此外,庫服務6608也發送來自文件系統 6614的下行鏈路文件和事件日志。然后,庫服務6608調用庫6602或代理服務器應用程序6604以獲取命令列表。這 些命令與應該在隊列中用于分配到不同飛行器的命令做比較。如果不在從庫6602或代理 服務器應用程序6604接收的命令列表中的命令存在于命令表6610中,那么這些命令從該 表中被刪除。但是軟件維護工具6600的操作員生成的命令將被保留。在這些例子中,命令 的刪除針對之前從庫6602或代理服務器應用程序6604發送的命令發生。對于每一個新接收的命令,庫服務6608判斷在文件系統6614中是否已經存在軟 件飛行器部件的包。如果不存在針對該命令的軟件飛行器部件的包,那么庫服務6608從庫 6602或代理服務器應用程序6604檢索包含軟件飛行器部件的包。任何檢索到的包存儲在 文件系統6614中。如果成功地檢索到包或包已經存在,那么新命令被置于數據庫6612中 的命令表6610中。如果成功地檢索到包或包已經存在,則新命令被添加到上行鏈路命令隊 列管理器6617中的隊列中。上行鏈路命令隊列視圖6618可以顯示針對上行鏈路命令隊列 管理器6617管理的命令的信息。然后,上行鏈路本地清單視圖6616被更新或刷新。在本例子中,上行鏈路本地清 單視圖6616是用戶界面組件,諸如顯示在圖62的窗口 6000中的上行鏈路本地清單視圖 5906。該視圖允許操作員看到存儲在軟件維護工具中的不同軟件飛行器部件。通過知道哪 些軟件飛行器部件存在于文件系統6614中,操作員可以創建新命令以使用軟件維護工具 上傳這些軟件飛行器部件。此后,更新命令隊列視圖6618被更新。該視圖可以是,例如,顯 示在圖61的窗口 6000中的上行鏈路命令隊列視圖5904。然后,操作員可以將軟件維護工具6600從庫6602或代理服務器應用程序6604 斷開連接。軟件維護工具6600可以接著被傳輸到飛行器并且被連接到機載電子分配系統 6606。在建立起該連接后,上行鏈路命令隊列視圖6618通過地面連接(OGC)接口 6520將 還沒有成功地為特定的飛行器上傳的所有命令自動地上傳到機載電子分配系統6506。地面連接接口 6620為地面組件(OGC) 6622創建命令并且將該命令添加到地面組 件6622的命令列表,用于一次檢索一個。這些命令在上行鏈路命令隊列管理器6617中被 標識。當地面組件6622調用地面組件接口 6620時,地面組件接口 6620判斷該飛行器是 否已經在上傳數據。如果該飛行器已經在上傳數據,則返回空值給地面組件6622并且不改 變命令列表中的命令。在這些例子中,地面組件6622與機載電子分配系統6606通信,從而 確定飛行器是否在上傳這些例子中的數據。
如果該飛行器沒有在上傳,則命令隊列中最早的上行鏈路命令被傳遞給地面組件 6622。接著地面組件6622與機載電子分配系統6606通信,從而開始上傳命令中識別的包。 地面組件6622可以在軟件飛行器部件的上傳過程中獲取狀態信息。另外,地面組件接口 6620可以更新上行鏈路命令隊列視圖6618,以顯示進展條,諸如在圖61中上傳狀態進展 6120示出的進展條。當命令已經被成功地執行,上行鏈路命令隊列視圖6618更新命令表6610中的信 息。此外,上行鏈路命令隊列視圖6618也更新命令表6610中命令字段的執行狀態。現在轉向圖67,根據本發明有利實施例描述了圖解說明在軟件維護工具中處理下 傳的文件時的數據流的圖示。在本例子中,軟件維護工具6700可以接收下傳的文件,該文 件的下傳由在連接到機載電子分配系統(0BEDS)6704的筆記本計算機上執行的應用程序 6702啟動。此外,來自外場可更換單元(LRU’s)6706的未經請求的下行鏈路文件也可以被 軟件維護工具6700接收。當軟件維護工具6700建立和機載電子分配系統6704的連接后, 地面組件6708是提供與機載電子分配系統6704的通信的組件。地面組件(OGC) 6708通過地面組件接口(OGC) 6710與軟件維護工具6700中的其 他組件通信。在本例子中,下行鏈路文件被下傳并且存儲在文件系統6712中。當下行鏈路 文件被傳輸到文件系統6712時,地面組件接口 6710在數據庫6716中的下行鏈路表6714 中插入新記錄。存儲在文件系統6712中的不同的下行鏈路文件可以使用下傳文件視圖6718瀏 覽。該視圖是用戶界面組件的例子,諸如圖59中的下傳文件視圖5908。該視圖可以被用來 標識哪些下行鏈路文件已經被接收并且操作下行鏈路文件。圖57中的下行鏈路表5700顯 示了可以在下行鏈路表6714中存在的字段的例子。然后,軟件維護工具6700可以被移動并且建立與庫6720或代理服務器應用程序 6722的連接。當建立該連接時,庫服務6724標識還沒有被發送給庫6720或代理服務器應 用程序6722的下行鏈路文件。對這些文件的標識可以在下行鏈路表6714中找到。在這些例子中,部分下行鏈路文件不發送給庫6720或代理服務器應用程序6722。 對于在下行鏈路表6714中標識的每一個下行鏈路文件,庫服務6724都會確認這些文件仍 舊存儲在文件系統6712中。庫服務6724接著將所有定位的下傳的文件轉發給庫6720或 代理服務器應用程序6722。發送給代理服務器應用程序6622的任何文件最后由代理服務 器應用程序6722發送給庫6720。在某些情況下,因為中斷,文件可能只被部分地下傳到軟件維護工具。不同的有利 實施例提供一種機制,通過該機制部分下傳的文件被文件系統6612中的軟件維護工具保 存。這些部分下傳的文件被保存并且下傳文件的額外或剩余的部分可以在以后的時間取回 并且添加到這些部分下傳的文件中,以此形成完整的下行鏈路文件。通過這種方法,如果發 生中斷,則可以在其停止的地方重新開始數據的下傳而不必再次下傳完整的文件。現在轉向圖68,根據本發明有利實施例描述了圖解說明數據流和由軟件維護工具 記錄輸入事件的圖示。在該例子中,軟件維護工具6800使用進程事件記錄器6804將事件 記錄在文件系統6802中。進程事件記錄器6804是在圖54的管理器5408中找到的進程的 例子。在這些例子中,進程事件記錄器6804可以記錄由軟件維護工具6800在上傳和下傳數據時執行的所有不同步驟和這些步驟的結果。這種類型的信息可以顯示在事件控制 視圖6806中,該事件控制視圖是圖59中的用戶界面組件5900中的用戶界面組件的例子。 一個用戶界面的例子是圖64中的窗口 6000。當軟件維護工具6800通過庫服務6812連接 到庫6808或代理服務器應用程序6810時,接收用戶輸入以傳輸數據并且存儲在文件系統 6802中的日志文件被轉發給庫6808和代理服務器應用程序6810。如果事件日志被成功地 發送,則出于存檔的目的,事件日志文件被重命名。現在轉向圖69,根據本發明有利實施例描述了圖解說明軟件維護工具中從庫中檢 索部件時的數據流的圖示。在本例子中,軟件維護工具6900可以通過庫服務6906連接到庫 6902或代理服務器應用程序6904。用戶可以從庫視圖6908檢索,從而標識存儲在庫6902 和/或代理服務器應用程序6904上的部件。從庫檢索視圖6908是從圖59中的用戶界面組件5900中的圖59中從庫檢索視圖 5912的例子。圖65中的窗口 6000是該特定視圖的用戶界面的例子。部件可以被顯示并且 在從庫檢索視圖6908中檢索。用戶可以選擇一組部件并且從庫6902和/或代理服務器應 用程序6904檢索這些部件,并且在文件系統6910中存儲軟件飛行器部件。這些部件接著 被顯示,以供用戶創建一個或多個上行鏈路命令。現在轉向圖70,根據本發明有利實施例描述了圖解說明軟件維護工具在檢索和創 建命令期間的數據流的圖示。在該例子中,軟件維護工具7000可以檢索部件并且使用從庫 檢索視圖7002創建命令。從庫檢索視圖7002是用戶界面組件的一個例子,例如圖59中的 從庫檢索視圖5912,如同在圖65的窗口 6000中所給出的。當庫服務7004連接到庫7006或代理服務器應用程序7008,用戶可以瀏覽從庫檢 索視圖7002檢索出的部件列表。用戶可以通過該視圖選擇部件,并且通過庫服務7004啟 動這些部件的下傳。庫服務7004檢索出的部件被存儲在文件系統7010中。在這些例子中, 軟件飛行器部件被存儲為包。上行鏈路本地清單視圖7012可以被刷新。利用從庫檢索視圖7002,用戶可以創建命令,所述命令被存儲在數據庫7018中 的命令表7014中。這些命令可以被添加到上行鏈路命令隊列管理器7020中,由地面組件 (OGC) 7022通過到機載電子分配系統(OBEDS) 7036的地面組件(OGC)接口 7024執行這些命 令。上行鏈路命令隊列管理器7020是圖54中的軟件維護工具5400中的管理器5408中的 組件的例子。該過程的狀態可以通過上行鏈路命令隊列視圖6928瀏覽。現在參考圖71,根據本發明有利實施例描述了圖解說明從替代源上載軟件飛行器 部件的圖示。在本例子中,軟件維護工具7100可以通過上行鏈路本地清單管理器7106將 軟件飛行器部件從介質7102上載至文件系統7104中。該視圖是圖59中的上行鏈路本地 清單視圖5906的例子。本視圖使用圖形用戶界面,例如圖62中的窗口 6000。對這種從介質7102上傳或下傳過程的控制可以使用上行鏈路本地清單視圖7108 進行。軟件飛行器部件可以從不同于庫或軟件代理服務器應用程序的其他源上載到軟件維 護工具7100中。通過允許這種類型的靈活性,軟件維護工具7100就可以允許在到庫或代 理服務器應用程序的連接不可用的情況下最近的部件或從正常源還不可獲得的新部件被 上載至飛行器。現在轉向圖72,根據本發明有利實施例描述了用于管理軟件飛行器部件的過程的 高級流程圖。圖72中圖解說明的流程可以在軟件維護工具中實現,諸如圖54中的軟件維護工具5400。該流程開始于通過地面網絡建立便攜式數據處理系統和源之間的連接,從而形成 建立的連接(操作7200)。然后,該流程通過建立的連接從源檢索一組上行鏈路命令(操作 7202)。該源可以是,例如,代理服務器應用程序、庫或甚至是本地存儲裝置。該流程接著通過建立的連接從源檢索與該組上行鏈路命令相應的一組飛行器部 件以形成一組檢索到的軟件飛行器部件(操作7204)。該流程將該組檢索到的軟件飛行器 部件存儲在便攜式數據處理系統中以形成一組存儲的軟件飛行器部件(操作7206)。該流程接著斷開具有所存儲軟件飛行器部件的便攜式數據處理系統與地面網絡 的連接(操作7208)。在這些例子中,便攜式數據處理系統被轉移到一個位置,以允許便攜 的數據處理系統連接到飛行器上的飛行器網絡。下一步,該流程將具有所存儲飛行器部件 的便攜式數據處理系統連接到飛行器上的飛行器網絡(操作7210)。該流程接著通過便攜式數據處理系統中的地面組件從該組上行鏈路命令發出上 行鏈路命令給飛行器數據處理系統(操作7212)。該流程通過地面組件向飛行器數據處 理系統發送與上行鏈路命令相對應的所存儲軟件飛行器部件組中的所存儲的飛行器部件 (操作7114),此后該流程結束。現在轉向圖73,根據本發明有利實施例描述用于管理軟件飛行器部件的過程的更 詳細流程圖。圖解說明在圖73中的流程可以在軟件維護工具中實現,諸如圖54中的軟件 維護工具5400。在本圖中的流程說明在連接到源時軟件維護工具中發生的不同步驟,該源 諸如為庫或代理服務器應用程序。該流程開始于接收進行事務處理的請求(操作7300)。在本例子中,進行事務處理 的過程可以由用戶通過圖59中的用戶界面組件5900中的用戶界面啟動。具體地,該過程 可以由用戶通過用戶界面將用戶輸入鍵入到圖59中的從庫檢索視圖5912而被啟動,該用 戶界面諸如為圖解說明在圖65中的窗口 6000。該流程接著檢索發送到機載電子分配系統的一列上行鏈路命令(操作7302)。在 本例子中,該列上行鏈路命令是其中上行鏈路命令識別的軟件飛行器部件已經被成功地發 送到機載電子分配系統的那些上行鏈路命令。這些不同命令可以被存儲在數據庫中的表 中,諸如圖55中的命令表5500。圖55中的命令表5500內的每個記錄可包括命令是否成功 發送的指示。然后,該流程調用源(操作7304)。該源可以是,例如,庫或代理服務器應用程序。 該流程發送這些命令列表給源(操作7306)。發送給源的命令接著從數據庫和軟件維護工 具被刪除(操作7308)。該流程接著調用源以檢索新命令(操作7310)。一列命令從源接收(操作7312)。 在操作7312中,不同于代理服務器或應用程序從庫接收命令的方式,命令以未打包的形式 被接收。該流程接著從數據庫刪除不在列表中的命令(操作7314)。結果,源是權威或者提 供關于哪些命令由軟件維護工具執行的代理。如果用戶期望移除或刪除在飛行器上執行的命令,那么這些命令可以在源處被刪 除。發送到軟件維護工具的該列命令導致任何不在該列表中的命令被刪除。因此,這種類 型的流程允許更新在軟件維護工具上被執行的命令。該流程選擇未處理的命令進行處理(操作7316)。判斷是否存在針對該命令的包含軟件飛行器部件的包(操作7318)。在操作7318中,該流程檢查軟件維護工具上的文件 系統以判斷包含軟件飛行器部件的包是否已經存在于文件系統中。如果包不存在,則該流 程檢索該包(操作7320)。下一步,判斷是否存在額外的未處理的命令(操作7322)。如果存在額外的未處理 的命令,該流程返回操作7316。如果存在針對該命令的包,該流程從操作7318進行到操作 7322。該流程接著將命令添加到隊列(操作7324)。該流程然后更新軟件飛行器部件的清 單(操作7326)。圖74說明了當便攜式數據處理系統連接到飛行器網絡時,發生在軟件維護工具 中的操作,該軟件維護工具位于該便攜式數據處理系統上。在這些例子中,軟件維護工具可以用于發送軟件飛行器部件給在飛行器網絡中的 飛行器數據處理系統上運行的機載電子分配系統。在這些例子中,隊列可以是,例如圖65 中的上行鏈路命令隊列管理器6517中的隊列。該流程接著更新軟件飛行器部件的清單(操 作7326),此后該流程結束。現在轉向圖74,根據本發明有利實施例描述從軟件維護工具發送軟件飛行器部件 給機載電子分配系統的過程流程圖。在本例子中,該流程可以在軟件維護工具中實現,諸如 圖54中的軟件維護工具5400。該流程開始于探測與飛行器數據處理系統上的機載電子分 配系統的連接(操作7400)。該流程判斷在命令隊列中是否存在命令(操作7402)。如果存在命令,則該流程判 斷飛行器是否正在上傳數據(操作7404)。如果飛行器當前沒有在上傳數據,則該流程發送 請求給機載電子分配系統,以上傳包含軟件飛行器部件的包(操作7406)。該流程接著獲取 上傳的狀態(7408)。該狀態可以顯示在用戶界面上,諸如圖61中的窗口 6000。操作7408 在繼續上傳包時進行。在上傳完成以后,判斷是否已經成功上傳具有軟件飛行器部件的包(操作7410)。 如果成功上傳包,則更新命令表(操作7412)。在這些例子中,該表是命令表,諸如圖55中 的命令表5500。該流程接著返回到操作7302,判斷隊列中是否存在需要處理的額外命令。再次參考操作7410,如果軟件飛行器部件的上傳不成功,那么生成錯誤(操作 7416)并且該流程返回到如上所述的操作7402。再次參考操作7404,如果飛行器正在上傳 數據,則返回空值(操作7414),此后該流程結束。現在參考圖75,根據本發明有利實施例描述接收下行鏈路數據的過程流程圖。在 圖75中圖解說明的流程可以在數據軟件維護工具中實現,諸如圖54中的軟件維護工具 5400。圖75中的流程開始于從機載電子分配系統接收調用以檢索部分下行鏈路文件 (操作7500)。判斷部分下行鏈路文件是否包含在部分下行鏈路表中(操作7502)。該部 分下行鏈路表可以是表,諸如,圖56中的部分下行鏈路表5600。如果在該表中沒有找到該 部分下行鏈路文件,則該流程接收調用,以從機載電子分配系統獲取下行鏈路文件的名稱 (操作 7504)。下一步判斷是否存在足夠的空間以存儲下行鏈路文件(操作7506)。如果存在足 夠的空間,則下行鏈路文件創建在名為“doWnlinkS\”的目錄下并且文件名稱被返回給機載 電子分配系統(操作7508)。該流程接著將下行鏈路數據存儲到“doWnlinkS\”目錄下的下行鏈路文件中(操作7510)。接著判斷是否成功地存儲下行鏈路文件(操作7512)。如果所有的下行鏈路數據 都成功地存儲,則該流程將下行鏈路文件添加到下行鏈路數據庫表(操作7514)。該表可以 是諸如圖57中的下行鏈路表5700。該流程接著更新下行鏈路文件視圖以顯示新文件(操 作7516)。該視圖例如是在圖63的窗口 6000中給出的下傳文件視圖5908。該流程接著判斷數據是否被寫入到部分下行鏈路文件中(操作7518)。如果數據 沒有被寫入到部分下行鏈路文件中,該流程結束。否則,在部分下行鏈路表中的部分下行鏈 路記錄被刪除(操作7520),此后該流程結束。在這種情況下,用剩下的下行鏈路數據完成 了部分下行鏈路文件,并且不再需要該部分下行鏈路文件的標識。再次參考操作7512,如果對下行鏈路文件的所有數據的存儲是不成功的,則該流 程接收來自機載電子分配系統的調用,以存儲部分下行鏈路文件(操作7522)。在這種情況 下,機載電子分配系統可以以多種理由中斷下傳數據。例如,可用帶寬量不足以下傳數據和 上傳其他信息。該流程接著在部分下行鏈路數據庫表中創建記錄(操作7524),此后該流程結束。再次參考操作7506,如果不存在用于下行鏈路文件的足夠空間,則返回空值給機 載電子分配系統以指出不存在用于下行鏈路數據的足夠空間(操作7526)。往回參考操作 7502,如果部分下行鏈路文件存在于部分下行鏈路表中,則該流程返回部分下行鏈路文件 信息給機載電子分配系統(操作7528)。該信息包括發送下行鏈路文件的剩余下行鏈路數 據的起始點或偏移。該流程接著進行到如上所述的操作7510。因此,在這些有利實施例中描述的軟件維護工具提供從庫向飛行器數據處理系統 傳輸軟件飛行器部件的額外特征。在不同的有利實施例中,軟件維護工具可以連接到地面 網絡上的庫或代理服務器應用程序,從而接收命令和軟件飛行器部件。該軟件維護工具接 著可以從地面網絡斷開連接并且在物理上轉移到一個位置,用于連接到飛行器網絡。在這 個位置上,軟件維護工具連接到飛行器網絡并且傳輸軟件飛行器部件和命令給機載電子分 配系統,該機載電子分配系統在飛行器中的飛行器網絡上的數據處理系統上運行。此外,軟件維護工具允許操作員使用軟件維護工具中的視圖組件給出的圖形用戶 界面獨立于庫創建命令。該軟件維護工具也包括這樣的特征,其允許該組件從庫或代理服 務器應用程序以外的其他源接收軟件飛行器部件。機載電子分配系統不同的有利實施例也給出用于與飛行器傳輸信息的計算機實現的方法、設備和計 算機程序產品。在一個有利實施例中,計算機實現的方法被用于與飛行器傳輸信息。在運 行在飛行器中的飛行器數據處理系統中的機載電子分配系統和地面組件之間建立連接。在這些例子中,地面組件可以位于軟件應用程序中的地面網絡中,例如軟件維護 工具或代理服務器應用程序。響應從機載電子分配系統通過連接發出的對命令的請求,識 別由機載電子分配系統執行的命令。該識別的命令被從地面組件發送給機載電子分配系 統。事務處理標識符被分配給該命令。和命令關聯的事務處理的狀態在機載電子分配系統上和地面組件上通過使用事 務處理標識符保持。上傳由機載電子分配系統啟動。軟件飛行器部件接著從地面組件發送 到機載電子分配系統以進行上傳。該傳輸的狀態被存儲。
現在轉向圖76,根據本發明有利實施例描述了用于與飛行器傳輸信息的組件圖 示。機載電子分配系統7600是機載電子分配系統的例子,諸如圖3中的軟件飛行器部件管 理設備300中的機載電子分配系統310。在本說明性例子中,機載電子分配系統7600和大容量存儲器7602是位于飛行器 網絡中的飛行器數據處理系統上的組件。機載電子分配系統7600是圖1中的機載電子分 配系統146的例子。大容量存儲器7602是圖1中存儲裝置148的例子。這些組件是飛行 器數據處理系統的部件,諸如飛行器網絡101中的飛行器數據處理系統144的部件。地面組件7604和地面組件接口 7606是可以在代理服務器應用程序或軟件維護工 具中存在的組件例子,諸如圖35中的代理服務器應用程序3500或圖54中的軟件維護工具 5400。在這些例子中,地面組件7604和機載電子分配系統7600可以交換信息。命令7607、 軟件飛行器部件7608、下行鏈路文件7610和狀態7612是可以用機載電子分配系統7600傳 輸的信息的例子。在這些例子中,地面組件7604可以發送命令7607給機載電子分配系統7600。機 載電子分配系統7600可以執行該命令以進行事務處理。該事務處理可以是,例如數據上傳 或下傳。上傳包括發送軟件飛行器部件7608給機載電子分配系統7600。下傳包括發送下 行鏈路文件7610給地面組件7604。另外,在這些例子中,不同事務處理的狀態同時由地面組件7604和機載電子分配 系統7600保持。狀態7612由機載電子分配系統7600發送至地面組件7604以提供通過執 行命令進行的特定事務處理的狀態,該命令諸如是命令7606。這個狀態通過命令標識符與 特定命令或事務處理相關聯。軟件飛行器部件7608可以被發送給機載電子分配系統7600用于與軟件飛行器部 件7614—起存儲在大容量存儲器7602中。下行鏈路文件7610可以是來自于大容量存儲 器7602的下行鏈路文件7616的下行鏈路文件。狀態信息7618可以被存儲在大容量存儲器7602中并且包括狀態信息,諸如狀態 7612。狀態信息7618可以指出特定的軟件飛行器部件已經被成功地存儲在大容量存儲器 7602中的軟件飛行器部件7614中。狀態信息7618允許在軟件飛行器部件被識別為已經由 機載電子分配系統7600成功地上傳并且存儲在大容量存儲器7602中時啟動將軟件飛行器 部件從大容量存儲器7602加載到外場可更換單元。此外,狀態信息7618可以識別下行鏈路文件諸如下行鏈路文件7610是否已經成 功地被下傳。如果發生下行鏈路文件7610的部分下傳,那么狀態信息7618提供下行鏈路 文件7610中的什么信息已經被傳輸的狀態。因此,維持多少信息已經被下傳到地面組件 7604的狀態可以被用于在以后的時間點下傳下行鏈路文件7610的剩余信息而無需重新開 始下行鏈路文件7610的完整傳輸。地面組件接口 7606提供其他組件與地面組件7604的接口。以這種方式,地面組件 7604可以是可互換的或修改為地面組件的其他版本或配置,從而提供對特定機載電子分配 系統的接入,該機載電子分配系統可以具有用于交換信息或處理命令的不同的協議。在這 些例子中,地面組件7604包含與機載電子分配系統7600傳輸信息所需的進程。如果使用 與地面組件7604不兼容的不同的機載電子分配系統,則地面組件7604可以被替代為另一 地面組件。
因此,在地面網絡中的其他軟件組件不是必須被改變,例如,代理服務器應用程序 和軟件維護工具中的其他組件不要求更改為能夠與機載電子分配系統通信。現在轉向圖77,根據本發明有利實施例描述了圖解說明用于針對命令輪詢的消息 流的消息流圖示。在本例子中,在該消息流中包含的組件為地面組件(OGC)接口 7700、地 面組件7702和機載電子分配系統7704。在本例子中,機載電子分配系統7704針對命令輪詢地面組件7702 (消息Tl)。響 應于被輪詢,地面組件7702發送獲取命令請求給地面組件接口 7700 (消息T2)。本命令被 地面組件接口 7700用于識別位于機載電子分配系統7704的代理服務器應用程序或軟件維 護工具中的命令。作為響應,命令或指向打包的命令文件的指針被返回給地面組件7702(消息T3)。 在這些例子中,代理服務器應用程序返回指向包含該命令的打包的文件的指針,諸如通用 資源定位器。借助軟件維護工具,實際的命令本身在消息T3中被返回。如果命令不存在, 則在消息T3中返回空值或某個其他指示。返回的命令接著被發送給機載電子分配系統 7704(消息T4)。機載電子分配系統7704可以接著處理并且執行在消息T4中接收的命令。現在轉向圖78,根據本發明有利實施例描述了圖解說明發送狀態信息的消息流的 圖示。在本例子中,在消息流中的組件包括地面組件接口 7700、地面組件7702和機載電子 分配系統7704。機載電子分配系統7704為由機載電子分配系統7704執行的各種操作和處 理提供狀態信息。該狀態信息可以包括,例如,已經上傳的軟件飛行器部件的狀態、下行鏈 路文件的狀態和/或其他合適的信息。機載電子分配系統7704發送狀態給地面組件7702 (消息Ul)。該狀態由地面組件 7702轉發給地面組件接口 7700(消息U2)。在這些例子中,該狀態信息可以接著由代理服 務器應用程序或軟件維護工具處理存在下傳數據的兩個階段。圖79說明了第一個階段,在該階段中作出對下傳數據 的請求,并且圖80描述了第二個階段,在該階段中數據被下傳。現在參考圖79,根據本發明 有利實施例描述了請求下傳數據的消息流圖示。圖79中的消息流顯示了下傳數據的第一 個階段。在這些例子中,圖79顯示了請求下傳數據。如根據下面的圖80描述的,第二個階 段用于實際傳輸下行鏈路數據。在本例子中,第一個階段具有兩種情況。在情況7902中,在部分下行鏈路可用的 情況下請求下傳信息。在情況7900中,機載電子分配系統7706發送下傳文件的請求(消息VI)。在消 息Vl中,如果沒有存儲下行鏈路文件的空間,則拒絕該請求。作為響應,地面組件7702發 送請求以判斷部分下行鏈路記錄是否被提供給地面組件接口 7700(消息V2)。作為響應, 地面組件接口 7700發送請求以獲取與該請求相關的部分下行鏈路,從而發送消息Vl (消息 V2)。在消息V2中發送的請求包括飛機標識符和下行鏈路標識符。本信息被地面組件接口 7700用于判斷是否存在此特定下行鏈路文件的部分下行鏈路文件。地面組件接口 7700返回空值給地面組件7702,指出不存在針對所請求的下行鏈 路的部分下行鏈路文件(消息V3)。作為響應,地面組件7702做出下傳下行鏈路文件的請 求(消息V4)。在這些例子中,消息V4中的消息是下傳整個文件的請求。在這些例子中,t 消息包括關于文件大小的信息。如果空間可用,則地面組件接口 7700返回位置,從而將文件下傳至地面組件7702 (消息V5)。如果空間不可用,則返回空值給消息V5。作為響應,地面組件7702返回響應給機載電子分配系統7704 (消息V6)。該消息 為可以進行下傳的指示或者拒絕請求。在第一個階段的情況7902中,機載電子分配系統7704請求下傳下行鏈路文件的 部分文件(消息V7)。作為響應,地面組件7702請求判斷是否已經存在針對所請求的下行 鏈路的部分下傳的文件(消息V8)。響應接收該消息,地面組件接口 7900給地面組件7702返回包含對存在的部分下 傳的文件的引用的文檔(消息V9)。在這些例子中,根據特殊的實現,該文檔是可擴展標記 語言(XML)文檔并且引用可以是指針或通用資源定位符(URL)。當返回引用時,地面組件7702向機載電子分配系統7704發送對下傳部分下行鏈 路文件的請求的響應(消息V10)。該響應在本例子中包括可以繼續下傳的指示和使用的偏 移值。該偏移值標識應該從下行鏈路文件的何處開始下傳數據。該偏移值是從已經為下行 鏈路文件接收的下行鏈路信息中識別的。現在轉向圖80,根據本發明有利實施例描述下傳數據的消息流圖示。像圖79 — 樣,該下傳過程包括兩種情況,情況8000和情況8002。情況8000涉及不用部分下行鏈路下 傳數據并且情況8002涉及用部分下行鏈路下傳數據。在圖79中,情況7900說明部分下行 鏈路不可用的情況,而情況7902說明了在地面組件上部分下行鏈路文件可用的情況。在情況8000中,消息流始于機載電子分配系統7704下傳下行鏈路文件給地面組 件7702 (消息Wl)。地面組件7704請求將文件自機載電子分配系統7704下傳到地面組件 7700 (消息W2)。該消息包括文件大小和其他合適的下行鏈路信息。地面組件接口 7700返回響應給地面組件7702 (消息W3)。如果沒有空間可用于下 傳下行鏈路文件則返回空值。如果下行鏈路文件可以被下傳,則地面組件7702將信息寫入 到文件并且返回響應給機載電子分配系統7704 (消息W4)。然后地面組件7702向地面組件 接口 7700發出請求以存儲文件(消息W5)。下一步,在情況8002中,機載電子分配系統7704下傳文件到地面組件7702 (消息 W6)。然后地面組件7702從地面組件接口 7700請求部分下行鏈路文件(消息W7)。在本例 子中,文件由地面組件接口 7700返回給地面組件7702 (消息W8)。這時,地面組件7702將信息寫入到文件以完成下行鏈路文件并且返回響應給機 載電子分配系統7704 (消息W9)。在本例子中,寫入到文件的位的數量標識在響應中。然 后,地面組件7704發送請求給地面組件接口 7700,以存儲下傳的文件(消息W10)。響應該消息,地面組件接口 7700可以將文件存儲到地面組件的文件系統中。地面 組件可以是存儲在代理服務器應用程序或軟件維護工具中的文件。現在參考圖81,根據本發明有利實施例描述了圖解說明在文件僅僅被部分地傳輸 時的消息流的圖示。在本例子中,機載電子分配系統7704使用正常下傳序列下傳文件,在 該下傳序列中連接失敗或停止(消息XI)。響應于只接收部分文件,地面組件7702發送請 求給地面組件接口 7700以存儲部分下傳的文件(消息X2)。響應于接收該請求,部分下行 鏈路文件由地面組件接口 7700存儲在文件系統中。該文件系統可以位于代理服務器應用 程序或軟件維護工具中。現在轉向圖82,根據本發明有利實施例描述了圖解說明上傳過程的消息流圖示。在這些例子中,上傳在兩個階段進行。在階段8200中,關于被上傳的文件的信息被請求并 且在階段8202中,文件本身被上傳。在兩個階段中,地面組件7702提示地面系統關于資源 的信息。該地面系統可以是,例如在代理服務器應用程序或軟件維護工具中的其他組件。如所描述的,機載電子分配系統7704發送消息,請求上傳軟件飛行器部件(消息 Yl)。響應于接收到該請求,地面組件7702發送調用給地面組件接口 7700,以獲取特定軟件 飛行器部件(消息Y2)。響應該調用,如果存在軟件飛行器部件,則返回軟件飛行器部件的 標識(消息Y3)。在這些例子中,如果部件不存在,則返回空值。響應于接收該消息,地面組件7702 將該消息轉發給機載電子分配系統7704 (消息Y4)。在階段8202中,機載電子分配系統7704請求軟件飛行器部件(消息Y5)。響應于 接收到該請求,地面組件7702從地面組件接口 7700請求軟件飛行器部件(消息Y6)。如 果資源可用的話,地面組件接口 7700返回資源(消息Y7)。如果資源不可用,則返回空值。 地面組件7702接著發送軟件飛行器部件給機載電子分配系統7704 (消息Y8)。如果軟件飛 行器部件不可用,則返回錯誤。現在轉向圖83,根據本發明有利實施例描述了圖解說明上傳過程中的消息流的圖 示。在本例子中,數據流中存在兩個階段,階段8300和階段8302。在階段8300中,請求軟 件飛行器部件的部分上傳并且在階段8302中進行部分軟件飛行器部件的上傳。如果軟件 飛行器部件的之前傳輸被中斷,則進行軟件飛行器部件的部分上傳。在階段8300中,機載電子分配系統7704發送上傳請求給地面組件7702。在本例 子中,該請求以部件應該從此上傳的偏移或開始位置識別軟件飛行器部件(消息Zl)。響應 接收到此請求,地面組件7702請求軟件飛行器部件(消息Z2)。如果存在部件,則地面組件接口 7700返回軟件飛行器部件。否則的話,返回空值 (消息Z3)。響應接收到軟件飛行器部件,地面組件7702返回響應,指出在特定偏移或開始 位置可獲得軟件飛行器部件(消息Z4)。接著,在階段8302中,機載電子分配系統7704請求在開始位置或偏移位置的軟件 飛行器部件(消息Z5)。地面組件7704響應接收到該請求而請求資源(消息Z6)。響應接收到請求,地面組件接口 7700返回軟件飛行器部件或者如果地面組件 7702不可使用該部件則返回空值(消息Z7)。響應接收到該響應,地面組件7704在所標識 的開始點或偏移開始上傳軟件飛行器部件(消息Z8)。如果部件不可用,則返回錯誤給機載 電子分配系統7704。現在轉向圖84,根據本發明有利實施例描述了上傳數據的過程流程圖。圖84中 圖解說明的流程可以在機載電子分配系統中實現,諸如圖76中的機載電子分配系統7600。 在本例子中,上行鏈路數據是針對軟件飛行器部件。該流程開始于接收上行鏈路命令以上傳軟件飛行器部件(操作8400)。判斷軟件 飛行器部件是否已經部分地上傳(操作8402)。如果軟件飛行器部件還沒有部分地上傳, 則請求接收軟件飛行器部件(操作8404)。該流程接著為軟件飛行器部件接收數據(操作 8406)。判斷數據傳輸是否停止(操作8408)。可以因為許多理由停止傳輸。例如,軟件飛 行器部件的傳輸已經完成。在另一個例子中,在沒有完成軟件飛行器部件的傳輸的情況下可以發生中斷。也可以因為各種事件發生中斷。在一個事件中,機載電子分配系統和地面組件之 間的通信鏈接非預期地終止。在另一個例子中,事件可以是操作員終止從軟件維護工具傳 輸軟件飛行器部件。如果數據傳輸沒有停止,則該流程返回至操作8406。否則,判斷軟件飛行器部件是 否完整(操作8410)。如果軟件飛行器部件是完整的,則該軟件飛行器部件被存儲在飛行器 數據處理系統中的存儲裝置中(操作8412)。在本例子中,存儲裝置可以是圖76中的大容 量存儲器7681。該流程接著返回狀態給地面組件(操作8414),此后該流程結束。在本例子中,狀 態指出軟件飛行器部件已經被完全地接收。再次參考操作8410,如果軟件飛行器部件沒有被完全接收,則軟件飛行器部件已 經接收的部分被存儲在存儲裝置中(操作8416)。該流程接著存儲該狀態(操作8418),此 后該流程結束。在該說明性例子中,狀態可以標識軟件飛行器部件和實際上已經接收的軟 件飛行器部件部分。該信息可以被用于在以后的時間重新傳輸軟件飛行器部件的剩余部 分。再次參考操作8402,如果軟件飛行器部件已經被部分地上傳,則該流程請求軟件 飛行器部件的未發送部分(操作8420)。該流程接著進行到操作8406以從軟件飛行器部件 接收數據。在操作8420中,請求可以包括尚沒有被接收的軟件飛行器部件數據的偏移或開 始點的標識。現在轉向圖85,根據本發明有利實施例描述了下傳數據的過程流程圖。在圖85中 說明的流程可以在機載電子分配系統中實現,諸如圖76中的機載電子分配系統7600。該流程開始于發送請求以發送下行鏈路文件(操作8500)。判斷是否收到發送下 行鏈路文件的數據的指示(操作8502)。如果收到發送數據的指示,則該流程發送下行鏈路 文件的下行鏈路數據(操作8504)。接著,判斷是否停止傳輸下行鏈路數據(操作1006)。可以是因為所有的數據已經 被發送而停止傳輸。在其他情況下,例如,由于丟失通信鏈接或被飛行器上操作員中斷而停 止傳輸。如果數據的傳輸沒有停止,則該流程返回到操作8504以繼續發送下行鏈路數據。如果傳輸已經停止,則判斷是否所有的下行鏈路數據已經從下行鏈路文件發送 (操作8508)。如果所有的下行鏈路數據已經被發送,則該流程發送完成的狀態(操作 8510),此后該流程結束。現在再次參考操作8508,如果沒有發送所有的下行鏈路數據,則存儲下行鏈路數 據的傳輸狀態(操作8512)。在這些例子中,狀態可以被存儲為圖76中的狀態信息7618。 在本例子中,該狀態可以標識下行鏈路文件和已發送的數據量。該流程也可用于發送部分下行鏈路文件,在該部分下行鏈路文件中,一部分下行 鏈路文件已經被發送。使用這種類型的下傳方式,操作8500發送請求來下傳部分下行鏈路 文件而不是整個文件。對于部分下行鏈路文件,如果地面組件從之前的傳輸發現部分下傳 的數據,則操作8502是主動指示。本指示也包括發送剩余部分下行鏈路文件的偏移或開始
點ο打包工具
可以從各種源接收軟件飛行器部件。根據特殊的實現,可以從飛行器制造商或某 個第三方源接收軟件飛行器部件。此外,航空公司也可以創建在其本公司的飛行器中使用 的軟件飛行器部件。在不同的有利實施例中使用包來分配這些部件。不同的有利實施例提供計算機實現的方法、設備和計算機程序產品,其促進接收 和分配處理數字化內容、計算機程序或計算機敏感的數字形式的數據的自動化。一個有利 實施例包括將實際的運輸包和物理介質替換為便于自動化的計算機敏感的包。另一個有利 實施例是將一個或更多數字簽名應用到包內的對象和包本身,從而結合功能性私有密鑰基 礎設施提供對發送者的鑒定,完整性的認可和保證。在另一個有利實施例中,一種方法被用于自動化處理軟件飛行器部件。從航空公 司的部件管理系統外的源接收包含簽名的軟件飛行器部件的輸入包,該輸入包例如可能是 電子zip文件。為該輸入包和軟件飛行器部件驗證一組簽名。響應該組有效簽名,輸入包 被解包。在用戶的自行處理下顯示該輸入包的內容。響應將解包的軟件飛行器部件上載到 軟件飛行器部件管理系統或者設備中的庫的請求,用認可簽名將該解包的軟件飛行器部件 再次簽名以形成已簽名的認可的軟件飛行器部件。一個有利實施例是,該第二個認可數字 簽名也作為從部件的供應商到部件的接收者的傳輸委托并且提供事務處理完成的認可。在一個有利實施例中已簽名的認可的軟件飛行器部件的接收可以被置于另一包 中。該包含已簽名的、接收的認可軟件飛行器部件,包被簽名以形成已簽名包,其中該已簽 名的、認可的軟件飛行器部件和已簽名包的簽名不同于在輸入包中的簽名組。已簽名的包 可以被發送到軟件飛行器部件管理系統或設備中的接收庫。在另一個有利實施例中,計算機實現的方法被用于處理額外的配置項。包含配置 項的包被接收以形成接收的包。判斷該包的一組簽名和配置項是否有效。響應于判斷該組 簽名為有效,則存儲該配置項。現在轉向圖86,根據本發明有利實施例描述了圖解說明打包工具的圖示。打包工 具8600被用于接收和管理包以供在環境中使用,諸如在圖3中的軟件飛行器部件管理設備 300 中。另外,打包工具8600可以在其他組件中實現,用于在圖3的軟件飛行器部件管理 設備300中創建包。例如,打包工具8600的功能可以在軟件維護工具中實現,諸如圖54中 的軟件維護工具5400。作為另一個例子,這些功能也可以在圖76中的飛行器網絡7601中 實現,從而將諸如包中的下行鏈路文件的信息發送回地面網絡。在本例子中,打包工具8600可以接收存儲或包裝在包8604中的軟件飛行器部件 8602。盡管這些例子將軟件飛行器部件8602說明為包8604的內容,但在這些例子中,任何 配置項可以被置入包8604中以在圖3中的軟件飛行器部件管理設備300中使用。例如,配 置項也可以采用文檔、配置信息或其他合適信息的形式。打包工具8600處理包8604,用于上載到庫8606。庫8606可以使用圖17中的庫 1700實現。該處理包括各種功能,諸如檢查完整性和包8604中的一組簽名。簽名的檢查可 以包括對包8604和軟件飛行器部件8602的簽名的檢查。另外,軟件飛行器部件8602可以 從包8604中被移除并且被檢驗。打包工具8600也可以將軟件飛行器部件8602重新包裝 成另一個包,用于上載給庫8606。現在轉向圖87,根據本發明有利實施例描述了圖解說明打包工具的圖示。打包工具8700是圖86中打包工具8600的更詳細說明。打包工具8700包括用戶界面8702、簽名 8704、解包和檢驗8706、包8708和上載8710。用戶界面8702為用戶提供用戶界面以操作 打包工具8700。打包工具8700可以在數據處理系統中實現,諸如圖2中的數據處理系統 200。簽名8704,在這些例子中提供多個不同的功能。例如,簽名8704可以檢查包的完 整性及其配置項。該完整性可以通過檢查該包的數字簽名及其內容來進行。在這些例子中, 簽名位于可擴展標記語言文檔中,該文檔和被簽名的內容分離。在其他實施例中,簽名可以 集成到被簽名的配置項中。簽名8704可以簽名存在的軟件飛行器部件和其他文檔、文件和其他合適的數據。 解包和檢驗8706允許用戶從包中移除軟件飛行器部件和其他信息并且檢驗或瀏覽這些組 件。在將包解包時,解包和檢驗8706從包中解壓縮或移除軟件飛行器部件并且將其置于所 選的文件系統中。此外,如果在包中存在打包滑條,則該打包滑條也可以被顯示。本功能的檢驗部分 可以被用于允許用戶檢驗存儲在文件系統8712中的包8714的內容和簽名有效性。包8708 允許用戶創建新的包并且操縱已經存在的包。例如,在操縱包時,用戶可以組織包、添加或減去其內容。根據特殊的實現,包可以 以多個不同的方式組織。例如,目錄可以存儲包含特定類型飛行器的軟件飛行器部件的包。 同樣地,包可以基于其源被存儲。在這些例子中,上載8710提供從打包工具8700發送包中 已簽名的配置項目給庫的功能,該庫諸如是圖17的庫1700。現在轉向圖88,根據本發明有利實施例描述了圖解說明包的處理的消息流圖示。 在圖88中的消息流說明了被用于處理包以上傳給庫的消息流。在本例子中,包含在處理包的過程中的不同組件包含用戶8800、打包工具8802和 庫8804。在本例子中,當用戶處理或接收輸入包8806時該消息流開始。在本例子中,用戶 可以從不同的源接收輸入包8806。例如,輸入包8806可以通過因特網連接或通過某物理介 質被接收,該物理介質例如為閃存或光盤。用戶使用包檢驗工具打開包(操作Li)。響應該用戶輸入,打包工具8802將包信 息顯示給用戶(操作L2)。用戶接著檢驗包的內容并且選擇解包該包(操作L3)。響應接收 該用戶輸入,打包工具8802驗證該簽名信息并且將包的內容解包到文件系統中(操作L4)。 在輸入包8806中的簽名是由輸入包8806中的軟件飛行器部件的源生成的簽名。然后,由用戶8800生成用戶輸入,從而使用庫上載工具將解包的軟件飛行器部件 上載給庫(操作L5)。用戶鍵入用戶輸入從而添加從解包的包位置上載的部件(操作L6)。 用戶接著按下上載給庫按鈕(操作L7)。響應該用戶輸入,打包工具8802提示庫的用戶8800輸入登陸憑證(操作L8)。 響應該提示,用戶8800鍵入庫憑證(操作L9)。打包工具8802接著提示用戶輸入簽名密 碼以簽名該軟件飛行器部件(操作L10)。響應接收到該提示,用戶8800鍵入密碼(操作 Lll)。在這些例子中,該簽名密碼被用于創建簽名,該簽名被應用于軟件飛行器部件的各種 文件。響應從用戶接收密碼,打包工具8802將簽名應用到不同的軟件飛行器部件文件(操 作 L12)。作為該簽名過程的一部分,新包被創建并且軟件飛行器部件文件被置于新包中。借助這種類型的實現,在這個階段,包中的軟件飛行器部件上的數字簽名與來自輸入包 8806的簽名不同。現在應用的簽名是特定用戶的簽名,該特定用戶諸如是特定的航空公司 或維護機構。在應用簽名后,由打包工具8802啟動上載部件給庫8804(操作L13)。庫8804上 載包中的軟件飛行器部件并且校驗內容(操作L14)。然后,從庫8804返回操作狀態給打包 工具8802(操作L15)。打包工具8802發送事件日志給庫8804 (操作L16)。事件日志由庫 8804上載(操作L17)。接著關于上載的操作狀態從庫8804返回給打包工具8802 (操作L18)。該操作狀 態接著由打包工具8802提供給用戶8800 (操作L19)。現在轉向圖89,根據本發明有利實施例描述了圖解說明打包工具的用戶界面的一 個實現的圖示。在本例子中,用戶界面8900圖示說明用于實現圖87中的打包工具8700的 用戶界面8702的組件。在本例子中,用戶界面8900包括工作包列表視圖8902和工作包細 節視圖8904。工作包列表視圖8902顯示一列不同的包。用戶可以從該視圖啟動項目操作8906、 工作包操作8908或退出應用程序8910。項目操作8906可以被用于創建新的項目、打開存 在的項目、關閉當前項目或保存當前項目。在這些例子中,工作包操作8908允許用戶創建 包、刪除包或復制包。退出應用程序8910允許用戶退出打包工具。另外,用戶可以從工作包列表視圖8902啟動打開或關閉工作包8912。如果工作包 是打開的,則使用工作包細節視圖8904。工作包細節視圖8904提供用戶界面,該界面根據 正在被處理的包的特定類型顯示不同的功能。另外,用戶可以從工作包列表視圖8902和從工作包細節視圖8904訪問工具8914。 工具8914提供各種功能,諸如檢查包的完整性、解包和檢驗包以及檢查兼容性和設置優先 級。在本例子中,工具8914提供功能8916、8918、8920、8922和8924。功能8916顯示關于 數字簽名和配置項的簽名狀態的信息。簽名狀態的例子是生產、批準和來源。功能8918將簽名的部件和/或包中的資源解包并且將這些組件置于文件系統中。 功能8920提供對包內容的檢驗、驗證包和組件簽名并且管理包文件。功能8922允許用戶 檢查軟件飛行器部件與飛機的機載數據加載功能(ODLF)的兼容性。功能8924允許用戶編 輯各種屬性和偏好。所描寫的功能作為功能的說明性例子提供,這些功能可以在工具8914 中提供。當然,其他的功能可以被用于補充或替換所描述的功能。現在參考圖90,根據本發明有利實施例描述了圖解說明檢驗和解包包時的數據流 圖示。在圖90中說明的數據流可以在圖87的打包工具8700中的解包和檢驗8706中實現。在本例子中,給出兩個對話包或視圖,檢驗和解包視圖9000和包檢驗視圖9002。 檢驗和解包視圖9000顯示給用戶并且允許用戶進行關于打包工具已經接收的包的不同操 作。例如,用戶可以選擇一個操作來操控包。該操作可以是,例如刪除或轉移一組包文件。如果用戶從檢驗和解包視圖9000中選擇該操作,所選的包文件就被轉移或刪除 (操作9004)。然后,包列表被刷新(操作9006)并且該流程返回到檢驗和解包視圖9000。如果用戶選擇的操作諸如為移除一個位置,則該流程接著修改位置列表(操作 9008)。該位置的優選接著被存儲(操作9010),該流程接著返回到如上所述的操作9006。 這個位置優選是用戶選擇的路徑或目錄。在該方法中,用戶可以從一組目錄或在其中存儲包的一組位置中刪除位置。在檢驗和解包視圖9000處,如果用戶在視圖中的新位置處鍵入用戶輸入,該用戶 被提示輸入新位置(操作9011)。一旦用戶鍵入新位置信息,該流程進入到如上所述的操作 9008。如果用戶選擇或決定檢驗包,則該流程轉移到包檢驗視圖9002。在該用戶界面中,用 戶可以進行關于包的各種操作。例如,用戶可以選擇更新包信息。然后,從文件讀取包信息 (操作9014)。該流程接著更新對話包控件的數據,從而將包信息顯示給用戶(操作9016)。當包檢驗視圖9002被顯示時,用戶可以選擇另一個操作,諸如將包解包。本操作 的選擇導致包簽名被驗證(操作9018)。如果簽名是有效的,則包被解包(操作9020)。該 流程給出解包該包的結果,并伴隨著在包檢驗視圖9002中顯示任何打包滑條內容(操作 9022)。然后該流程返回到檢驗和解包視圖9000。在操作9018中,如果包的簽名是無效的,則該流程給出驗證結果(操作9024)。如 果驗證對于包簽名來說是錯誤的,則這些在包檢驗視圖9002中給出的結果可以包括簽名 問題是致命的指示。在包檢驗視圖9002中,如果用戶選擇驗證包,則該流程驗證包簽名(操作9026)。 如果包簽名是有效的,則接著驗證每個配置項簽名(操作9028)。在操作9026和9028中, 該流程進行到操作9024以顯示驗證的結果。如果配置項簽名是無效的,則不同于在包簽名 是無效的時候發生致命問題,而是給出警告。在包檢驗視圖9002中,如果用戶關閉對話包, 則該流程返回到檢驗和解包視圖9000。現在轉向圖91,根據本發明有利實施例描述了圖解說明在創建包的過程中的數據 流圖。在圖91中說明的流程可以在打包工具中實現,諸如圖87中的打包工具8700。更具 體地,顯示在圖91中的不同操作可以在圖87的包8708中實現。在本例子中,該流程開始于打開新的或已有項目(操作9100)。然后,該流程創建 工作包(操作9102)。在創建原始的已簽名配置項時,該流程始于接收原始包元數據和配置 項標識符(操作9104)。在這些例子中,配置項是由一組存儲在包中的文件組成的單個項。 每個配置項具有唯一的標識符。配置項可以是,例如,軟件飛行器部件、相關文檔或某個其 他文件。用戶接著定位到文件系統上的配置項的數據目錄并且為這些選擇的文件鍵入元 數據(操作9106)。選擇數據文件的目錄,因為特定配置項可以包括多于一個文件。例如, 軟件飛行器部件可以包括可執行文件、配置文件和動態鏈接庫。接著,該流程驗證用戶鍵入的元數據條目(操作9108)。在操作9108中,該流程可 以判斷元數據條目是否符合一組規則。這些規則可要求包含特定數量信息和特定類型信息 的特定類型的配置項。例如,對于軟件飛行器部件,軟件飛行器部件的源或制造商以及飛行 器類型的標識可以輸入為元數據。此外,該元數據可以標識接收軟件飛行器部件的特定飛 行器。該流程可以根據工作包的類型驗證配置項(操作9110)。接著,該流程接收用戶密 碼(操作9112)。該流程接著為配置項創建數字簽名的可擴展標記語言文件并且將數字簽 名的可擴展標記語言文件與配置項一起存儲在文件系統中(操作9114)。該流程繼續到保 存項目(操作9116)。用戶可以在任何這些不同操作的過程中選擇停止和保存項目并且在 其他時間繼續該項目。
60
用戶接著定位到文件系統中的資產的數據目錄并且為這些所選的文件鍵入元數 據(操作9118)。然后,該流程驗證由用戶鍵入的元數據條目(操作9120)。該流程接收用 戶密碼(9122)。該流程接著為資產創建數字簽名的可擴展標記語言文件并且將其存儲在資 產的目錄中(操作9124)。現在轉向圖92,根據本發明有利實施例描述了處理所接收的包的過程流程圖。在 圖92中說明的流程可以在軟件組件中實現,諸如圖87中的打包工具8700。更具體地,該流 程可以在圖87的解包和檢驗8706中實現。該流程開始于接收包(操作9200)。在本例子中,包可以通過各種源被接收。例 如,物理介質可以被連接到或置于在其中執行該流程的數據處理系統中。在其他實施例中, 包可以通過通信鏈接諸如網絡鏈接接收。該流程給出關于包的信息(操作9202)。在本操作中,信息可以通過圖形用戶界 面給出。該信息可以包括,例如,包的制造商源、包中內容的標識、包的大小和其他合適的信 息。然后,判斷是否解包包(操作9204)。該判斷可以通過接收用戶輸入做出。如果包要被解包,則該流程驗證包的簽名(操作9206)。在這些例子中,簽名可以 可以使用私鑰進行簽名。位于包中的公鑰可以被用于判斷名單和文件摘要是否有效。本驗 證也可以被用于判斷包實際上是否已經由源創造并且保持為未修改或已經被竄改。判斷包的簽名是否有效(操作9208)。如果包的簽名有效,則該流程將包含軟件飛 行器部件的包解包并且將其置于文件系統上(操作9210)。配置項簽名在解包包時不必是 有效的。在探測到一個或多個無效的配置項簽名時由用戶決定是否繼續解包包。在這些例 子中,如果包簽名是有效的,則軟件飛行器部件被解包并且存儲在文件系統中,如操作9210 中描述的。此后該流程結束。再次參看操作9208,如果包簽名不是有效的,則返回錯誤(操作9212),此后該流 程結束。參考操作9204,如果用戶決定不解包包,則該流程同樣也結束。該工具支持工作流狀態和動態。如在上面圖2中所討論的用戶界面的實現允許用 戶創建、驗證和完成包。包始于草稿狀態,包的每個組件(諸如部件和相關的文檔)同樣也 是這樣。隨著本流程的進行過,包以及每個組件的狀態從草稿變為在完成中,并且在包被簽 名后變為完成的。該實現也允許用戶添加、刪除或修改包的任何組件。此外,任何添加、刪除 或修改將會導致相關組件和包的當前狀態的改變,并且因此要求重新驗證和重新簽名。該 狀態在包列表視圖和包細節視圖中都以圖形指示。在提供靈活性和支持工作流的同時,本 功能進一步確保完成的包的完整性。該工具支持動態發布/分配工作流狀態。如上面在圖4中討論的用戶界面的實現 允許用戶創建、驗證和完成包。包開始于草稿狀態,包的每個組件(諸如部件和相關的文 檔)同樣也是這樣。在本流程進行過程中,包以及每個組件的狀態從草稿變為在完成中,并 且在包被簽名后改變為完成的。該實現也允許用戶添加、刪除或修改包的任何組件。此外, 任何添加、刪除或修改將會導致相關組件和包的當前狀態的改變,并且因此要求重新驗證 和重新簽名。該狀態在包列表視圖和包細節視圖中都以圖形指示。在提供靈活性和支持工 作流的同時,本功能進一步確保完成的包的完整性。在不同描述的實施例中的流程圖和框圖可以說明設備、方法和計算機程序產品的 一個或多個可能實現的體系結構、功能和操作。就這一點而言,流程圖或框圖的每個塊可以表示模塊、程序段或部分計算機可用或可讀的程序代碼,其包括用于實現指定的一個或多 個功能的一個或更多可執行指令。在某些替代的實現中,在塊中標注的一個或多個功能可 以不以圖中標注的順序發生。例如,在某些情況下,依據所包含的功能,相繼顯示的兩個塊 可以基本同時執行,或者有時塊可以以相反的順序執行。另外,提供在本公開中說明的軟件組件、硬件組件和數據結構的不同框圖,目的是 描述不同的有利實施例可以被實現的方式,并且并不意味著不同實施例可能采取的形式。 例如,一些框圖說明可以在軟件實現中組合或分割的功能塊。同樣,在這些例子中說明的硬 件和體系結構可以在不同的有利實施例中不同。同樣,給出不同的圖形用戶界面的例子,目 的是說明一種實現用戶界面的方式。這些例子也不意味著限制實現不同有利實施例的方 式。不同有利實施例可以采用完全基于硬件的實施例、完全基于軟件的實施例或包含 硬件和軟件元素兩者的實施例的形式。一些實施例在軟件中實現,該軟件包括但不限于例 如固件、常駐軟件和微代碼的形式。此外,不同的實施例可以采用計算機程序產品的形式,該計算機程序產品可以從 計算機可用或計算機可讀的介質訪問,所述介質提供供計算機或執行指令的任何裝置或系 統使用或結合其使用的程序代碼。出于本公開的目的,計算機可用或計算機可讀的介質通 常可以是有形的設備,該有形的設備可以包含、存儲、通信、傳播或傳輸指令執行系統、設備 或裝置使用的或結合執行系統、設備或裝置使用的程序。計算機可用或計算機可讀介質可以是,例如而不限于電子、磁、光、電磁、紅外或半 導體系統,或傳播介質。計算機可讀介質的非限制性的例子包括半導體或固態存儲器、磁帶 或移動式計算機磁盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)、硬磁盤、軟磁盤和光盤。 光盤可以包括只讀存儲光盤(CD-ROM)、讀寫光盤(CD-R/W)和DVD。此外,計算機可用或計算機可讀介質可以包含或存儲計算機可讀或可用程序代 碼,從而在計算機上執行計算機可讀或可用程序代碼時,計算機可讀或可用程序代碼的執 行使得計算機在一個或更多通信鏈接上傳輸另一計算機可讀或可用程序代碼。每個通信鏈 接可以是有線的或無線的。適合于存儲和/或執行計算機可讀或計算機可用程序代碼的數據處理系統將包 括通過諸如系統總線的通信組織直接或間接地耦合于存儲器元件的一個或更多處理器。存 儲器元件可以包括在實際執行程序代碼期間使用的本地存儲器、大容量存儲器和高速緩沖 存儲器,該高速緩沖存儲器提供至少一些計算機可讀或計算機可用程序代碼的臨時存儲, 從而降低在執行代碼期間從大容量存儲器檢索代碼的時間量。輸入/輸出(或I/O)裝置可以直接地或通過中間I/O控制器耦合到系統。這些 裝置可以包括,例如而不限于鍵盤、觸摸屏顯示器和指向裝置。不同的通信適配器可以被耦 合到系統,從而確保數據處理系統通過中介私人或公共網絡耦合到其他數據處理系統或遠 程打印機或存儲裝置。非限制性的例子是,調制解調器和網絡適配器,它們只是當前可用類 型的通信適配器重的幾種。用于分配可加載軟件飛行器部件(LSAP)分配的方法和設備實施例可以要求權利如下Al. 一種軟件飛行器部件管理設備,包括與數據處理系統關聯的庫,該庫被配置
62為管理一組飛行器的一組軟件飛行器部件;能夠接收多個軟件飛行器部件并且發送該組軟 件飛行器部件給庫的接收模塊;與庫的通信中的代理服務器,其中該代理服務器能夠服務 一組飛行器客戶系統;該組飛行器中的一飛行器的機載電子分配系統,其中機載電子分配 系統是該組飛行器客戶系統中的一飛行器客戶系統并且能夠通過代理服務器從庫為該飛 行器接收軟件飛行器部件;以及便攜式軟件維護工具,其中,該便攜式軟件維護工具提供發 送軟件飛行器部件給該飛行器的機載電子分配系統的替代途徑。A2.權利要求Al的軟件飛行器部件管理設備,其中,庫被配置為創建包含軟件飛 行器部件的包,其中所述軟件飛行器部件在包中被發送給機載電子分配系統。A3.權利要求Al的軟件飛行器部件管理設備,其中,所述代理服務器與數據處理 系統相關聯。A4.權利要求Al的軟件飛行器部件管理設備,其中所述便攜式軟件維護工具連接 到所述代理服務器以接收軟件飛行器部件,該便攜式軟件維護工具被轉移到包含該機載電 子分配系統的飛行器上,并且連接到該機載電子分配系統以傳輸軟件飛行器部件給機載電 子分配系統。A5.權利要求Al的軟件飛行器部件管理設備,其中,所述機載電子分配系統從飛 行器上的一組外場可更換單元下傳數據到代理服務器以形成下行鏈路數據,并且其中所述 代理服務器發送下行鏈路數據給庫,用于存儲。A6.權利要求Al的軟件飛行器部件管理設備,其中,所述軟件飛行器部件在包中 從庫轉移到機載電子分配系統。A7.用于管理多個軟件飛行器部件的計算機實現的方法,所述計算機實現的方法 包括在庫中存儲軟件飛行器部件;為軟件飛行器部件識別飛行器以形成已識別的飛行 器;從庫發送軟件飛行器部件給代理服務器;以及從代理服務器發送軟件飛行器部件給已 識別的飛行器上的機載電子分配系統。A8.權利要求A7的計算機實現的方法,其中從代理服務器發送軟件飛行器部件給 已識別的飛行器上的機載電子分配系統的步驟包括使用通信鏈接從代理服務器發送軟件 飛行器部件給已識別的飛行器上的機載電子分配系統。A9.權利要求A7的計算機實現的方法,其中從代理服務器發送軟件飛行器部件給 已識別的飛行器上的機載電子分配系統的步驟包括使用便攜式軟件維護工具從代理服務 器發送軟件飛行器部件給已識別的飛行器上的機載電子分配系統。A10.權利要求A7的計算機實現的方法,其中存儲步驟包括從供應商接收軟件飛 行器部件以形成已接收的軟件飛行器部件,處理軟件飛行器部件以形成已處理的軟件飛行 器部件,并且在庫中存儲已處理的軟件飛行器部件。All.權利要求A7的計算機實現的方法進一步包括通過代理服務器從庫發送命 令給機載電子分配系統以從飛行器下載數據;以及響應于發送命令而通過代理服務器接收 庫中的數據。A12.權利要求A7的計算機實現的方法進一步包括從庫發送軟件飛行器部件給 便攜式計算機上的軟件維護工具;將具有軟件飛行器部件的便攜式計算機轉移到飛行器 上;在將便攜式計算機轉移到飛行器后建立軟件維護工具和飛行器上的機載電子分配系統 之間的通信鏈接以形成建立的通信鏈接;以及通過建立的通信鏈接從軟件維護工具發送軟件飛行器部件給機載電子分配系統。用于管理軟件飛行器部件的計算機實現的方法和設備。軟件飛行器部件管理設備 包括庫、接收模塊、代理服務器、飛行器上的機載電子分配系統和便攜式軟件維護工具。地 面數據處理系統上的庫為飛行器存儲和管理軟件飛行器部件。接收模塊能夠從供應商接收 軟件飛行器部件并且將所述軟件飛行器部件發送給庫。代理服務器與庫通信并且能夠將軟 件分配給多個飛行器客戶系統。機載電子分配系統是飛行器客戶系統并且能夠通過代理服 務器從庫為飛行器接收軟件飛行器部件。便攜式軟件維護工具提供將軟件飛行器部件發送 給飛行器的機載電子分配系統的替代途徑。打包工具實施例可以要求權利如下Bi.用于處理軟件飛行器部件的計算機實現的方法,該計算機實現的方法包括 從軟件飛行器部件管理設備外的源處接收包含軟件飛行器部件的包;為輸入包和軟件飛行 器部件驗證一組簽名;響應被驗證的該組簽名,將輸入包解包;顯示輸入包的內容;解包所 述包以獲取軟件飛行器部件;響應將軟件飛行器部件上載到軟件飛行器部件管理設備中的 庫中的請求,判斷軟件飛行器部件是否符合規定;響應于軟件飛行器部件符合規定,將軟件 飛行器部件簽名以形成已簽名的軟件飛行器部件;將已簽名的軟件飛行器部件置于包內, 為包含已簽名的軟件飛行器部件的包簽名以形成已簽名包,其中已簽名的軟件飛行器部件 和已簽名包的簽名與輸入包中的該組簽名不同;以及發送已簽名的包給軟件飛行器部件管 理設備中的庫。B2.權利要求Bl的計算機實現的方法進一步包括識別軟件飛行器部件的元數據 和其他配置項。B3.權利要求Bl的計算機實現的方法,其中,所述軟件飛行器部件是第一個簽名 的軟件飛行器部件并且已簽名的軟件飛行器部件是使用和第一個簽名的軟件飛行器部件 不同的簽名被簽名。B4.權利要求Bl的計算機實現的方法,其中,已簽名的軟件飛行器部件或包的簽 名來自于制造商、航空公司或供應商。B5.權利要求Bl的計算機實現的方法,其中,存儲步驟包括將軟件飛行器部件存 儲到文件系統中的目錄下。B6.權利要求Bl的計算機實現的方法進一步包括顯示用戶界面,該用戶界面能 夠接收用戶的輸入從而在多個所存儲的軟件飛行器部件上進行操作。B7.用于處理配置項的計算機實現的方法,該計算機實現的方法包括接收包含 配置項的包以形成接收的包;判斷包和配置項的一組簽名是否有效;以及響應該組簽名是 有效的判斷保存配置項。B8.權利要求B7的計算機實現的方法進一步包括判斷配置項是否有效。B9.權利要求B7的計算機實現的方法,其中,判斷配置項是否有效的步驟包括比 較配置項與規定。B10.權利要求B9的計算機實現的方法,其中所述配置項是軟件飛行器部件并且 所述規定是軟件飛行器部件標準。Bll.權利要求B7的計算機實現的方法進一步包括響應于上載有效的配置項的用戶輸入,將有效的配置項簽名;將有效的配置項置于包中;簽名包;以及發送包給軟件飛 行器部件管理設備中的庫。B12.權利要求B7的計算機實現的方法進一步包括響應于用戶輸入,組織多個配 置項,所述配置項包括文件系統中的配置項。B13.權利要求B7的計算機實現的方法進一步包括顯示能夠接收用戶輸入的用 戶界面,從而操縱一組配置項。B14.權利要求B7的計算機實現的方法進一步包括顯示能夠支持和指出一組配 置項的動態發布/分配狀態的用戶界面。B15.權利要求B7的計算機實現的方法,其中,該組簽名包括針對配置項的第一個 簽名和針對包的第二個簽名。B16.權利要求B7的計算機實現的方法,其中,所述包包括主要的配置項和一組額 外的配置項。B17. 一種數據處理系統,包括總線;連接到總線的存儲裝置,其中該存儲裝置包 括程序代碼;連接到總線的處理器單元,其中處理器單元執行所述程序代碼以從軟件飛行 器部件管理設備外部的源接收包含軟件飛行器部件的輸入包;驗證輸入包和軟件飛行器部 件的一組簽名;響應該組簽名是有效的,解包輸入包;顯示輸入包的內容;存儲軟件飛行器 部件;響應將軟件飛行器部件上載至軟件飛行器部件管理設備中的庫的請求,判斷軟件飛 行器部件是否符合規定;響應于軟件飛行器部件符合規定,將軟件飛行器部件簽名以形成 已簽名的軟件飛行器部件;將已簽名的軟件飛行器部件置于包內;為包含已簽名的軟件飛 行器部件的包簽名以形成已簽名的包,其中已簽名的軟件飛行器部件和已簽名的包的簽名 與輸入包中的該組簽名不同;以及發送已簽名的包給軟件飛行器部件管理設備中的庫。B18.權利要求17的數據處理系統,其中所述處理器單元進一步執行程序代碼以 識別軟件飛行器部件的元數據。B19.權利要求17的數據處理系統,其中所述規定是軟件飛行器部件的工業標準。B20.權利要求17的數據處理系統,其中已簽名的軟件飛行器部件額已簽名包的 簽名來自于航空公司、供應商或制造商。B21.權利要求17的數據處理系統,其中在執行存儲軟件飛行器部件的程序代碼 的過程中,處理器單元執行程序代碼以將軟件飛行器部件存儲在文件系統中的目錄下。計算機實現的用于處理軟件飛行器部件的方法、設備和計算機程序產品。從源接 收包含軟件飛行器部件的包。驗證包和軟件飛行器部件的簽名。如果簽名有效,則解包該 包。顯示輸入的包的內容。響應將存儲的部件上傳至軟件飛行器部件管理設備中的庫的請 求,判斷所存儲的部件是否符合規定。如果所存儲的部件符合規定,則該部件被簽名。已簽 名的部件被置于包中并且被簽名以形成已簽名的包,其中已簽名的軟件飛行器部件和已簽 名的包的簽名與輸入包中的該組簽名不同。已簽名的包被發送給庫。用于分配軟件飛行器部件的代理服務器實施例可以要求權利如下Cl.用于管理軟件飛行器部件的計算機實現的方法,該計算機實現的方法包括 從飛行器網絡數據處理系統中的庫檢索一組軟件飛行器部件和關于該軟組件飛行器部件 的元數據以形成一組檢索到的軟件飛行器部件;將該組軟件飛行器部件存儲在文件系統中;將元數據存儲在數據庫中;發送該組軟件飛行器部件和元數據給機載電子分配系統、 地面組件接口和機載電子分配系統之間的通信鏈接;以及保持關于通信鏈接的活動性的狀
態fe息。C2.權利要求Cl的計算機實現的方法進一步包括發送狀態信息給庫。C3.權利要求C2的計算機實現的方法,其中所述狀態信息包括關于該組軟件飛行 器中的一軟件飛行器部件是否準備好安裝在飛行器上的外場可更換單元上的標識。C4.權利要求Cl的計算機實現的方法,其中該組軟件飛行器部件是第一組軟件飛 行器部件,該元數據是第一元數據,該機載電子分配系統是第一機載電子分配系統以及該 通信鏈接是第一通信鏈接并且進一步包括發送該組軟件飛行器部件和該元數據給該機載 電子分配系統,同時通過地面組件接口和第二機載電子分配系統之間的第二通信鏈接發送 第二組軟件飛行器部件和第二元數據給第二機載電子分配系統。C5.權利要求Cl的計算機實現的方法進一步包括從庫接收一組命令以形成接收 的命令組;通過地面組件接口和第二機載電子分配系統之間的第二通信鏈接發送接收的命 令組給第二機載電子分配系統。C6.權利要求C5的計算機實現的方法,其中該組命令包括刪除命令和下行鏈路命 令中的至少一個。C7.權利要求C5的計算機實現的方法進一步包括通過地面組件接口和第二機載 電子分配系統之間的第二通信鏈接接收下行鏈路數據;在文件系統中存儲下行鏈路數據以 形成存儲的下行鏈路數據;以及發送存儲的下行鏈路數據給庫。C8. 一種設備,包括文件系統;數據庫;存儲在文件系統中的一組軟件飛行器部 件;存儲在是數據庫中的一組命令;能夠與多個飛行器上的多個機載電子分配系統交換信 息的地面組件;控制進程,其中控制進程能夠從庫接收該組命令和該組軟件飛行器部件并 且發送該組命令和該軟組件飛行器部件給多個飛行器;以及數據處理系統,其中文件系統、 數據庫、該組軟件飛行器部件、該組命令、地面組件和控制進程是數據處理系統上的軟件組 件。C9.權利要求C8的設備,其中所述控制進程還能夠發送該組命令和該組軟件飛行 器部件給便攜式數據處理系統上的軟件管理工具。C10.權利要求C8的設備,其中所述地面組件能夠檢索下行鏈路數據和將下行鏈 路數據存儲在文件系統中的。Cll.權利要求C8的設備,其中所述控制進程能夠將下行鏈路數據從文件系統傳 輸到庫。C12.權利要求C8的設備,其中在包中從庫接收該組軟件飛行器部件中的軟件飛 行器部件。C13.權利要求C8的設備,其中所述設備位于機場或維護機構。C14.計算機程序產品,包括計算機可讀介質;存儲在計算機可讀介質上的程序 代碼,用于從飛行器網絡數據處理系統中的庫中檢索一組軟件飛行器部件和關于該組軟件 飛行器部件的元數據,形成一組檢索到的軟件飛行器部件;存儲在計算機可讀介質上的程 序代碼,用于在文件系統中存儲該組軟件飛行器部件;存儲在計算機可讀介質上的程序代 碼,用于在數據庫中存儲元數據;存儲在計算機可讀介質上的程序代碼,用于發送該組軟件飛行器部件和元數據給機載電子分配系統、地面組件接口和機載電子分配系統之間的通信 鏈接;以及存儲在計算機可讀介質上的程序代碼,用于保持關于通信鏈接的活動性的狀態 fn息οC15.權利要求C14的計算機程序產品進一步包括存儲在計算機可讀介質上的程 序代碼,用于發送狀態信息給庫。C16.權利要求C15的計算機程序產品,其中所述狀態信息包括對該組軟件飛行器 部件中的軟件飛行器部件是否準備好安裝在飛行器上的外場可更換單元的標識。C17.權利要求C14的計算機程序產品,其中該組軟件飛行器部件是第一組軟件飛 行器部件,該元數據是第一元數據,該機載電子分配系統是第一機載電子分配系統以及該 通信鏈接是第一通信鏈接并且進一步包括存儲在計算機可讀介質上的程序代碼,用于發 送該組軟件飛行器部件和該元數據給該機載電子分配系統并同時通過地面組件接口和第 二機載電子分配系統之間的第二通信鏈接發送第二組軟件飛行器部件和第二元數據給第 二機載電子分配系統。C18.權利要求C14的計算機程序產品進一步包括存儲在計算機可讀介質上的程 序代碼,用于從庫接收一組命令,以形成接收的命令組;存儲在計算機可讀介質上的程序代 碼,用于通過地面組件接口和第二機載電子分配系統之間的第二通信鏈接發送接收的命令 組給第二機載電子分配系統。C19.權利要求C18的計算機程序產品,其中該組命令包括刪除命令和下行鏈路命 令中的至少一個。C20.權利要求C18的計算機程序產品進一步包括存儲在計算機可讀介質上的程 序代碼,用于通過地面組件接口和第二機載電子分配系統之間的第二通信鏈接接收下行鏈 路數據;存儲在計算機可讀介質上的程序代碼,用于在文件系統中存儲下行鏈路數據以形 成存儲的下行鏈路數據;以及存儲在計算機可讀介質上的程序代碼,用于發送所存儲的下 行鏈路數據給庫。用于管理軟件飛行器部件的計算機實現的方法、設備和計算機程序產品。在一個 有利實施例中,一種方法包括從庫檢索一組軟件飛行器部件和關于該組軟件飛行器部件的 元數據以形成一組檢索到的軟件飛行器部件。將該組軟件飛行器部件存儲在文件系統中。 將元數據存儲在數據庫中。發送該組軟件飛行器部件和元數據給機載電子分配系統、地面 組件接口和機載電子分配系統之間的通信鏈接。保持關于通信鏈接的活動性的狀態信息。用于處理飛行器網絡中的命令的方法和設備實施例可以要求權利如下Dl.計算機實現的方法,用于處理網絡數據處理系統中的命令,該計算機實現的方 法包括為多個飛行器中的飛行器創建一組命令;將該組命令存儲在網絡數據處理系統中 的庫中的一組隊列以形成存儲的命令組;響應于事件而發送存儲的命令組給在網絡數據處 理系統上運行的代理服務器應用程序以形成已分配的命令組;建立代理服務器應用程序和 在飛行器上的飛行器數據處理系統上運行的機載電子分配系統之間的連接;由機載電子分 配系統從代理服務器應用程序請求分配的命令組;由機載電子分配系統從代理服務器應用 程序接收分配的命令組以形成接收的命令組;由機載電子分配系統處理接收的命令組以形 成經處理的命令組;以及如果經處理的命令組是一組上行鏈路命令則將一組軟件飛行器部
67件轉發給飛行器上的一組目標數據處理系統。D2.權利要求1的計算機實現的方法,其中處理步驟包括識別命令組中命令的命 令類型以形成已識別的命令;如果該命令是相應軟件飛行器部件的上行鏈路命令,則請求 該組軟件飛行器部件中相應的軟件飛行器部件,以形成已請求的軟件飛行器部件;以及接 收已請求的軟件飛行器部件。D3.權利要求Dl的計算機實現的方法,其中分配的命令組在一組包中被發送,其 中在該組包中的每一個包都由數字簽名簽名。D4.權利要求D3的計算機實現的方法,其中處理步驟包括驗證該組包中的每一 個包的數字簽名。D5.權利要求D2的計算機實現的方法,其中處理步驟進一步包括如果已識別的 命令是下行鏈路命令則從機載電子分配系統請求下行鏈路數據。D6.權利要求D2的計算機實現的方法進一步包括由機載電子分配系統從飛行器 上的所選的數據處理系統檢索數據以形成檢索到的數據;由機載電子分配系統將檢索到的 數據置于包中以形成下行鏈路數據;通過所述連接從機載電子分配系統發送下行鏈路數據 給代理服務器應用程序以形成接收的下行鏈路數據;以及發送接收的下行鏈路數據給庫。D7.權利要求D2的計算機實現的方法,其中處理步驟包括如果已識別的命令是 刪除命令,則識別數據處理系統以形成目標數據處理系統;以及發送已識別的命令給目標 數據處理系統以刪除目標數據處理系統上的資源。D8.用于處理命令的計算機實現的方法,該計算機實現的方法包括識別網絡數 據處理系統中的庫中的一組命令以形成一組已識別的命令;發送該組已識別的命令給在網 絡數據處理系統上運行的代理服務器應用程序以形成一組分配的命令;建立代理服務器應 用程序和在飛行器上的飛行器數據處理系統上運行的機載電子分配系統之間的連接;通過 連接從代理服務器應用程序發送該組分配的命令給機載電子分配系統以形成一組接收的 命令;由機載電子分配系統處理該組接收的命令以形成一組經處理的命令;如果該組經處 理的命令是一組上行鏈路命令,則使用該組經處理的命令將位于飛行器數據處理系統上的 所存儲的該組軟件飛行器部件轉發給飛行器上的一組目標數據處理系統。D9.權利要求D8的計算機實現的方法進一步包括發送該組軟件飛行器部件給飛 行器數據處理系統以形成存儲的軟件飛行器部件組。D10.權利要求D8的計算機實現的方法,其中所述處理步驟包括識別命令組中一 命令的命令類型以形成已識別的命令;并且執行該已識別的命令。Dll.權利要求DlO的計算機實現的方法,其中已識別的命令是刪除命令并且其中 運行步驟包括從該組目標數據處理系統刪除對應的軟件飛行器部件。D12.權利要求DlO的計算機實現的方法,其中已識別的命令是下行鏈路命令并且 其中運行步驟包括通過代理服務器應用程序從該組目標數據處理系統中的所選目標數據 處理系統將數據下傳到庫。D13.權利要求D8的計算機實現的方法,其中通過連接從代理服務器應用程序發 送該組分配的命令給機載電子分配系統以形成該組接收的命令的步驟包括經由連接通過 在便攜式數據處理系統上運行的軟件管理工具從代理服務器應用程序發送該組分配的命 令給機載電子分配系統以形成一組接收的命令。
D14.計算機程序產品,包括計算機可讀介質;存儲在計算機可讀介質上用于為 多個飛行器中的飛行器創建一組命令的程序代碼;存儲在計算機可讀介質上用于將該組命 令存儲在網絡數據處理系統中的庫中的一組隊列中以形成存儲的命令組的程序代碼;存儲 在計算機可讀介質上用于響應事件而發送存儲的命令組給在網絡數據處理系統上運行的 代理服務器應用程序以形成分配的命令組的程序代碼;存儲在計算機可讀介質上用于建立 代理服務器應用程序和行在飛行器上的飛行器數據處理系統上運行的機載電子分配系統 之間的連接的程序代碼;存儲在計算機可讀介質上用于由機載電子分配系統從代理服務器 應用程序請求分配的命令組的程序代碼;存儲在計算機可讀介質上用于由機載電子分配系 統從代理服務器應用程序接收被分配的命令組以形成被接收的命令組的程序代碼;存儲在 計算機可讀介質上用于由機載電子分配系統處理接收的命令組以形成已處理的命令組的 程序代碼;以及存儲在計算機可讀介質上的程序代碼,如果已處理的命令組是一組上行鏈 路命令,則使用已處理的命令組將一組軟件飛行器部件轉發給飛行器上的一組目標數據處 理系統。D15.權利要求D14的計算機程序產品,其中存儲在計算機可讀介質上用于由機載 電子分配系統處理接收的命令組以形成已處理的命令組的程序代碼包括存儲在計算機可 讀介質上用于識別命令組中一命令的命令類型以形成已識別的命令的程序代碼;存儲在計 算機可讀介質上的程序代碼,如果命令是相應軟件飛行器部件的上行鏈路命令則請求該組 軟件飛行器部件中相應的軟件飛行器部件以形成已請求的軟件飛行器部件;以及存儲在計 算機可讀介質上用于接收已請求的軟件飛行器部件的程序代碼。D16.權利要求D14的計算機程序產品,其中已分配的命令組在一組包中被發送, 其中該組包中的每一個包都用數字簽名簽名。D17.權利要求D16的計算機程序產品,其中,存儲在計算機可讀介質上用于由機 載電子分配系統處理接收的命令組以形成已處理的命令組的程序代碼包括存儲在計算機 可讀介質上用于驗證該組包中的每個包的數字簽名的程序代碼。D18.權利要求D15的計算機程序產品,其中,存儲在計算機可讀介質上用于由機 載電子分配系統處理接收的命令組以形成已處理的命令組的程序代碼進一步包括存儲在 計算機可讀介質上的程序代碼,如果已識別的命令是下行鏈路命令則從機載電子分配系統 請求下行鏈路數據。D19.權利要求D18的計算機程序產品進一步包括存儲在計算機可讀介質上用于 由機載電子分配系統從飛行器上所選的數據處理系統檢索數據以形成檢索到的數據的程 序代碼;存儲在計算機可讀介質上用于由機載電子分配系統將檢索到的數據置于包中以形 成下行鏈路數據的程序代碼;存儲在計算機可讀介質上用于通過連接從機載電子分配系統 發送下行鏈路數據給代理服務器以形成接收的下行鏈路數據的程序代碼;以及存儲在計算 機可讀介質上用于發送接收的下行鏈路數據給庫的程序代碼。D20.權利要求D15的計算機程序產品進一步包括存儲在計算機可讀介質上用于 由機載電子分配系統處理接收的命令組以形成已處理的命令組的程序代碼包括存儲在計 算機可讀介質上的程序代碼,如果已識別的命令是刪除命令則識別數據處理系統以形成目 標數據處理系統;以及存儲在計算機可讀介質上的程序代碼,用于發送已識別的命令給目 標數據處理系統以刪除目標數據處理系統上的資源。
用于在網絡中處理命令的方法、設備和程序代碼。一處理為飛行器創建一組命令。 這些命令在網絡中的庫的隊列中。響應一事件,存儲的命令組被發送給在網絡數據處理系 統上執行的代理服務器應用程序。在代理服務器應用程序和飛行器上的飛行器數據處理系 統上的機載電子分配系統之間建立連接。由機載電子分配系統請求這些命令。由機載電子 分配系統從代理服務器應用程序接收分配的命令。由機載電子分配系統處理接收的命令并 且如果命令是上行鏈路命令,則使用處理的命令將一組軟件飛行器部件轉發給飛行器上的 一組目標數據處理系統。軟件維護工具實施例可要求權利如下El.用于管理軟件飛行器部件的計算機實現的方法,該計算機實現的方法包括 通過地面網絡建立便攜式數據處理系統和源之間的連接以形成已建立的連接;通過已建立 的連接從源檢索一組上行鏈路命令;通過已建立的連接從源檢索與該組上行鏈路命令相對 應的一組軟件飛行器部件以形成一組檢索到的軟件飛行器部件;在便攜式數據處理系統中 存儲該組檢索到的軟件飛行器部件以形成一組存儲的軟件飛行器部件;斷開具有該組存儲 的軟件飛行器部件的便攜式數據處理系統與地面網絡的連接;將具有該組存儲的軟件飛行 器部件的便攜式數據處理系統連接到飛行器中的飛行器網絡;通過便攜式數據處理系統中 的地面組件從該組上行鏈路命令發出一上行鏈路命令給飛行器網絡;以及通過地面組件發 送與該上行鏈路命令對應的存儲的軟件飛行器部件給飛行器網絡。E2.權利要求El的計算機實現的方法進一步包括從飛行器網絡接收一組下行鏈 路文件以形成一組接收的下行鏈路文件。E3.權利要求El的計算機實現的方法進一步包括識別多個軟件飛行器部件中的 每個軟件飛行器部件是否成功地發送給飛行器網絡以形成狀態;以及響應與地面網絡建立 的后續連接,發送該狀態給源。E4.權利要求El的計算機實現的方法,其中發送步驟包括通過地面組件發送存 儲的軟件飛行器部件給飛行器網絡上的機載電子分配系統。E5.權利要求El的計算機實現的方法進一步包括通過一組圖形用戶界面控制便 攜式數據處理系統的操作。E6.權利要求El的計算機實現的方法進一步包括通過該組圖形用戶界面中的圖 形用戶界面創建上行鏈路命令,以發送便攜式數據處理系統上存儲的軟件飛行器部件給飛 行器網絡。E7.權利要求El的計算機實現的方法進一步包括從便攜式介質接收軟件飛行器 部件以形成接收的軟件飛行器部件;以及將接收的軟件飛行器部件存儲在便攜式數據處理 系統中以形成存儲的軟件飛行器部件。E8.權利要求El的計算機實現的方法進一步包括通過圖形用戶界面創建上行鏈 路命令以發送存儲的軟件飛行器部件給飛行器網絡。E9.權利要求El的計算機實現的方法進一步包括將該組上行鏈路命令存儲在便 攜式數據處理系統中。E10.權利要求El的計算機實現的方法,其中通過已建立的連接從源檢索與上行 鏈路命令相對應的一組軟件飛行器部件以形成一組檢索到的軟件飛行器部件包括通過已建立的連接從源檢索一組包中與上行鏈路命令相對應的一組軟件飛行器部件,以形成該組 檢索到的軟件飛行器部件。Ell.權利要求El的計算機實現的方法,其中所述源選自于庫和代理服務器應用
程序之一。E12. 一種設備,包括能夠存儲一組命令的數據庫;能夠存儲一組軟件飛行器部 件的文件系統;能夠與選自于庫和代理服務器應用程序之一的源通信的庫服務;能夠直接 與飛行器網絡中的飛行器網絡直接連接的地面組件;管理器,其中該管理器能夠通過庫服 務從地面網絡中的源接收該組命令和該組軟件飛行器部件、與源斷開連接和通過地面組件 發送該組命令和該組軟件飛行器部件給飛行器網絡中的飛行器數據處理系統;以及能夠建 立與地面網絡和飛行器網絡的連接的便攜式數據處理系統,其中所述庫服務、地面組件、數 據庫和文件系統都位于便攜式數據處理系統上。E13.權利要求E12的設備,其中所述管理器包括多個視圖,這些視圖能夠呈現用 于啟動將該組軟件飛行器部件傳輸給飛行器數據處理系統的圖形用戶界面。E14.權利要求E13的設備,其中所述多個視圖包括上行鏈路隊列視圖、上行鏈路 本地清單視圖、下傳文件視圖、事件控制視圖和從庫檢索視圖中的至少一個。E15.權利要求E12的設備進一步包括存儲在數據庫中的該組命令;以及存儲在 文件系統中的該組軟件飛行器部件。E16.計算機程序產品,包括計算機可記錄存儲介質;存儲在計算機可記錄介質 上用于通過地面網絡建立便攜式數據處理系統與源之間的連接以形成已建立的連接的程 序代碼;存儲在計算機可記錄介質上通過已建立的連接從源檢索一組上行鏈路命令的程序 代碼;存儲在計算機可記錄介質上通過已建立的連接從源檢索與該組上行鏈路命令相對應 的一組軟件飛行器部件以形成一組檢索到的軟件飛行器部件的程序代碼;存儲在計算機可 記錄介質上在便攜式數據處理系統中存儲該組檢索到的軟件飛行器部件以形成一組存儲 的軟件飛行器部件的程序代碼;存儲在計算機可記錄介質上的斷開具有該組存儲的軟件飛 行器部件的便攜式數據處理系統與地面網絡的連接的程序代碼;存儲在計算機可記錄介質 上的將具有該組存儲的軟件飛行器部件的便攜式數據處理系統連接到飛行器中的飛行器 網絡的程序代碼;存儲在計算機可記錄介質上的通過便攜式數據處理系統中的地面組件從 該組上行鏈路命令發出一上行鏈路命令給飛行器網絡的程序代碼;以及存儲在計算機可記 錄介質上的通過地面組件發送與該上行鏈路命令對應的存儲的軟件飛行器部件給飛行器 網絡的程序代碼。E17.權利要求E16的計算機程序產品進一步包括存儲在計算機可記錄介質上用 于從飛行器網絡接收一組下行鏈路文件以形成一組接收的下行鏈路文件的程序代碼,。E18.權利要求E16的計算機程序產品進一步包括存儲在計算機可記錄介質上用 于識別多個軟件飛行器部件中的每個軟件飛行器部件是否成功地發送給飛行器網絡以形 成狀態的程序代碼;以及存儲在計算機可記錄介質上用于響應與地面網絡建立的后續連接 發送狀態給源的程序代碼。E19.權利要求E16的計算機程序產品,其中程序代碼存儲在數據處理系統中的計 算機可記錄存儲介質并且其中程序代碼通過網絡從遠程數據處理系統下載。E20.權利要求E16的計算機程序產品,其中程序代碼存儲在服務器數據處理系統中的計算機可記錄存儲介質的程序代碼并且其中程序代碼通過網絡被下載到遠程數據處 理系統以通過遠程數據處理系統在另一個計算機可記錄介質中使用。用于管理軟件飛行器部件的計算機實現的方法,設備和計算機程序產品。通過地 面網絡在便攜式數據處理系統和源之間建立連接。通過已建立的連接從源檢索上行鏈路命 令;通過已建立的連接從源檢索與這些上行鏈路命令相對應的軟件飛行器部件。在便攜式 數據處理系統中存儲檢索到的軟件飛行器部件。斷開便攜式數據處理系統與地面網絡的連 接。將便攜式數據處理系統連接到飛行器中的飛行器網絡。通過便攜式數據處理系統中的 地面組件從這些上行鏈路命令發出一上行鏈路命令給飛行器網絡。通過地面組件發送與該 上行鏈路命令對應的存儲軟件飛行器部件給飛行器網絡。機載電子分配系統實施例可以要求權利如下Fl.用于與飛行器傳輸信息的計算機實現的方法,該計算機實現的方法包括建 立在飛行器中的飛行器數據處理系統中執行的機載電子分配系統與地面組件之間的連接; 響應于通過連接做出的來自地面組件的對命令的請求,識別由機載電子分配系統執行的命 令,以形成已識別的命令;從地面組件發送已識別的命令給機載電子分配系統;分派事務 處理標識符給該命令;使用事務處理標識符維持事務處理的狀態,該事務處理與機載電子 分配系統和地面組件上的該命令關聯;由地面組件啟動上行鏈路;從地面組件發送軟件飛 行器部件給機載電子分配系統以進行上傳;以及在地面組件上保存軟件飛行器部件的傳輸 狀態。F2.權利要求Fl的計算機實現的方法進一步包括響應將從機載電子分配系統 發送給地面組件的下行鏈路文件發送給地面組件的另一個請求,確定是否發送下行鏈路文 件;響應發送下行鏈路文件給地面組件的決定而發送下行鏈路文件給地面組件。F3.權利要求Fl的計算機實現的方法,其中發送軟件飛行器部件的步驟包括如 果狀態指出存在軟件飛行器部件的未發送部分,則發送軟件飛行器部件的未發送部分給機 載電子分配系統。F4.權利要求F2的計算機實現的方法,其中發送下行鏈路文件給地面組件的步驟 包括發送下行鏈路文件的未發送部分給地面組件;將由地面組件接收的下行鏈路文件的 未發送部分附加到對應下行鏈路文件的部分下行鏈路文件。F5.權利要求F4的計算機實現的方法進一步包括使用下行鏈路文件的相應傳輸 狀態識別下行鏈路文件的未發送部分。F6.權利要求Fl的計算機實現的方法進一步包括將軟件飛行器部件存儲在飛行 器數據處理系統中的存儲裝置中,機載電子分配系統位于該飛行器數據處理系統上。F7.權利要求F2的計算機實現的方法,其中下行鏈路文件包括飛行器中的外場可 更換單元生成的數據。F8.權利要求F7的計算機實現的方法,其中所述外場可更換單元選自于飛行管理 系統、自動駕駛儀、飛行娛樂系統、通信系統、導航系統、飛行控制器、飛行記錄器和碰撞避 免系統之一。F9.權利要求Fl的計算機實現的方法,其中所述軟件飛行器部件被用于飛行器中 的外場可更換單元。
F10.計算機程序產品,包括計算機可讀介質;存儲在計算機可讀介質上用于建 立在飛行器中的飛行器數據處理系統中執行的機載電子分配系統和地面組件之間的連接 的程序代碼;存儲在計算機可讀介質上響應于來自機載電子分配系統通過連接做出的對命 令的請求,識別由機載電子分配系統執行的命令以形成已識別的命令的程序代碼;存儲在 計算機可讀介質上從地面組件發送已識別的命令給機載電子分配系統的程序代碼;存儲在 計算機可讀介質上分派事務處理標識符給該命令的程序代碼;存儲在計算機可讀介質上使 用事務處理標識符維持事務處理的狀態的程序代碼,該事務處理與機載電子分配系統和地 面組件上的該命令關聯;存儲在計算機可讀介質上用于由機載電子分配系統啟動上行鏈路 的程序代碼;存儲在計算機可讀介質上從地面組件發送軟件飛行器部件給機載電子分配系 統以進行上傳的程序代碼;以及存儲在計算機可讀介質上用于保存軟件飛行器部件的傳輸 狀態的程序代碼。Fll.權利要求FlO的計算機程序產品進一步包括存儲在計算機可讀介質上的程 序代碼,用于響應將從機載電子分配系統發送給地面組件的下行鏈路文件發送給地面組件 的另一個請求,判斷是否發送下行鏈路文件;存儲在計算機可讀介質上的程序代碼,用于響 應判斷為發送下行鏈路文件給地面組件而發送下行鏈路文件給地面組件。F12.權利要求FlO的計算機程序產品,其中存儲在計算機可讀介質上用于從地面 組件發送軟件飛行器部件給機載電子分配系統以進行上傳的程序代碼包括存儲在計算機 可讀介質上的程序代碼,如果狀態指出存在軟件飛行器部件的未發送部分,則該程序代碼 用于發送軟件飛行器部件的未發送部分給機載電子分配系統。F13.權利要求Fll的計算機程序產品,其中存儲在計算機可讀介質上用于發送下 行鏈路文件給地面組件的程序代碼包括存儲在計算機可讀介質上用于發送下行鏈路文件 的未發送部分給地面組件的程序代碼;存儲在計算機可讀介質上用于將由地面組件接收的 下行鏈路文件的未發送部分附加到對應于該下行鏈路文件的部分下行鏈路文件的程序代碼。F14.權利要求F13的計算機程序產品進一步包括存儲在計算機可讀介質上用于 使用下行鏈路文件的相應的傳輸狀態識別下行鏈路文件的未發送部分的程序代碼。F15.權利要求FlO的計算機程序產品進一步包括存儲在計算機可讀介質上用于 在其上置有機載電子分配系統的飛行器數據處理系統中的存儲裝置中存儲軟件飛行器部 件的程序代碼。F16.權利要求Fll的計算機程序產品,其中下行鏈路文件包括有飛行器中的外場 可更換單元生成的數據。F17. 一種設備,包括地面組件;機載電子分配系統,其能夠從地面組件接收命 令,響應從地面組件接收上行鏈路命令,請求對應于上行鏈路命令的軟件飛行器部件,響應 對該軟件飛行器部件的請求從地面組件接收軟件飛行器部件以形成接收的軟件飛行器部 件;以及存儲軟件飛行器部件;數據處理系統,其中地面組件在數據處理系統上執行;以及 飛行器數據處理系統,其中機載電子分配系統在飛行器數據處理系統上執行。F18.權利要求F17的設備,其中機載電子分配系統能夠將發送下行鏈路文件給地 面組件的請求發送給地面組件并且響應該地面組件能夠接收下行鏈路文件的指示,發送下 行鏈路文件給地面組件。
F19.權利要求F17的設備進一步包括飛行器中的飛行器網絡,其中飛行器數據 處理系統位于飛行器網絡中。F20.權利要求F17的設備進一步包括飛行器中的一組外場可更換單元,其中軟 件飛行器部件用于飛行器中的該組外場可更換單元中的外場可更換單元之一。計算機實現的方法、設備和計算機程序產品,用于與飛行器傳輸信息。建立在飛行 器中的飛行器數據處理系統中執行的機載電子分配系統與地面組件之間的連接。響應來自 地面組件的對命令的請求,識別用于執行的命令。已識別的命令從地面組件發送給機載電 子分配系統。分配事務處理標識符給命令。使用事務處理標識符將與命令相關聯的事務處 理保持在機載電子分配系統和地面組件上。由地面組件啟動上行鏈路。從地面組件發送軟 件飛行器部件給機載電子分配系統以進行上傳。保存在地面組件上的軟件飛行器部件的傳 輸狀態。軟件飛行器部件庫實施例可要求權利如下Gl.用于管理軟件飛行器部件的計算機實現的方法,該計算機實現的方法包括 在庫接收軟件飛行器部件以形成接收的軟件飛行器部件;將接收的軟件飛行器部件存儲在 具有多個軟件飛行器部件的庫中的存儲器中;提供用戶界面系統以操控庫中的多個軟件飛 行器部件;響應從用戶界面系統接收用戶輸入以從庫中的多個軟件飛行器部件上傳所選的 軟件飛行器部件給目標飛行器數據處理系統,創建命令以發送所選的軟件飛行器部件給在 其中置有目標飛行器數據處理系統的飛行器以形成上行鏈路命令;將上行鏈路命令存儲到 庫中的存儲器中的隊列中以形成存儲的上行鏈路命令;響應來自代理服務器應用程序的對 命令的請求,分配存儲的上行鏈路命令給代理服務器應用程序;以及響應接收來自處理所 存儲的上行鏈路命令的代理服務器應用程序的對所選軟件飛行器部件的請求,發送所選的 軟件飛行器部件給代理服務器應用程序。G2.權利要求Gl的計算機實現的方法,其中分配步驟包括響應于存在與代理服 務器應用程序的連接,為代理服務器應用程序識別上行鏈路命令;創建上行鏈路命令的命 令數據結構;發送命令數據結構給代理服務器應用程序,其中代理服務器應用程序使用該 命令數據結構開始處理命令;以及響應在發送命令數據結構之后接收的對上行鏈路命令的 另一個請求,發送上行鏈路命令給代理服務器應用程序。G3.權利要求Gl的計算機實現的方法進一步包括響應來自軟件管理工具的對命 令的請求,分配存儲的上行鏈路命令給軟件管理工具。G4.權利要求Gl的計算機實現的方法進一步包括將軟件飛行器部件存儲在存儲 器裝置中的包中。G5.權利要求G4的計算機實現的方法,其中軟件飛行器部件被數字簽名并且包被
數字簽名。G6.權利要求Gl的計算機實現的方法,其中軟件飛行器部件被存儲在存儲器中的 文件系統中并且其中隊列位于存儲器中的數據庫中。G7.權利要求Gl的計算機實現的方法進一步包括響應另一個用戶輸入,從多個 軟件飛行器部件刪除一組飛行器部件。G8.權利要求Gl的計算機實現的方法進一步包括接收關于軟件飛行器部件的上
74行鏈路的狀態信息以形成接收的狀態信息;并且存儲接收的狀態信息。G9. 一種設備,包括位于存儲器裝置上的文件系統,其中該文件系統存儲多個軟 件飛行器部件;位于該存儲器裝置上的數據庫,其中數據庫存儲被用于管理多個軟件飛行 器部件的多個命令;能夠生成多個命令的管理組件;以及能夠接收用戶輸入以操作管理組 件的用戶界面系統。G10.權利要求G9的設備,其中所述管理組件包括部件室和命令調度器。Gll.權利要求G9的設備,其中所述存儲器裝置是一組硬盤驅動器。G12. 一種計算機,包括總線;連接到總線的通信適配器;連接到總線的存儲器, 其中計算機可用的程序代碼被存儲在總線上;以及連接到總線的處理器單元,其中處理器 單元執行計算機可用的程序代碼以在庫接收軟件飛行器部件,從而形成接收的軟件飛行器 部件;將接收的軟件飛行器部件存儲在具有多個軟件飛行器部件的庫中的存儲器中;提供 用戶界面系統以操控庫中的多個軟件飛行器部件;響應從用戶界面系統接收上傳從庫中的 多個軟件飛行器部件中選出的軟件飛行器部件給目標飛行器數據處理系統的用戶輸入,創 建命令以發送所選的軟件飛行器部件給在其中置有目標飛行器數據處理系統的飛行器,從 而形成上行鏈路命令;將上行鏈路命令存儲到庫中的存儲器中的隊列中以形成存儲的上行 鏈路命令;響應來自代理服務器應用程序的對命令的請求,分配存儲的上行鏈路命令給代 理服務器應用程序;以及響應從處理所存儲的上行鏈路命令的代理服務器應用程序接收的 對所選軟件飛行器部件的請求,發送所選的軟件飛行器部件給代理服務器應用程序。G13.權利要求G12的計算機,其中在執行計算機可用程序代碼以響應來自代理服 務器應用程序對命令的請求,分配存儲的上行鏈路命令給代理服務器應用程序時,處理器 單元執行計算機可用程序代碼以響應存在與的代理服務器應用程序的連接,為代理服務器 應用程序識別上行鏈路命令;創建上行鏈路命令的命令數據結構;發送命令數據結構給代 理服務器應用程序,其中代理服務器應用程序使用該命令數據結構開始處理命令;以及響 應對在發送命令數據結構之后接收的上行鏈路命令的另一個請求發送上行鏈路命令給代 理服務器應用程序。G14.權利要求G12的計算機,其中,處理器單元進一步執行計算機可用程序代碼 以響應來自軟件管理工具的對命令的請求,分配存儲的上行鏈路命令給軟件維護工具。G15.計算機程序產品包括計算機可記錄存儲介質;存儲在計算機可記錄存儲介 質上用于在庫接收軟件飛行器部件以形成接收的軟件飛行器部件的程序代碼;存儲在計算 機可記錄存儲介質上用于將接收的軟件飛行器部件存儲在具有多個軟件飛行器部件的庫 中的存儲器中的程序代碼;存儲在計算機可記錄存儲介質上用于提供用戶界面系統以操控 庫中的多個軟件飛行器部件的程序代碼;存儲在計算機可記錄存儲介質上用于響應從用戶 界面系統接收用戶輸入以從庫中的多個軟件飛行器部件上傳所選的軟件飛行器部件給目 標飛行器數據處理系統,創建命令以發送所選的軟件飛行器部件給在其中置有目標飛行器 數據處理系統的飛行器以形成上行鏈路命令的程序代碼;存儲在計算機可記錄存儲介質上 用于將上行鏈路命令存儲到庫中的存儲器中的隊列中以形成存儲的上行鏈路命令的程序 代碼;存儲在計算機可記錄存儲介質上用于響應來自代理服務器應用程序的對命令的請 求,分配存儲的上行鏈路命令給代理服務器應用程序的程序代碼;以及存儲在計算機可記 錄存儲介質上用于響應接收來自處理所存儲的上行鏈路命令的代理服務器應用程序的對所選軟件飛行器部件的請求,發送所選的軟件飛行器部件給代理服務器應用程序的程序代碼。G16.權利要求15的計算機程序產品,其中,存儲在計算機可記錄存儲介質上用于 響應來自代理服務器應用程序的對命令的請求,分配存儲的上行鏈路命令給代理服務器應 用程序的程序代碼包括存儲在計算機可記錄存儲介質上用于響應存在和代理服務器應用 程序的連接,為代理服務器應用程序識別上行鏈路命令的程序代碼;存儲在計算機可記錄 存儲介質上用于創建上行鏈路命令的命令數據結構的程序代碼;存儲在計算機可記錄存儲 介質上用于發送命令數據結構給代理服務器應用程序的程序代碼,其中代理服務器應用程 序使用該命令數據結構開始處理命令;以及存儲在計算機可記錄存儲介質上用于響應在發 送命令數據結構之后接收的對上行鏈路命令的另一個請求,發送上行鏈路命令給代理服務 器應用程序的程序代碼。G17.權利要求15的計算機程序產品進一步包括存儲在計算機可記錄存儲介質 上用于響應來自軟件管理工具對命令的請求分配存儲的上行鏈路命令給軟件管理工具的 程序代碼。G18.權利要求15的計算機程序產品進一步包括存儲在計算機可記錄存儲介質 上用于將軟件飛行器部件存儲在存儲裝置中的包中的程序代碼。G19.權利要求18的計算機程序產品,其中軟件飛行器部件被數字簽名并且包被
數字簽名。G20.權利要求15的計算機程序產品,其中軟件飛行器部件被存儲在存儲器中的 文件系統中并且其中隊列位于存儲器中的數據庫中。G21.權利要求15的計算機程序產品進一步包括存儲在計算機可記錄存儲介質 上用于響應其他用戶輸入從多個軟件飛行器部件中刪除一組軟件飛行器部件的程序代碼。G22.權利要求15的計算機程序產品進一步包括存儲在計算機可記錄存儲介質 上用于接收關于軟件飛行器部件的上行鏈路的狀態信息以形成接收的狀態信息的程序代 碼;以及存儲在計算機可記錄存儲介質上用于存儲接收的狀態信息的程序代碼。計算機實現的方法、設備和計算機程序產品,用于管理軟件飛行器部件。在庫接收 軟件飛行器部件。將接收的軟件飛行器部件存儲在具有多個軟件飛行器部件的所述庫中。 提供用戶界面系統以操控軟件飛行器部件。響應從用戶界面接收上傳所選的軟件飛行器部 件給目標飛行器數據處理系統的用戶輸入,創建命令以發送所選的軟件飛行器部件給在其 中置有目標飛行器數據處理系統的飛行器。將上行鏈路命令存儲到庫中的存儲器中的隊列 中。響應對命令的請求,分配上行鏈路命令給代理服務器應用程序。響應從處理存儲的上 行鏈路命令的代理服務器應用程序接收的請求,發送所選部件給代理服務器應用程序。給出所描述的不同有利實施例用于說明和描述的目的,并且并不試圖窮舉或限制 實施例為公開的形式。許多修改和變化對于本領域普通技術人員來說是顯然的。另外,不 同的有利實施例可以提供與其他有利實施例的比較得出的不同優勢。選擇和描述所選的一 個或多個實施例,其目的是最佳地解釋實施例的原理、實際應用,并且使得本領域一般技術 人員能夠理解針對不同實施例的公開,這些實施例具有不同的修改從而適合特定的使用的 目的。
權利要求
一種軟件飛行器部件管理設備,包括與數據處理系統相關聯的庫,所述庫被配置為管理一組飛行器的一組軟件飛行器部件;能夠接收所述多個軟件飛行器部件和發送該組軟件飛行器部件給所述庫的接收模塊;與所述庫通信的代理服務器,其中所述代理服務器能夠服務一組飛行器客戶系統;該組飛行器中的飛行器的機載電子分配系統,其中所述機載電子分配系統是在該組飛行器客戶系統中的飛行器客戶系統并且能夠通過所述代理服務器從所述庫接收所述飛行器的軟件飛行器部件;以及便攜式軟件維護工具,其中所述便攜式軟件維護工具提供發送所述軟件飛行器部件給所述飛行器的所述機載電子分配系統的替代途徑。
2.根據權利要求1所述的軟件飛行器部件管理設備,其中,所述庫被配置為創建包含 所述軟件飛行器部件的包并且其中所述軟件飛行器部件在所述包中被發送給所述機載電 子分配系統。
3.根據權利要求1所述的軟件飛行器部件管理設備,其中,所述代理服務器與所述數 據處理系統相關聯。
4.根據權利要求1所述的軟件飛行器部件管理設備,其中,所述便攜式軟件維護工具 連接到所述代理服務器以接收所述軟件飛行器部件,所述便攜式軟件維護工具被轉移到包 含所述機載電子分配系統的所述飛行器上,所述機載電子分配系統具有所述軟件飛行器部 件,并且所述便攜式軟件維護工具連接到所述機載電子分配系統以傳輸所述軟件飛行器部 件給所述機載電子分配系統。
5.根據權利要求1所述的軟件飛行器部件管理設備,其中,所述機載電子分配系統從 所述飛行器上的一組外場可更換單元下傳數據到所述代理服務器以形成下行鏈路數據并 且其中所述代理服務器發送所述下行鏈路數據給所述庫進行存儲。
6.根據權利要求1所述的軟件飛行器部件管理設備,其中,所述軟件飛行器部件在包 中從所述庫被轉移到所述機載電子分配系統。
7.一種計算機實現的方法,用于管理多個軟件飛行器部件,所述計算機實現的方法包括將軟件飛行器部件存儲在庫中;為所述軟件飛行器部件識別飛行器以形成已識別的飛行器; 將所述軟件飛行器部件從所述庫發送給代理服務器;以及將所述軟件飛行器部件從所述代理服務器發送給所述已識別的飛行器上的機載電子 分配系統。
8.根據權利要求7所述的計算機實現的方法,其中,將所述軟件飛行器部件從所述代 理服務器發送給所述已識別的飛行器上的機載電子分配系統的所述步驟包括使用通信鏈接將所述軟件飛行器部件從所述代理服務器發送給所述已識別的飛行器 上的機載電子分配系統。
9.根據權利要求7所述的計算機實現的方法,其中,將所述軟件飛行器部件從所述代 理服務器發送給所述已識別的飛行器上的機載電子分配系統的所述步驟包括使用便攜式軟件維護工具將所述軟件飛行器部件從所述代理服務器發送給所述已識 別的飛行器上的機載電子分配系統。
10.根據權利要求7所述的計算機實現的方法,其中所述存儲步驟包括 從供應商接收所述軟件飛行器部件以形成接收的軟件飛行器部件;處理所述軟件飛行器部件以形成經處理的軟件飛行器部件;以及 將所述經處理的軟件飛行器部件存儲在所述庫中。
11.根據權利要求7所述的計算機實現的方法,進一步包括通過所述代理服務器從所述庫發送命令給所述機載電子分配系統以從所述飛行器下 載數據;以及響應發送所述命令,通過所述代理服務器在所述庫接收所述數據。
12.根據權利要求7所述的計算機實現的方法,進一步包括從所述庫發送所述軟件飛行器部件給便攜式計算機上的軟件維護工具; 將具有所述軟件飛行器部件的所述便攜式計算機轉移到所述飛行器; 在將所述便攜式計算機轉移到所述飛行器之后建立所述軟件維護工具與所述飛行器 上的所述機載電子分配系統之間的通信鏈接以形成建立的通信鏈接;以及通過所述建立的通信鏈接將所述軟件飛行器部件從所述軟件維護工具發送給所述機 載電子分配系統。
全文摘要
一種用于管理軟件飛行器部件的計算機實現的方法和設備。軟件飛行器部件管理設備包括庫、接收模塊、代理服務器、飛行器上的機載電子分配系統和便攜的軟件維護工具。地面數據處理系統上的庫存儲和管理飛行器的軟件飛行器部件。接收模塊能夠從供應商接收軟件飛行器部件并且將所述軟件飛行器部件發送給庫。代理服務器與庫通信并且能夠將軟件分發給多個飛行器客戶系統。機載電子分配系統是飛行器客戶系統并且能夠通過代理服務器從庫接收飛行器的軟件飛行器部件。便攜式軟件維護工具提供將軟件飛行器部件發送給飛行器的機載電子分配系統的替代途徑。
文檔編號G06F9/44GK101932997SQ200880117957
公開日2010年12月29日 申請日期2008年11月26日 優先權日2007年11月27日
發明者C·J·摩根, D·H·楊, F·J·麥克來恩, G·A·金伯利, J·M·帕克爾, K·K·雷恩, L·H·斯凱福特, L·福謝斯, M·K·羅杰斯, M·W·哈尼什, O·C·沃克, P·薛, S·W·安格道, T·W·古爾德, T·W·黑德里克遜, W·R·貝克 申請人:波音公司