麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

外圍設備、外圍設備的控制方法、固件的下載系統以及程序的制作方法

文檔序號:6534308閱讀:213來源:國知局
外圍設備、外圍設備的控制方法、固件的下載系統以及程序的制作方法
【專利摘要】本案提供外圍設備、外圍設備的控制方法、固件的下載系統以及程序,該外圍設備能防止與舊型外圍設備對應的程序數據被從上位裝置下載,且能避免具有外圍設備的系統停機。例如,若存儲于上位裝置(20)的下載文件(23)包含用于允許重寫為程序數據的重寫許可數據,則外圍設備(30A)將程序數據重寫為從上位裝置(20)發送的程序數據,并將數據重寫的正常結束應答返回至上位裝置(20),若不包含重寫許可數據,則不將存儲于外圍設備(30A)的程序數據重寫為從上位裝置(20)發送的程序數據,就將數據重寫的正常結束應答返回至上位裝置(20),并將包含于下載文件的其識別信息存儲于外圍設備(30A)的識別信息存儲部(32A)。
【專利說明】外圍設備、外圍設備的控制方法、固件的下載系統以及程序

【技術領域】
[0001]本發明涉及一種外圍設備,該外圍設備與上位裝置連接且能夠從上位裝置下載使外圍設備工作的固件的程序數據。并且,本發明涉及一種該外圍設備的控制方法以及具有能夠與外圍設備連接的上位裝置的固件的下載系統以及程序。

【背景技術】
[0002]有一種固件的下載方法,用于從上位裝置向讀卡器下載固件的程序數據(例如,參考專利文獻I)。
[0003]在專利文獻I所記載的下載方法中,包含程序數據的下載文件存儲在上位裝置中,在存儲在上位裝置中的下載文件的版次信息與上位裝置向讀卡器下達的版次獲取命令的響應不一致的情況下,從上位裝置向讀卡器下載程序數據。
[0004]現有技術文獻
[0005]專利文獻
[0006]專利文獻1:日本特開2004-13782號公報


【發明內容】

[0007]發明所要解決的課題
[0008]但是,為了提高與上位裝置連接的讀卡器的功能或應對使用中的部件的制造中止問題,有時從舊型讀卡器更換為新型讀卡器。
[0009]但是,不能確保存儲在上位裝置中的固件的程序數據就是與新型讀卡器對應的程序數據。例如,在存儲在上位裝置中的固件的程序數據是與舊型讀卡器對應的程序數據的情況下,有時將新型讀卡器與上位裝置連接。
[0010]在將新型讀卡器與上位裝置連接且與舊型讀卡器對應的程序數據存儲在上位裝置中的情況下,若利用專利文獻I所記載的下載方法進行下載,則有可能導致與舊型讀卡器對應的程序數據被下載至新型讀卡器。即,存在以下問題:根據存儲在上位裝置中的程序數據而導致與舊型讀卡器對應的程序數據被下載至為了提高功能或為了應對使用部件的制造中止問題而生產的新型讀卡器。
[0011]其結果是,盡管將與上位裝置連接的讀卡器更換為新型讀卡器,也有可能無法提高其功能,或無法應對使用部件的制造中止問題。并且,若與舊型讀卡器對應的程序數據被下載至新型讀卡器,則有可能導致新型讀卡器無法工作。
[0012]為了防止與舊型讀卡器對應的程序數據被下載至新型讀卡器,在與舊型讀卡器對應的程序數據存儲在上位裝置中的情況下,新型讀卡器只要拒絕下載與舊型讀卡器對應的程序數據即可。即,只要新型讀卡器對來自上位裝置的程序數據的下載命令等返回下載拒絕應答即可。
[0013]但是,若新型讀卡器返回下載拒絕應答,則無法正常結束上位裝置側的下載處理,有可能導致具有上位裝置的系統停機,即有可能導致系統整體的工作停止。
[0014]本發明的目的在于提供一種能夠防止與舊型外圍設備對應的程序數據被從上位裝置下載且能夠避免具有外圍設備的系統停機的外圍設備、外圍設備的控制方法、固件的下載系統以及程序。
[0015]用于解決課題的方法
[0016]本發明的第一方面的外圍設備與上位裝置連接,且能夠從所述上位裝置下載包含使所述外圍設備工作的固件的程序數據的下載文件,所述外圍設備的特征在于,包括:識別信息存儲部,所述識別信息存儲部能夠存儲所述下載文件的識別信息;程序存儲部,所述程序存儲部至少將程序數據以可重寫的方式存儲;以及控制部,所述控制部對存儲在所述程序存儲部中的所述程序數據的重寫進行控制,所述下載文件具有所述下載文件的識別信息以及重寫許可數據中的至少所述識別信息,所述重寫許可數據用于允許所述控制部對存儲在所述程序存儲部中的程序數據進行重寫,在所述下載文件中包含所述重寫許可數據的情況下,所述控制部進行正常重寫,將存儲在所述程序存儲部中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,并將所述數據重寫的正常結束應答返回至所述上位裝置,在所述下載文件中不包含所述重寫許可數據的情況下,所述控制部進行虛擬重寫,不將存儲在所述程序存儲部中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,就將數據重寫的正常結束應答返回至所述上位裝置,并且,所述控制部將所述下載文件的所述識別信息存儲在所述識別信息存儲部中。
[0017]本發明的第二方面的外圍設備的控制方法,所述外圍設備與上位裝置連接,且所述外圍設備能夠從所述上位裝置下載包含使所述外圍設備工作的固件的程序數據的下載文件,所述外圍設備的控制方法的特征在于,包括如下步驟:重寫許可判別步驟,所述重寫許可判別步驟判別重寫許可數據是否包含于從所述上位裝置下載的下載文件,所述重寫許可數據用于允許將存儲在所述外圍設備中的所述程序數據重寫為存儲在所述上位裝置中的所述程序數據;正常重寫步驟,在所述重寫許可判別步驟中判別出所述重寫許可數據包含于所述下載文件的情況下,所述正常重寫步驟將存儲在所述外圍設備中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,并將數據重寫的正常結束應答返回至所述上位裝置;虛擬重寫步驟,在所述重寫許可判別步驟中判別出所述重寫許可數據不包含于所述下載文件的情況下,所述虛擬重寫步驟不將存儲在所述外圍設備中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,就將數據重寫的正常結束應答返回至所述上位裝置;識別信息存儲步驟,所述識別信息存儲步驟將包含于所述下載文件的該下載文件的識別信息存儲在所述外圍設備的識別信息存儲部中;以及識別信息返回步驟,在從所述上位裝置接收到所述識別信息的發送要求時,所述識別信息返回步驟將存儲在所述識別信息存儲部中的所述識別信息返回至所述上位裝置。
[0018]本發明的第三方面的固件的下載系統的特征在于,所述固件的下載系統包括:至少一個外圍設備;以及上位裝置,所述上位裝置與所述外圍設備連接,且所述上位裝置能夠將包含使所述外圍設備工作的固件的程序數據的下載文件下載至所述外圍設備,所述外圍設備至少由上述外圍設備構成。
[0019]一種執行外圍設備的控制處理的控制部的程序,所述外圍設備能夠從所述上位裝置下載包含程序數據的下載文件,所述程序的特征在于,包括如下處理:重寫許可判別處理,所述重寫許可判別處理判別重寫許可數據是否包含于從所述上位裝置下載的下載文件,所述重寫許可數據用于允許將存儲在所述外圍設備中的所述程序數據重寫為存儲在所述上位裝置中的所述程序數據;正常重寫處理,在所述重寫許可判別處理中判別出所述重寫許可數據包含于所述下載文件的情況下,所述正常重寫處理將存儲在所述外圍設備中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,并將數據重寫的正常結束應答返回至所述上位裝置;虛擬重寫處理,在所述重寫許可判別處理中判別出所述重寫許可數據不包含于所述下載文件的情況下,所述虛擬重寫處理不將存儲在所述外圍設備中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,就將數據重寫的正常結束應答返回至所述上位裝置;識別信息存儲處理,所述識別信息存儲處理將包含于所述下載文件的該下載文件的識別信息存儲在所述外圍設備的識別信息存儲部中;以及識別信息返回處理,在從所述上位裝置接收到所述識別信息的發送要求時,所述識別信息返回處理將存儲在所述識別信息存儲部中的所述識別信息返回至所述上位裝置。
[0020]發明效果
[0021]根據本發明,能夠防止與舊型外圍設備對應的程序數據被從上位裝置下載,且能夠避免具有外圍設備的系統停機。

【專利附圖】

【附圖說明】
[0022]圖1是示出本發明的實施方式所涉及的固件的下載系統的概略結構的框圖。
[0023]圖2是示出存儲在圖1所示的上位裝置中的下載文件的數據結構的一例的示意圖。
[0024]圖3是用于說明連接于圖1所示的上位裝置的讀卡器與存儲在上位裝置中的下載文件的組合模式的示意圖。
[0025]圖4是示出在圖1所示的上位裝置中下載固件時的處理流程的一例的流程圖。
[0026]圖5是示出在圖1所示的讀卡器中下載固件時的處理流程的一例的流程圖。
[0027]圖6是示出本發明的另一實施方式所涉及的下載文件的數據結構的一例的示意圖。
[0028]圖7是示出在本發明的另一實施方式所涉及的讀卡器中下載固件時的處理流程的一例的流程圖。
[0029]圖8是示出本發明的另一實施方式所涉及的固件的下載系統的概略結構的框圖。
[0030]圖9是示出本發明的又一實施方式所涉及的固件的下載系統的概略結構的框圖。

