專利名稱:通信系統(tǒng)、信息處理設(shè)備、外設(shè)和通信方法
技術(shù)領(lǐng)域:
本發(fā)明涉及根據(jù)SCSI(小型計(jì)算機(jī)系統(tǒng)接口)指令來在具有用于插入諸如存儲卡等記錄介質(zhì)的插槽的外設(shè)和諸如與外設(shè)相連的個(gè)人電腦(下文中稱之為PC)等信息處理設(shè)備之間執(zhí)行數(shù)據(jù)通信的通信系統(tǒng)。
背景技術(shù):
近年,將諸如閃存等非易失性存儲器包裝成卡形狀的所謂存儲卡已經(jīng)廣為人知。存儲卡作為一種用于諸如相機(jī)和便攜式音樂播放器等數(shù)字設(shè)備的數(shù)據(jù)存儲介質(zhì),已經(jīng)被迅速傳播開來。目前對于存儲卡沒有統(tǒng)一的規(guī)范。市場上有諸如壓縮閃存(注冊商標(biāo),下文中稱之為“CF”)、智能介質(zhì)(注冊商標(biāo),下文中稱之為“SM”)、存儲棒(注冊商標(biāo),下文中稱之為“MS”)和SD存儲卡(注冊商標(biāo),下文中稱之為“SD”)等各類存儲卡。
通過使用用于從/到連接到PC的存儲卡讀取/寫入存儲卡的存儲卡讀取器/寫入器(外設(shè)的一個(gè)例子,下文中稱之為“讀取器/寫入器”),PC可以對這種存儲器進(jìn)行訪問。因此允許在PC和存儲卡之間進(jìn)行數(shù)據(jù)通信。如JP-A-2005-18645和JP-A-2005-107875中所公開的,這種讀取器/寫入器可以是具有一個(gè)用于存儲卡的槽的單槽類型,也可以是包括有多個(gè)槽以便從多于一個(gè)存儲卡中讀取數(shù)據(jù)或?qū)?shù)據(jù)寫入多于一個(gè)存儲卡中的多槽類型。
為了能夠通過使用讀取器/寫入器來從/到PC中讀取/寫入存儲在存儲卡中的數(shù)據(jù),需要識別出讀取器/寫入器并且安裝驅(qū)動軟件以便能訪問所插入的存儲卡。近年,PC的操作系統(tǒng)(下面簡記為OS)一般預(yù)裝了驅(qū)動軟件,以支持各種類型的讀取器/寫入器和存儲卡。另一方面,除了單槽類型之后發(fā)展起來的多槽類型之外的PC包括有諸如Windows98和Windows2000等Windows早期版本OS(下文中稱之為低端OS),沒有專用的驅(qū)動軟件來支持這種多槽類型。因此,用戶在使用中需要安裝專用的兼容性驅(qū)動軟件。假設(shè)將多槽類型的讀取器/寫入器(下文中稱之為多讀取器/寫入器)連接到包括有低端OS的PC,可以允許只訪問預(yù)定的槽。
所設(shè)計(jì)的PC和讀取器/寫入器之間的數(shù)據(jù)通信,也就是用于PC和存儲卡之間的數(shù)據(jù)通信的通信協(xié)議,通常能夠根據(jù)以SCSI標(biāo)準(zhǔn)所定義的SCSI指令來執(zhí)行數(shù)據(jù)通信。SCSI標(biāo)準(zhǔn)是由ANSI(美國國家標(biāo)準(zhǔn)研究所)建立的通信協(xié)議,并且得到全球一致認(rèn)可。SCSI指令是以SCSI標(biāo)準(zhǔn)所指定的指令術(shù)語。這種通信協(xié)議能夠增強(qiáng)PC和讀取器/寫入器的多功能性,并且因此被廣泛地使用。在下面的講述中,SCSI指令主要指SCSI-2。
下面參考圖13來講述基于SCSI指令所做的PC3和經(jīng)由USB-I/F78連接到PC3的讀取器/寫入器77之間的通信。圖13為概念視圖,示出了在PC3上運(yùn)行的OS70(在這個(gè)例子中為Windows2000)和在OS70上運(yùn)行的應(yīng)用程序。OS70的基本系統(tǒng)包括GUI(圖形用戶界面)71、文件系統(tǒng)72和OS內(nèi)核73。GUI71是用戶接口,用于以計(jì)算機(jī)圖形的方式和使用諸如鼠標(biāo)等定點(diǎn)設(shè)備來提供用戶輸入。文件系統(tǒng)72包括通過使用計(jì)算機(jī)中的文件和文件夾來管理數(shù)據(jù)的方法及其管理系統(tǒng)。OS內(nèi)核73是一種用于實(shí)現(xiàn)諸如一個(gè)監(jiān)督應(yīng)用和外設(shè)等基本特征的軟件程序。PC3中預(yù)安裝了驅(qū)動軟件74,以便能夠訪問讀取器/寫入器。驅(qū)動軟件74在OS內(nèi)核73中是以模塊化形式實(shí)現(xiàn)的。
如圖中所示,假設(shè)在PC3上啟動作為應(yīng)用程序的例子用于訪問讀取器/寫入器77的瀏覽器75,以及R/W應(yīng)用程序76。所創(chuàng)建的瀏覽器75與OS70的系統(tǒng)相適應(yīng),并且一般被識別為OS70的特征。因此,瀏覽器75經(jīng)由文件系統(tǒng)72與讀取器/寫入器77進(jìn)行通信。另一方面,R/W應(yīng)用程序76是由讀取器/寫入器77的制造商所開發(fā)的唯一應(yīng)用軟件,并且執(zhí)行處理以寫入或讀取數(shù)據(jù)到/從插入到讀取器/寫入器77中的記錄介質(zhì)。一般情況下,所創(chuàng)建的R/W應(yīng)用程序76不與OS70相適應(yīng),因?yàn)槟壳吧形垂_有關(guān)文件系統(tǒng)72的規(guī)范。
首先,來講述瀏覽器75對讀取器/寫入器77的訪問。一旦啟動了OS70并且相應(yīng)地啟動了瀏覽器75,則通過瀏覽器75經(jīng)由文件系統(tǒng)72將查詢指令(SCSI指令的一個(gè)例子)發(fā)布到OS內(nèi)核73。注意,包括查詢指令在內(nèi)的所有SCSI指令都要被虛擬地發(fā)布到為OS內(nèi)核73所提供的SCSI指令處理入口79。當(dāng)發(fā)布了查詢指令時(shí),從讀取器/寫入器77返回諸如讀取器/寫入器77的類型和設(shè)備名稱、SCSI-ID、LUN的有/無、以及存儲卡的類型等配置信息。從而,能夠識別出讀取器/寫入器77。當(dāng)識別了讀取器/寫入器77時(shí),通過GUI71在瀏覽器75上創(chuàng)建了讀取器/寫入器77的驅(qū)動器圖標(biāo)。當(dāng)用戶通過使用鼠標(biāo)訪問驅(qū)動器圖表來鍵入數(shù)據(jù)讀取指令時(shí),瀏覽器75利用文件系統(tǒng)72來發(fā)布讀取指令(SCSI指令的一個(gè)例子)。另一方面,當(dāng)用戶鍵入寫入指令時(shí),瀏覽器75利用文件系統(tǒng)72來發(fā)布寫入指令(SCSI指令的一個(gè)例子)。這些指令數(shù)據(jù)經(jīng)由諸如USB等I/F被傳遞到讀取器/寫入器77,緊接著根據(jù)該指令在讀取器/寫入器77上進(jìn)行數(shù)據(jù)讀/寫操作。當(dāng)用讀取器/寫入器77來重置PC3的poser時(shí),也發(fā)布查詢指令。
接下來講述R/W應(yīng)用程序76對讀取器/寫入器77的訪問。一旦啟動了R/W應(yīng)用程序76,則將用于只打開R/W應(yīng)用程序的數(shù)據(jù)總線的請求發(fā)布到OS內(nèi)核73。接收到該請求后,OS內(nèi)核73讓R/W應(yīng)用程序76占有該數(shù)據(jù)總線。換句話說,發(fā)布到SCSI指令處理入口79的SCSI指令在SCSI指令處理入口79沒有被接受。因此,當(dāng)R/W應(yīng)用程序76被啟動時(shí),文件系統(tǒng)72無法訪問讀取器/寫入器77。當(dāng)R/W應(yīng)用程序76被啟動時(shí),由R/W應(yīng)用程序76所編程的輸入屏幕(用戶界面屏幕)經(jīng)由GUI71被顯示在顯示器上。查詢指令通過驅(qū)動軟件74被發(fā)布到OS內(nèi)核73,以獲取諸如讀取器/寫入器77的類型和設(shè)備名稱等配置信息。從而,能夠識別出讀取器/寫入器77。之后,通過驅(qū)動軟件74,根據(jù)發(fā)布到OS內(nèi)核73的讀取指令或?qū)懭胫噶钤谧x取器/寫入器77上進(jìn)行數(shù)據(jù)讀/寫操作。
讀取器/寫入器77的識別過程如下。首先,當(dāng)將查詢指令發(fā)布到OS內(nèi)核73時(shí)所生成的查詢數(shù)據(jù)被發(fā)送到讀取器/寫入器77。接收到查詢數(shù)據(jù)后,讀取器/寫入器77參考包括在查詢數(shù)據(jù)中的各種信息,以便根據(jù)該信息來生成配置信息,并且將包括有配置信息的標(biāo)準(zhǔn)查詢數(shù)據(jù)發(fā)送到PC。根據(jù)所返回的標(biāo)準(zhǔn)查詢數(shù)據(jù),從而使別出讀取器/寫入器77。
發(fā)明內(nèi)容
如上所述,當(dāng)R/W應(yīng)用程序76啟動時(shí),數(shù)據(jù)總線被R/W應(yīng)用程序76所占有,這樣就無法通過瀏覽器75經(jīng)由文件系統(tǒng)72與讀取器/寫入器77進(jìn)行通信。在這種情況下,當(dāng)使用其他卡來代替插入到讀取器/寫入器77中的存儲卡時(shí),表明該次代替的信息被存儲到讀取器/寫入器77的內(nèi)存中。實(shí)際上,預(yù)定的位標(biāo)志被接通(也就是說,預(yù)定的位從“0”更改為“1”)。當(dāng)位標(biāo)志被接通時(shí),諸如讀取指令和寫入指令等來自R/W應(yīng)用程序76的SCSI指令不被接受從而被迫中止。例外的情況是,諸如查詢指令的特殊指令沒有被拒絕而是被接受了。
當(dāng)SCSI指令被迫中止時(shí),從R/W應(yīng)用程序76發(fā)布了查詢指令并且在新的存儲卡上的信息被更新獲取。接受該查詢指令后,讀取器/寫入器77通過利用R/W應(yīng)用程序76來獲取存儲卡信息,從而關(guān)斷位標(biāo)志(預(yù)定的位從“1”改為“0”)。這樣可以使R/W應(yīng)用程序76對讀取器/寫入器77進(jìn)行訪問,而不會招致對存儲卡的損壞。
當(dāng)R/W應(yīng)用程序76在位標(biāo)志被關(guān)斷后結(jié)束運(yùn)行時(shí),數(shù)據(jù)總線不再為R/W應(yīng)用程序76所占有。也就是說,由瀏覽器75經(jīng)由文件系統(tǒng)72所發(fā)布的SCSI指令在SCSI指令處理入口79被接受。因此允許瀏覽器75來訪問讀取器/寫入器77。瀏覽器75和文件系統(tǒng)72還沒有獲取新存儲卡上的信息。當(dāng)讀取指令或?qū)懭胫噶钣蔀g覽器75發(fā)布并且被讀取器/寫入器77所接受時(shí),瀏覽器75根據(jù)之前的存儲卡上信息(諸如存儲卡的類型、數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)容量)來訪問新存儲卡。在這種情況下,存儲卡中的數(shù)據(jù)可能會被破壞,或者存儲卡可能會被損壞。在有關(guān)技術(shù)中,使用了繁瑣的程序來解決諸如強(qiáng)制重置讀取器/寫入器77以獲取讀取器/寫入器的配置信息,或者退出存儲卡等問題。
使用插入到讀取器/寫入器77的插槽中的存儲卡來執(zhí)行數(shù)據(jù)通信。因此,數(shù)據(jù)通信在PC3和存儲卡之間提供數(shù)據(jù)發(fā)送/接收的功能。不過,在數(shù)據(jù)通信中,期望數(shù)據(jù)從輔助設(shè)備到讀取器/寫入器77的發(fā)送/接收不包括存儲卡,諸如讀取器/寫入器77上的液晶顯示器或開關(guān)是不在相關(guān)技術(shù)的OS規(guī)范范圍內(nèi)的。
因此,當(dāng)運(yùn)行R/W應(yīng)用程序76時(shí),通過將位標(biāo)志設(shè)置為接通,可以在R/W應(yīng)用程序76和讀取器/寫入器77之間進(jìn)行數(shù)據(jù)通信,并且與輔助設(shè)備而不是諸如存儲卡等存儲器進(jìn)行數(shù)據(jù)通信被認(rèn)為是一種動力,有著強(qiáng)烈的社會需求。
本發(fā)明的實(shí)現(xiàn)考慮到了上述條件。本發(fā)明的目標(biāo)是提出一種通信系統(tǒng),在原理上用于在維持發(fā)布到諸如讀取器/寫入器等外設(shè)的SCSI指令被外設(shè)所拒絕這一條件的情況下,在SCSI標(biāo)準(zhǔn)范圍內(nèi)執(zhí)行外設(shè)和信息處理設(shè)備之間的數(shù)據(jù)通信。
根據(jù)本發(fā)明的方面,提出了一種通信系統(tǒng),用于根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行數(shù)據(jù)通信,該通信系統(tǒng)包括外設(shè),執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取操作的至少一個(gè);以及信息處理設(shè)備,連接到外設(shè),包括OS內(nèi)核;添加單元,將通信數(shù)據(jù)添加到通過將查詢指令發(fā)布到OS內(nèi)核來生成的查詢數(shù)據(jù)的自由區(qū);以及發(fā)送單元,將查詢數(shù)據(jù)發(fā)送到包括有由添加單元所添加的通信數(shù)據(jù)的外設(shè),其中外設(shè)包括接收單元,接收通過發(fā)送單元所發(fā)送的查詢數(shù)據(jù);以及提取單元,提取添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù)。
在根據(jù)SCSI指令來執(zhí)行數(shù)據(jù)通信的通信系統(tǒng)中,在當(dāng)外設(shè)連接到信息處理設(shè)備或當(dāng)信息處理設(shè)備和外設(shè)互連時(shí)對電源進(jìn)行重置的情況下,信息處理設(shè)備將查詢指令發(fā)布到OS內(nèi)核,并且將查詢數(shù)據(jù)發(fā)送到外設(shè),以獲得外設(shè)的配置信息(諸如設(shè)備的類型、設(shè)備名稱、SCSI-ID和LUD等)。接收到查詢數(shù)據(jù)之后,外設(shè)參考包括在查詢數(shù)據(jù)中的各種信息,并且根據(jù)該信息返回包括有配置信息的標(biāo)準(zhǔn)查詢。
自由區(qū)是在查詢數(shù)據(jù)中預(yù)先保留的。將任意通信數(shù)據(jù)添加到自由區(qū),并且結(jié)果得到的查詢數(shù)據(jù)被發(fā)送到外設(shè)。外設(shè)提取添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù)。從而,將數(shù)據(jù)從信息處理設(shè)備發(fā)送到外設(shè)。
根據(jù)本發(fā)明的另一個(gè)方面,提出了一種信息處理設(shè)備,包括OS內(nèi)核;添加單元,將通信數(shù)據(jù)添加到通過將查詢指令發(fā)布到OS內(nèi)核來生成的查詢數(shù)據(jù)的自由區(qū);以及發(fā)送單元,將查詢數(shù)據(jù)發(fā)送到包括有由添加單元所添加的通信數(shù)據(jù)的外設(shè),其中信息處理設(shè)備連接到執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取操作的至少一個(gè)的外設(shè),并且信息處理設(shè)備根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行與外設(shè)的數(shù)據(jù)通信。
根據(jù)本發(fā)明的另一個(gè)方面,提出了一種外設(shè),包括接收單元,接收包括有被添加到自由區(qū)的通信數(shù)據(jù)并且通過信息處理設(shè)備進(jìn)行發(fā)送的查詢數(shù)據(jù);以及提取單元,提取被添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù),其中外設(shè)連接到信息處理設(shè)備,執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取的至少一個(gè)并且根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行與信息處理設(shè)備的數(shù)據(jù)通信。
根據(jù)本發(fā)明的另一個(gè)方面,提出了一種通信方法,根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行在執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取的至少一個(gè)的外設(shè)與連接到外設(shè)的信息處理設(shè)備之間的數(shù)據(jù)通信,該通信方法包括將通信數(shù)據(jù)添加到通過將查詢指令發(fā)布到信息處理設(shè)備的OS內(nèi)核來生成的查詢數(shù)據(jù)的自由區(qū);將查詢數(shù)據(jù)發(fā)送到包括有通信數(shù)據(jù)的外設(shè);接收所發(fā)送的查詢數(shù)據(jù);以及提取被添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù)。
根據(jù)執(zhí)行基于SCSI指令的數(shù)據(jù)通信的通信系統(tǒng),自由區(qū)被預(yù)先保留在查詢數(shù)據(jù)中。將任意通信數(shù)據(jù)添加到自由區(qū),并且結(jié)果得到的查詢數(shù)據(jù)從信息處理設(shè)備被發(fā)送到外設(shè),從而提取添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù)。從而在原理上允許在除了查詢指令之外的SCSI指令被外設(shè)所拒絕時(shí),或者換句話說在將表示記錄介質(zhì)替代的標(biāo)志保持為接通時(shí),在信息處理設(shè)備和外設(shè)之間進(jìn)行數(shù)據(jù)通信。在沒有諸如所安裝的特殊內(nèi)核等驅(qū)動軟件的情況下,允許從應(yīng)用程序到外設(shè)的數(shù)據(jù)通信。
下面結(jié)合附圖來進(jìn)行詳細(xì)講述,將使本發(fā)明的這些及其它目標(biāo)和優(yōu)勢更加清楚,其中圖1A和1B為應(yīng)用到通信系統(tǒng)的多讀取器/寫入器(外設(shè)的例子)結(jié)構(gòu)性視圖;圖2為框圖,示出了多讀取器/寫入器的總體結(jié)構(gòu);圖3為框圖,示出了應(yīng)用到通信系統(tǒng)的PC的總體結(jié)構(gòu);
圖4為流程圖,示出了在通信系統(tǒng)中執(zhí)行的數(shù)據(jù)通信過程的一般程序;圖5為流程圖,示出了驅(qū)動器分配過程;圖6為流程圖,示出了驅(qū)動器設(shè)置過程;圖7為流程圖,示出了發(fā)送/顯示過程;圖8為流程圖,示出了發(fā)送處理;圖9為流程圖,示出了判定過程;圖10為流程圖,示出了顯示擦除過程;圖11為多功能設(shè)備的示意性外部視圖;圖12為多讀取器/寫入器的局部放大視圖;以及圖13為概念視圖,示出了在PC上運(yùn)行的OS和在OS上運(yùn)行的應(yīng)用程序。
具體實(shí)施例方式下面根據(jù)需要參考附圖來講述根據(jù)本發(fā)明第一實(shí)施例的通信系統(tǒng)1。圖1A和1B為應(yīng)用到通信系統(tǒng)1的多讀取器/寫入器2(外設(shè)的一個(gè)例子)的透視圖。圖2為框圖,示出了多讀取器/寫入器2的總體結(jié)構(gòu)。圖3為框圖,示出了應(yīng)用到通信系統(tǒng)1的PC3(信息處理設(shè)備的一個(gè)例子)的總體結(jié)構(gòu)。下面講述的通信系統(tǒng)1的結(jié)構(gòu)只是體現(xiàn)本發(fā)明的一個(gè)例子,并且可以根據(jù)需要進(jìn)行修訂,只要不偏離本發(fā)明的精神主旨和范圍。
如圖1A所示,多讀取器/寫入器2的前表面上包括有用于插入第一存儲卡11(例如CF)的第一插槽16,用于插入第二存儲卡12(例如SM)的第二插槽17,用于插入第三存儲卡13(例如MS)的第三插槽18,以及用于插入第四存儲卡14(例如SD)的第四插槽19。第一至第四存儲卡11-14是本發(fā)明中所使用的記錄介質(zhì)的例子。當(dāng)將多讀取器/寫入器2講述為該實(shí)施例中的實(shí)例外設(shè)時(shí),還可以將本發(fā)明應(yīng)用于單槽類型的讀取器/寫入器。在使用諸如CD-ROM或DVD-ROM等磁盤介質(zhì)而不是CF或SM來作為記錄介質(zhì)的情況下,作為外設(shè)的是包括有與一或多個(gè)這種磁盤介質(zhì)相適應(yīng)的插入部件的所謂的CD-ROM驅(qū)動器更改器或DVD-ROM驅(qū)動器更改器。本發(fā)明可以應(yīng)用到包括有外設(shè)的通信系統(tǒng)。
多讀取器/寫入器2的上表面分布有用于顯示預(yù)定信息的液晶顯示器21。液晶顯示器21用于顯示存儲在多讀取器/寫入器2中的文本信息??梢允褂肔ED顯示器來替代液晶顯示器21。在該實(shí)施例中,根據(jù)來自PC3的指令來生成文本信息在液晶顯示器21上的顯示輸出。
多讀取器/寫入器2的側(cè)表面上分布有用于切換在位置A和位置B之間的接觸點(diǎn)的選擇開關(guān)22。選擇開關(guān)22的突起23垂直移動,以使突起23內(nèi)部的傳導(dǎo)部件與A接觸點(diǎn)和B接觸點(diǎn)相接觸,從而切換接觸點(diǎn)。選擇開關(guān)22用于切換液晶顯示器21上的內(nèi)容。在該實(shí)施例中,當(dāng)將突起23切換到A接觸點(diǎn)時(shí),液晶顯示器21上的顯示內(nèi)容被切換到當(dāng)前時(shí)間。當(dāng)將突起23切換到B接觸點(diǎn)時(shí),液晶顯示器21上的顯示內(nèi)容被切換到預(yù)定消息。液晶顯示器21上的顯示內(nèi)容以及切換方法可以根據(jù)需要進(jìn)行更改。在該實(shí)施例中,對選擇開關(guān)是被放置到接觸點(diǎn)A還是B的檢測,是根據(jù)來自PC3的指令來進(jìn)行的。
如圖1B和圖2所示,在多讀取器/寫入器2的后表面上提供了用于連接USB電纜25的USB終端24(參考圖2)。USB終端24和USB電纜25用于基于在PC3和多讀取器/寫入器2之間的SCSI指令進(jìn)行數(shù)據(jù)通信,并且遵從SCSI標(biāo)準(zhǔn)。因此,可以應(yīng)用IEEE1394連接器來代替USB終端24。盡管在該實(shí)施例中使用SCSI-2來作為SCSI標(biāo)準(zhǔn),但是本發(fā)明還可以應(yīng)用到被稱為SCSI-I或SCSI=3的修訂標(biāo)準(zhǔn)。
如圖2所示,多讀取器/寫入器2包括CPU27,用于控制組件部分,ROM28,用于存儲控制程序和各種數(shù)據(jù);RAM29,用于臨時(shí)存儲有關(guān)顯示在液晶顯示器21上的預(yù)定信息的數(shù)字?jǐn)?shù)據(jù),或者用于作為由CPU27進(jìn)行算術(shù)運(yùn)算的工作區(qū);液晶LSI30;輸入/輸出控制LSI31;以及USB芯片32。這些組件經(jīng)由總線33互連起來,以便在它們之間進(jìn)行數(shù)據(jù)通信。液晶LSI30是用于驅(qū)動液晶以使液晶顯示器21的顯示內(nèi)容為預(yù)定信息的kkk。多讀取器/寫入器2用于執(zhí)行與它所連接到的PC3的數(shù)據(jù)通信。因此,根據(jù)由SCSI標(biāo)準(zhǔn)所設(shè)計(jì)的通信協(xié)議生成了存儲在ROM28中的控制程序。本發(fā)明的接收單元、提取單元和返回單元是由根據(jù)控制程序來執(zhí)行預(yù)定處理的CPU27來體現(xiàn)的。當(dāng)該實(shí)施例是其中將顯示在液晶顯示器21上的信息存儲在RAM29中這樣一個(gè)例子時(shí),可以為液晶顯示器提供諸如RAM等半導(dǎo)體存儲器。
出現(xiàn)在液晶顯示器21上的預(yù)定信息是表明消息信息或時(shí)間信息的字符串信息。字符串信息是包括有一連串字符、數(shù)字或符號的信息。RAM29中有用于存儲字符串信息的保留存儲區(qū)。將存儲區(qū)分割成多個(gè)字符串存儲區(qū),每一個(gè)由128字節(jié)組成,據(jù)此對其進(jìn)行管理。將用于識別字符串存儲區(qū)的識別編號分配給每一個(gè)字符串存儲區(qū)(下面稱之為“字符串編號”)。
輸入/輸出控制LSI31用于控制輸入/輸出到分別插入到第一至第四插槽16-19中的第一至第四存儲卡11-14的數(shù)據(jù)。USB芯片32是用于控制經(jīng)由基于USB標(biāo)準(zhǔn)的USB電纜25進(jìn)行數(shù)據(jù)發(fā)送的控制器。USB電纜25的另一端連接到PC3,以便進(jìn)行數(shù)據(jù)通信,從而實(shí)現(xiàn)通信系統(tǒng)1。
在ROM28中,將用于分析來自PC3的數(shù)據(jù)的分析數(shù)據(jù)存儲在表格表單中。后面要講述的表格6和表格7示出了該分析數(shù)據(jù)。
在多讀取器/寫入器2中,當(dāng)從/到插入的存儲卡中讀取/寫入數(shù)據(jù)時(shí),分配了用于從存儲卡中讀取數(shù)據(jù)的存儲區(qū)或者用于將數(shù)據(jù)存儲到該存儲卡中的存儲區(qū)。所分配的存儲區(qū)的數(shù)據(jù)長度被稱為分配長度。一般情況下,分配長度被設(shè)置為由訪問多讀取器/寫入器2的PC3所規(guī)定的數(shù)據(jù)長度。在該發(fā)明中,為多讀取器/寫入器2所設(shè)置的分配長度的最大值可以設(shè)置在由PC3所規(guī)定的最大數(shù)字值以下。
如圖3所示,PC3包括CPU41,用于控制組件部件;ROM42;RAM43;HDD44,用于存儲各種軟件程序數(shù)據(jù);視頻控制LSI45;USB芯片46;視頻終端47;以及USB終端48,包括有多個(gè)輸入/輸出端口。這些組件經(jīng)由總線49互連起來,以便在它們之間進(jìn)行數(shù)據(jù)傳遞。它們被集成到一個(gè)叫做主板的主控制板上。顯示器51經(jīng)由顯示電纜連接到視頻終端51上。USB終端48具有USB集線器的功能。除了多讀取器/寫入器2以外,還有諸如鍵盤52和鼠標(biāo)53等輸入單元被連接到USB終端48。本發(fā)明的接收單元、添加單元和發(fā)送單元是由根據(jù)軟件程序來執(zhí)行預(yù)定處理的CPU41來體現(xiàn)的。
CPU具有時(shí)鐘功能。由時(shí)鐘功能所測量的時(shí)間被數(shù)字化,并且被存儲在RAM42中。RAM42將用戶經(jīng)由鍵盤52所輸入的消息以數(shù)字的形式存儲起來。這種時(shí)鐘數(shù)據(jù)和消息數(shù)據(jù)被發(fā)送到多讀取器/寫入器2,并且被顯示在液晶顯示器21上。
ROM42將發(fā)送到使多讀取器/寫入器2的CPU27執(zhí)行預(yù)定處理的多讀取器/寫入器2的指令數(shù)據(jù)存儲起來。該指令數(shù)據(jù)以表格表單的形式被存儲在HDD44或ROM42中。后面要講述的表格6和表格7對應(yīng)于指令數(shù)據(jù)。
在HDD44的程序存儲區(qū)中存儲有作為PC3的操作系統(tǒng)的Windows2000(下面稱之為OS2000)的SP3和諸如用于從/到多讀取器/寫入器2中讀取/寫入數(shù)據(jù)的R/W應(yīng)用程序等軟件程序。由CPU41來讀取這種軟件程序,并且執(zhí)行預(yù)定的算術(shù)運(yùn)算,以便能夠使每一個(gè)應(yīng)用程序在PC3上運(yùn)行。在程序存儲區(qū)中存儲了遵照由SCSI標(biāo)準(zhǔn)所規(guī)定的通信協(xié)議的通信程序,以便能夠與多讀取器/寫入器2之間進(jìn)行基于SCSI指令的數(shù)據(jù)通信。盡管該實(shí)施例的PC3安裝的是OS2000,但是也可以將諸如Linux系列或Mac系列等OS安裝在PC3上??梢允褂肳indows2000的SP4來代替SP3。
在通信系統(tǒng)1中,如后面的流程圖(圖4至圖10)所述,在液晶顯示器21上顯示的數(shù)據(jù)通信是根據(jù)SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來進(jìn)行的。因此,由通信系統(tǒng)所提供的數(shù)據(jù)通信離不開SCSI指令。一般地,在基于SCSI指令的數(shù)據(jù)通信中,在多讀取器/寫入器2拒絕接收從PC3的OS內(nèi)核所發(fā)布的SCSI指令的狀態(tài)下,例如在數(shù)據(jù)總線被另一個(gè)應(yīng)用程序所占用或沒有安裝多讀取器/寫入器2的驅(qū)動軟件的情況下,無法進(jìn)行數(shù)據(jù)的通信。為了解決這一問題,本發(fā)明甚至在沒有做好準(zhǔn)備的情況下使用被多讀取器/寫入器2所例外地接受的查詢指令,以保證通信數(shù)據(jù)在PC3和多讀取器/寫入器2之間的傳遞。如后所述,在當(dāng)發(fā)布查詢指令時(shí)所生成的查詢數(shù)據(jù)(參考表格1)中預(yù)先保留了自由區(qū),并且將通信數(shù)據(jù)添加到該自由區(qū)。添加了通信數(shù)據(jù)的查詢數(shù)據(jù)被多讀取器/寫入器2所接受,從而能夠?qū)⑼ㄐ艛?shù)據(jù)傳遞到多讀取器/寫入器2。當(dāng)接收到查詢數(shù)據(jù)時(shí),將返回?cái)?shù)據(jù)寫入到由多讀取器/寫入器2所生成和返回的VPD(參考表格2)中。從而能夠?qū)⒎祷財(cái)?shù)據(jù)傳遞到PC3。
表格1CDB-格式的查詢數(shù)據(jù)
表格2VPD 下面參考圖4至圖10的流程圖來講述通信系統(tǒng)1中使用查詢數(shù)據(jù)的數(shù)據(jù)通信程序的例子。在該實(shí)施例中,要講述一系列程序,其中存儲在PC3的RAM43中的時(shí)鐘數(shù)據(jù)或消息數(shù)據(jù)被發(fā)送到多讀取器/寫入器2,并且在液晶顯示器21上顯示時(shí)鐘數(shù)據(jù)或消息數(shù)據(jù)。隨著PC3的CPU41或多讀取器/寫入器2的CPU27對每一個(gè)組件部件進(jìn)行控制,每一步中的處理得以執(zhí)行。標(biāo)號S1、S2、…表示程序(步驟)號。
圖4為流程圖,示出了在通信系統(tǒng)1中執(zhí)行的數(shù)據(jù)通信的一般程序。當(dāng)為每一個(gè)其多讀取器/寫入器2連接到PC3的設(shè)備提供電源時(shí),執(zhí)行驅(qū)動器分配處理(S1),從而將驅(qū)動器分配給連接到PC3的未知設(shè)備。在該實(shí)施例中,驅(qū)動器被分配給作為連接到PC3的唯一設(shè)備的多讀取器/寫入器2。
接下來,在將用戶選擇的驅(qū)動器設(shè)置為通信目標(biāo)時(shí)執(zhí)行驅(qū)動器設(shè)置處理(S2)。當(dāng)設(shè)置了驅(qū)動器時(shí),對應(yīng)于所設(shè)置的驅(qū)動器的設(shè)備(該實(shí)施例中的多讀取器/寫入器2)被識別為通信目標(biāo)。然后,存儲在RAM43中的通信數(shù)據(jù)被發(fā)送到多讀取器/寫入器2(發(fā)送步驟),并且由多讀取器/寫入器2所接收的通信數(shù)據(jù)被傳遞到液晶顯示器21,以便將數(shù)據(jù)顯示在液晶顯示器21上,以執(zhí)行發(fā)送/顯示過程(S3)。
是否自從發(fā)送/顯示步驟開始已經(jīng)過去了時(shí)間T1(例如1秒),是由諸如在發(fā)送/顯示步驟結(jié)束時(shí)開始計(jì)數(shù)的定時(shí)器等計(jì)數(shù)單元所決定的(S4)。如果判斷在步驟S4中已經(jīng)過去了時(shí)間T1(步驟S4中的”是”),則判斷是否輸入了結(jié)束指令以結(jié)束PC3的系統(tǒng)(S5)。如果判斷在步驟S5中沒有輸入結(jié)束指令(S5中的”否”),則判斷是否必須改變顯示內(nèi)容(S6)。如果判斷必須改變顯示內(nèi)容(S3中的”是”),則重復(fù)從步驟S3開始的程序。如果判斷不需要改變顯示內(nèi)容(S3中的”否”),則重復(fù)從步驟S4開始的程序。
如果判斷在步驟S5中輸入了結(jié)束指令(S5中的”是”),則執(zhí)行顯示擦除過程(S7)以擦除液晶顯示器21上的信息,緊接著完成一系列處理。下面來分別詳細(xì)地講述驅(qū)動器分配過程(S1),驅(qū)動器設(shè)置過程(S2),發(fā)送/顯示過程(S3),判斷是否必須改變顯示內(nèi)容的過程(S6),以及顯示擦除過程(S7)。
使用圖5的流程圖來講述由PC3的CPU41所執(zhí)行的驅(qū)動器分配過程(S1)。該過程從步驟S101開始。
在步驟S101,參考的驅(qū)動器(下文中稱之為參考驅(qū)動器)被初始設(shè)置為驅(qū)動器A(S101)。參考驅(qū)動器表示可以被PC3所分配的驅(qū)動器。當(dāng)在驅(qū)動器分配步驟中可以分配多個(gè)驅(qū)動器時(shí),按照升序排列來選擇驅(qū)動器。參考驅(qū)動器是由PC3的OS2000的OS內(nèi)核所管理的。在該實(shí)施例中,用于分配的候選驅(qū)動器為從A至Z(總共26個(gè)驅(qū)動器)。
當(dāng)設(shè)置了參考驅(qū)動器時(shí),由CPU21將用于向被分配了驅(qū)動器的設(shè)備請求返回標(biāo)準(zhǔn)查詢數(shù)據(jù)(下面簡稱為S/I數(shù)據(jù))的查詢指令(下面稱之為Inq(0)指令)發(fā)布到參考驅(qū)動器(S102)。在實(shí)際中,Inq(0)指令被CPU41發(fā)布到OS內(nèi)核,并且OS內(nèi)核假定Inq(0)指令被發(fā)布到參考驅(qū)動器。由OS內(nèi)核生成具有被設(shè)置為“0”的EVPD的查詢數(shù)據(jù)(下面稱之為Inq(0)數(shù)據(jù)),并且將其發(fā)送到與參考驅(qū)動器有關(guān)的未知設(shè)備。SCSI標(biāo)準(zhǔn)規(guī)定在EVPD區(qū)被設(shè)置為“0”的情況下應(yīng)該返回S/I數(shù)據(jù)。在該實(shí)施例中所生成的Inq(0)數(shù)據(jù)的一個(gè)例子如表格3中所示。在表格3的數(shù)據(jù)列中,數(shù)據(jù)一項(xiàng)給出的是十六進(jìn)制。除非特別說明,任何數(shù)據(jù)列示出的數(shù)據(jù)都是十六進(jìn)制的。
表格3Inq(0)數(shù)據(jù)(查詢數(shù)據(jù),EVPD=0) 在出現(xiàn)與參考驅(qū)動器有關(guān)的設(shè)備并且該設(shè)備能夠處理SCSI指令的情況下(SCSI指令兼容性設(shè)備),從該設(shè)備返回S/I數(shù)據(jù)。在沒有這種設(shè)備或者有該設(shè)備但是不能處理SCSI指令的情況下(SCSI指令非兼容性設(shè)備),則沒有從該設(shè)備返回S/I數(shù)據(jù)。在步驟103,CPU41根據(jù)S/I數(shù)據(jù)的響應(yīng)的存在/不存在做出了錯(cuò)誤判斷(S103)。假定沒有返回S/I數(shù)據(jù)的情況是錯(cuò)誤(S103中的”是”)。在這種情況下,執(zhí)行進(jìn)行到步驟S107。假定返回S/I數(shù)據(jù)的情況不是錯(cuò)誤(S103中的”否”)。換句話說,判斷設(shè)備的出現(xiàn)與參考數(shù)據(jù)有關(guān)。在這種情況下,執(zhí)行進(jìn)行到步驟S105。
在假定在步驟S103中沒有錯(cuò)誤的情況下,根據(jù)所返回的S/I數(shù)據(jù)來判斷與所參考的驅(qū)動器有關(guān)的設(shè)備是否為通信目標(biāo)或通信設(shè)備。在該實(shí)施例中,執(zhí)行該步驟以判斷與參考驅(qū)動器有關(guān)的設(shè)備是否為多讀取器/寫入器2。在該實(shí)施例中,表格4中所示的S/I數(shù)據(jù)是由多讀取器/寫入器2返回給PC3的。該步驟中的判斷是通過檢查字節(jié)0或字節(jié)1中的數(shù)據(jù)、字節(jié)8至字節(jié)15的區(qū)域中的銷售商ID、以及所返回的S/I數(shù)據(jù)的字節(jié)16至字節(jié)31的區(qū)域中的產(chǎn)品ID與PC3中預(yù)先注冊的ID信息相比較來進(jìn)行的。在所討論的設(shè)備在步驟S104中被判斷為可通信的設(shè)備的情況下(S104中的”是”),執(zhí)行進(jìn)行到步驟S105。在所討論的設(shè)備在步驟S104中被判斷為非可通信的設(shè)備的情況下(S104中的”否”),執(zhí)行進(jìn)行到步驟S107。在字節(jié)0的區(qū)域中的數(shù)據(jù)“0x00”表示直接訪問設(shè)備,而在字節(jié)1的區(qū)域中的數(shù)據(jù)“0x80”表示可重寫的存儲器介質(zhì)。在每一個(gè)字節(jié)區(qū)域中描述的內(nèi)容是按照SCSI標(biāo)準(zhǔn)定義的。要詳細(xì)地了解,可參考SCSI標(biāo)準(zhǔn)。
表格4標(biāo)準(zhǔn)查詢數(shù)據(jù) 當(dāng)執(zhí)行進(jìn)行到步驟S105時(shí),CPU41根據(jù)返回的S/I數(shù)據(jù)判斷參考驅(qū)動器的LUN是否為“0”。該判斷是根據(jù)S/I數(shù)據(jù)中的特定銷售商區(qū)域中的字節(jié)54區(qū)域中的數(shù)據(jù)而做出的。在該實(shí)施例中,如前面所述,從多讀取器/寫入器2中將表格4中所示的S/I數(shù)據(jù)返回到PC3。如表格4中的字節(jié)54的區(qū)域中的說明列所述,在多讀取器/寫入器2中,通過編程將表明多讀取器/寫入器2的物理I/F的信息存儲在字節(jié)54的區(qū)域的高4位中,并且將LUN編號存儲在低4位中。這樣,CPU41將不得不參考字節(jié)54的區(qū)域中的數(shù)據(jù),以獲取LUN信息。這執(zhí)行步驟S105中的判斷。例如,如果在字節(jié)54的區(qū)域中存儲“0x00”,則獲得了表明物理I/F是USB連接器的信息,并且LUN是0。如果存儲了“0x23”,則獲得了表明物理I/F是SCSI連接器的信息,并且LUN是3。
在步驟S105中,當(dāng)LUN被判斷為“0”時(shí)(步驟S105中的”是”),執(zhí)行進(jìn)行到步驟S107。如果多讀取器/寫入器2連接到其中安裝了OS2000的PC3,則PC3識別出LUN=0,甚至在信息LUN=1被存儲在多讀取器/寫入器2上的字節(jié)54的區(qū)域中的情況下。步驟S105中的處理需要是以”是”來結(jié)束。在這種情況下,步驟S105中的判斷是沒有意義的,因此可以被忽略。
在步驟S106中,當(dāng)前的參考驅(qū)動器被添加到相應(yīng)的驅(qū)動器列表中。相應(yīng)的驅(qū)動器列表是最終被分配了驅(qū)動器的參考驅(qū)動器列表。更為具體地說,相應(yīng)的驅(qū)動器列表在RAM43的預(yù)定存儲區(qū)中進(jìn)行延伸,并且相應(yīng)的參考驅(qū)動器被寫入到存儲區(qū)域中。執(zhí)行然后進(jìn)行到步驟S107中。
在步驟S107中,參考驅(qū)動器是否為驅(qū)動器Z是由CPU41來決定的。例如,是否當(dāng)前的參考驅(qū)動器是驅(qū)動器Z可以通過對計(jì)數(shù)存儲器上的驅(qū)動器參考順序進(jìn)行計(jì)數(shù)和使用CPU41來監(jiān)督計(jì)數(shù)值來決定。這種判定用于判斷現(xiàn)在指定的參考值是否為最后一個(gè)。當(dāng)判斷參考驅(qū)動器為驅(qū)動器Z時(shí),不存在進(jìn)一步待參考的驅(qū)動器,因此執(zhí)行進(jìn)行到步驟S109。否則,進(jìn)行到步驟S109。否則,參考驅(qū)動器被設(shè)置為下一級驅(qū)動器(S108)。步驟S102的程序重復(fù)執(zhí)行,直到步驟S107以”是”結(jié)束。
當(dāng)執(zhí)行進(jìn)行到步驟S109時(shí),根據(jù)相應(yīng)的驅(qū)動器列表來分配驅(qū)動器。從而結(jié)束了一系列的驅(qū)動器分配處理(S1)。在該實(shí)施例中,只有多讀取器/寫入器2作為外部存儲器被連接起來,以便將多讀取器/寫入器2分配給驅(qū)動器A,而沒有設(shè)備被分配給其他驅(qū)動器。
接下來,講述由PC3的CPU41來執(zhí)行的驅(qū)動器設(shè)置處理(S2)。該處理從步驟S201開始。
在步驟S201中,判斷是否有由驅(qū)動器分配處理(S1)所分配的驅(qū)動器(S201)。也就是說,判斷是否預(yù)定的設(shè)備被分配給接受了PC3的分配的驅(qū)動器的任何一個(gè)。在該實(shí)施例中,多讀取器/寫入器2被分配的地方就有驅(qū)動器A,因此判斷具有相應(yīng)的驅(qū)動器。然后,判斷是否只具有一個(gè)相應(yīng)的驅(qū)動器(S202)。當(dāng)判斷在步驟S202中沒有相應(yīng)的驅(qū)動器時(shí)(步驟S201中的”否”),則沒有通信目標(biāo),從而結(jié)束了該處理。在這種情況下,不發(fā)送存儲在RAM43中的時(shí)鐘數(shù)據(jù)或消息數(shù)據(jù)。
當(dāng)判斷在步驟S202中只有一個(gè)相應(yīng)的驅(qū)動器時(shí)(S202中的”是”),將相應(yīng)的驅(qū)動器設(shè)置為通信目標(biāo)(S205)。也就是說,與相應(yīng)的驅(qū)動器有關(guān)的設(shè)備被設(shè)置為通信目標(biāo)。在該實(shí)施例中,驅(qū)動器A被設(shè)置為通信目標(biāo)。換句話說,將多讀取器/寫入器2設(shè)置為通信目標(biāo)設(shè)備。
當(dāng)判斷不止一個(gè)相應(yīng)的驅(qū)動器時(shí)(S202中的”否”),以對話框的形式顯示表明相應(yīng)驅(qū)動器的圖標(biāo)(S203)。當(dāng)用戶拾取任何圖標(biāo)以選擇期望的相應(yīng)驅(qū)動器時(shí),所選擇的相應(yīng)驅(qū)動器被設(shè)置為通信目標(biāo)。當(dāng)給相應(yīng)驅(qū)動器以優(yōu)先級時(shí),在沒有選擇圖標(biāo)的情況下,具有最高優(yōu)先級的相應(yīng)驅(qū)動器被自動設(shè)置為通信目標(biāo)。從而結(jié)束了一系列的驅(qū)動器設(shè)置處理(S2)。
接下來,講述由PC3的CPU41所執(zhí)行的發(fā)送/顯示處理(S3)。發(fā)送/顯示處理(S3)是在驅(qū)動器設(shè)置處理(S2)中被設(shè)置為通信目標(biāo)的多讀取器/寫入器2和PC3之間執(zhí)行的。該處理從步驟S301開始。
用于請求多讀取器/寫入器2將VPD(重要的產(chǎn)品數(shù)據(jù))返回給多讀取器/寫入器2的查詢指令(這里被稱為Inq(1)指令)從PC被發(fā)布給驅(qū)動器A(步驟S301)。實(shí)際上,Inq(1)指令被發(fā)布給OS內(nèi)核,并且OS內(nèi)核認(rèn)為Inq(0)指令被發(fā)布給驅(qū)動器A。由OS內(nèi)核生成其EVPD區(qū)被設(shè)置為“1”的查詢數(shù)據(jù)(這里被稱之為Inq(1)數(shù)據(jù)),并且經(jīng)由USB電纜25將其發(fā)送到與驅(qū)動器A有關(guān)的多讀取器/寫入器2。所生成的Inq(1)數(shù)據(jù)如表5所示。如圖5所示,頁碼“0xE0”被描述在Inq(1)數(shù)據(jù)的字節(jié)2的區(qū)域中。SCSI標(biāo)準(zhǔn)規(guī)定了在將EVPD區(qū)域設(shè)置為“1”的情況下應(yīng)該返回VPD。
表5Inq(1)數(shù)據(jù)(查詢數(shù)據(jù),EVPD=1) 如表5所示,“0x00”(用二進(jìn)制表示是“00010000”)被存儲在Inq(1)數(shù)據(jù)的字節(jié)4區(qū)域或分配區(qū)域中?;旧?,分配長度區(qū)域中存儲著所連接設(shè)備需要的數(shù)據(jù)長度。在該實(shí)施例中,多讀取器/寫入器2的分配長度的最大值被預(yù)先設(shè)置為15字節(jié)的固定長度。標(biāo)號“15”可以被低4位所表示。根據(jù)SCSI標(biāo)準(zhǔn),甚至當(dāng)指定一個(gè)超出由多讀取器/寫入器2所設(shè)置的最大值的數(shù)值來作為分配長度時(shí),多讀取器/寫入器2的分配長度被設(shè)置為最大值或15個(gè)字節(jié)。甚至當(dāng)在分配長度區(qū)域中描述了“0x00”,或甚至在描述了“0x11”或更大值的情況下,分配長度被設(shè)置為15個(gè)字節(jié)。這意味著如果高4位中任何一個(gè)是“1”時(shí),可以使用在分配長度區(qū)域中的數(shù)據(jù)來作為沒有任何限制的任意數(shù)據(jù)。通過將高4位的任何一位設(shè)置為“1”,可以保留除了在分配長度區(qū)域中被設(shè)置為“1”的位之外的各個(gè)位。在本發(fā)明中,通過將任意通信數(shù)據(jù)添加到保留的自由區(qū)中,從而在PC3和多讀取器/寫入器2之間執(zhí)行數(shù)據(jù)通信。
分配長度并不需要設(shè)置為15字節(jié)的固定長度??梢愿鶕?jù)Inq(1)數(shù)據(jù)的頁碼來設(shè)置分配長度的最大值。例如,如果頁碼為“0xE0”,則分配長度的最大值被設(shè)置為15字節(jié)的固定長度。如果頁碼為“0xE2”,則分配長度的最大值被設(shè)置為9字節(jié)的固定長度。該設(shè)置處理作為頁碼的內(nèi)容被已經(jīng)收到Inq(1)數(shù)據(jù)的多讀取器/寫入器2得CPU27所讀取,并且從之前存儲在ROM28中的固定長度相應(yīng)列表中選擇相應(yīng)的固定長度。可以任意設(shè)置被設(shè)置為15個(gè)字節(jié)或9個(gè)字節(jié)的分配長度。
表6和表7示出了被添加到在分配長度區(qū)域中所保留的自由區(qū)的經(jīng)過分類的通信數(shù)據(jù)。如每一個(gè)表的數(shù)據(jù)描述一列所示出的,每一個(gè)數(shù)據(jù)項(xiàng)具有有關(guān)數(shù)據(jù)項(xiàng)含義的定義。具體可參考數(shù)據(jù)描述列中的描述。表6示出了在頁碼為“0xE0”的情況下所發(fā)送的通信數(shù)據(jù)。表7和表6示出了在頁碼為“0xE2”的情況下所發(fā)送的通信數(shù)據(jù)。
表6頁碼0xE0
表7頁碼0xE2 如表6和表7所示,左列示出了在分配長度區(qū)域中描述的數(shù)據(jù),而右列示出了數(shù)據(jù)的含義。當(dāng)左列中的數(shù)據(jù)從PC3發(fā)送到多讀取器/寫入器2時(shí),多讀取器/寫入器2使用CPU27從所接收的Inq(1)數(shù)據(jù)中提取位于分配長度區(qū)域中的數(shù)據(jù),分析所提取的數(shù)據(jù)內(nèi)容,并且根據(jù)分析結(jié)果來執(zhí)行處理。表格6和7中的數(shù)據(jù)以表格的列格式被事先存儲在PC3的HDD44或ROM42以及多讀取器/寫入器2的ROM28中。
當(dāng)在步驟S301中發(fā)布Inq(1)指令時(shí)所生成的Inq(1)數(shù)據(jù)具有在如表5所示的分配長度區(qū)域中描述的“0x10”。因此,Inq(1)指令是由PC3所發(fā)布的指令,以請求多讀取器/寫入器2來讀取開關(guān)位置。
另一方面,多讀取器/寫入器2接收發(fā)送來的Inq(1)數(shù)據(jù)。然后,在Inq(1)數(shù)據(jù)的分配長度區(qū)域中的數(shù)據(jù)“0x10”被CPU27所提取,并且根據(jù)該數(shù)據(jù)來檢測選擇器開關(guān)22的位置(S302)。
當(dāng)檢測到開關(guān)位置時(shí),由CPU27將檢測結(jié)果返回到PC3(S303)。返回處理是通過將檢測結(jié)果寫入到在接收到Inq(1)數(shù)據(jù)值后生成并且返回到PC3的VPD中來完成的。更為具體地說,如表8所示,開關(guān)位置的檢測結(jié)果被寫入到字節(jié)7的區(qū)域中。在該實(shí)施例中,當(dāng)選擇器開關(guān)22位于位置B時(shí),“0x01”被寫入。表8示出了在開關(guān)位于位置B的情況下所假定的VPD。
表8VPD(Inq(1)數(shù)據(jù)接收) 接下來,PC3接收從多讀取器/寫入器2返回的VPD,并且參考VPD的字節(jié)7的區(qū)域來決定該開關(guān)位于A或B中的哪一個(gè)接觸點(diǎn)。如果判斷選擇器開關(guān)22位于位置A(S304中的A),則生成當(dāng)前時(shí)鐘數(shù)據(jù)并且存儲到RAM43中(S305)。如果判斷選擇器開關(guān)22位于位置B(S304中的B),則從存儲在RAM43中的多個(gè)消息數(shù)據(jù)項(xiàng)中選擇出用戶事先所選擇的消息數(shù)據(jù)項(xiàng)(S306)。
之后,當(dāng)讀取存儲在RAM43中的時(shí)鐘數(shù)據(jù)或所選的消息數(shù)據(jù)項(xiàng)時(shí)執(zhí)行發(fā)送處理,并且將數(shù)據(jù)發(fā)送到多讀取器/寫入器2(S307)。根據(jù)圖8的流程圖所示的步驟S401及其之后的程序來執(zhí)行該發(fā)送處理。也就是說,發(fā)布了Inq(1)指令(步驟S401)。當(dāng)發(fā)布Inq(1)指令時(shí)生成的Inq(1)數(shù)據(jù)被發(fā)送到多讀取器/寫入器2。當(dāng)發(fā)布Inq(1)指令時(shí),從XXX2返回VPD,而不將返回?cái)?shù)據(jù)添加到VPD上。因此,將不再講述VPD返回處理。
更為具體地說,在步驟S401中,生成了Inq(1)數(shù)據(jù),其中“0xE2”作為頁碼被描述在字節(jié)2的區(qū)域中,并且“0x18”被描述在分配長度區(qū)域。在步驟S401中發(fā)布的Inq(1)指令是請求指令,用于設(shè)置位于對應(yīng)于由根據(jù)表7的“0x90”所示的字符串號碼的字符串存儲區(qū)域的頭部中的指針。該請求指令被發(fā)布到多讀取器/寫入器2。該指針表示指示器,用于指示存儲步驟S402中所分段的字符的位置,如后所述。
在步驟S402,對字符進(jìn)行分段的順序是從表示存儲在PC3的RAM43中的時(shí)間或消息的字符串?dāng)?shù)據(jù)的上部開始的。在步驟S402中分段的字符是否為結(jié)束字符,是由CPU41來判斷的(S403)。該處理是根據(jù)表示分段字符的數(shù)據(jù)是否為“0x00”來判斷的。由于“0x00”不表示字符,因此如果判斷該數(shù)據(jù)為“0x00”,則所分段的字符被判斷為結(jié)束字符。當(dāng)分段的字符被判斷為結(jié)束字符時(shí),執(zhí)行進(jìn)行到步驟S406。如果判斷分段的字符不是結(jié)束字符時(shí),執(zhí)行進(jìn)行到步驟S404。
當(dāng)執(zhí)行進(jìn)行到步驟S404時(shí),發(fā)布Inq(1)指令并且生成Inq(1)數(shù)據(jù),其中“0xE2”被描述為頁碼,并且“輸出字符”被描述在分配長度區(qū)域中。所生成的Inq(1)數(shù)據(jù)被發(fā)送到多讀取器/寫入器2。輸出字符表示在步驟S402中分段的字符,例如用ASCII碼表示的數(shù)據(jù)。
在發(fā)送Inq(1)數(shù)據(jù)之后,字符數(shù)據(jù)的分段位置被設(shè)置為下一個(gè)字符(S405)。然后從步驟S402開始重復(fù)該程序。當(dāng)執(zhí)行進(jìn)行到步驟S406時(shí),發(fā)布Inq(1)指令并且生成Inq(1)數(shù)據(jù),其中“0xE2”在字節(jié)2的區(qū)域中被描述為頁碼,并且“0x17”被描述在分配長度區(qū)域中。這是一個(gè)請求指令,以用于從存儲了最后一個(gè)字符(結(jié)束字符)的區(qū)域開始用“0x00”來填充所有的位區(qū)域。換句話說,這是一個(gè)請求指令,以用于將“0x00”附加到被發(fā)送到多讀取器/寫入器2并且被存儲到RAM29中以便將所存儲的數(shù)據(jù)與預(yù)定長度(例如128字節(jié))的位數(shù)據(jù)相對齊的數(shù)據(jù)的末尾。
當(dāng)通過發(fā)送處理的方式來發(fā)送數(shù)據(jù)時(shí)(S307),所發(fā)送的數(shù)據(jù)被多讀取器/寫入器2接收,并且所接收的數(shù)據(jù)被存儲到RAM29中(S308)。在實(shí)踐中,每一次發(fā)送在步驟S406(參考圖8)中被分段的字符時(shí),其字符數(shù)據(jù)被依次存儲到RAM29中。
在發(fā)送處理之后(S307),在步驟S309中,PC3再次發(fā)布Inq(1)指令。在這種情況下生成的Inq(1)數(shù)據(jù)被發(fā)送到多讀取器/寫入器2(S309)。在這種情況下生成的Inq(1)數(shù)據(jù)如表9所示。如表9所示,“0xE0”被描述在字節(jié)2的區(qū)域中,并且“0x11”被描述在分配長度區(qū)域中。從表6中可以知道,所發(fā)布的Inq(1)指令是請求指令,用于將存儲在對應(yīng)于由待發(fā)送的下一個(gè)數(shù)據(jù)所示號碼的一個(gè)字符串號碼的字符串存儲區(qū)域(RAM29中的存儲區(qū)域)中的數(shù)據(jù)傳遞到多讀取器/寫入器2的液晶顯示器21上。
表9Inq(1)數(shù)據(jù)(查詢數(shù)據(jù),EVPD=1) 之后,再次發(fā)布Inq(1)指令。Inq(1)數(shù)據(jù)被發(fā)送到多讀取器/寫入器2,其中“0xE0”在字節(jié)2的區(qū)域中被描述為頁碼,并且字符數(shù)據(jù)在字節(jié)2的區(qū)域中被描述為頁碼,并且字符數(shù)據(jù)被描述在分配長度區(qū)域中(S310)。當(dāng)Inq(1)數(shù)據(jù)被多讀取器/寫入器2所讀取時(shí),存儲在對應(yīng)于在步驟S310中所發(fā)送的字符串編號的字符串存儲區(qū)域中的接收數(shù)據(jù)(字符數(shù)據(jù))被CPU41所讀取,并且接收數(shù)據(jù)被傳遞到液晶顯示器21。從而使來自PC3的數(shù)據(jù)顯示在液晶顯示器21上。
接下來,使用圖9的流程圖來講述用于判斷是否必須改變顯示內(nèi)容的判斷處理(S6)。判斷處理是由PC3的CPU41來執(zhí)行的。該處理從步驟S501開始。
在步驟S501中,與步驟S301一樣,發(fā)布了Inq(1)指令。在這種情況下生成的Inq(1)數(shù)據(jù)被發(fā)送到多讀取器/寫入器2,以檢測選擇器開關(guān)22的位置。在步驟S502中,判斷了開關(guān)位置是否發(fā)生改變。這一處理是通過事先將在步驟S301中檢測的開關(guān)位置存儲到RAM29中并且將所存儲的開關(guān)位置信息與在步驟S501中檢測的開關(guān)位置進(jìn)行比較來進(jìn)行的。當(dāng)判斷已經(jīng)通過用戶的操作改變了開關(guān)接觸點(diǎn)以切換開關(guān)時(shí),則判斷必須改變顯示內(nèi)容(S507)。否則,在步驟S502中讀取存儲在RAM29中的開關(guān)位置信息,并且證實(shí)了當(dāng)前的開關(guān)位置。
如果當(dāng)前的開關(guān)位置是在接觸點(diǎn)A或在時(shí)鐘一側(cè),則執(zhí)行進(jìn)行到步驟S506。這里,根據(jù)PC3的時(shí)鐘功能來判斷自從在步驟S305中生成時(shí)鐘數(shù)據(jù)開始是否已經(jīng)發(fā)生分鐘時(shí)間改變。如果判斷時(shí)間已經(jīng)發(fā)生改變,則判斷顯示內(nèi)容必須發(fā)生改變(S507)。否則,判斷不需要改變顯示內(nèi)容(S505)。
如果當(dāng)前開關(guān)位置是在接觸點(diǎn)B或在消息一側(cè),則執(zhí)行進(jìn)行到步驟S504。這里,根據(jù)PC3的時(shí)鐘功能來判斷自從在步驟S305中生成時(shí)鐘數(shù)據(jù)開始是否已經(jīng)發(fā)生分鐘時(shí)間改變。如果判斷時(shí)間已經(jīng)發(fā)生改變,則判斷顯示內(nèi)容必須發(fā)生改變(S507)。否則,判斷不需要改變顯示內(nèi)容(S505)。
接下來,使用圖10的流程圖來講述顯示擦除處理(S7)。該處理從步驟S601開始。
如果判斷在步驟S5中輸入了結(jié)束指令(參考圖4),則在步驟S601中發(fā)布Inq(1)指令。在這種情況下生成的Inq(1)數(shù)據(jù)被發(fā)送到多讀取器/寫入器2(S601)。在這種情況下生成的Inq(1)數(shù)據(jù)中,“0xE0”被描述在字節(jié)2的區(qū)域中,并且“0x11”被描述在分配長度區(qū)域中。從表6中可以知道,所發(fā)布的Inq(1)指令是請求指令,用于將存儲在由待發(fā)送的下一個(gè)數(shù)據(jù)所示的一個(gè)字符串號碼的字符串存儲區(qū)域中的數(shù)據(jù)傳遞到多讀取器/寫入器2的液晶顯示器21上。在步驟S602,發(fā)布了Inq(1)指令。生成了Inq(1)數(shù)據(jù)并且進(jìn)行了發(fā)送,其中“0xE0”被描述在字節(jié)2的區(qū)域中,并且“0x80”被描述在分配長度區(qū)域中。由“0x80”所表示的一個(gè)字符串號碼的字符串存儲區(qū)域事先被保留為空白數(shù)據(jù)。從而使多讀取器/寫入器2的CPU27將由“0x80”所表示的一個(gè)字符串號碼的字符串存儲區(qū)域中的空白數(shù)據(jù)傳遞到液晶顯示器21上,并且擦除其顯示內(nèi)容。
在該實(shí)施例中根據(jù)上述程序來執(zhí)行數(shù)據(jù)通信。例如,甚至在用其他東西來代替存儲卡的情況下,也可以將來自PC3的時(shí)鐘數(shù)據(jù)和消息數(shù)據(jù)傳遞到多讀取器/寫入器2,同時(shí)多讀取器/寫入器2保持它的替代信息。還可以將位于選擇器開關(guān)上的開關(guān)位置信息從多讀取器/寫入器2傳遞到PC3。甚至在多讀取器/寫入器2處于未準(zhǔn)備好的狀態(tài)下,也能保證PC3和多讀取器/寫入器2之間的數(shù)據(jù)通信,其中來自PC3的SCSI指令由于沒有為多讀取器/寫入器安裝驅(qū)動軟件而被拒絕。盡管在該實(shí)施例中將時(shí)鐘數(shù)據(jù)、消息數(shù)據(jù)和開關(guān)位置信息描述為通信數(shù)據(jù),但是通信數(shù)據(jù)并不僅限于此。
盡管在第一實(shí)施例中將作為獨(dú)立設(shè)備的多讀取器/寫入器2描述為外設(shè)的例子,但是在第二實(shí)施例中描述的是使用了圖11所示的多功能設(shè)備(MFD)來作為外設(shè)的通信系統(tǒng)。圖11是多功能設(shè)備80的結(jié)構(gòu)性外部視圖。
如圖11所示,多功能設(shè)備80完整情況下包括有位于下部的打印機(jī)82,位于打印機(jī)82上方的掃描儀83,裝備有ADF86的手稿封面86,位于設(shè)備上表面的前端的操作面板85,以及所分布的用于暴露出位于設(shè)備前表面上的插槽的多讀取器/寫入器88,并且具有打印機(jī)功能,掃描儀功能和傳真機(jī)功能。
多功能設(shè)備80連接到主要在第一實(shí)施例中描述的PC3(參考圖3),并且根據(jù)包括有從PC3發(fā)送來的圖像數(shù)據(jù)和文檔數(shù)據(jù)的打印數(shù)據(jù)來將圖像或文檔記錄在位于打印機(jī)82上的記錄紙上。打印機(jī)82可以根據(jù)多讀取器/寫入器88從存儲卡中讀取的打印數(shù)據(jù)來將圖像或文檔記錄在記錄紙上。進(jìn)而,打印機(jī)82作為讀取器/寫入器來工作,以執(zhí)行與插入到多讀取器/寫入器88中的存儲卡之間的數(shù)據(jù)通信。打印機(jī)82還通過掃描儀83將圖像數(shù)據(jù)發(fā)送到PC3,或形成由掃描儀83所讀取的圖像的拷貝。
如圖12所示,多功能設(shè)備80的多讀取器/寫入器88包括第一插槽16、第二插槽17、第三插槽18和第四插槽19。每一個(gè)插槽的配置和功能以及插入到每一個(gè)插槽的存儲卡與第一實(shí)施例中的多讀取器/寫入器2上面的一樣,只是第三插槽18和第四插槽19被集成到一塊了。多讀取器/寫入器88包括液晶顯示器21和位于其分布有插槽的前端表面上的選擇器開關(guān)22。液晶顯示器21的結(jié)構(gòu)和功能以及選擇器開關(guān)22與第一實(shí)施例中的一樣。因此,與第一實(shí)施例中相同的組件被賦予與第一實(shí)施例中相同的標(biāo)志,并且省略了對它的詳細(xì)描述。
這種結(jié)構(gòu)的多功能設(shè)備80和PC3相互連接以提供一個(gè)與第一實(shí)施例中相類似的通信系統(tǒng)。甚至在多功能設(shè)備80處于未準(zhǔn)備好的狀態(tài)下,也能保證PC3和多功能設(shè)備80之間的數(shù)據(jù)通信。
第一和第二實(shí)施例只是本發(fā)明的一些例子,只要不偏離本發(fā)明的精神主旨和范圍,可以對其進(jìn)行修訂和更改。
根據(jù)這些方面,當(dāng)接收到查詢數(shù)據(jù)時(shí),外設(shè)根據(jù)查詢數(shù)據(jù)的內(nèi)容,將VPD(重要的產(chǎn)品數(shù)據(jù))返回給信息處理設(shè)備。在返回VPD之前通過將VPD寫入到從外設(shè)到信息處理設(shè)備的自由區(qū),從而保證了從外設(shè)到信息處理設(shè)備的數(shù)據(jù)傳遞。
根據(jù)這些方面,當(dāng)前的SCSI標(biāo)準(zhǔn)規(guī)定了EVPD區(qū)域是由單個(gè)位串組成的。根據(jù)SCSI標(biāo)準(zhǔn),在獲得外設(shè)的配置信息之前將EVPD區(qū)域設(shè)置為“0”。SCSI標(biāo)準(zhǔn)講到,如果將EVPD區(qū)域設(shè)置為“1”,則可選的特征起作用,以便將VPD信息從外設(shè)傳遞到信息處理設(shè)備。不過,經(jīng)驗(yàn)上認(rèn)為,在實(shí)際中很少使用可選的特征。本發(fā)明在將EVPD區(qū)域設(shè)置為“1”的情況下,將通信數(shù)據(jù)添加到自由區(qū)。從而區(qū)分出通過使用查詢數(shù)據(jù)來獲得外設(shè)的配置信息的情況和進(jìn)行數(shù)據(jù)通信的情況。
根據(jù)這些方面,當(dāng)前的SCSI標(biāo)準(zhǔn)規(guī)定了分配長度區(qū)域是由8位字串或16位字串組成的。
該區(qū)域描述了用于將數(shù)據(jù)存儲到被插入到外設(shè)中的記錄介質(zhì)中的存儲區(qū)域的數(shù)據(jù)長度。該區(qū)域與其他區(qū)域相比具有較大的位寬度,并且可以被修訂,因此優(yōu)選情況下作為用于添加通信數(shù)據(jù)的區(qū)域。
根據(jù)這些方面,例如,如果分配長度數(shù)據(jù)是8位字串,則這里描述的最大數(shù)值信息用十進(jìn)制形式是(255)10,用16進(jìn)制形式是(0xFF)16。如果被分配給記錄介質(zhì)的分配長度是一個(gè)比(255)10較小的數(shù)值,則不使用比該數(shù)值大的數(shù)值來作為表示分配長度的信息。優(yōu)選情況下這一未被使用的區(qū)域被用作自由區(qū)。
根據(jù)這些方面,例如,如果分配長度數(shù)據(jù)是8位字串,并且外設(shè)的分配長度被預(yù)先設(shè)置為十進(jìn)制形式的(127)10,則(127)10可以被表示為七個(gè)比特位,因此使用分配長度區(qū)域的七個(gè)比特位來表示(127)10。其余的一個(gè)比特位未被使用。在這種情況下,通過有效地使用剩余的一個(gè)比特位,可以在分配長度區(qū)域中保留有最大為七個(gè)比特的自由區(qū)。
一般地,文件系統(tǒng)和記錄介質(zhì)之間的數(shù)據(jù)通信,也就是說,文件系統(tǒng)和外設(shè)之間的通信在進(jìn)行中時(shí),其他應(yīng)用程序與外設(shè)之間的通信被禁止,除非通信結(jié)束。這是因?yàn)橄到y(tǒng)設(shè)計(jì)的原理是由其他應(yīng)用程序發(fā)布的指令不會被外設(shè)所接受,從而避免了通信進(jìn)行中的錯(cuò)誤。這種情況下的例外是根據(jù)SCSI標(biāo)準(zhǔn)的規(guī)定由外設(shè)所接受的查詢指令。通過發(fā)送/接收帶有添加到/從外設(shè)的通信數(shù)據(jù)的查詢數(shù)據(jù),可以用其他應(yīng)用程序來執(zhí)行與外設(shè)的數(shù)據(jù)通信,甚至在文件系統(tǒng)和外設(shè)之間進(jìn)行通信的情況下。
權(quán)利要求
1.一種通信系統(tǒng),用于根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行數(shù)據(jù)通信,該通信系統(tǒng)包括外設(shè),執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取的至少一個(gè);以及信息處理設(shè)備,連接到外設(shè),包括OS內(nèi)核;添加單元,將通信數(shù)據(jù)添加到通過將查詢指令發(fā)布到OS內(nèi)核來生成的查詢數(shù)據(jù)的自由區(qū);以及發(fā)送單元,將查詢數(shù)據(jù)發(fā)送到包括有由添加單元所添加的通信數(shù)據(jù)的外設(shè),其中外設(shè)包括接收單元,接收通過發(fā)送單元所發(fā)送的查詢數(shù)據(jù);以及提取單元,提取添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù)。
2.如權(quán)利要求1所述的通信系統(tǒng),其中外設(shè)包括返回單元,將在接收到查詢數(shù)據(jù)時(shí)生成的對應(yīng)于通信數(shù)據(jù)的返回?cái)?shù)據(jù)寫入到位于外設(shè)上的VPD中,并且將VPD返回到信息處理設(shè)備中。
3.如權(quán)利要求1所述的通信系統(tǒng),其中在將查詢數(shù)據(jù)的單比特位字串的EVPD區(qū)域設(shè)置為“1”的情況下,自由添加單元將通信數(shù)據(jù)添加到自由區(qū)中。
4.如權(quán)利要求1所述的通信系統(tǒng),其中自由區(qū)被保留在查詢數(shù)據(jù)的分配長度區(qū)域中。
5.如權(quán)利要求4所述的通信系統(tǒng),其中被分配給外設(shè)上的記錄介質(zhì)的分配長度被預(yù)先設(shè)置為可以在分配長度區(qū)域中描述的最大字節(jié)數(shù)。
6.如權(quán)利要求4所述的通信系統(tǒng),其中在分配長度區(qū)域包括有n位字串的情況下,被分配給記錄介質(zhì)的分配長度被預(yù)先設(shè)置為表示成等于或小于(n-1)位字串的字節(jié)數(shù)。
7.如權(quán)利要求1所述的通信系統(tǒng),其中如果應(yīng)用程序和文件系統(tǒng)是可操作的,其中由信息處理設(shè)備通過占用與外設(shè)之間基于SCSI指令的數(shù)據(jù)通信來執(zhí)行該應(yīng)用程序,該文件系統(tǒng)管理插入到外設(shè)中的記錄介質(zhì)中的數(shù)據(jù),則當(dāng)文件系統(tǒng)正在管理記錄介質(zhì)中的數(shù)據(jù)時(shí),添加單元將通信數(shù)據(jù)添加到當(dāng)通過應(yīng)用程序來發(fā)布查詢指令時(shí)所生成的查詢數(shù)據(jù)中被事先保留的自由區(qū)中。
8.如權(quán)利要求1所述的通信系統(tǒng),其中外設(shè)和信息處理設(shè)備經(jīng)由USB相連接。
9.一種信息處理設(shè)備,包括OS內(nèi)核;添加單元,將通信數(shù)據(jù)添加到通過將查詢指令發(fā)布到OS內(nèi)核來生成的查詢數(shù)據(jù)的自由區(qū);以及發(fā)送單元,將查詢數(shù)據(jù)發(fā)送到包括有由添加單元所添加的通信數(shù)據(jù)的外設(shè),其中信息處理設(shè)備連接到執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取的至少一個(gè)的外設(shè),并且信息處理設(shè)備根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行與外設(shè)的數(shù)據(jù)通信。
10.一種外設(shè),包括接收單元,接收包括有被添加到自由區(qū)的通信數(shù)據(jù)并且通過信息處理設(shè)備進(jìn)行發(fā)送的查詢數(shù)據(jù);以及提取單元,提取被添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù),其中外設(shè)連接到信息處理設(shè)備,執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取的至少一個(gè)并且根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行與信息處理設(shè)備的數(shù)據(jù)通信。
11.如權(quán)利要求10所述的外設(shè),進(jìn)一步包括返回單元,將在接收到查詢數(shù)據(jù)時(shí)生成的對應(yīng)于通信數(shù)據(jù)的返回?cái)?shù)據(jù)寫入到位于外設(shè)上的VPD中,然后將VPD返回到信息處理設(shè)備。
12.如權(quán)利要求10所述的外設(shè),進(jìn)一步包括USB連接單元,經(jīng)由USB連接到信息處理設(shè)備。
13.一種通信方法,根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行在執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取的至少一個(gè)的外設(shè)與連接到外設(shè)的信息處理設(shè)備之間的數(shù)據(jù)通信,該通信方法包括將通信數(shù)據(jù)添加到通過將查詢指令發(fā)布到信息處理設(shè)備的OS內(nèi)核來生成的查詢數(shù)據(jù)的自由區(qū);將查詢數(shù)據(jù)發(fā)送到包括有通信數(shù)據(jù)的外設(shè);接收所發(fā)送的查詢數(shù)據(jù);以及提取被添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù)。
全文摘要
一種通信系統(tǒng),用于根據(jù)在SCSI標(biāo)準(zhǔn)中所定義的SCSI指令來執(zhí)行數(shù)據(jù)通信,該通信系統(tǒng)包括外設(shè),執(zhí)行到/從插入到插槽的記錄介質(zhì)的寫入和讀取操作的至少一個(gè);以及信息處理設(shè)備,連接到外設(shè),包括OS內(nèi)核;添加單元,將通信數(shù)據(jù)添加到通過將查詢指令發(fā)布到OS內(nèi)核來生成的查詢數(shù)據(jù)的自由區(qū);以及發(fā)送單元,將查詢數(shù)據(jù)發(fā)送到包括有由添加單元所添加的通信數(shù)據(jù)的外設(shè),其中外設(shè)包括接收單元,接收通過發(fā)送單元所發(fā)送的查詢數(shù)據(jù);以及提取單元,提取添加到所接收的查詢數(shù)據(jù)的通信數(shù)據(jù)。
文檔編號G06F3/08GK1936821SQ20061013895
公開日2007年3月28日 申請日期2006年9月20日 優(yōu)先權(quán)日2005年9月20日
發(fā)明者宇野文敏 申請人:兄弟工業(yè)株式會社