【具體實施方式】
[0031]以下,結合附圖對本發明的實施方式進行說明。
[0032]<固件的下載系統的結構>
[0033]圖1是示出本發明的實施方式所涉及的固件的下載系統10的概略結構的框圖。圖2是示出存儲在圖1所示的上位裝置20中的下載文件的數據結構的一例的示意圖。圖3是用于說明連接于圖1所示的上位裝置20的讀卡器30與存儲在上位裝置20中的下載文件的組合模式的示意圖。
[0034]如圖1所示,本實施方式的固件的下載系統10 (以下稱“下載系統10”)包括主機等上位裝置20以及以能夠與上位裝置20進行通信的方式與上位裝置20連接的作為外圍設備的讀卡器30 (30A、30B)。上位裝置20與讀卡器30以能夠借助RS232C和USB (UniversalSerial Bus)等通信接口進行通信的方式連接。該下載系統10從上位裝置20向讀卡器30下載使作為外圍設備的讀卡器30工作的固件的程序數據231 (參考圖2)。
[0035]在本實施方式的下載系統10中,作為一例,能夠將為了提高功能或應對使用中的部件的制造中止問題而制造的新型讀卡器30即第一讀卡器30A以及比第一讀卡器30A老式的讀卡器30即第二讀卡器30B與上位裝置20連接。在本實施方式中,例如第一讀卡器30A和第二讀卡器30B中的任一臺與上位裝置20連接。本實施方式的第一讀卡器30A相當于外圍設備(第一外圍設備),第二讀卡器30B相當于第二外圍設備。
[0036][上位裝置的構成例]
[0037]上位裝置20包括下載控制部21以及硬盤驅動器等外部存儲部22。下載控制部21包括上位裝置20內的通信功能部和控制用程序等。下載控制部21進行用于將程序數據231 (圖2)下載至讀卡器30的控制。
[0038]并且,在外部存儲部22內存儲有包含程序數據231的下載文件23。
[0039]在本實施方式中,作為一例,在上位裝置20的外部存儲部22內存儲有包含與第一讀卡器30A對應的程序數據231的下載文件23A (參考圖3 (A)、圖3 (C))和包含與第二讀卡器30B對應的程序數據231的下載文件23B(參考圖3(B)、圖3(D))中的任意一個。
[0040]<下載文件的構成例>
[0041]在此,結合圖2對本實施方式所涉及的下載文件23的構成例進行說明。
[0042]在圖2的例子中,在下載文件23中除了記述(記載)有程序數據231之外,還記述有第一行的版次信息(版頭)232、第二行的刪除命令233、配置于第三行之后的各行程序數據231的最前頭的下載命令234以及最后一行的文件結束標記(EOF:End Of File mark,文件結束符)235。
[0043]S卩,在圖2的例子中,在下載文件23中,版次信息232被記述在下載文件23的第一行,刪除命令233被記述在下載文件23的第二行。下載命令234以及程序數據231被記述在下載文件23的第三行之后,文件結束標記235被記述在下載文件23的最后一行。
[0044]版次信息232是下載文件23中的程序數據231的修訂信息。版次信息232的格式例如與在上位裝置20向讀卡器30下達程序數據的版次獲取命令時獲得的來自讀卡器30的響應(應答)的格式相同。版次獲取命令是用于獲取存儲在讀卡器30中的程序數據的版次息的命令。
[0045]另外,下載文件23的初始行(第一行)的版次信息(版頭)232是上位裝置20用的信息,基本上不會發送至作為外圍設備的讀卡器30。
[0046]刪除命令233是用于消除(刪除)讀卡器30的作為后述程序存儲部的固件存儲部中的指定區域的命令。
[0047]下載文件23中的第三行之后的各行程序數據231分別被事先整理成適合上位裝置20與讀卡器30之間的通信協議的規定的數據形式以及數據長度,并被設定為下載命令234。
[0048]并且,在圖2的例子中,例如在第三行的程序數據231中(作為程序數據在第一行中)記述有重寫許可數據236,所述重寫許可數據236允許在作為下載端的讀卡器30中進行程序數據的重寫。
[0049]在本實施方式中,在包含例如與第一讀卡器30A對應的程序數據231的下載文件23A中的第三行的程序數據231中記述有重寫許可數據236,所述重寫許可數據236用于允許讀卡器側的重寫控制部將存儲在讀卡器30A中的程序數據重寫為存儲在外部存儲部22中的下載文件23A的程序數據231。而在包含與第二讀卡器30B對應的程序數據231的下載文件23B中的第三行的程序數據231中未記述有該重寫許可數據236。
[0050]另外,重寫許可數據236既可以通過經加密的密文記述在程序數據231中,也可以通過未加密的明文記述在程序數據231中。
[0051]并且,在圖2的例子中,在第五行的程序數據231中(作為程序數據在第三行中)記述(記載)有將要下載的下載文件23的識別信息(識別用ID) 237。另外,識別信息237既可以通過經加密的密文記述在程序數據231中,也可以通過未加密的明文記述在程序數據231中。
[0052]在本實施方式中,版次信息(版頭)232與識別信息(識別用ID) 237使用相同的數據。
[0053]圖2僅是一個例子,被記述在程序數據231中的重寫許可數據236和識別信息237配置在預先設定的規定位置即可,優選配置在程序數據231的最前側,以便能夠在上位裝置20或讀卡器30側提早識別并獲取。
[0054]在本實施方式中,在從上位裝置20向讀卡器30下載程序數據231時,在從下載文件23的第一行讀入的版次信息232與讀卡器30側的作為版次獲取命令的應答接收的程序數據的版次不一致時,下載控制部21執行下載處理。之后,下載控制部21確認讀卡器30側是否過渡至下載模式,若確認到過渡至下載模式,則按每一行讀入下載文件23的第二行之后的行,并將所讀入的一行作為命令下達至讀卡器30。若所讀入的一行例如是下載文件23的第二行,則下載控制部21向讀卡器30下達刪除命令233。并且,若所讀入的一行是下載文件23的第三行之后的行,則下載控制部21將下載命令234與被整理的程序數據231 —同下達至讀卡器30。下載控制部21根據讀卡器30的應答并按照有無接收到正常結束應答來判斷是否正常執行了命令。
[0055]關于與寫入許可數據236以及識別信息237的下載相關的應用在后面進行詳細敘述。
[0056]并且,本實施方式的下載控制部21具有根據情況將最前頭的版次信息(版頭)行命令化,并作為識別信息(識別用ID)發送命令發送的功能。在本實施方式中,在下載文件的程序數據231的規定位置配置有識別信息(識別用ID),但若考慮其他外圍設備在內,則其配置位置并不全部統一。因此,在本實施方式中,重新設置目前不發送至外圍設備的將識別信息(識別ID)文本化的識別用ID通知命令。下載控制部21進行生成這種發送命令的處理等并發送該命令,并通過接收正常應答來實現為該命令。
[0057][讀卡器(外圍設備)的構成例]
[0058]讀卡器30例如由手動式讀卡器或卡片搬運式讀卡器構成,所述手動式讀卡器是以手動方式使卡片移動并對記錄于卡片的磁數據進行讀取等的讀卡器,所述卡片搬運式讀卡器是通過卡片的搬運機構搬運卡片并對記錄于卡片的磁數據進行讀取等的讀卡器。
[0059]讀卡器30基本上包括讀卡器控制部31以及識別信息存儲部32作為主構成要素。讀卡器控制部31包括只讀存儲器(ROM)、隨機存取存儲器(RAM)、非易失性存儲器等存儲構件和中央處理器(CPU)等運算構件等,對讀卡器30整體的工作等進行控制。如圖1所示,讀卡器控制部31具有作為程序存儲部的固件存儲部311以及重寫控制部312。固件存儲部311中存儲有包含程序數據的固件。固件存儲部311由存儲器等構成,以可重寫的方式存儲程序數據。并且,固件存儲部311對已存儲的程序數據的版次信息進行存儲。重寫控制部312對存儲在固件存儲部311中的程序數據的重寫進行控制。識別信息存儲部32以包含在讀卡器控制部31內的形式配置,在讀卡器控制部31的控制下,在本實施方式中在重寫控制部312的控制下,以可消除的方式存儲有記述在下載文件23中的識別信息。關于該控制在后面進行敘述。
[0060]以上是讀卡器30的基本的構成例,但無論是新型的第一讀卡器30A和舊型的第二讀卡器30B,都包括基本上相同的功能。但是,在舊型的第二讀卡器30B中沒有配置識別信息存儲部32。
[0061]即,讀卡器30A包括讀卡器控制部31A以及識別信息存儲部32A作為主構成要素。讀卡器控制部31A包括只讀存儲器(ROM)、隨機存取存儲器(RAM)、非易失性存儲器等存儲構件和中央處理器(CPU)等運算構件等,對讀卡器30A整體的工作等進行控制。如圖1所示,讀卡器控制部31A具有作為程序存儲部的固件存儲部311A以及重寫控制部312A。固件存儲部311A中存儲有包含程序數據的固件。固件存儲部311A由存儲器等構成,以可重寫的方式存儲程序數據。并且,固件存儲部311A對已存儲的程序數據的版次信息進行存儲。重寫控制部312A對存儲在固件存儲部311A中的程序數據的重寫進行控制。識別信息存儲部32A以包含在讀卡器控制部31A內的形式配置,在讀卡器控制部31A的控制下,在本實施方式中在重寫控制部312A的控制下,以可消除的方式存儲有記述在下載文件23中的識別信息。
[0062]同樣地,讀卡器30B具有讀卡器控制部31B作為主構成要素。讀卡器控制部31B包括只讀存儲器(ROM)、隨機存取存儲器(RAM)、非易失性存儲器等存儲構件和中央處理器(CPU)等運算構件等,對讀卡器30B整體的工作等進行控制。如圖1所示,讀卡器控制部31B具有作為程序存儲部的固件存儲部311B以及重寫控制部312B。固件存儲部311B中存儲有包含程序數據的固件。固件存儲部311B由存儲器等構成,以可重寫的方式存儲程序數據。并且,固件存儲部311B對已存儲的程序數據的版次信息進行存儲。重寫控制部312B對存儲在固件存儲部311B中的程序數據的重寫進行控制。
[0063]另外,存儲識別信息237的識別信息存儲部32 (A)由例如閃速存儲器等非易失性存儲器構成。并且,在圖1的例子中,固件存儲部311 (A、B)以包含在讀卡器控制部31 (A、B)內這樣的結構示出,但只要是在讀卡器控制部31 (A、B)的重寫控制部312的控制下即可,不限定于圖1的結構。并且,由讀卡器控制部31 (A)以及重寫控制部312(A)中的至少一個構成了本發明所涉及的控制部。
[0064]接著,以讀卡器30為例,對本實施方式所涉及的讀卡器30側的下載文件的下載的控制處理進行說明。
[0065]在從上位裝置20下載的下載文件23中包含重寫許可數據236的情況下,讀卡器30的讀卡器控制部31進行下一個處理,所述重寫許可數據236允許重寫控制部312對存儲在固件存儲部311中的程序數據進行重寫。此時,讀卡器控制部31進行正常重寫,將存儲在作為程序存儲部的固件存儲部311中的程序數據重寫為從上位裝置20發送的程序數據231,并將數據重寫的正常結束應答返回至上位裝置20。
[0066]在從上位裝置20下載的下載文件23中不包含重寫許可數據的情況下,讀卡器控制部31進行下一個處理。此時,讀卡器控制部31進行虛擬重寫,不將存儲在作為程序存儲部的固件存儲部311中的程序數據重寫為從上位裝置20發送的程序數據,就將數據重寫的正常結束應答返回至上位裝置20。
[0067]讀卡器控制部31與重寫處理并列地獲取(提取)記述在接收到的下載文件23中的識別信息237,并存儲在識別信息存儲部32中。在本實施方式中,讀卡器控制部31在進行上述的虛擬重寫時,獲取包含在下載文件23中的識別信息237,并存儲在識別信息存儲部32中。并且,讀卡器控制部31在從上位裝置20接收到識別信息的發送要求時,將存儲在識別信息存儲部32中的識別信息返回至上位裝置20。
[0068]并且,在本實施方式中,讀卡器控制部31在進行上述的正常重寫時,消除在正常接收到從上位裝置20下載的下載文件23的情況下存儲在識別信息存儲部32中的識別信息。另外,在此,消除在正常接收到從上位裝置20下載的下載文件23的情況下存儲在識別信息存儲部32中的識別信息是作為一例而舉出的。在該情況下,只要能夠設成無法獲取(讀取)存儲在識別信息存儲部32中的識別信息即可,除了消除以外,還有禁止以后訪問識別信息的存儲區域等各種形態。讀卡器控制部31在進行正常重寫的情況下,在從上位裝置20接收到識別信息的發送要求時,將正確的(通常的)識別信息返回至上位裝置20。
[0069]即,在本實施方式的讀卡器30中,讀卡器控制部31在進行下載文件的下載時進行以下控制。
[0070](I)在接收到具有下載可能性的舊規格用(舊型)的下載文件的情況下,不僅向上位裝置20虛擬地返回正常接收到命令的響應(應答),而且從接收數據中提取(獲取)其無效的識別信息237,并保持在作為外圍設備的讀卡器30內的非易失性存儲器等識別信息存儲部32內。之后,在識別信息存儲部32中存儲有無效的識別信息時,根據要求將其作為識別信息加以返回。
[0071](2)在正常接收新規格用的下載文件時,首先,消除識別信息存儲部32的無效的識別信息的存儲位置。即,若在起動時消除了無效的識別信息的存儲位置,則根據要求返回通常的識別信息。
[0072](3)并且,在接收到的下載文件23的規定位置沒有識別信息的情況下,如上所述,利用新的發送命令將下載文件23的上位裝置20能夠識別的識別信息發送至作為外圍設備的讀卡器30。讀卡器30將例如通過新命令接收到的識別信息存儲并保持在非易失性存儲器等識別信息存儲部32內。
[0073]<讀卡器30中的下載的具體控制處理>
[0074][非本實施方式的通常處理的情況]
[0075]通常情況下,首先,通過接收“刪除”命令消除固件存儲部311的存儲有程序數據的重寫區域,通過接收“下載”命令進行寫入。
[0076][本實施方式的處理]
[0077]在本實施方式中,進行如以下⑴至(5)所示的處理。
[0078](I)在接收“刪除”命令時,不消除固件存儲部311的存儲有程序數據的重寫區域,在接收最初的“下載”命令時,根據編入在該命令的程序數據231內的重寫許可數據(匹配用ID數據)236進行判定。之后,若確認該程序數據231的正確性(正常重寫的情況),則消除固件存儲部311的重寫區域的程序數據以及非易失性存儲器等識別信息存儲部32的識別信息,寫入最初的“下載”命令的程序數據。
[0079](2)在通過根據重寫許可數據(匹配用ID數據)進行的判定無法確認正確性的情況下,在本實施方式中,判斷為不是應寫入的下載文件,不會根據“刪除”和“下載”命令進行重寫,只返回正常應答。即,不進行與該命令對應的處理,進行虛擬重寫處理。
[0080](3)在該虛擬重寫處理的過程中,獲取編入在接收到的下載文件23的規定位置的識別信息(識別用ID),并暫時保持在內部。
[0081](4)以該虛擬重寫處理像正常下載那樣進行至最后。若至最后結束,則將暫時保持的識別信息(識別用ID)存儲在非易失性存儲器等識別信息存儲部32中。
[0082](5)實施下載后,在非易失性存儲器等識別信息存儲部32中記錄有識別信息(識別用ID)的情況下,相對于來自上位裝置20的發送要求返回該識別信息(識別用ID)作為應答。
[0083]在本實施方式中,通過如此進行利用識別信息的下載處理,具有以下優點。即使在上位裝置20未被替換為新規格用(新型)的下載文件的情況下,也關于已發送的下載文件進行虛擬重寫,而且在從上位裝置20接收到識別信息(識別用ID)的發送要求時,返回經虛擬重寫的無效的下載文件的識別信息(識別用ID),因此無需起動之后的下載處理,從而能夠縮短處理。在從上位裝置20接收到識別信息(識別用ID)的發送要求時,即使在剛下載之后也返回經虛擬重寫的下載文件的識別信息(識別用ID),因此能夠避免系統停止。由于從上位裝置20排除無法應用的下載文件的應用指示,因此能夠保持自身的工作環境,并繼續使用。
[0084]<連接于上位裝置20的讀卡器30與存儲在上位裝置20中的下載文件23的組合>
[0085]但是,在本實施方式中,如上所述,能夠將第一讀卡器30A以及第二讀卡器30B與上位裝置20連接。并且,在外部存儲部22中存儲有包含與第一讀卡器30A對應的程序數據231的下載文件23A或包含與第二讀卡器30B對應的程序數據231的下載文件23B。因此,作為連接于上位裝置20的讀卡器30與存儲在上位裝置20的下載文件23的組合,可以想到圖3所示的四個模式。
[0086]S卩,如圖3 (A)所示,可以想到在上位裝置20連接有第一讀卡器30A且在外部存儲部22中存儲有下載文件23A的模式。如圖3(B)所示,可以想到在上位裝置20連接有第一讀卡器30A且在外部存儲部22中存儲有下載文件23B的模式。如圖3(C)所示,可以想到在上位裝置20連接有第二讀卡器30B且在外部存儲部22中存儲有下載文件23A的模式。并且,如圖3(D)所示,可以想到在上位裝置20連接有第二讀卡器30B且在外部存儲部22中存儲有下載文件23B的模式。
[0087]另外,在外部存儲部22中存儲有下載文件23A的情況下,例如如圖3 (A)、圖3(C)所示,包含在下載文件23A中的程序數據231的版次是“Rev.B”。并且,在外部存儲部22中存儲有下載文件23B的情況下,例如如圖3 (B)、圖3 (D)所示,包含在下載文件23B中的程序數據231的版次是“Rev.b”。并且,例如如圖3(A)、圖3(B)所示,存儲在第一讀卡器30A的固件存儲部311A中的程序數據的版次是“Rev.A”。例如如圖3 (C)、圖3 (D)所示,存儲在第二讀卡器30B的固件存儲部311B中的程序數據的版次是“Rev.a”。
[0088]并且,在本實施方式中,即使在與第一讀卡器30A對應的程序數據231被下載至第二讀卡器30B的情況下,第二讀卡器30B也正常工作。另一方面,若與第二讀卡器30B對應的程序數據231被下載至第一讀卡器30A,則第一讀卡器30A不正常工作。
[0089]以下,結合流程圖,分在上位裝置20中的處理和在作為外圍設備的讀卡器30中的處理分別對本實施方式的固件的下載處理進行說明。
[0090]<固件的下載處理:上位裝置中的處理>
[0091]首先,結合圖4對在上位裝置20中的下載處理進行說明。
[0092]圖4是示出在圖1所示的上位裝置20中下載固件時的處理流程的一例的流程圖。
[0093]在從上位裝置20向讀卡器30下載程序數據231時,首先,下載控制部21讀入下載文件23的第一行,以讀取版次信息232 (步驟STl),并向讀卡器30下達版次獲取命令(步驟ST2)。之后,下載控制部21對從下載文件23讀取的版次信息232與讀卡器30針對版次獲取命令作出的應答進行比較(步驟ST3)。即,在步驟ST3中,對包含于存儲在上位裝置20 (具體是外部存儲部22)中的下載文件23的程序數據231的版次與存儲在讀卡器30的固件存儲部311中的程序數據的版次進行比較。
[0094]在步驟ST3中,在包含于存儲在上位裝置20中的下載文件23的程序數據231的版次與存儲在固件存儲部311 (A、B)中的程序數據的版次不一致的情況下(在步驟ST3中為“否,,的情況),下載控制部21為了執行下載處理,向讀卡器30下達初始化命令(步驟ST4)。
[0095]S卩,例如如圖3(A)所示,在包含于存儲在上位裝置20 (具體是外部存儲部22)中的下載文件23A的程序數據231的版次是“Rev.B”,且存儲在固件存儲部311A中的程序數據的版次是“Rev.A”的情況下,下載控制部21下達初始化命令。并且,如圖3(B)所示,在包含于存儲在上位裝置20中的下載文件23B的程序數據231的版次是“Rev.b”,且存儲在固件存儲部311A中的程序數據的版次是“Rev.A”的情況下,下載控制部21下達初始化命令。并且,如圖3(C)所示,在包含于存儲在上位裝置20中的下載文件23A的程序數據231的版次是“Rev.B”,且存儲在固件存儲部311B中的程序數據的版次是“Rev.a”的情況下,下載控制部21下達初始化命令。并且,如圖3(D)所示,在包含于存儲在上位裝置20中的下載文件23B的程序數據231的版次是“Rev.b”,且存儲在固件存儲部311B中的程序數據的版次是“Rev.a”的情況下,下載控制部21下達初始化命令。
[0096]在如上所述的情況下,由于包含于存儲在上位裝置20中的下載文件23的程序數據231的版次與存儲在固件存儲部311 (A、B)中的程序數據的版次不一致,因此在步驟ST4中下載控制部21向讀卡器30下達初始化命令。
[0097]之后,下載控制部21根據讀卡器30對該初始化命令的響應(應答)判斷讀卡器30是否為能夠下載程序數據231的狀態的下載模式(步驟ST5)。在步驟ST5中,若讀卡器30不是下載模式(在步驟ST5中為“否”的情況),則下載控制部21向讀卡器30下達模式切換命令(步驟ST6),使讀卡器30過渡至下載模式之后,返回至步驟ST4。
[0098]另一方面,在步驟ST5中,若讀卡器30是下載模式(在步驟ST5中為“是”的情況),下載控制部21按每一行讀入下載文件23的第二行之后的行(步驟ST7),判斷所讀入的一行是否為最后一行(文件結束標記235)(步驟ST8)。
[0099]在步驟ST8中,若所讀入的一行不是最后一行(在步驟ST8中為“否”的情況),下載控制部21將該讀入的下載文件23的一行作為命令下達至讀卡器30。例如,若所讀入的一行是下載文件23的第二行,則向讀卡器30下達刪除命令233。并且,若所讀入的一行是下載文件23的第三行之后的行,則將下載命令234與經整理的程序數據231 —同下達至讀卡器30。
[0100]之后,下載控制部21根據讀卡器30的應答判斷是否正常執行了命令(步驟ST10)。若讀卡器30的應答是正常應答(在步驟STlO中為“是”的情況),則返回至步驟ST7,讀入下載文件23的下一行。另一方面,若讀卡器30的應答是異常應答(在步驟STlO中為“否”的情況),則下載控制部21判斷為程序數據231的下載失敗,結束下載處理。另夕卜,在該情況下,下載系統10有時會停機(導致下載系統10的工作停止)。
[0101]并且,在步驟ST8中,若從下載文件23讀入的一行是最后一行(在步驟ST8中為“是”的情況),則程序數據231的下載正常結束。
[0102]并且,在步驟ST3中,在存儲在上位裝置20中的程序數據231的版次與存儲在固件存儲部311(A、B)中的程序數據的版次一致的情況下(在步驟ST3中為“是”的情況),下載控制部21判斷為不需要下載程序數據231,結束下載處理。例如,在圖3(A)中,在存儲在上位裝置20中的程序數據231的版次是“Rev.A”的情況下,由于存儲在上位裝置20中的程序數據231的版次與存儲在固件存儲部311A中的程序數據的版次一致,因此下載控制部21結束下載處理。
[0103]<固件的下載處理:在讀卡器中的處理>
[0104]接著,結合圖5對作為本實施方式所涉及的外圍設備的讀卡器30中的下載處理進行說明。圖5是示出在圖1所示的讀卡器30中下載固件時的處理流程的一例的流程圖。
[0105]如圖3(C)、圖3(D)所示,在上位裝置20連接有第二讀卡器30B的情況下,無論下載文件23A和下載文件23B中的哪一個存儲在上位裝置20中,在第二讀卡器30B中下載固件時,都進行與通常的(例如在上述專利文獻I中記載的)讀卡器的處理相同的處理。
[0106]即,若在上述步驟ST7中讀入的一行是下載文件23的第二行,則讀卡器控制部31B根據在步驟ST9中下達的刪除命令233執行刪除命令233。具體地說,重寫控制部312B消除固件存儲部311B中的指定的區域。更具體地說,重寫控制部312B消除固件存儲部311B內的與程序數據231對應的程序數據。并且,讀卡器控制部31B將正常執行了刪除命令233的正常應答返回至下載控制部21。
[0107]并且,若在步驟ST7中讀入的一行是下載文件23的第三行之后的行,則讀卡器控制部31B根據在步驟ST9中下達的下載命令234執行下載命令234。具體地說,重寫控制部312B將從上位裝置20發送來的程序數據231存儲在固件存儲部31IB中的指定的區域中。即,重寫控制部312B將從上位裝置20發送來的程序數據231寫入到固件存儲部311B中。并且,重寫控制部312B將正常執行了下載命令234的正常應答返回至下載控制部21。
[0108]另一方面,如圖3 (A)、圖3 (B)所示,在上位裝置20連接有第一讀卡器30A的情況下,在第一讀卡器30A中下載固件時,進行與通常的(例如在上述專利文獻I中記載的讀卡器)的處理不同的處理。具體地說,在第一讀卡器30A中,按照圖5所示的流程如下進行處理。
[0109]在上述步驟ST7中讀入的一行是下載文件23的第二行,重寫控制部312A接收在步驟ST9中下達的下載文件23的第二行,即刪除命令233 (步驟ST21)。重寫控制部312A不執行該第二行的刪除命令233,就將正常執行了刪除命令233的正常應答返回至下載控制部21 (步驟ST22)。S卩,在步驟ST22中,重寫控制部312A不消除存儲在固件存儲部31IA中的程序數據,就將正常執行了刪除命令233的正常應答返回至下載控制部21。
[0110]之后,重寫控制部312A接收在步驟ST9中下達的下載文件23的第三行即下載命令234以及程序數據231 (步驟ST23)。重寫控制部312A判斷在第三行的程序數據231中是否記述有重寫許可數據236 (步驟ST24)。即,在步驟ST24中,重寫控制部312A判別存儲在上位裝置20中的程序數據231是否為與第一讀卡器30A對應的程序數據231。
[0111]例如如圖3(A)所示,在上位裝置20中存儲有下載文件23A且在步驟ST24中判斷出在第三行的程序數據231中記述有重寫許可數據236的情況下,讀卡器控制部31A以及重寫控制部312A進行下一個處理。即,在下載文件23A中包含重寫許可數據236的情況下(在步驟ST24中為“是”的情況),讀卡器控制部31A的重寫控制部312A消除作為非易失性存儲器的識別信息存儲部32A的識別信息(識別用ID)的存儲區域(步驟ST25)。在該情況下,可以是讀卡器控制部31A或重寫控制部312A以在識別信息存儲部32A中實際存儲有識別信息(識別用ID)時進行消除的方式構成和以無條件地消除識別信息存儲部32A的識別信息的存儲區域的方式構成等各種形態。
[0112]然后,重寫控制部312A根據在下載文件23中包含重寫許可數據236的情況執行下載文件23A的第二行的命令以及第三行的命令,即刪除命令233以及下載命令234。并且,重寫控制部312A將正常執行了下載命令234的正常應答返回至下載控制部21 (步驟ST26)。具體地說,在步驟ST26中,重寫控制部312A消除存儲在固件存儲部311A中的程序數據,并且將從上位裝置20發送來的程序數據231存儲在固件存儲部311A中的指定的區域中,并將正常應答返回至下載控制部21。
[0113]另外,在步驟ST25中對識別信息存儲部32A的消除處理和在步驟ST26中應答下載文件23A的第二行的刪除命令233的對固件存儲部311A的規定區域的消除處理中的任一個在前或在后都可以。
[0114]之后,重寫控制部312A依次接收下載文件23A的第四行之后的行(步驟ST27),并依次執行接收到的行的下載命令234 (步驟ST28)。S卩,重寫控制部312A將從上位裝置20發送來的程序數據231存儲在固件存儲部311A中的指定的區域中,并將正常執行了下載命令234的正常應答返回至下載控制部21 (步驟ST28)。
[0115]另一方面,如圖3(B)所示,在上位裝置20中存儲有下載文件23B且在步驟ST24中在第三行的程序數據231中未記述有重寫許可數據236的情況下,讀卡器控制部31A以及重寫控制部312A進行下一個處理。即,在下載文件23B中不包含重寫許可數據236的情況下(在步驟ST24中為“否”的情況),重寫控制部312A不執行下載文件23B的第三行的命令即下載命令234,就將正常執行了下載命令234的正常應答返回至下載控制部21 (步驟ST29)。具體地說,在步驟ST29中,重寫控制部312A不將從上位裝置20發送來的程序數據231存儲在固件存儲部31IA中,就將正常應答返回至下載控制部21。
[0116]之后,重寫控制部312A依次接收下載文件23B的第四行之后的行(步驟ST30)。接著,重寫控制部312A判別在接收到的下載文件23B中是否具有(是否包含)識別信息237 (步驟ST31)。在下載文件23B中包含識別信息237的情況下(在步驟ST31中為“是”的情況),重寫控制部312A從接收到的程序數據231中提取并獲取識別信息(識別用ID) 237 (步驟ST32),并暫時保持在內部的存儲器和寄存器等(步驟ST33)。在此,獲取并保持的下載文件23B的識別信息237是對第一讀卡器30A無效的下載文件23B的識別信息。
[0117]在步驟ST33的處理后或者在下載文件23B中不包含識別信息237的情況下(在步驟ST31中為“否”的情況),重寫控制部312A不執行接收到的行的下載命令234,而是進行虛擬的重寫處理,并將正常執行了下載命令234的正常應答(虛擬應答)返回至下載控制部21(步驟ST34)。
[0118]之后,重寫控制部312A在步驟ST34中將上述虛擬重寫處理進行至下載文件23B的最后一行,并將正常執行了下載命令234的正常應答(虛擬應答)返回至下載控制部21,之后,將在步驟ST33中暫時保持在內部的無效的識別信息237存儲在識別信息存儲部32A中(步驟ST35)。
[0119]例如,在步驟ST35的處理之后從上位裝置20接收到識別信息的發送要求時(步驟ST36),讀卡器控制部31A或重寫控制部312A將存儲在識別信息存儲部32A中的無效的識別信息返回至上位裝置20 (步驟ST37)。并且,在步驟ST36中沒有從上位裝置20發出的發送要求的情況下(在步驟ST36中為“否”的情況),不執行步驟ST37的處理,而是等待來自上位裝置20的下一個步驟。
[0120]并且,在步驟ST28的處理之后從上位裝置20接收到識別信息的發送要求時(步驟ST38),此時,在識別信息存儲部32A中未存儲有識別信息,讀卡器控制部31A或重寫控制部312A將記述在正常的下載文件23A中的正確的識別信息返回至上位裝置20(步驟ST39)。并且,在步驟ST38中沒有從上位裝置20發出的發送要求的情況下(在步驟ST38中為“否”的情況),不執行步驟ST39的處理,而是等待來自上位裝置20的下一個步驟。
[0121]本實施方式的步驟ST24是判別重寫許可數據236是否包含在下載文件23中的重寫許可判別步驟。并且,本實施方式的步驟ST26、ST28是在下載文件23中包含重寫許可數據236的情況下,將存儲在讀卡器30中的程序數據重寫為從上位裝置20發送來的程序數據231,并將數據重寫的正常結束應答返回至上位裝置20的正常重寫步驟。本實施方式的步驟ST29、ST34是在下載文件23中不包含重寫許可數據236的情況下,不將存儲在讀卡器30中的程序數據重寫為從上位裝置20發送來的程序數據231,就將數據重寫的正常結束應答返回至上位裝置20的虛擬重寫步驟。并且,本實施方式的步驟ST35是將包含于下載文件23的該下載文件的識別信息237存儲在讀卡器30的識別信息存儲部32中的識別信息存儲步驟。本實施方式的步驟ST37是在從上位裝置20接收到識別信息的發送要求時,將存儲在識別信息存儲部32中的識別信息返回至上位裝置20的識別信息返回步驟。
[0122]<本實施方式的主要效果>
[0123]如以上說明,通過本實施方式,在下載文件23中包含重寫許可數據236的情況下,存儲在讀卡器30中的程序數據被重寫為從上位裝置20發送來的程序數據231。另一方面,在下載文件23中不包含重寫許可數據236的情況下,存儲在讀卡器30中的程序數據不被重寫為從上位裝置20發送來的程序數據231。即,通過本實施方式,基本上在與第一讀卡器30A對應的程序數據231存儲在上位裝置20中的情況下,存儲在第一讀卡器30A中的程序數據被重寫為從上位裝置20發送來的程序數據231。另一方面,在與第二讀卡器30B對應的程序數據231存儲在上位裝置20的情況下,存儲在第一讀卡器30A中的程序數據不被重寫為從上位裝置20發送來的程序數據231。因此,通過本實施方式,能夠防止與舊型的第二讀卡器30B對應的程序數據231被從上位裝置20下載至新型的第一讀卡器30A。因此,通過本實施方式,能夠避免與舊型的第二讀卡器30B對應的程序數據231被下載至第一讀卡器30A而導致第一讀卡器30A無法正常工作的不良情況。
[0124]通過本實施方式,即使在下載文件23中不包含重寫許可數據236且存儲在第一讀卡器30A中的程序數據不被重寫為從上位裝置20發送來的程序數據231的情況下,也就是說,即使在重寫控制部312不執行刪除命令233以及下載命令234的情況下,重寫控制部312也將數據重寫的正常結束應答返回至上位裝置20。因此,即使不從上位裝置20向第一讀卡器30A下載程序數據231,也能夠使上位裝置20的下載處理正常結束。因此,在本實施方式中,能夠避免下載系統10停機。
[0125]通過本實施方式,在上位裝置20連接有第二讀卡器30B的情況下,第二讀卡器30B不判別在下載文件23中是否包含重寫許可數據236,就將存儲在第二讀卡器30B中的程序數據重寫為從上位裝置20發送來的程序數據231。因此,在與第一讀卡器30A對應的程序數據231存儲在上位裝置20中的情況下,能夠通過該程序數據231使第二讀卡器30B工作。即,通過本實施方式,能夠通過與第一讀卡器30A對應的一個程序數據231使第一讀卡器30A以及第二讀卡器30B工作。
[0126]并且,在與第二讀卡器30B對應的程序數據231存儲在上位裝置20中的情況下,該程序數據231雖然被下載至第二讀卡器30B,但不被下載至第一讀卡器30A。因此,能夠通過與第一讀卡器30A對應的程序數據使第一讀卡器30A工作,并且通過與第二讀卡器30B對應的程序數據使第二讀卡器30B工作。因此,通過本實施方式,即使存儲在上位裝置20中的程序數據231是一個,也能夠使第一讀卡器30A以及第二讀卡器30B恰當地工作。
[0127]如此,通過本實施方式,即使存儲在上位裝置20中的程序數據231是一個,也能夠使第一讀卡器30A以及第二讀卡器30B恰當地工作。因此,無需根據上位裝置20與第一讀卡器30A連接還是與第二讀卡器30B連接而變更上位裝置20。因此,在本實施方式中,能夠提高使用下載系統10的用戶的便利性。
[0128]并且,通過本實施方式,在下載文件23的程序數據231中除了記述(記載)有重寫許可數據236以外,還記述(記載)有識別信息(識別用ID) 237,在讀卡器30中進行下載文件的下載時,讀卡器控制部31進行以下控制。即,在接收到具有下載可能性的舊規格用(舊型)的下載文件的情況下,不僅虛擬地向上位裝置20返回正常接收到命令的響應(應答),而且從接收數據中提取其無效的識別信息237,并保持在作為外圍設備的讀卡器30內的非易失性存儲器等識別信息存儲部32內。并且,在識別信息存儲部32中存儲有無效的識別信息時,根據來自上位裝置20的識別信息的發送要求作為識別信息加以返回。在正常接收新規格用(新型)的下載文件時,首先,消除識別信息存儲部32的無效的識別信息的存儲位置。即,只要在起動時消除無效的識別信息的存儲位置,就能夠根據來自上位裝置20的識別信息的發送要求,向上位裝置20返回通常的(正確的)識別信息。
[0129]因此,通過本實施方式,能夠進一步獲得以下效果。即,即使在上位裝置不被替換為新規格用的下載文件的情況下,對已發送的下載文件23進行虛擬重寫并返回正常應答,而且在從上位裝置20接收到識別信息(識別用ID)的發送要求時,返回經虛擬重寫的下載文件的識別信息(識別用ID),因此無需起動之后的下載處理,從而能夠縮短處理。在從上位裝置20接收到識別信息(識別用ID)的發送要求時,即使在剛下載之后也返回經虛擬重寫的下載文件的識別信息(識別用ID),因此能夠避免系統停止。由于從上位裝置20排除無法應用的下載文件的應用指示,因此能夠保持自身的工作環境并繼續使用。
[0130]并且,通過本實施方式,在接收到的下載文件23的規定位置沒有識別信息的情況下,如上所述,利用新的發送命令將上位裝置20能夠識別的下載文件23的識別信息發送至作為外圍設備的讀卡器30。讀卡器30將利用新的命令接收到的識別信息存儲并保持在非易失性存儲器等識別信息存儲部32內。在本實施方式中,基本上在下載文件的規定位置配置有識別信息(識別用ID),但若考慮其他外圍設備在內,則其配置位置有時并不全部統一,因此能夠應用于這種情況。
[0131 ] <下載文件以及下載方法的變形例>
[0132]接著,作為另一實施方式,對下載文件以及下載方法的變形例進行說明。圖6是示出本發明的另一實施方式所涉及的下載文件23的數據結構的一例的示意圖。
[0133]在上述的實施方式中,如圖2所示,在下載文件23中不包含重寫匹配命令238,所述重寫匹配命令238用于判別是否可以將存儲在讀卡器30中的程序數據重寫為存儲在上位裝置20中的程序數據231。與此相對,在該另一實施方式中,如圖6所示,也可以在下載文件23(C)中包含重寫匹配命令238。在圖6的例子中,在程序數據231中未記述有重寫許可數據236。在該情況下,例如向重寫匹配命令238附加用于允許讀卡器30側的重寫控制部312將存儲在讀卡器30中的程序數據重寫為存儲在外部存儲部22中的程序數據231的重寫許可數據。并且,附加于與第一讀卡器30A對應的下載文件23A的重寫匹配命令238的重寫許可數據同附加于與第二讀卡器30B對應的下載文件23B的重寫匹配命令238的重寫許可數據不同。
[0134]在該變形例所涉及的下載文件23 (C)中,如圖6所示,重寫匹配命令238被記述在下載文件23(C)的第二行,刪除命令233被記述在下載文件23的第三行,下載命令234以及程序數據231被記述在下載文件23 (C)的第四行之后。并且,在重寫控制部312A中存儲有與附加于下載文件23A的重寫匹配命令238的重寫許可數據一致或者與該重寫許可數據一對一對應的許可數據。在重寫控制部312B中存儲有與附加于下載文件23B的重寫匹配命令238的重寫許可數據一致或者與該重寫許可數據一對一對應的許可數據。
[0135]<在該另一實施方式的讀卡器30中下載的具體控制處理>
[0136][非另一實施方式的通常處理的情況]
[0137]通常情況下,首先,利用“匹配”命令進行重寫(寫入)匹配,若實現了匹配,則通過接收“刪除”命令而消除固件存儲部311的存儲有程序數據的重寫區域,并通過接收“下載”命令進行寫入。
[0138][該另一實施方式的處理]
[0139]在本實施方式中,進行如以下(I)至(6)所示的處理。
[0140](I)在“匹配”命令實現了重寫(寫入)匹配的情況下(正常重寫的情況下),在接收“刪除”命令時,消除固件存儲部311的存儲有程序數據的重寫區域,并且消除非易失性存儲器等識別信息存儲部32的識別信息,利用下一個“下載”命令進行程序數據的寫入。
[0141](2)在“匹配”命令未能實現重寫(寫入)匹配且由讀卡器控制部31判斷為是指定舊型產品(舊型讀卡器)的下載文件的情況下,判斷為不是應寫入的下載文件,不利用下一個“刪除”和“下載”命令進行重寫,只返回正常應答。即,不進行與該命令對應的處理,而是進行虛擬重寫處理。
[0142](3)在該虛擬重寫處理的過程中,獲取編入在接收到的下載文件23的規定位置的識別信息(識別用ID),并暫時保持在內部。
[0143](4)以該虛擬重寫處理像正常下載那樣進行至最后。若至最后結束,則將暫時保持的識別信息(識別用ID)存儲在非易失性存儲器等識別信息存儲部32中。
[0144](5)實施下載后,在非易失性存儲器等識別信息存儲部32中記錄有識別信息(識另IJ用ID)的情況下,返回該識別信息(識別用ID)作為應答。
[0145](6)在“匹配”命令未能實現重寫(寫入)匹配且還不是舊型機種用的情況下,向上位裝置20返回異常應答。
[0146]<在另一實施方式中下載固件的處理:在讀卡器中的處理>
[0147]接著,結合圖7對作為該另一實施方式所涉及的外圍設備的讀卡器30中的下載處理進行說明。圖7是示出在本發明的另一實施方式所涉及的讀卡器30中下載固件時的處理流程的一例的流程圖。
[0148]在該另一實施方式的變形例中,首先,如圖7所示,讀卡器控制部31A以及重寫控制部312A接收在上述的步驟ST9 (圖4)中下達的下載文件23的第二行,即重寫匹配命令238(步驟ST41)。重寫控制部312A判斷附加于重寫匹配命令238的重寫許可數據是否與存儲在重寫控制部312A中的許可數據一致(或者是否與該許可數據對應)(步驟ST42)。即,重寫控制部312A在步驟ST42中判斷是否實現了重寫匹配。
[0149]在上位裝置20中存儲有下載文件23A且在步驟ST42中實現了重寫匹配的情況下(在步驟ST42中為“是”的情況),讀卡器控制部31A以及重寫控制部312A將實現重寫匹配的正常應答返回至下載控制部21 (步驟ST43)。之后,隨著實現重寫匹配且返回正常應答,讀卡器控制部31A以及重寫控制部312A進行下一個處理。即,讀卡器控制部31A的重寫控制部312A消除作為非易失性存儲器的識別信息存儲部32A的識別信息(識別用ID)的存儲區域(步驟ST44)。在該情況下,也可以是讀卡器控制部31A或重寫控制部312A以在識別信息存儲部32A中實際存儲有識別信息(識別用ID)的情況下進行消除的方式構成和以無條件地消除識別信息存儲部32A的識別信息的存儲區域的方式構成等各種形態。
[0150]之后,重寫控制部312A執行接收到的下載文件23A的第三行的命令以及第四行的命令,即刪除命令233以及下載命令234。并且,重寫控制部312A將正常執行了下載命令234的正常應答返回至下載控制部21 (步驟ST45)。具體地說,在步驟ST45中,重寫控制部312A消除存儲在固件存儲部311A中的程序數據,并且將從上位裝置20發送來的程序數據231存儲在固件存儲部31IA中的指定的區域中,將正常應答返回至下載控制部21。
[0151]另外,在步驟ST44中對識別信息存儲部32A的消除處理和在步驟ST45中應答下載文件23A的第三行的刪除命令233的對固件存儲部311A的規定區域的消除處理中的任一個在前或在后都可以。
[0152]之后,重寫控制部312A依次接收下載文件23A的第五行之后的行(步驟ST45),并依次執行接收到的行的下載命令234(步驟ST46)。S卩,重寫控制部312A將從上位裝置20發送來的程序數據231存儲在固件存儲部311A中的指定的區域中,并將正常執行了下載命令234的正常應答返回至下載控制部21 (步驟ST46)。
[0153]另一方面,在步驟ST42中,在未能實現重寫匹配的情況下(在步驟ST42中為“否”的情況),重寫控制部312A進行下一個處理。重寫控制部312A判斷附加于重寫匹配命令238的重寫許可數據是附加于下載文件23B的重寫匹配命令238的重寫許可數據,還是附加于不同機種的讀卡器等的下載文件的重寫匹配命令的重寫許可數據(步驟ST47)。即,在步驟ST47中,重寫控制部312A判斷存儲在上位裝置20中的程序數據是與舊型的第二讀卡器30B對應的數據,還是與不同機種的讀卡器等對應的數據。
[0154]在步驟ST47中,在存儲在上位裝置20中的程序數據與第二讀卡器30B對應的情況下,即,在上位裝置20中存儲有下載文件23B的情況下(在步驟ST47中為“是”的情況),重寫控制部312A雖然未能實現重寫匹配,但仍將實現了重寫匹配的正常應答返回至下載控制部21 (步驟ST48)。之后,重寫控制部312A依次接收下載文件23B的第三行之后的行(步驟 ST49)。
[0155]接著,重寫控制部312A判別在接收到的下載文件23B中是否具有(是否包含)識別信息237 (步驟ST50)。在下載文件23B中包含識別信息237的情況下(在步驟ST50中為“是”的情況),重寫控制部312A從接收到的程序數據231中提取并獲取識別信息(識別用ID) 237 (步驟ST51),并暫時保持在內部的存儲器和寄存器等(步驟ST52)。在此,獲取并保持的下載文件23B的識別信息237是對第一讀卡器30A無效的下載文件23B的識別信肩、O
[0156]在步驟ST52的處理后或者在下載文件23B中不包含識別信息237的情況下(在步驟ST50中為“否”的情況),重寫控制部312A不執行接收到的行的下載命令234,而是進行虛擬的重寫處理,并將正常執行了下載命令234的正常應答(虛擬應答)返回至下載控制部21(步驟ST53)。
[0157]之后,重寫控制部312A在步驟ST53中將上述虛擬重寫處理進行至下載文件23B的最后一行,并將正常執行了下載命令234的正常應答(虛擬應答)返回至下載控制部21,之后,將在步驟ST52中暫時保持在內部的無效的識別信息237存儲在識別信息存儲部32A中(步驟S54)。
[0158]并且,在步驟ST47中,在存儲在上位裝置20中的程序數據與不同機種的讀卡器等對應的情況下(在步驟ST47中為“否”的情況),重寫控制部312A將異常應答返回至下載控制部21 (步驟ST55)。接收到異常應答的下載控制部21判斷為程序數據231的下載失敗,結束下載處理。
[0159]并且,例如在步驟ST54的處理之后從上位裝置20接收到識別信息的發送要求的情況下(步驟ST56),讀卡器控制部31A或者重寫控制部312A將存儲在識別信息存儲部32A中的識別信息返回至上位裝置20(步驟ST57)。并且,在步驟ST56中沒有來自上位裝置20的發送要求的情況下(在步驟ST56中為“否”的情況),不執行步驟ST57的處理,而是等待來自上位裝置20的下一個步驟。
[0160]并且,在步驟ST46的處理之后從上位裝置20接收到識別信息的發送要求的情況下(步驟ST58),此時在識別信息存儲部32A中沒有存儲有識別信息,讀卡器控制部31A或重寫控制部312A將被記述在正常的下載文件23A中的正確的識別信息返回至上位裝置20(步驟ST59)。并且,在步驟ST58中沒有來自上位裝置20的發送要求的情況下(在步驟ST58中為“否”的情況),不執行步驟ST59的處理,而是等待來自上位裝置20的下一個步驟。
[0161]在該變形例中,也能夠獲得與上述方式相同的效果。并且,在該變形例中,由于無需在程序數據231中包含重寫許可數據236,因此能夠簡化程序數據231的結構的一部分。另外,在程序數據231中包含重寫許可數據236的情況下,即使在下載文件23中不包含重寫匹配命令238的情況或者讀卡器30不接收重寫匹配命令238的情況下,也能夠判別在下載文件23中是否包含重寫許可數據。
[0162]并且,在該另一實施方式中,通過如此利用重寫匹配命令以及識別信息進行下載處理,能夠獲得與前述的實施方式相同的效果。即,即使在上位裝置未被替換為新規格用的下載文件的情況下,也關于已發送的下載文件進行虛擬重寫,而且在從上位裝置20接收到識別信息(識別用ID)的發送要求時,返回進行了虛擬重寫的無效的下載文件的識別信息(識別用ID),因此無需起動之后的下載處理,從而能夠縮短處理。在從上位裝置20接收到識別信息(識別用ID)的發送要求時,即使在剛下載之后也返回進行了虛擬重寫的下載文件的識別信息(識別用ID),因此能夠避免系統停止。由于從上位裝置排除無法應用的下載文件的應用指示,因此能夠保持自身的工作環境,并繼續使用。
[0163]另外,該變形例中的步驟ST42是判別在下載文件23 (C)中是否包含重寫許可數據的重寫許可判別步驟,所述重寫許可數據用于允許重寫控制部312A將存儲在第一讀卡器30A中的程序數據重寫為存儲在上位裝置20中的程序數據231。并且,步驟ST46是在下載文件23(C)中包含用于允許重寫控制部312A將存儲在第一讀卡器30A中的程序數據重寫為存儲在上位裝置20中的程序數據231的重寫許可數據的情況下,將存儲在第一讀卡器30A中的程序數據重寫為從上位裝置20發送來的程序數據231,并將數據重寫的正常結束應答返回至上位裝置20的正常重寫步驟。并且,步驟ST53是在下載文件23 (C)中不包含用于允許重寫控制部312A將存儲在第一讀卡器30A中的程序數據重寫為存儲在上位裝置20中的程序數據231的重寫許可數據的情況下,不將存儲在第一讀卡器30A中的程序數據重寫為從上位裝置20發送來的程序數據231,就將數據重寫的正常結束應答返回至上位裝置20的虛擬重寫步驟。并且,本實施方式的步驟ST54是將包含于下載文件23(C)中的該下載文件的識別信息237存儲在讀卡器30的識別信息存儲部32中的識別信息存儲步驟。本實施方式的步驟ST57是在從上位裝置20接收到識別信息的發送要求時,將存儲在識別信息存儲部32中的識別信息返回至上位裝置20的識別信息返回步驟。
[0164]<其他實施方式>
[0165]上述的實施方式以及變形例是本發明的優選的實施方式的一例,但不限定于此,在不變更本發明的宗旨的范圍內,能夠進行各種變形。
[0166]在上述的實施方式中,以上位裝置20與一個讀卡器30 (30A或者30B)連接的方式構成。作為另一實施方式,如圖8所示,還能夠以上位裝置20與多個同型讀卡器30并列連接,并從上位裝置20向各讀卡器30下載使作為外圍設備的各讀卡器30工作的固件的程序數據231的方式構成。
[0167]并且,在上述的實施方式中,以使識別信息存儲部32包含在讀卡器控制部31中的方式構成。但是,作為又一實施方式,如圖9所示,還能夠采用將識別信息存儲部32配置在讀卡器控制部31的外部的結構。在該情況下,識別信息存儲部32可以是讀卡器控制部31直接進行訪問控制的重寫控制部312進行訪問控制等各種形態。另外,圖9示出了與圖1的結構對應的另一實施方式,但在與圖8對應的情況下等,也同樣如圖9中標注括號示出那樣,能夠采用將識別信息存儲部32配置在讀卡器控制部31的外部的結構。
[0168]在上述的實施方式中,重寫許可數據236被記述在下載文件23A中的第三行的程序數據231中。除此之外,例如還可以將重寫許可數據236記述在下載文件23A中的第四行之后的第η行的程序數據231中。在該情況下,重寫控制部312在判斷重寫許可數據236是否被記述在第η行的程序數據231中之后,執行第二行至第η行的命令并將正常應答返回至下載控制部21,或者不執行第二行至第η行的命令就將正常應答返回至下載控制部21。
[0169]并且,在本實施方式中,如圖2以及圖6所示,關于識別信息大致利用了兩種下載文件形式。初始行的版次信息(版頭)基本上是上位裝置用的信息,不被發送至外圍設備。在本實施方式中,根據在下載文件內有無重寫許可數據和“匹配”命令,判斷下載文件是否正規的構件發生變化,但在不接收“匹配”命令的產品的情況下,在程序數據內包含重寫許可數據(匹配用ID)以及識別信息(識別用ID)。即使記述有相當于“匹配”命令的重寫許可數據,也不馬上設成無法下載,只有在判斷為舊型產品時,在實際執行了命令的虛擬重寫過程中,獲取識別信息(識別用ID)。作為應用例,雖然也有已敘述的部分,但還能夠舉出通過密文記載識別信息(識別用ID)或者通過明文記載識別信息(識別用ID)的例子。對此也在前面進行了敘述,但還能夠以將最前頭的版頭行命令化并作為識別用ID發送命令發送的方式構成。在本實施方式中,在下載文件的規定位置配置有識別信息(識別用ID),但若考慮其他外圍設備在內,則其配置位置并不全部統一。因此,既能重新設置目前不發送至外圍設備的將識別信息(識別用ID)文本化識別信息(識別用ID)通知命令,還能夠以只有在下載控制部21部正常接收到該命令時進行生成這種發送命令的處理等的方式構成。
[0170]并且,在上述的實施方式中,以版次信息(版頭)232與識別信息(識別用ID) 237使用了相同的數據的例子進行了說明,但兩個數據也可以不是相同的數據,一般來講,識別信息(識別用ID) 237的數據(量)比版次信息232多而詳細。
[0171]在上述的實施方式中,以能夠與上位裝置20通信的方式與上述裝置20連接的外圍設備、第二外圍設備是讀卡器30,但以能夠與上位裝置20通信的方式與上位裝置20連接的外圍設備、第二外圍設備也可以是卡片打印機等除了讀卡器30以外的各種裝置。
[0172]另外,以上詳細說明的方法還能夠形成為根據上述順序進行的程序,并以利用中央處理器(CPU)等計算機執行的方式構成。并且,這種程序能夠構成為通過半導體存儲器、磁盤、光盤、軟盤(floppy disk(注冊商標))等記錄介質、組裝有該記錄介質的計算機進行訪問并執行上述程序。
[0173]符號說明
[0174]10、10AU0B下載系統(固件的下載系統)
[0175]20上位裝置
[0176]21下載控制部
[0177]22外部存儲部
[0178]23下載文件
[0179]231程序數據
[0180]232版次信息
[0181]233刪除命令
[0182]234下載命令
[0183]235文件結束標記
[0184]236重寫許可數據
[0185]237識別信息
[0186]238重寫匹配命令
[0187]30讀卡器(外圍設備)
[0188]31讀卡器控制部
[0189]311固件存儲部(程序存儲部)
[0190]312重寫控制部
[0191]32識別信息存儲部(非易失性存儲器(NVM))
[0192]30A第一讀卡器(外圍設備、第一外圍設備)
[0193]3IA讀卡器控制部
[0194]311A固件存儲部(程序存儲部)
[0195]312A重寫控制部
[0196]32A識別信息存儲部(非易失性存儲器(NVM))
[0197]30B第二讀卡器(外圍裝第二外圍設備)
[0198]3IB讀卡器控制部
[0199]311B固件存儲部(程序存儲部)
[0200]312B重寫控制部。
【權利要求】
1.一種外圍設備,其與上位裝置連接,且能夠從所述上位裝置下載包含使所述外圍設備工作的固件的程序數據的下載文件,所述外圍設備的特征在于,包括: 識別信息存儲部,所述識別信息存儲部能夠存儲所述下載文件的識別信息; 程序存儲部,所述程序存儲部至少將程序數據以可重寫的方式存儲;以及控制部,所述控制部對存儲在所述程序存儲部中的所述程序數據的重寫進行控制,所述下載文件具有所述下載文件的識別信息以及重寫許可數據中的至少所述識別信息,所述重寫許可數據用于允許所述控制部對存儲在所述程序存儲部中的程序數據進行重與, 在所述下載文件中包含所述重寫許可數據的情況下,所述控制部進行正常重寫,將存儲在所述程序存儲部中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,并將所述數據重寫的正常結束應答返回至所述上位裝置, 在所述下載文件中不包含所述重寫許可數據的情況下,所述控制部進行虛擬重寫,不將存儲在所述程序存儲部中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,就將數據重寫的正常結束應答返回至所述上位裝置, 并且,所述控制部將所述下載文件的所述識別信息存儲在所述識別信息存儲部中。
2.根據權利要求1所述的外圍設備,其特征在于, 所述控制部在進行所述虛擬重寫時,獲取包含于所述下載文件的識別信息,并存儲在所述識別信息存儲部中。
3.根據權利要求1或2所述的外圍設備,其特征在于, 所述控制部在從所述上位裝置接收到所述識別信息的發送要求時,將存儲在所述識別信息存儲部中的所述識別信息返回至所述上位裝置。
4.根據權利要求1至3中任一項所述的外圍設備,其特征在于, 所述控制部在進行所述正常重寫時,將在正常接收到所述下載文件的情況下存儲在所述識別信息存儲部中的識別信息設成無法獲取。
5.根據權利要求1至4中任一項所述的外圍設備,其特征在于, 所述識別信息記載于所述下載文件的程序數據的規定位置。
6.根據權利要求1至4中任一項所述的外圍設備,其特征在于, 在接收到的所述下載文件內不包含識別信息的情況下,所述控制部能夠接收來自所述上位裝置的新的命令作為識別信息。
7.—種外圍設備的控制方法,所述外圍設備與上位裝置連接,且所述外圍設備能夠從所述上位裝置下載包含使所述外圍設備工作的固件的程序數據的下載文件,所述外圍設備的控制方法的特征在于,包括如下步驟: 重寫許可判別步驟,所述重寫許可判別步驟判別重寫許可數據是否包含于從所述上位裝置下載的下載文件,所述重寫許可數據用于允許將存儲在所述外圍設備中的所述程序數據重寫為存儲在所述上位裝置中的所述程序數據; 正常重寫步驟,在所述重寫許可判別步驟中判別出所述重寫許可數據包含于所述下載文件的情況下,所述正常重寫步驟將存儲在所述外圍設備中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,并將數據重寫的正常結束應答返回至所述上位裝置;虛擬重寫步驟,在所述重寫許可判別步驟中判別出所述重寫許可數據不包含于所述下載文件的情況下,所述虛擬重寫步驟不將存儲在所述外圍設備中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,就將數據重寫的正常結束應答返回至所述上位裝置; 識別信息存儲步驟,所述識別信息存儲步驟將包含于所述下載文件的該下載文件的識別信息存儲在所述外圍設備的識別信息存儲部中;以及 識別信息返回步驟,在從所述上位裝置接收到所述識別信息的發送要求時,所述識別信息返回步驟將存儲在所述識別信息存儲部中的所述識別信息返回至所述上位裝置。
8.根據權利要求7所述的外圍設備的控制方法,其特征在于, 在處理所述虛擬重寫步驟時,并列進行所述識別信息存儲步驟。
9.根據權利要求7或8所述的外圍設備的控制方法,其特征在于, 所述的外圍設備的控制方法具有存儲信息無法獲取步驟,所述存儲信息無法獲取步驟在所述正常重寫步驟中將在正常接收到所述下載文件的情況下存儲在所述識別信息存儲部中的識別信息設成無法獲取。
10.根據權利要求7至9中任一項所述的外圍設備的控制方法,其特征在于, 所述識別信息記載于所述下載文件的程序數據的規定位置。
11.根據權利要求7至9中任一項所述的外圍設備的控制方法,其特征在于, 在接收到的所述下載文件內不包含識別信息的情況下,能夠接收來自所述上位裝置的新的命令作為識別信息。
12.—種固件的下載系統,其特征在于,所述固件的下載系統包括: 至少一個外圍設備;以及 上位裝置,所述上位裝置與所述外圍設備連接,且所述上位裝置能夠將包含使所述外圍設備工作的固件的程序數據的下載文件下載至所述外圍, 所述外圍設備由權利要求1至6中任一項所述的外圍設備構成。
13.一種使計算機執行外圍設備的控制處理的程序,所述外圍設備與上位裝置連接,且所述外圍設備能夠從所述上位裝置下載包含使所述外圍設備工作的固件的程序數據的下載文件,所述程序的特征在于,包括如下處理: 重寫許可判別處理,所述重寫許可判別處理判別重寫許可數據是否包含于從所述上位裝置下載的下載文件,所述重寫許可數據用于允許將存儲在所述外圍設備中的所述程序數據重寫為存儲在所述上位裝置中的所述程序數據; 正常重寫處理,在所述重寫許可判別處理中判別出所述重寫許可數據包含于所述下載文件的情況下,所述正常重寫處理將存儲在所述外圍設備中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,并將數據重寫的正常結束應答返回至所述上位裝置;虛擬重寫處理,在所述重寫許可判別處理中判別出所述重寫許可數據不包含于所述下載文件的情況下,所述虛擬重寫處理不將存儲在所述外圍設備中的所述程序數據重寫為從所述上位裝置發送來的所述程序數據,就將數據重寫的正常結束應答返回至所述上位裝置; 識別信息存儲處理,所述識別信息存儲處理將包含于所述下載文件的該下載文件的識別信息存儲在所述外圍設備的識別信息存儲部中;以及 識別信息返回處理,在從所述上位裝置接收到所述識別信息的發送要求時,所述識別信息返回處理將存儲在所述識別信息存儲部中的所述識別信息返回至所述上位裝置。
【文檔編號】G06F11/00GK104412237SQ201380032294
【公開日】2015年3月11日 申請日期:2013年10月11日 優先權日:2012年12月27日
【發明者】折井勉 申請人:日本電產三協株式會社
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 阿克陶县| 富顺县| 柳州市| 扎赉特旗| 阳高县| 榆树市| 湾仔区| 饶阳县| 舒城县| 阳信县| 炎陵县| 松江区| 巴青县| 淮阳县| 突泉县| 山阳县| 长岛县| 太仆寺旗| 永城市| 措美县| 申扎县| 额尔古纳市| 衢州市| 花垣县| 潞城市| 焦作市| 富蕴县| 广灵县| 上栗县| 南漳县| 珠海市| 锡林浩特市| 永平县| 裕民县| 壶关县| 南城县| 成都市| 开封县| 印江| 美姑县| 临夏市|