亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

通信裝置、通信方法以及通信程序的制作方法

文檔序號:7550373閱讀:111來源:國知局
專利名稱:通信裝置、通信方法以及通信程序的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及進(jìn)行通信的通信裝置、通信方法以及通信程序。
背景技術(shù)
以往,存在在移動終端等終端裝置一邊進(jìn)行數(shù)據(jù)共享一邊進(jìn)行分散處理的技術(shù)。例如作為多個裝置共享數(shù)據(jù)的技術(shù),例如公開有如下技術(shù),即通過無線連接來連接服務(wù)器側(cè)終端和成為客戶端側(cè)的移動終端,通過共享數(shù)據(jù),有效利用移動終端內(nèi)的被限制的保存區(qū)域。(例如參照下述專利文獻(xiàn)I。)。另外,作為共享數(shù)據(jù)的其它的技術(shù),例如公開有如下技術(shù),即在利用移動終端共享數(shù)據(jù)時,不進(jìn)行公開請求而實現(xiàn)數(shù)據(jù)文件的共享化,減輕數(shù)據(jù)共享所帶來的利用者的負(fù)擔(dān)。(例如參照下述專利文獻(xiàn)2。)。另外,作為其它的技術(shù),例如公開有如下的技術(shù),即在將程序代碼轉(zhuǎn)送至其他的核時,使具有對是否進(jìn)行數(shù)據(jù)轉(zhuǎn)送進(jìn)行判斷的區(qū)別,從而通過發(fā)送起動時請求的程序代碼,來縮短程序的起動時間。(例如參照下述專利文獻(xiàn)3。)。另外,作為控制共享的數(shù)據(jù)轉(zhuǎn)送的技術(shù),例如公開有如下技術(shù),即將分散共享存儲器的區(qū)域內(nèi)的空置區(qū)域追加分配至分散共享存儲器的不足較多的區(qū)域。(例如參照下述專利文獻(xiàn)4。)。另外,針對多個裝置的數(shù)據(jù)的發(fā)布方法,公開有如下技術(shù),S卩服務(wù)器針對多個控制裝置在線路、裝置等異常時中斷數(shù)據(jù)的發(fā)布,在正常時或者定期地再次開始數(shù)據(jù)的發(fā)布。
(例如參照下述專利文獻(xiàn)5。)。
專利文獻(xiàn)I :日本特開2004 - 260274號公報
專利文獻(xiàn)2:日本特開2008 - 250572號公報
專利文獻(xiàn)3:國際公開第2008 / 001671號小冊子
專利文獻(xiàn)4:日本特開2008 - 305201號公報
專利文獻(xiàn)5:日本特開2001 - 325007號公報
然而,在上述的現(xiàn)有技術(shù)中,在利用專利文獻(xiàn)I 專利文獻(xiàn)5所涉及的技術(shù)進(jìn)行通
信時,由于形成文件,所以在使小規(guī)模的數(shù)據(jù)頻繁地相互通信的情況下,存在文件的形成以及展開的處理成為分散處理中的系統(tǒng)開銷的問題。

發(fā)明內(nèi)容
本發(fā)明的目的在于為了消除上述的現(xiàn)有技術(shù)的問題點,提供不進(jìn)行文件的形成就能夠進(jìn)行通信的通信裝置、通信方法以及通信程序。為了解決上述的課題,實現(xiàn)目的,公開的通信裝置能夠控制訪問自身裝置的存儲器的訪問部以及與其他裝置進(jìn)行通信的通信部,檢測從自身裝置內(nèi)產(chǎn)生的訪問請求,判斷檢測出的訪問請求中的訪問對象數(shù)據(jù)的地址是否是被分配至自身裝置的存儲器的地址,基于判斷出的判斷結(jié)果,選擇利用訪問部基于訪問請求訪問自身裝置的存儲器的處理、和利
4用通信部基于訪問請求與其他裝置進(jìn)行通信的處理中的任意一方的處理來執(zhí)行。根據(jù)本通信裝置、通信方法以及通信程序,起到能夠消除通信處理時產(chǎn)生的文件的形成以及展開的處理引起的系統(tǒng)開銷的效果。


圖I是表示實施方式的通信系統(tǒng)100的硬件的框圖。圖2是表示實施方式I所涉及的通信系統(tǒng)100的動作概要的說明圖。圖3是表示實施方式I所涉及的通信系統(tǒng)100的功能的框圖。圖4是表示實施方式I所涉及的通信系統(tǒng)100的存儲器區(qū)域共享處理中的第I動作的說明圖。圖5是表示實施方式I所涉及的通信系統(tǒng)100的存儲器區(qū)域共享處理中的第2動作的說明圖。圖。
圖6是表示在實施方式I所涉及的通信系統(tǒng)100中動態(tài)圖像再生中的說明圖。
圖7是表示在實施方式I所涉及的通信系統(tǒng)100中游戲應(yīng)用程序的執(zhí)行中的說明
圖8是表示事件表801的存儲內(nèi)容的一個例子的說明圖。
圖9是表示實施方式I所涉及的存儲器區(qū)域共享開始處理、存儲器區(qū)域共享結(jié)束處理的流程圖。圖10是表示實施方式I所涉及的存儲器區(qū)域共享處理的流程圖。圖11是表示實施方式I所涉及的通信系統(tǒng)100的課題的說明圖。圖12是表示實施方式2所涉及的通信系統(tǒng)100的動作概要的說明圖。圖13是表示實施方式2所涉及的通信系統(tǒng)100的功能的框圖。圖14是表示實施方式2所涉及的通信系統(tǒng)100的存儲器共享處理中的切斷時的動作概要的說明圖。圖15是表示實施方式2所涉及的通信系統(tǒng)100的存儲器共享處理中的再連接時的動作概要的說明圖。圖16是表示在實施方式2所涉及的通信系統(tǒng)100中游戲應(yīng)用程序的執(zhí)行中的狀態(tài)的說明圖。圖17是表示實施方式2所涉及的I / O日志的一個例子的說明圖。圖18是表示實施方式2所涉及的分散開始處理、分散結(jié)束處理的流程圖。圖19A是表示實施方式2所涉及的分散處理的流程圖(其I)。圖19B是表示實施方式2所涉及的分散處理的流程圖(其2)。圖19C是表示實施方式2所涉及的分散處理的流程圖(其3)。圖19D是表示實施方式2所涉及的分散處理的流程圖(其4)。
具體實施例方式以下參照附圖,對本發(fā)明所涉及的通信裝置、通信方法以及通信程序的優(yōu)選實施方式進(jìn)行詳細(xì)說明。(通信裝置的硬件)
圖I是表示實施方式的通信系統(tǒng)100的硬件的框圖。在圖I中,通信系統(tǒng)100包括通信裝置101 # O和通信裝置101 # I。作為通信裝置101的具體例考慮小型的移動終端裝置等。通信裝置101 # O包括CPU102 # O,ROM (Read Only Memory :只讀存儲器)103
#O、RAM (RandomAccess Memory :隨機(jī)存取存儲器)103 # O。另外,通信裝置101 # O包括快閃R0M105 # O、快閃ROM控制器106 # O、快閃R0M107 # O。另外,通信裝置101 # O包括顯示器108 # 0、I / F (Interface :接口)109 # O、鍵盤110 # O作為與用戶、其他設(shè)備的輸入輸出裝置。另外,各部通過總線111 # O分別連接。另外,通信裝置101 # I也包括與通信裝置101 # O相同的硬件。具體而言,通信裝置 101 # I 包括 CPU102 # I、R0M103 # I、RAM104 # I、總線 111 # I。另外,通信裝置101 # I也可以包括快閃R0M105 # I、快閃ROM控制器106 # I、快閃R0M107 # I、顯示器108 #1,1/ F109# I、鍵盤 110# I。另外,對于快閃R0M105 顯示器108、鍵盤110而言,也可以是存在于通信裝置101 # O或通信裝置101 # I的任意一方的狀態(tài)。例如,也可以采取通信裝置101 # O包括顯示器108 # O,通信裝置101 # I包括快閃R0M105 # I 快閃R0M107 # I、鍵盤110 # I這樣的方式。另外,還可以采取特定的硬件存在于通信裝置101 # O和通信裝置101 # I的雙方,除了特定的硬件以外的快閃R0M105 顯示器108 # O、鍵盤110存在于任意一方的方式。例如,通信裝置101 # O和通信裝置101 # I也可以是利用2個裝置作為I臺處理的分離式的移動終端裝置。在為分離式的移動終端裝置的情況下,也可以采取通信裝置101 # O包括具有觸摸面板的功能的顯示器108 # 0,通信裝置101 # I包括鍵盤110 # I的方式。以下,對通信裝置101 # O內(nèi)的硬件進(jìn)行說明,但通信裝置101 # I內(nèi)的硬件也具有與通信裝置101 # O內(nèi)的硬件相同的功能。這里,CPU102 # O掌管通信裝置101 # O的整體控制。此外,CPU102 # O可以是包括多個CPU的多核處理器。所謂多核處理器系統(tǒng)是包括搭載了多個核的處理器的計算機(jī)的系統(tǒng)。R0M103 # O存儲啟動程序等程序。RAM104 # O被作為CPU102 # O的工作區(qū)域使用。快閃R0M105 # O存儲OS (Operating System :操作系統(tǒng))等系統(tǒng)軟件、應(yīng)用程序軟件等。例如,在更新OS的情況下,通信裝置101 # O通過I / F109 # O接收新的OS,將存儲于快閃R0M105 # O的原來的OS更新成接收的新的OS。快閃ROM控制器106 # O根據(jù)CPU102 # O的控制,控制針對快閃R0M107 # O的數(shù)據(jù)的讀/寫。快閃R0M107 # O存儲在快閃ROM控制器106 # O的控制下寫入的數(shù)據(jù)。作為數(shù)據(jù)的具體例子,有使用通信裝置101 # O的用戶通過I / F109 # O獲取的圖像數(shù)據(jù)、影像數(shù)據(jù)等。快閃R0M107 # O例如能夠采用存儲卡、SD卡等。顯示器108 # O顯示光標(biāo)、圖標(biāo)或工具箱以及文檔、圖像、功能信息等數(shù)據(jù)。該顯示器108 # O例如能夠采用TFT液晶顯示器等。I / F109 # O通過作為無線LAN的通信方式之一的點對點通信與通信裝置101
#I進(jìn)行直接通信。另外,I / F109 # O也可以通過通信線路與LAN(Local Area Network 局域網(wǎng))、WAN (Wide Area Network :廣域網(wǎng))、因特網(wǎng)等網(wǎng)絡(luò)連接,經(jīng)由網(wǎng)絡(luò)與其他的裝置連接。而且,I / F109 # O掌管網(wǎng)絡(luò)和內(nèi)部的接口,控制來自外部裝置的數(shù)據(jù)的輸入輸出。I / F109 # O例如能夠采用調(diào)制解調(diào)器、LAN適配器等。另外,本實施方式的通信方法優(yōu)選假定無線通信,但也可以通過有線與其他裝置進(jìn)行數(shù)據(jù)的輸入輸出。鍵盤110 # O具有用于數(shù)字、各種指示等的輸入的鍵,進(jìn)行數(shù)據(jù)的輸入。另外,鍵盤110 # O也可以是觸摸面板式的輸入板、數(shù)字鍵等。圖2是表示實施方式I所涉及的通信系統(tǒng)100的動作概要的說明圖??刂仆ㄐ叛b置101 # O的CPU102 # O經(jīng)由總線111 # O將數(shù)據(jù)202 # O儲存于MEM201 # O。所謂MEM201 # O是作為CPU102 # O的工作區(qū)域使用的RAM等存儲裝置,具體而言是RAM104 # O等硬件。另外,通信裝置101 # O作為軟件執(zhí)行0S203 # O、存儲器驅(qū)動程序204 # O、通信驅(qū)動程序205 # O、文件系統(tǒng)206 # O。0S203 # O是控制通信裝置101 # O的程序。具體而言,0S203 # O提供應(yīng)用程序軟件使用的驅(qū)動程序。另外,0S203 # O為了使應(yīng)用程序軟件訪問成為輔助存儲裝置的快閃R0M107等而提供文件系統(tǒng)206 # O。存儲器驅(qū)動程序204 # O是0S203 # O提供的驅(qū)動程序之一,具有訪問MEM201 # O的功能。通信驅(qū)動程序205 # O也是0S203 # O提供的驅(qū)動程序之一,具有通過I / F109
#O與通信裝置101 # I通信的功能。文件系統(tǒng)206 # O是0S203 # O提供的功能之一,具有進(jìn)行文件的訪問的功能,該文件是存儲于成為輔助存儲裝置的快閃R0M105 # O、快閃R0M107 # O等的數(shù)據(jù)。例如,通過CPU102 # O將存儲于快閃R0M107的文件讀RAM104 # O中。另外,將被CPU102 # O更新的數(shù)據(jù)作為文件寫入快閃R0M107 # O。在通信裝置101 # I中,控制通信裝置101 # I的CPU102 # I也經(jīng)由總線111 # I將數(shù)據(jù)202 # I存儲于MEM201 # I。另外,包括與通信裝置101 # O相同的軟件。即通信裝置101 # I作為軟件執(zhí)行0S203 # I、存儲器驅(qū)動程序204 # I、通信驅(qū)動程序205 # I、文件系統(tǒng)206 # I。通信系統(tǒng)100利用上述的軟件進(jìn)行數(shù)據(jù)的共享。例如,0S203 # O檢測由通信裝置101 # O的軟件產(chǎn)生的針對數(shù)據(jù)202 # O的訪問請求,判斷數(shù)據(jù)202 # O的訪問目的地是否是MEM201 # O。在圖2的例子中,由于數(shù)據(jù)202 # O被存儲于MEM201 # O內(nèi),所以0S203
#O控制成訪問存儲器驅(qū)動程序204 # O。另外,在利用通信裝置101 # O檢測出針對數(shù)據(jù)202 # I的訪問請求的情況下,0S203 # O判斷數(shù)據(jù)202 # I的訪問目的地是否為MEM201 # O。在圖2的例子中,由于數(shù)據(jù)202 # I未被存儲于MEM201 # O內(nèi),所以0S203 # O將基于向通信驅(qū)動程序205 # O訪問請求的信號與通信裝置101 # I進(jìn)行通信。從通信驅(qū)動程序205 # O接受了信號的通信裝置101 # I通過存儲器驅(qū)動程序204 # I訪問存儲于MEM201 # I內(nèi)的數(shù)據(jù)202 # I。這樣,通過無線通信連接的通信裝置101 # O、通信裝置101 # I經(jīng)由通信驅(qū)動程序205 # O、通信驅(qū)動程序205 # I訪問連接目的地的裝置的存儲器,從而能夠一邊共享數(shù)據(jù)一邊進(jìn)行分散處理。若是現(xiàn)有例所涉及的通信系統(tǒng)100,則在經(jīng)由通信驅(qū)動程序205 # O、通信驅(qū)動程序205 # I前存在文件的形成處理。在本實施方式I所涉及的通信系統(tǒng)100中,由于不進(jìn)行文件處理,所以不伴有文件處理所帶來的系統(tǒng)開銷就能夠進(jìn)行通信處理。
(實施方式I所涉及的通信系統(tǒng)100的功能)接下來,對實施方式I所涉及的通信系統(tǒng)100的功能進(jìn)行說明。圖3是表示實施方式I所涉及的通信系統(tǒng)100的功能的框圖。實施方式I所涉及的通信系統(tǒng)100包括檢測部301、判斷部302、控制部303、訪問部304、通信部305、通信部306、訪問部307、停止部308。對于成為該控制部的功能(檢測部301 停止部308)而言,通過CPU102 # O、CPU102 # I執(zhí)行存儲于存儲裝置的程序來實現(xiàn)該功能。具體而言,存儲裝置例如是圖I所示的R0M103、RAM104、快閃R0M105、快閃R0M107等?;蛘咭部梢越?jīng)由I / F109 # O獲取程序,通過CPU102 # 0.CPU102 # I執(zhí)行獲取的程序來實現(xiàn)該功能。另外,在圖3所示的狀態(tài)下,檢測部301 通信部305被包含于通信裝置101 # O的功能,通信部306 停止部308被包含于通信裝置101 # I的功能,但檢測部301 通信部305也可以被包含于通信裝置101 # I的功能。同樣,通信部306 停止部308也可以被包含于通信裝置101 # O的功能。檢測部301具有檢測從自身裝置內(nèi)產(chǎn)生的訪問請求的功能。訪問請求存在讀入請求和寫入請求。例如,檢測部301檢測由在通信裝置101 # O中正在執(zhí)行的進(jìn)程產(chǎn)生的訪問請求。此外,將檢測出的訪問請求的信息存儲于執(zhí)行檢測部301的CPU的寄存器、存儲器等存儲區(qū)域。例如,在通信裝置101 # O執(zhí)行檢測部301的情況下,將檢測出的訪問請求的信息存儲于CPU102 # O的寄存器、MEM201 # O。判斷部302具有對通過檢測部301檢測出的訪問請求中的訪問對象數(shù)據(jù)的地址是否為被分配至自身裝置的存儲器的地址進(jìn)行判斷的功能。例如,判斷部302對訪問請求中的訪問對象數(shù)據(jù)的地址是否為被分配至通信裝置101 # O的MEM201 # O的地址進(jìn)行判斷。具體而言,假定MEM201 # O內(nèi)的地址范圍是0x00000000 Oxlfffffff 的情況。若訪問請求中的訪問對象數(shù)據(jù)的地址是0x00001000,則由于訪問對象數(shù)據(jù)的地址在MEM201 # O的地址范圍內(nèi),所以判斷部302判斷為是被分配至自身裝置的存儲器的地址。若訪問請求中的訪問對象數(shù)據(jù)的地址是0x20001000,則由于訪問對象數(shù)據(jù)的地址處于MEM201 # O的地址范圍外,所以判斷部302判斷為不是被分配至自身裝置的存儲器的地址。此外,將判斷結(jié)果存儲于執(zhí)行判斷部302的CPU的寄存器、存儲器等存儲區(qū)域。例如,在通信裝置101 # O執(zhí)行判斷部302的情況下,將檢測出的訪問請求的信息存儲于CPU102 # O 的寄存器、MEM201 # O??刂撇?03具有基于通過判斷部302判斷出的判斷結(jié)果,選擇并執(zhí)行訪問部304的處理或者通信部305的處理中任意一方的處理的功能。在選擇了訪問部304的處理的情況下,控制部303使訪問部304基于訪問請求訪問自身裝置的存儲器。在選擇了通信部305的處理的情況下,控制部303使通信部305基于訪問請求與其他裝置進(jìn)行通信。例如,控制部303在通過判斷部302判斷為訪問請求是被分配至MEM201 # O的地址的情況下,選擇訪問部304的處理,使訪問部304訪問MEM201 # O。另外,在通過判斷部302判斷為訪問請求不是分配至MEM201 # O的地址的情況下,選擇通信部305的處理,使通信部305使用I / F109 # O與通信裝置101 # I進(jìn)行通信。訪問部304具有訪問自身裝置的存儲器的功能。具體而言,在通信裝置101 # O中,訪問部304成為存儲器驅(qū)動程序204 # O。此外,將訪問的結(jié)果存儲于執(zhí)行訪問部304的CPU的寄存器。例如,在訪問部304為存儲器驅(qū)動程序204 # O的情況下,被存儲于CPU102
#O的寄存器。通信部305具有與其他裝置通信的功能。具體而言,在通信裝置101 # O中,通信部305成為通信驅(qū)動程序205 # O。此外,將通信的結(jié)果存儲于執(zhí)行通信部305的CPU的寄存器、存儲器。例如,在通信部305為通信驅(qū)動程序205 # O的情況下,被存儲于CPU102
#O的寄存器、MEM201 # O。CPU102 # I的功能所包含的通信部306具有與通信部305相同的功能,訪問部307也具有與訪問部304相同的功能。另外,通信部306在通過通信部305接收了訪問請求時,將訪問請求通知給訪問部307。接受了訪問請求的訪問部307基于訪問請求訪問MEM201
#I。停止部308具有在通信部306接收了訪問請求的情況下,基于與在自身裝置中正在執(zhí)行的軟件相關(guān)的執(zhí)行狀態(tài),停止OS的功能。這里,指定的軟件包括進(jìn)程、中斷處理。例如,停止部308在通信部306接收了訪問請求時,在通信裝置101 # I中不存在正在執(zhí)行的進(jìn)程,不與中斷處理對應(yīng)的情況下,使OS為休眠狀態(tài)。圖4是表示實施方式I所涉及的通信系統(tǒng)100的存儲器區(qū)域共享處理中的第I動作的說明圖。第I動作中的通信系統(tǒng)100是進(jìn)行CPU102 # O執(zhí)行進(jìn)程401 # O和進(jìn)程401
#1,CPU102 # I不特別執(zhí)行進(jìn)程這樣的分散處理的狀態(tài)。通信裝置101 # O的顯示器108
#O進(jìn)行基于進(jìn)程401 # O或者進(jìn)程401 # I的描繪,通信裝置101 # I的顯示器108 # I是熄燈狀態(tài)。在圖4的狀態(tài)下,通信裝置101 # O成為主裝置,通信裝置101 # I成為協(xié)裝置,由主裝置利用協(xié)裝置的存儲器區(qū)域。具體而言,通信裝置101 # O將作為連接目的地的通信裝置101 # I的存儲器區(qū)域的MEM201 # I虛擬地作為自身裝置的存儲器區(qū)域進(jìn)行處理。作為虛擬地作為自身裝置的存儲器區(qū)域的方法,通信裝置101 # O針對MEM201
#O以外的地址的訪問,利用通信驅(qū)動程序205 # O發(fā)送訪問命令,通信裝置101 # I經(jīng)由存儲器驅(qū)動程序204 # I進(jìn)行數(shù)據(jù)訪問。由此,存儲器區(qū)域虛擬地增大,所以能夠防止高優(yōu)先級進(jìn)程處理的存儲器上的數(shù)據(jù)的頁調(diào)出。圖5是表示實施方式I所涉及的通信系統(tǒng)100的存儲器區(qū)域共享處理中的第2動作的說明圖。第2動作中的通信系統(tǒng)100是進(jìn)行CPU102 # O執(zhí)行進(jìn)程401 # 0,CPU102 # I執(zhí)行進(jìn)程401 # I這樣的分散處理的狀態(tài)。通信裝置101 # O的顯示器108 # O進(jìn)行基于進(jìn)程401 # O的描繪,通信裝置101 # I的顯示器108 # I進(jìn)行基于進(jìn)程401 # I的描繪。在圖5的狀態(tài)中,通信裝置101 # O也成為主裝置,通信裝置101 # I也成為協(xié)裝置,由主裝置利用協(xié)裝置的存儲器區(qū)域。這樣,在通信系統(tǒng)100利用多個裝置進(jìn)行分散處理的情況下,若數(shù)據(jù)的訪問目的地是連接目的地的裝置的數(shù)據(jù),則自身裝置利用通信驅(qū)動程序發(fā)送訪問命令。通過通信驅(qū)動程序接收了訪問命令的其他裝置經(jīng)由存儲器驅(qū)動程序訪問數(shù)據(jù),將該數(shù)據(jù)再次通過通信驅(qū)動程序發(fā)送至自身裝置。圖6是表示在實施方式I所涉及的通信系統(tǒng)100中動態(tài)圖像再生中的說明圖。圖6中的通信系統(tǒng)100是圖4所示的存儲器區(qū)域共享處理中的第I動作中,通信裝置101 # O執(zhí)行動態(tài)圖像再生處理601和數(shù)據(jù)更新處理602。顯示器108 # O通過動態(tài)圖像再生處理601再生動態(tài)圖像。另外,動態(tài)圖像再生處理601需要高速處理,而數(shù)據(jù)更新處理602不需要高速處理,數(shù)據(jù)更新作業(yè)可以在后臺動作。在圖6的狀態(tài)下,通信裝置101 # O通過將數(shù)據(jù)更新處理602使用的數(shù)據(jù)603 # I存儲于MEM201 # 1,來增加MEM201 # O的空置區(qū)域。因此,通信裝置101 # O能夠防止要求高速處理的動態(tài)圖像再生處理601使用的數(shù)據(jù)603 # O的頁調(diào)出。在發(fā)生了頁調(diào)出的情 況下,由于將數(shù)據(jù)603 # O存儲于訪問速度低的文件系統(tǒng)206 # 0,所以妨礙動態(tài)圖像再生處理601的高速處理。圖7是表示在實施方式I所涉及的通信系統(tǒng)100中游戲應(yīng)用程序的正在執(zhí)行的說明圖。圖7中的通信系統(tǒng)100是圖5所示的存儲器區(qū)域共享處理中的第2動作中,通信裝置101 # O執(zhí)行⑶I處理701 # O和游戲處理702,通信裝置101 # I執(zhí)行⑶I處理701
#I。在圖7的狀態(tài)下,通過將通信裝置101 # O設(shè)為主裝置,將通信裝置101 # I設(shè)為協(xié)裝置,能夠?qū)@示器108 # O、顯示器108 # I作為一個畫面識別顯示游戲處理702。若游戲處理702針對一個畫面進(jìn)行描繪命令,則0S203 # O判斷描繪命令的對象地址是否為MEM201 # O的地址。基于判斷結(jié)果,若描繪命令的對象地址是MEM201 # O的地址,則0S203 # O通過存儲器驅(qū)動程序204 # O訪問MEM201 # O。若描繪命令的對象地址不是MEM201 # O的地址,則0S203 # O通過通信驅(qū)動程序205 # O將訪問請求發(fā)送至通信裝置101 # I。接收了訪問請求的通信驅(qū)動程序205 # I委托存儲器驅(qū)動程序204 # I訪問MEM201 # I,存儲器驅(qū)動程序204 # I訪問MEM201 # I。更詳細(xì)而言,例如假定采用顯示器108 # O、顯示器108 # I的顯示區(qū)域的寬度為320 “像素”,高度為 240 “像素”的 QVGA (Quarter VideoGraphics Array),以 32 位彩色顯示的情況。此時,顯示區(qū)域的數(shù)據(jù)大小成為320X240X4 = 0x4b000 [字節(jié)]。假設(shè)在通信裝置101 # O的MEM201 # O內(nèi)的地址范圍為0x00000000 Oxlfffffff的情況下,將向顯示器108 # O轉(zhuǎn)送的轉(zhuǎn)送區(qū)域設(shè)為0xlffb5000 Oxlfffffff。接著,通信裝置101 # O將向顯示器108 # I轉(zhuǎn)送的轉(zhuǎn)送區(qū)域設(shè)定為虛擬地址0x20000000 0x2004afff。由此,通信系統(tǒng)100能夠虛擬地確保320X480的顯示區(qū)域。由于顯示區(qū)域連續(xù),所以⑶I處理701
#O、⑶I處理701 # I、游戲處理702能夠容易進(jìn)行描繪處理。圖8是表示事件表801的存儲內(nèi)容的一個例子的說明圖。在指示對其他裝置的處理內(nèi)容時,如事件表801那樣準(zhǔn)備執(zhí)行的事件ID,將事件ID通知給其他裝置,從而其他裝置執(zhí)行與事件ID對應(yīng)的處理。事件ID “O” “3”被實施方式I所涉及的通信系統(tǒng)100使用,事件ID “ I ”、“4” “V,被后述的實施方式2所涉及的通信系統(tǒng)100使用。例如,若通信裝置101 # O將事件ID “O”發(fā)送給通信裝置101 # 1,則通信裝置101 # I識別接收了無線的連接請求。同樣,若通信裝置101 # O將事件ID “I”發(fā)送給通信裝置101 # 1,則通信裝置101 # I識別接受了與無線連接的切斷相關(guān)的通知。另外,若通信裝置101 # O將事件ID “4”發(fā)送給通信裝置101 # 1,則通信裝置101 # I識別接收了無線的分散處理的連接請求。另外,通信裝置101也可以在事件ID的發(fā)送時一起發(fā)送其他參數(shù)。例如,若通信裝置101 # O將事件ID “2”和地址發(fā)送給通信裝置101 # 1,則通信裝置101 # I識別接
10收了與訪問目的地的地址為自身裝置的物理地址的范圍以外時的讀命令相關(guān)的通知。而且通過參數(shù)的解析,通信裝置101 # I將參數(shù)的地址識別為訪問目的地的地址。同樣,若通信裝置101 # O向通信裝置101 # I發(fā)送事件ID“3”、地址和寫入對象數(shù)據(jù),則識別接收了與訪問目的地的地址為自身裝置的物理地址的范圍以外時的寫命令相關(guān)的通知。而且通過參數(shù)的解析,通信裝置101 # I將參數(shù)的地址識別為訪問目的地的地址,將寫入對象數(shù)據(jù)識別為寫入訪問目的地的地址的數(shù)據(jù)。另外,若通信裝置101 # O將事件ID“5”、地址和更新后的值發(fā)送給通信裝置101
#1,則通信裝置101 # I識別接收了將對自身裝置固有的數(shù)據(jù)的寫訪問后的、更新的值經(jīng)由通信驅(qū)動程序向其他裝置的通知。而且通過參數(shù)的解析,通信裝置101 # I將參數(shù)的地址識別為進(jìn)行了寫訪問的地址,將作為參數(shù)的更新后的值識別為對進(jìn)行了寫訪問的地址寫入的值。另外,若通信裝置101 # O將事件ID “6”和地址發(fā)送給通信裝置101 # 1,則通信裝置101 # I識別接收了經(jīng)由通信驅(qū)動程序的、向其他裝置轉(zhuǎn)送的對象數(shù)據(jù)的轉(zhuǎn)送請求。而且通過參數(shù)的解析,通信裝置101 # I識別為參數(shù)的地址是有轉(zhuǎn)送請求的對象數(shù)據(jù)的地址。另外,若通信裝置101 # O將事件ID“7”和I / O日志發(fā)送給通信裝置101 # 1,則通信裝置101 # I識別發(fā)送來了 I / O日志。而且通過參數(shù)的解析,通信裝置101 # I識別為參數(shù)的I/O日志是實際發(fā)送來的I/O日志。圖9是表示實施方式I所涉及的存儲器區(qū)域共享開始處理、存儲器區(qū)域共享結(jié)束處理的流程圖。在圖9所示的存儲器區(qū)域共享開始處理、存儲器區(qū)域共享結(jié)束處理中,假定通信裝置101# O成為主裝置,通信裝置101# I成為協(xié)裝置的狀態(tài)。另外,步驟S901步驟S908、步驟S910的處理表示存儲器區(qū)域共享開始處理,步驟S912步驟S915的處理表示存儲器區(qū)域共享結(jié)束處理。另外,步驟S909、步驟S911的處理表示存儲器區(qū)域共享處理的正在執(zhí)行。通信裝置101 # O根據(jù)正在執(zhí)行的進(jìn)程401 # O等的請求,發(fā)送無線的連接請求(步驟S901),通信裝置101 # I接收連接請求(步驟S902)。發(fā)送了連接請求的通信裝置101 # O待機(jī),直至有連接請求的響應(yīng)。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID “0”,通信裝置101 # I通過事件ID “O”的接收,識別有連接請求的接收。接收了連接請求的通信裝置101 # I判斷是否允許連接請求(步驟S903)。此外,通信裝置101 # I可以總是允許連接請求,也可以根據(jù)通信裝置101 # I的狀態(tài)進(jìn)行判斷。例如,通信裝置101 # I可以設(shè)定若現(xiàn)在執(zhí)行的進(jìn)程數(shù)量在一定以上則負(fù)荷過大來判斷為不允許連接請求?;蛘?,通信裝置101# I也可以將接收的連接請求顯示于顯示器108# 1,由用戶受理連接請求的許可。在不允許連接請求的情況下(步驟S903 :否),通信裝置101 # I將連接NG發(fā)送給通信裝置101 # O (步驟S904),結(jié)束存儲器區(qū)域共享開始處理。在允許連接請求的情況下(步驟S903 :是),通信裝置101 # I判斷是否存在正在執(zhí)行的進(jìn)程(步驟S905)。在不存在正在執(zhí)行的進(jìn)程的情況下(步驟S905 :否),通信裝置101 # I判斷在存儲器區(qū)域共享處理中是否對應(yīng)中斷處理(步驟S906)。在不與中斷處理對應(yīng)的情況下(步驟S906 :否),通信裝置101 # I將0S203 # I轉(zhuǎn)移成休眠狀態(tài)(步驟S907),向通信裝置101 # O發(fā)送連接OK(步驟S908)。此外,在進(jìn)行了步驟S907的處理的情況下,通信系統(tǒng)100成為圖4所示的存儲器區(qū)域共享處理中的第I動作,在未進(jìn)行步驟S907的處理的情況下,通信系統(tǒng)100成為圖5所示的存儲器區(qū)域共享處理中的第2動作。在存在正在執(zhí)行的進(jìn)程的情況下(步驟S905 :是),或者與中斷處理對應(yīng)的情況下(步驟S906 :是),通信裝置101 # I轉(zhuǎn)移至步驟S908的處理,執(zhí)行存儲器區(qū)域共享處理(步驟S909)。利用圖10后述存儲器區(qū)域共享處理的詳細(xì)內(nèi)容。在步驟S904、或者步驟S908接受了響應(yīng)的通信裝置101 # O判斷連接結(jié)果(步驟S910)。在連接結(jié)果為連接NG的情況下(步驟S910 :NG),通信裝置101 # O切斷無線的連接(步驟S915),結(jié)束存儲器區(qū)域共享開始處理。在還沒有響應(yīng)的情況下(步驟S910 :等待響應(yīng)),通信裝置101 # O在一定時間后再次執(zhí)行步驟S910的處理。在連接結(jié)果為連接OK的情況下(步驟S910 :0K),通信裝置101
#O執(zhí)行存儲器區(qū)域共享處理(步驟S911)。存儲器區(qū)域共享處理結(jié)束后,通信裝置101 # O發(fā)送連接的切斷(步驟S912),在轉(zhuǎn)移至步驟S915的處理后,結(jié)束存儲器區(qū)域共享結(jié)束處理。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID“1”,通信裝置101 # I通過事件ID “I”的接收,識別有與連接的切斷相關(guān)的通知的接收。在步驟S912的處理中接受了切斷的通知的通信裝置101 # I判斷0S203 # I是否為休眠狀態(tài)(步驟S913)。在為休眠狀態(tài)的情況下(步驟S913 :是),通信裝置101 # I使0S203 # I恢復(fù)(步驟S914)。在0S203 # I不是休眠狀態(tài)的情況下(步驟S913 :否),或者在步驟S914的處理后,通信裝置101 # I結(jié)束存儲器區(qū)域共享結(jié)束處理。此外,在步驟S908的處理中,通信裝置101 # I也可以通知向通信裝置101 # O提供的存儲器的范圍。例如,在MEM201 # I內(nèi)的地址的范圍為0x00000000 Oxlfffffff 的情況下,通信裝置101 # I將OxlOOOOOOOOxlfffffff作為提供的存儲器的范圍通知給通信裝置101 # O。接受了通知的通信裝置101 # O將0x10000000 Oxlfffffff例如設(shè)定成虛擬地址0x20000000 0x2fffffff。由此,通信裝置101 # O在存儲器區(qū)域共享處理中,在發(fā)行了針對0x20000000 0x2fffffff所包含的地址的訪問請求的情況下,判斷為針對其他裝置的訪問請求。圖10是表示實施方式I所涉及的存儲器區(qū)域共享處理的流程圖。主裝置和協(xié)裝置執(zhí)行存儲器區(qū)域共享處理。在圖10的說明中,假定通信裝置101 # O成為主裝置,由通信裝置101 # O執(zhí)行存儲器區(qū)域共享處理的狀態(tài)。通信裝置101 # O對是否檢測出了存儲器區(qū)域共享處理的結(jié)束請求進(jìn)行判斷(步驟S1001)。在檢測出了結(jié)束請求的情況下(步驟S1001 :是),通信裝置101 # O結(jié)束存儲器區(qū)域共享處理。作為通信裝置101 # O檢測出存儲器區(qū)域共享處理的結(jié)束請求的情況,例如是請求了存儲器區(qū)域共享處理的進(jìn)程401結(jié)束的情況?;蛘?,也可以是通信裝置101 # O檢測出存儲器區(qū)域共享處理中,通信裝置101 # O在一定時間以上未被操作的狀態(tài)的情況?;蛘撸部梢允怯捎脩舭l(fā)行存儲器區(qū)域共享處理的結(jié)束請求,通信裝置101 # O檢測出結(jié)束請求的情況。在未檢測出存儲器區(qū)域共享處理的結(jié)束請求的情況下(步驟S1001 :否),通信裝置101 # O判斷是否檢測出了存儲器訪問的產(chǎn)生(步驟S1002)。在未檢測出存儲器訪問的產(chǎn)生的情況下(步驟S1002 :否),通信裝置101 # O轉(zhuǎn)移至步驟S1001的處理。在檢測出存儲器訪問的產(chǎn)生的情況下(步驟S1002 :是),通信裝置101 # O接著判斷訪問目的地的地址是否為自身裝置的物理地址的區(qū)域(步驟S1003)。此外,在步驟S1003的判斷中,MEM201 # O的區(qū)域包含于物理地址的區(qū)域。另夕卜,若通信裝置101 # O采取在存儲器的地址空間共同存在輸入輸出設(shè)備的地址空間的內(nèi)存映射IO的方式,則輸入輸出設(shè)備的地址也包含于自身裝置的物理地址。在訪問目的地的地址為自身裝置的物理地址的區(qū)域的情況下(步驟S1003 :是),通信裝置101 # O訪問自身裝置的存儲器(步驟S1004),轉(zhuǎn)移至步驟S1001的處理。在不是自身裝置的物理地址的區(qū)域的情況下(步驟S1003 :否),通信裝置101 # O起動通信驅(qū)動程序205 # O (步驟S1005),判斷訪問的種類(步驟S1006)。在訪問的種類是讀訪問的情況下(步驟S1006 :讀訪問),通信裝置101 # O通過通信驅(qū)動程序205 # O將訪問目的地的地址發(fā)送給通信裝置101 # I (步驟S1007)。通信裝置101 # I通過通信驅(qū)動程序205 # O獲取訪問目的地的地址(步驟S1008)。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID “2”和訪問目的地的地址,通信裝置101 # I根據(jù)接收的事件ID “2”,識別接收的內(nèi)容有針對訪問目的地的地址的讀命令請求的接收。獲取了訪問目的地的地址的通信裝置101 # I起動通信驅(qū)動程序205 # I,將從訪問目的地的地址讀入的數(shù)據(jù)發(fā)送給通信裝置101 # O (步驟S1009)。接收了數(shù)據(jù)的通信裝置101 # O將數(shù)據(jù)通知給成為存儲器訪問的產(chǎn)生源的進(jìn)程,轉(zhuǎn)移至步驟S1001的處理。在訪問的種類為寫訪問的情況下(步驟S1006 :寫訪問),通信裝置101 # O通過通信驅(qū)動程序205 # O將訪問目的地的地址以及寫入對象數(shù)據(jù)發(fā)送給通信裝置101 # I (步驟S1010)。通信裝置101 # I通過通信驅(qū)動程序205獲取訪問目的地的地址(步驟SlOll)。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID“3”、訪問目的地的地址和寫入對象數(shù)據(jù)。通信裝置101 # I根據(jù)接收的事件ID “3”,識別接收的內(nèi)容有針對訪問目的地的地址的寫命令請求的接收。獲取了訪問目的地的地址的通信裝置101 # I將寫入對象數(shù)據(jù)寫入訪問目的地的地址(步驟S1012)。另外,在步驟S1007的處理中,發(fā)送了訪問目的地的地址的通信裝置101
#O轉(zhuǎn)移至步驟S1001的處理。如以上說明所示,根據(jù)實施方式I所涉及的通信裝置、通信方法以及通信程序,在請求訪問自身裝置的存儲器以外的存儲器的情況下,向其他裝置發(fā)送訪問請求,其他裝置訪問其他裝置的存儲器空間。由此,通信裝置能夠省去通信時進(jìn)行的文件的形成以及展開的處理,能夠消除系統(tǒng)開銷。另外,由于將其他裝置的存儲器虛擬地設(shè)為自身裝置的存儲器,所以存儲器空間擴(kuò)大,因此能夠防止優(yōu)先級高的進(jìn)程的數(shù)據(jù)的頁調(diào)出。另外,通過將其他裝置的存儲器虛擬地設(shè)為自身裝置的存儲器,容易使其他裝置和自身裝置的存儲器的內(nèi)容具有相關(guān)性。例如,通信裝置容易將自身裝置和其他裝置的顯示器虛擬地作為一個畫面進(jìn)行處理。這樣,由于能夠不借助文件這樣的形式而共享數(shù)據(jù),所以能夠執(zhí)行使多臺移動終端連動動作的移動終端用的游戲等新應(yīng)用程序。例如,準(zhǔn)備2個分離式的移動終端,使有畫面的一方連動,起動游戲應(yīng)用程序,將另一方作為控制器,能夠?qū)崿F(xiàn)2人同時玩游戲。另外,在實施方式I所涉及的通信系統(tǒng)100中,存在2個通信裝置,但也可以采取通信裝置為3個以上的方式。例如,實施方式I所涉及的通信系統(tǒng)100也可以還存在通信裝置101 # 2,通信裝置101 # O成為主裝置,通信裝置101 # I、通信裝置101 # 2成為協(xié)
>j-U ρ α裝直。該情況下,通信裝置101 # O也可以將自身裝置的物理地址以外的區(qū)域劃分為訪問通信裝置101 # I的存儲器的區(qū)域和訪問通信裝置101 # 2的存儲器的區(qū)域這2個區(qū)域。接著,在圖10的步驟S1003 :是的處理后,通信裝置101 # O也可以基于訪問目的地的地址,來判斷是訪問通信裝置101 # I的存儲器,還是訪問通信裝置101 # 2的存儲器。圖11是表示實施方式I所涉及的通信系統(tǒng)100的課題的說明圖。在實施方式I所涉及的通信系統(tǒng)100中,若切斷通信,則不能夠訪問連接目的地的存儲器區(qū)域,所以不能夠繼續(xù)處理。另外,如圖11所示,在實施方式I所涉及的通信系統(tǒng)100中,也假定使用了在ΜΕΜ201 # O中確保通信裝置101 # I用數(shù)據(jù)區(qū)域,在ΜΕΜ201 # I中確保通信裝置101 # O用數(shù)據(jù)區(qū)域這樣的共享數(shù)據(jù)區(qū)域的情況。作為具體的共享數(shù)據(jù)區(qū)域的確保方法,CPU102 # O作為與通信裝置101 # I共享數(shù)據(jù)的區(qū)域,確保數(shù)據(jù)區(qū)域1101 # O —O、數(shù)據(jù)區(qū)域1101 # 1 — 0,在數(shù)據(jù)區(qū)域1101 # O
—O內(nèi)存儲數(shù)據(jù)202 # O。另外,CPU102 # O將與數(shù)據(jù)202 # I相同的數(shù)據(jù)作為數(shù)據(jù)202#1 — 0存儲于數(shù)據(jù)區(qū)域1101 # 1 — 0。另外,CPU102 # I作為與通信裝置101 # O共享數(shù)據(jù)的區(qū)域,確保數(shù)據(jù)區(qū)域1101
#I—O、數(shù)據(jù)區(qū)域1101 # 1 — 1,在數(shù)據(jù)區(qū)域1101 #1 — 1內(nèi)存儲數(shù)據(jù)202 # I。另外,CPU102 # I將與數(shù)據(jù)202 # O相同的數(shù)據(jù)作為數(shù)據(jù)202 # O — I存儲于數(shù)據(jù)區(qū)域1101 # O
—I。但即便在使用了共享數(shù)據(jù)區(qū)域的情況下,再連接時也無法獲取裝置間的數(shù)據(jù)的匹配性,通信系統(tǒng)100從最初重新進(jìn)行處理。另外,在專利文獻(xiàn)5所涉及的技術(shù)中,服務(wù)器在正常時再次發(fā)布異常時沒能夠發(fā)布的數(shù)據(jù)。即使將該技術(shù)應(yīng)用于實施方式I所涉及的通信系統(tǒng)100,也存在難以執(zhí)行線路切斷中的處理的問題。在圖12 圖19所示的實施方式2所涉及的通信系統(tǒng)100中,目的在于使實施方式I所涉及的通信系統(tǒng)100在線路切斷中盡可能繼續(xù)進(jìn)行處理,在線路再次連接時再次開始處理。(實施方式2的概要說明)圖12是表示實施方式2所涉及的通信系統(tǒng)100的動作概要的說明圖。以下,在圖12 圖19中,在沒有特別指定的情況下,對通信系統(tǒng)100的描述是對實施方式2所涉及的通信系統(tǒng)100進(jìn)行的描述。圖12所示的通信系統(tǒng)100作為硬件與圖2所示的實施方式I所涉及的通信系統(tǒng)100的硬件相同,作為功能,采取利用圖11說明的確保共享數(shù)據(jù)區(qū)域的方式。并且,通信系統(tǒng)100內(nèi)的通信裝置101在針對自身裝置固有的數(shù)據(jù)進(jìn)行了寫訪問的情況下,對其他裝置進(jìn)行一致性的執(zhí)行請求。例如,通信裝置101 # O在針對數(shù)據(jù)202
#O進(jìn)行了寫訪問的情況下,通過通信驅(qū)動程序205 # O將寫入的結(jié)果發(fā)送給通信裝置101
#1,請求通信裝置101 # I執(zhí)行一致性。接收了請求的通信裝置101 # I作為一致性的執(zhí)行,更新存在于共享數(shù)據(jù)區(qū)域的數(shù)據(jù)202 #0—1。由此,數(shù)據(jù)202 # O和數(shù)據(jù)202 # O —I 一致,成為取得了匹配性的狀態(tài)。另外,在通信系統(tǒng)100內(nèi)的通信裝置101針對自身裝置固有的數(shù)據(jù)進(jìn)行寫訪問時連接狀態(tài)被切斷的情況下,不針對其他裝置進(jìn)行一致性的執(zhí)行請求,將基于寫訪問的寫入結(jié)果記述于I / O日志。在連接狀態(tài)建立后,通信裝置101向其他裝置發(fā)送I / O日志,其他裝置基于接收的I / O日志執(zhí)行一致性。利用圖14、圖15后述I / O日志的處理,利用圖17后述I / O日志的詳細(xì)內(nèi)容。另外,在通信系統(tǒng)100內(nèi)的通信裝置101進(jìn)行針對其他裝置固有的數(shù)據(jù)的讀訪問的情況下,以共享數(shù)據(jù)區(qū)域的數(shù)據(jù)為基礎(chǔ)進(jìn)行推測執(zhí)行,且自身裝置經(jīng)由通信驅(qū)動程序判斷數(shù)據(jù)是否最新。在數(shù)據(jù)為舊的數(shù)據(jù)的情況下,通信裝置101從讀訪問時再次執(zhí)行。例如,通信裝置101 # O在針對數(shù)據(jù)202 # I進(jìn)行讀訪問的情況下,請求了讀訪問的進(jìn)程以存儲于共享數(shù)據(jù)區(qū)域的數(shù)據(jù)202 # I — O為基礎(chǔ)進(jìn)行推測執(zhí)行。另外,通信裝置101 # O通過通信驅(qū)動程序205 # O獲取數(shù)據(jù)202 # I的值,與存儲于共享數(shù)據(jù)區(qū)域的數(shù)據(jù)202 # 1_0進(jìn)行比較。在存儲于共享數(shù)據(jù)區(qū)域的數(shù)據(jù)202 # I不一致,是舊的數(shù)據(jù)的情況下,通信裝置101 # O從推測執(zhí)行前的讀入數(shù)據(jù)202 # I —O的狀態(tài)進(jìn)行再次執(zhí)行。另外,通信系統(tǒng)100內(nèi)的通信裝置101不進(jìn)行針對其他裝置固有的數(shù)據(jù)的寫訪問。例如,通信系統(tǒng)100通過設(shè)為寫入自身裝置固有的區(qū)域,由其他裝置讀入這樣的方式,能夠置換針對其他裝置固有的數(shù)據(jù)的寫訪問。(實施方式2所涉及的通信系統(tǒng)100的功能)接下來,對實施方式2所涉及的通信系統(tǒng)100的功能進(jìn)行說明。圖13是表示實施方式2所涉及的通信系統(tǒng)100的功能的框圖。實施方式2所涉及的通信系統(tǒng)100包括檢測部1301、判斷部1302、控制部1303、訪問部1304、通信部1305、通信部1306、訪問部1307和執(zhí)行部1308。成為該控制部的功能(檢測部1301 執(zhí)行部1308)通過CPU102 # 0、CPU102 # I執(zhí)行存儲于存儲裝置的程序來實現(xiàn)該功能。具體而言,所謂存儲裝置例如是圖I所示的R0M103、RAM104、快閃R0M105、快閃R0M107等。或者也可以經(jīng)由I / F109獲取程序,通過CPU102 # (KCPU102 # I執(zhí)行獲取的程序來實現(xiàn)該功能。另外,在圖13中,示出通信裝置101 # O的功能包含檢測部1301 通信部1305、執(zhí)行部1308,通信裝置101 # I的功能包含通信部1306、訪問部1307的狀態(tài)。另外,通信裝置101 # I的功能也包含檢測部1301 通信部1305、執(zhí)行部1308。而且,判斷部1302、通信部1305、通信部1306、訪問部1307分別具有與判斷部302、通信部305、通信部306、訪問部307相等的功能,所以省略說明。檢測部1301具有檢測從自身裝置內(nèi)產(chǎn)生的訪問請求的功能。另外,檢測部1301也可以檢測自身裝置和其他裝置的通信狀態(tài)。另外,檢測部1301還可以檢測通過訪問部1304對自身裝置的存儲器的寫入結(jié)果,該對自身裝置的存儲器的寫入結(jié)果與作為訪問請求從執(zhí)行部1308產(chǎn)生的寫入請求對應(yīng)。例如,檢測部1301對通信裝置101 # O和通信裝置101 # I的通信狀態(tài)被切斷的狀態(tài)、被連接的狀態(tài)進(jìn)行檢測。另外,檢測部1301檢測通過訪問部1304對MEM201 # O的寫入結(jié)果。此外,將檢測結(jié)果存儲于執(zhí)行檢測部1301的CPU的寄存器、存儲器等存儲區(qū)域。例如,在通信裝置101 # O執(zhí)行檢測部1301的情況下,將檢測結(jié)果存儲于CPU102 # O的寄存器、MEM201 # O??刂撇?303具有基于通過判斷部1302判斷出的判斷結(jié)果,選擇并執(zhí)行訪問部1304的處理或者通信部1305的處理中任意一方的處理的功能。另外,控制部1303也可以在通過判斷部1302判斷為作為訪問請求從執(zhí)行部1308產(chǎn)生的讀入請求不是分配至自身裝置的存儲器的地址的情況下,使通信部1305基于讀入請求與其他裝置進(jìn)行通信。例如,控制部1303可以在從進(jìn)程401 # O產(chǎn)生的讀入請求的地址不是MEM201 # O的地址的情況下,通過通信部1305經(jīng)由I / F109 # O將讀入請求發(fā)送給通信裝置101 # I。另外,控制部1303在通過檢測部1301檢測出通信狀態(tài)被切斷后,在通過判斷部1302判斷為訪問請求不是分配至自身裝置的存儲器的地址的情況下,使執(zhí)行部1308停止。接下來,控制部1303也可以在通過檢測部1301檢測出通信狀態(tài)被連接的情況下,解除執(zhí)行部1308的停止。例如,控制部1303可以在通信狀態(tài)被切斷的狀態(tài)下,在訪問請求是分配至其他裝置的存儲器的地址的情況下,使進(jìn)程401 # O停止,在通信狀態(tài)被連接的情況下,解除進(jìn)程401 # O的停止。另外,控制部1303也可以在通過檢測部1301檢測出對自身裝置的存儲器的寫入結(jié)果的情況下,使通信部1305將基于寫入結(jié)果的一致性執(zhí)行請求發(fā)送給其他裝置。對于基于寫入結(jié)果的一致性執(zhí)行請求而言,例如自身裝置通過發(fā)送表示與寫入結(jié)果具有一致性的執(zhí)行請求的事件ID,從而由接收的其他裝置識別接受了一致性執(zhí)行請求。例如,控制部1303在檢測出對MEM201 # O的寫入結(jié)果的情況下,經(jīng)由I / F109 # O將基于寫入結(jié)果的一致性執(zhí)行請求發(fā)送給通信裝置101 # I。另外,控制部1303也可以在從其他裝置接收了一致性執(zhí)行請求的情況下,使訪問部1304寫入自身裝置的存儲器作為讀入結(jié)果。例如,控制部1303在作為一致性執(zhí)行請求而接收了通信裝置202 # I的值的情況下,通過訪問部1304作為數(shù)據(jù)202 # 1_0寫入。寫入的數(shù)據(jù)用于推測執(zhí)行。另外,控制部1303在通過檢測部1301檢測出通信狀態(tài)從切斷被轉(zhuǎn)移至連接的狀態(tài)的情況下,也可以使通信部1305將基于在被切斷的狀態(tài)的期間對自身裝置的存儲器的寫入結(jié)果的一致性執(zhí)行請求發(fā)送給其他裝置。在被切斷的狀態(tài)的期間對自身裝置的存儲器的寫入結(jié)果的記錄方法可以是在寫入的存儲器設(shè)定標(biāo)志的方法。該情況下,控制部1303在一致性執(zhí)行請求時將設(shè)定了標(biāo)志的地址發(fā)送給其他裝置,在本實施方式2中,控制部1303將寫入結(jié)果記述于I / O日志,在一致性執(zhí)行請求時向其他裝置發(fā)送I / O日志。訪問部1304具有訪問自身裝置的存儲器的功能。另外,訪問部1304也可以通過通信部1305將與讀入請求對應(yīng)的讀入結(jié)果寫入自身裝置的存儲器。例如,訪問部1304將通過通信部1305經(jīng)由I / F109 # O得到的讀入結(jié)果寫入至數(shù)據(jù)區(qū)域1101 #1—0。執(zhí)行部1308具有執(zhí)行進(jìn)程的功能。例如,執(zhí)行部1308執(zhí)行進(jìn)程401 # O。另外,執(zhí)行部1308也可以使用通過訪問部1304寫入的讀入結(jié)果,執(zhí)行上述進(jìn)程。例如,執(zhí)行部1308使用寫入至數(shù)據(jù)區(qū)域1101 # I —O的讀入結(jié)果亦即數(shù)據(jù)202 # I —O來執(zhí)行進(jìn)程401
#O。另外,執(zhí)行部1308也可以在至通過訪問部1304寫入針對新發(fā)行的讀入請求的新的讀入結(jié)果為止的期間,使用寫入至自身裝置的存儲器的讀入結(jié)果來執(zhí)行進(jìn)程。例如,執(zhí)行部1308發(fā)行對通信裝置101# I的存儲器的新的讀入請求,在至向數(shù)據(jù)區(qū)域1101# I —O寫入新的讀入結(jié)果為止的期間,使用已經(jīng)寫入的數(shù)據(jù)202 # I —O來執(zhí)行進(jìn)程401 # O。由此,執(zhí)行部1308能夠進(jìn)行推測執(zhí)行。
1
圖14是表示實施方式2所涉及的通信系統(tǒng)100的存儲器共享處理中的切斷時的動作概要的說明圖。通信裝置101 # O和通信裝置101 # I不建立無線連接,是通信被切斷的狀態(tài)。若通信被切斷,則在通信裝置101 # O和通信裝置101 # I中執(zhí)行的進(jìn)程401
#O、進(jìn)程401 # I在各裝置中繼續(xù)處理,直至讀入連接目的地的數(shù)據(jù)的位置。若產(chǎn)生了經(jīng)由通信驅(qū)動程序的對連接目的地的存儲器區(qū)域的訪問請求,則通信裝置101進(jìn)行再連接請求,移至低電力模式。例如,通信裝置101 # O對進(jìn)程401 # I繼續(xù)進(jìn)程的處理,直至讀入其他裝置的數(shù)據(jù)的位置。在檢測出針對數(shù)據(jù)202 # I —O的讀入的情況下,通信裝置101 # O進(jìn)行再連接請求來停止進(jìn)程的處理,移至低電力模式。另外,在進(jìn)行再連接請求時,通信裝置101 # O可以利用顯示器108 # O顯示再連接請求,等待針對用戶是否發(fā)行連接請求的響應(yīng)。例如,由于進(jìn)程401 # O進(jìn)行了數(shù)據(jù)202 # I — O的讀入,所以通信裝置101 # O停止進(jìn)程401 # O。通信裝置101 # I只使進(jìn)程401 # I進(jìn)行數(shù)據(jù)202 # I的讀入和寫入,不進(jìn)行數(shù)據(jù)202 # O的讀入,所以能夠持續(xù)進(jìn)行進(jìn)程401 # I的處理。另外,通信裝置101從連接狀態(tài)被切斷的時刻,將對自身裝置固有的數(shù)據(jù)的寫訪問記錄于I / O日志。此時,通信裝置101不進(jìn)行針對自身裝置固有的數(shù)據(jù)進(jìn)行寫訪問時進(jìn)行的針對其他裝置的一致性請求。例如,通信裝置101 # O從連接狀態(tài)被切斷的時刻,將對成為自身終端固有的數(shù)據(jù)的數(shù)據(jù)202 # O的寫訪問記錄于I / O日志1401 # 0,停止針對通信裝置101 # I的一致性的請求通知。圖15是表示實施方式2所涉及的通信系統(tǒng)100的存儲器共享處理中的再連接時的動作概要的說明圖。示出圖15中的通信系統(tǒng)100從圖14的狀態(tài)通信再連接的狀態(tài)。若通信被再連接,則各裝置將I / O日志發(fā)送給連接目的地的裝置。例如,通信裝置101 # O將I / O日志1401 # O發(fā)送給通信裝置101 # I,通信裝置101 # I將I / O日志1401
#I發(fā)送給通信裝置101 # O。在發(fā)送了 I / O日志后,各裝置成為通常模式,基于I / O日志執(zhí)行數(shù)據(jù)的一致性,再次開始進(jìn)程的處理。例如,通信裝置101 # O根據(jù)I / O日志1401# I更新數(shù)據(jù)202
#1 — 0,再次開始停止中的進(jìn)程401 # O的處理。圖16是表示實施方式2所涉及的通信系統(tǒng)100中游戲應(yīng)用程序的執(zhí)行中的狀態(tài)的說明圖。圖16中的通信系統(tǒng)100的通信裝置101 # O執(zhí)行游戲處理1601 # 0,通信裝置101 # I執(zhí)行游戲處理1601 # I。在圖16所示的通過無線等連接多個裝置的游戲處理等中,即便通信被暫時切斷,通過在圖14、圖15中說明的動作,也能夠不用再起動游戲處理而是繼續(xù)進(jìn)行。具體而言,通信裝置101 # O每當(dāng)向游戲處理1601 # O使用的數(shù)據(jù)1602 # O寫入時,將寫入結(jié)果發(fā)送給通信裝置101 # 1,請求執(zhí)行一致性。接收了寫入結(jié)果的通信裝置101 # I基于寫入結(jié)果,執(zhí)行數(shù)據(jù)1602 #0—1的一致性,使數(shù)據(jù)1602 #0—1為與數(shù)據(jù)1602 # O相等的狀態(tài)。另外,在無線連接被切斷的情況下,通信裝置101 # O、通信裝置101 # I每當(dāng)數(shù)據(jù)1602 # O、數(shù)據(jù)1602 # I的寫訪問時記錄于I / O日志。再連接后,通信裝置101 # O、通信裝置101 # I相互發(fā)送I / O日志,執(zhí)行數(shù)據(jù)1602 # I —O和數(shù)據(jù)1602 # O —I的一致性。執(zhí)行了一致性后,通信裝置101 # O、通信裝置101 # I繼續(xù)進(jìn)行游戲處理1601 # O、游戲處理1601 # I。這樣,每當(dāng)通信切斷時能夠不用再起動處理而是繼續(xù)進(jìn)行,所以能夠針對用戶使游戲應(yīng)用程序的使用的便利性提高。圖17是表示實施方式2所涉及的I / O日志的一個例子的說明圖。I / O日志記錄有通信裝置101進(jìn)行了寫入的虛擬地址和向虛擬地址寫入的值。例如,在圖17的例子中,通信裝置101 # O在將O寫入虛擬地址0x12345678的情況下,在I / O日志存儲“0x12345678”、“O”。同樣,在將I寫入虛擬地址0x23456789的情況下,通信裝置101 # O將“0x23456789”、“I”存儲于I / O日志。在將2寫入虛擬地址0x34567890的情況下,通信裝置101 # O將“0x34567890”、”2”儲存于I / O日志。在圖17的例子中,以I字節(jié)為單位生成I / O日志,但也可以以不同的單位生成I/O日志。例如,通信裝置101 # O可以以4個字節(jié)為單位生成I/O日志。具體而言,通信裝置101 # O在將Oxffffffff寫入至虛擬地址0x10000000的情況下,將“0x10000000”、“Oxffffffff”儲存于I / O日志。另外,通信裝置101在I / O日志內(nèi)已經(jīng)存在相同的地址的情況下,可以對值覆蓋重寫。圖18是表示實施方式2所涉及的分散開始處理、分散結(jié)束處理的流程圖。步驟S1801 步驟S1807、步驟S1809 步驟S1811的處理表示分散開始處理,步驟S1813 步驟S1816的處理表示分散結(jié)束處理。另外,步驟S1808、步驟S1812的處理表示分散處理的執(zhí)行中。通信裝置101 # O發(fā)送無線的分散處理的連接請求(步驟S1801)。通信裝置101
#I接收連接請求(步驟S1802)。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID“4”,通信裝置101 # I通過事件ID “4”的接收,識別發(fā)生了分散處理的連接請求的接收。另外,通信裝置101 # O可以與事件ID—并發(fā)送作為進(jìn)行分散處理的進(jìn)程的信息的裝置ID和共享存儲器大小。所謂裝置ID是裝置固有的ID,例如是MAC (Media AccessControl)地址、裝置的制造編號等。所謂共享存儲器大小是進(jìn)行分散處理的進(jìn)程使用的共享存儲器的大小?;谠摯笮?,通信裝置101 # I設(shè)定共享存儲器確保的區(qū)域的大小。接收了連接請求的通信裝置101 # I判斷是否允許連接請求(步驟S1803)。此外,通信裝置101 # I可以總是允許連接請求,也可以通過通信裝置101 # I的狀態(tài)判斷。例如,通信裝置101 # I可以設(shè)為若現(xiàn)在執(zhí)行的進(jìn)程數(shù)在一定以上則負(fù)荷過大來判斷為不允許連接請求。或者,通信裝置101 # I也可以對在步驟S1801中接收的進(jìn)程數(shù)據(jù)中的裝置ID和已經(jīng)登記于通信裝置101 # I的ID進(jìn)行比較,在一致的情況下允許連接請求?;蛘?,通信裝置101 # I也可以將接收的連接請求顯示于顯示器108 # I,接受用戶的連接請求的允許。在不允許連接請求的情況下(步驟S1803 :否),通信裝置101 # I將連接NG發(fā)送給通信裝置101# O (步驟S1804),結(jié)束分散開始處理。在允許連接請求的情況下(步驟S1803 :是),通信裝置101 # I確保用于使連接目的地的裝置共享自身裝置生成的數(shù)據(jù)的數(shù)據(jù)區(qū)域、以及用于自身裝置共享連接目的地的裝置生成的數(shù)據(jù)的數(shù)據(jù)區(qū)域(步驟S1805)。具體而言,作為用于使連接目的地的裝置共享自身裝置生成的數(shù)據(jù)的數(shù)據(jù)區(qū)域,通信裝置101
#I確保數(shù)據(jù)區(qū)域1101 # 1 — 1,作為用于使自身裝置共享連接目的地的裝置生成的數(shù)據(jù)的數(shù)據(jù)區(qū)域確保1101 # O —I。確保后,通信裝置101 # I將確保的數(shù)據(jù)區(qū)域設(shè)定成共享數(shù)據(jù)區(qū)域(步驟S1806),將連接OK發(fā)送給通信裝置101 # I (步驟S1807),執(zhí)行分散處理(步驟S1808)。利用圖19后述分散處理的詳細(xì)內(nèi)容。在步驟S1804、步驟S1807中接受了響應(yīng)的通信裝置101 # O判斷連接結(jié)果(步驟S1809)。在連接結(jié)果為連接NG的情況下(步驟S1809 :NG),通信裝置101 # O切斷無線連接(步驟S1816),結(jié)束分散開始處理。在還沒有響應(yīng)的情況下(步驟S1809 :等待響應(yīng)),通信裝置101 # O在一定時間后再次執(zhí)行步驟S1809的處理。在連接結(jié)果為連接OK的情況下(步驟S1809 :0K),通信裝置101 # O確保用于使連接目的地的裝置共享自身裝置生成的數(shù)據(jù)的數(shù)據(jù)區(qū)域、以及用于自身裝置共享連接目的地的裝置生成的數(shù)據(jù)的數(shù)據(jù)區(qū)域(步驟S1810)。具體而言,通信裝置101 # O作為用于使連接目的地的裝置共享自身裝置生成的數(shù)據(jù)的數(shù)據(jù)區(qū)域確保數(shù)據(jù)區(qū)域1101 # 0 — 0,作為用于使自身裝置共享連接目的地的裝置生成的數(shù)據(jù)的數(shù)據(jù)區(qū)域確保數(shù)據(jù)區(qū)域1101 # 1—0。確保后,通信裝置101 # O將確保的數(shù)據(jù)區(qū)域設(shè)定為共享數(shù)據(jù)區(qū)域(步驟S1811),執(zhí)行分散處理(步驟S1812)。分散處理的結(jié)束后,通信裝置101 # O通知連接的切斷(步驟S1813),釋放共享數(shù)據(jù)區(qū)域(步驟S1815),在移至步驟S1816的處理后,結(jié)束分散結(jié)束處理。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID“1”,通信裝置101 # I通過事件ID “I”的接收,識別發(fā)生了與連接的切斷相關(guān)的通知的接收。分散處理的結(jié)束后,或者在步驟S1813的處理中接受了切斷的通知的通信裝置101 # I釋放共享數(shù)據(jù)區(qū)域(步驟S1814),結(jié)束分散結(jié)束處理。圖19A 圖19D是表示實施方式2所涉及的分散處理的流程圖。在通信裝置101
#O和通信裝置101 # I中均進(jìn)行分散處理。在圖19A 圖19D中,對在通信裝置101 # O的分散處理中的流程圖進(jìn)行說明。圖19A表示在分散處理中連接正在繼續(xù),訪問的種類為與自身裝置相關(guān)的訪問的流程圖。通信裝置101 # O判斷是否檢測出了分散處理的結(jié)束請求(步驟S1901)。在檢測出了結(jié)束請求的情況下(步驟S1901 :是),通信裝置101 # O結(jié)束分散處理。具體而言,作為通信裝置101 # O檢測出分散處理的結(jié)束請求的情況,例如是通信裝置101 # O檢測出通信裝置101 # O在一定時間以上未被操作的狀態(tài)的情況。或者,也可以是由用戶發(fā)行分散處理的結(jié)束請求,通信裝置101 # O檢測出結(jié)束請求的情況。在未檢測出分散處理的結(jié)束的情況下(步驟S1901 :否),通信裝置101 # O判斷無線連接是否被繼續(xù)(步驟S1902)。在連接繼續(xù)的情況下(步驟S1902 :是),通信裝置101 # O判斷是否再次檢測出分散處理的結(jié)束請求(步驟S1903)。在檢測出結(jié)束請求的情況下(步驟S1903 :是),通信裝置101 # O結(jié)束分散處理。在未檢測出分散處理的結(jié)束請求的情況下(步驟S1903 :否),通信裝置101 # O判斷是否檢測出存儲器訪問的產(chǎn)生(步驟S1904)。在未檢測出存儲器訪問的產(chǎn)生的情況下(步驟S1904 :否),通信裝置101 # O移至步驟S1901的處理。在檢測出存儲器訪問的產(chǎn)生的情況下(步驟S1904 :是),通信裝置101 # O判斷訪問的種類(步驟S1905)。此外,訪問的種類是自身裝置上還是其他裝置上的判斷方法與實施方式I的步驟S1003的處理相同。在訪問的種類為對自身裝置上的進(jìn)程固有的數(shù)據(jù)的讀訪問的情況下(步驟S1905 (1)),通信裝置101 # O讀取自身裝置的存儲器(步驟S1906),移至步驟S1901的處理。在訪問的種類為對自身裝置上的進(jìn)程固有的數(shù)據(jù)的寫訪問的情況下(步驟S1905: (2)),通信裝置101 # O在寫入后,將更新后的值經(jīng)由通信驅(qū)動程序205 # 0,轉(zhuǎn)送至通信裝置101 # I(步驟 S1907)。轉(zhuǎn)送后,經(jīng)由通信驅(qū)動程序205 # O接受了數(shù)據(jù)轉(zhuǎn)送的通信裝置101 # I經(jīng)由存儲器驅(qū)動程序204 # 1,將對象的數(shù)據(jù)更新為轉(zhuǎn)送后的值(步驟S1908)。通過步驟S1907的處理,通信裝置101 # I進(jìn)行一致性的執(zhí)行。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID “5”、地址和更新后的值,通信裝置101 # I根據(jù)事件ID “5”,識別接收了基于一并發(fā)送的更新后的值的一致性 的執(zhí)行請求。在步驟S1907的處理中,轉(zhuǎn)送了值的通信裝置101
#O移至步驟S1901的處理。圖19B示出在分散處理中連接正在繼續(xù),訪問的種類為其他裝置的讀訪問的流程圖。在訪問的種類為對其他裝置上的進(jìn)程固有的數(shù)據(jù)的讀訪問的情況下(步驟S1905 (3)),通信裝置101 # O保存對象進(jìn)程的執(zhí)行狀態(tài)(步驟S1909)。作為保存的內(nèi)容,通信裝置101 # O保存包含程序計數(shù)器的寄存器的內(nèi)容。保存后,通信裝置101 # O經(jīng)由通信驅(qū)動程序205 # O,從通信裝置101 # I請求對象數(shù)據(jù)的轉(zhuǎn)送(步驟S1910)。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID “6”和對象數(shù)據(jù)的地址,通信裝置101 # I通過事件ID “6”的接收,識別發(fā)生了對象數(shù)據(jù)的轉(zhuǎn)送請求的接收。在請求了對象數(shù)據(jù)的轉(zhuǎn)送后,通信裝置101 # O從自身裝置的共享數(shù)據(jù)區(qū)域讀入對象數(shù)據(jù),執(zhí)行對象進(jìn)程(步驟S1911)。由于接收對象數(shù)據(jù)前執(zhí)行處理,所以推測執(zhí)行了步驟S1911的處理。針對推測執(zhí)行中自身裝置上的進(jìn)程固有的數(shù)據(jù),在通過寫訪問產(chǎn)生了值被更新的數(shù)據(jù)的情況下,在與共享數(shù)據(jù)區(qū)域不同的其它的區(qū)域保存新的值,在其后的推測執(zhí)行處理中,將保存于其它的區(qū)域的值作為執(zhí)行中的數(shù)據(jù)使用。通信裝置101 # O若在對象進(jìn)程的推測執(zhí)行中接收對象數(shù)據(jù)(步驟S1912),則判斷從自身裝置讀入的值和從通信裝置101 # I接收的值是否一致(步驟S1913)。在從自身裝置讀入的值和接收的值一致的情況下(步驟S1913 :是),推測執(zhí)行成功,通信裝置101 # O將與對象進(jìn)程相關(guān)的保存于其它區(qū)域正在執(zhí)行的數(shù)據(jù)復(fù)制至共享數(shù)據(jù)區(qū)域(步驟S1914)。復(fù)制后,通信裝置101 # O廢棄保存于其它的區(qū)域的執(zhí)行狀態(tài)(步驟S1915)。廢棄后,通信裝置101 # O繼續(xù)進(jìn)行對象進(jìn)程的處理(步驟S1916),移至步驟S1901的處理。在從自身裝置讀入的值和接收的值不一致的情況下(步驟S1913:否),推測執(zhí)行失敗,通信裝置101 # O廢棄與對象進(jìn)程相關(guān)的保存于其它的區(qū)域正在執(zhí)行的數(shù)據(jù)(步驟S1917)。另外,通信裝置101 # O恢復(fù)保存的執(zhí)行狀態(tài)(步驟S1918),再次開始對象進(jìn)程的處理,移至步驟S1901的處理。圖19C是表示在分散處理中連接被切斷的狀態(tài)的流程圖。在連接未繼續(xù)的情況下(步驟S1902 :否),通信裝置101 # O判斷是否檢測出了分散處理的結(jié)束請求(步驟S1920)。在檢測出結(jié)束請求的情況下(步驟S1920 :是),通信裝置101 # O結(jié)束分散處理。在未檢測出結(jié)束請求的情況下(步驟S1920 :否),通信裝置101 # O判斷是否被再次連接(步驟S1921)。在未被再次連接的情況下(步驟S1921 :否),通信裝置101 # O判斷是否檢測出存儲器訪問的產(chǎn)生(步驟S1922)。在未檢測出存儲器訪問的產(chǎn)生的情況下(步驟S1922 :否),通信裝置101 # O移至步驟S1920的處理。在檢測出了存儲器訪問的產(chǎn)生的情況下(步驟S1922 :是),通信裝置101#O判斷訪問的種類(步驟S1923)。在訪問的種類為對自身裝置上的進(jìn)程固有的數(shù)據(jù)的讀訪問的情況下(步驟S1923 :(1)),通信裝置101 # O讀入自身裝置的存儲器(步驟S1924),移至步驟S1920的處理。在訪問的種類為對自身裝置上的進(jìn)程固有的數(shù)據(jù)的寫訪問的情況下(步驟S1923
(2)),通信裝置101# O在寫入后,將寫訪問記錄于I / O日志1401 # 0(步驟S1925)。記錄后,通信裝置101 # O移至步驟S1920的處理。在訪問的種類為對其他裝置上的進(jìn)程固有的數(shù)據(jù)的讀訪問的情況下(步驟S1923
(3)),通信裝置101# O判斷是否存在其他能夠執(zhí)行的進(jìn)程(步驟S1926)。在存在其他能夠執(zhí)行的進(jìn)程的情況下(步驟S1926 :是),通信裝置101 # O切換成能夠執(zhí)行的進(jìn)程(步驟
51927),移至步驟S1920的處理。 圖19D表示在分散處理中連接被切斷后,再次被連接的狀態(tài)的流程圖。在不存在其他能夠執(zhí)行的進(jìn)程的情況下(步驟S1926 :否),通信裝置101 # O執(zhí)行再次連接(步驟
51928)。具體而言,通信裝置101# O可以在一定時間后執(zhí)行再次連接,也可以根據(jù)利用者的請求執(zhí)行再次連接。在執(zhí)行了再次連接后,通信裝置101 # O通過0S203 # O移至低電力模式(步驟
51929),轉(zhuǎn)移至再次連接等待狀態(tài)。狀態(tài)轉(zhuǎn)移后,通信裝置101# O判斷是否被再次連接(步驟S1930)。在未被再次連接的情況下(步驟S1930 :否),通信裝置101 # O在一定時間后執(zhí)行步驟S1930的處理。在再次連接的情況下(步驟S1930 :是),通信裝置101 # O解除低電力模式,移至通常模式(步驟S1931 )。在移至通常模式后,或者被再次連接的情況下(步驟S1921 :是),通信裝置101 # O判斷是否存在I / O日志1401 # 0(步驟S1932)。此外,I / O日志1401 # O通過執(zhí)行步驟S1925的處理而被生成。在存在I / O日志1401 # O的情況下(步驟S1932 :是),通信裝置101 # O將I / O日志1401 # O發(fā)送給通信裝置101 # I (步驟S1933)。具體而言,通信裝置101 # O發(fā)送圖8所示的事件ID “7”和I / O日志1401 # 0,通信裝置101 # I通過事件ID “7”的接收,識別發(fā)生了 I / O日志的接收。在I / O日志1401 # O的發(fā)送后,或者不存在I / O日志1401 # O的情況下(步驟S1932 :否),通信裝置101 # O從連接目的地的通信裝置101 # I讀入I / O日志1401
#1,執(zhí)行一致性(步驟S1934)。具體而言,通信裝置101 # O通過事件ID “7”的接收,識別I / O日志的接收,將I / O日志1401 # I的值更新到數(shù)據(jù)202 # I —O對應(yīng)的位置,從而執(zhí)行數(shù)據(jù)202 # I — O的一致性。一致性的執(zhí)行后,通信裝置101 # O再次開始對象進(jìn)程的處理(步驟S1935),移至步驟S1901的處理。如以上說明所示,根據(jù)實施方式2所涉及的通信裝置、通信方法、以及通信程序,從實施方式I的通信裝置進(jìn)一步向其他裝置發(fā)送基于進(jìn)程的對自身裝置的存儲器的寫入結(jié)果,使其他裝置執(zhí)行一致性。由此,能夠維持多個通信裝置的存儲器內(nèi)容獲取了匹配性的狀態(tài)。另外,實施方式2所涉及的通信裝置,在通信狀態(tài)從被切斷的狀態(tài)轉(zhuǎn)移至連接的狀態(tài)的情況下,在被切斷的狀態(tài)的期間進(jìn)行的基于進(jìn)程的對自身裝置的存儲器的寫入結(jié)果發(fā)送給其他裝置,使其他裝置執(zhí)行一致性。由此,通信裝置在通信暫時被切斷時,也能夠繼續(xù)進(jìn)行處理直到進(jìn)行對連接目的地的終端生成的數(shù)據(jù)的訪問,所以能夠避免通信裝置的通信率降低。另外,通信裝置由于獲取針對共享數(shù)據(jù)的I / O日志,所以能夠在再次連接時從該時刻再次開始處理,因此能夠進(jìn)一步保證執(zhí)行時的性能。另外,實施方式2所涉及的通信裝置在從進(jìn)程發(fā)行了對其他裝置的存儲器的讀入請求的情況下,可以一邊向其他裝置請求存儲器的值,一邊參照已經(jīng)寫入自身裝置的存儲器的值來繼續(xù)進(jìn)行進(jìn)程。由此,通信裝置能夠利用已經(jīng)寫入自身裝置的值進(jìn)行推測執(zhí)行。由于推測執(zhí)行成功,不用等待來自其他裝置的存儲器的值的接收就能夠執(zhí)行進(jìn)程,能夠使處
理高速化。另外,實施方式2所涉及的通信裝置在從其他裝置接收了一致性的執(zhí)行請求的情況下,可以作為其他裝置的存儲器的讀入結(jié)果寫入自身裝置的存儲器。由此,通信裝置針對已經(jīng)寫入自身裝置的其他裝置的存儲器的讀入結(jié)果,能夠維持獲取了匹配性的狀態(tài)。因此,推測執(zhí)行成功的可能性大。另外,實施方式2所涉及的通信裝置可以在通信狀態(tài)被切斷后,在讀入其他裝置的存儲器的情況下停止進(jìn)程,在通信狀態(tài)被再次連接的情況下,解除進(jìn)程的停止。由此,由于通信裝置在通信狀態(tài)的切斷中要求的處理能力降低,所以通過進(jìn)行時鐘頻率的降低等能夠得到節(jié)電效果。此外,在本實施方式I、實施方式2中說明的通信方法能夠通過由個人計算機(jī)、工作站等計算機(jī)執(zhí)行預(yù)先準(zhǔn)備的程序來實現(xiàn)。本通信程序被記錄于硬盤、軟盤、CD - R0M、M0、DVD等計算機(jī)可讀的記錄介質(zhì),通過計算機(jī)從記錄介質(zhì)讀出來執(zhí)行。另外,本通信程序也可以經(jīng)由因特網(wǎng)等網(wǎng)絡(luò)發(fā)布。符號說明101 # OUOl # I…通信裝置;102 # 0,102 # I…CPU ;109 # 0,109 # I... I /F ;111 # OUll # I…總線;201 # 0,201 # I…MEM ;301…檢測部;302…判斷部;303…控·制部;304…訪問部;305…通信部;306…通信部;307…訪問部;308…停止部;1301…檢測部;1302…判斷部;1303…控制部;1304…訪問部;1305…通信部;1306…通信部;1307···訪問部;1308…執(zhí)行部;
權(quán)利要求
1.一種通信裝置,其特征在于,具備訪問單元,其訪問自身裝置的存儲器;通信單元,其與其他裝置進(jìn)行通信;檢測單元,其對從所述自身裝置內(nèi)產(chǎn)生的訪問請求進(jìn)行檢測;判斷單元,其判斷由所述檢測單元檢測出的訪問請求中的訪問對象數(shù)據(jù)的地址是否為被分配至所述自身裝置的存儲器的地址;和控制單元,其基于由所述判斷單元判斷出的判斷結(jié)果,選擇下述處理、即利用所述訪問單元基于所述訪問請求來訪問所述自身裝置的存儲器的處理、和利用所述通信單元基于所述訪問請求來與所述其他裝置進(jìn)行通信的處理中的任意一方的處理來執(zhí)行。
2.根據(jù)權(quán)利要求I所述的通信裝置,其特征在于,還具備執(zhí)行進(jìn)程的執(zhí)行單元,所述檢測單元檢測利用所述訪問單元對所述自身裝置的存儲器進(jìn)行寫入的寫入結(jié)果,其中,該寫入結(jié)果對應(yīng)于作為所述訪問請求從所述執(zhí)行單元產(chǎn)生的寫入請求,在由所述檢測單元檢測出對所述自身裝置的存儲器進(jìn)行寫入的寫入結(jié)果的情況下,所述控制單元使所述通信單元將基于所述寫入結(jié)果的一致性執(zhí)行請求發(fā)送給所述其他裝置。
3.根據(jù)權(quán)利要求2所述的通信裝置,其特征在于,所述檢測單元對所述自身裝置和所述其他裝置的通信狀態(tài)進(jìn)行檢測,在由所述檢測單元檢測出所述通信狀態(tài)從被切斷的狀態(tài)轉(zhuǎn)移至了被連接的狀態(tài)的情況下,所述控制單元使所述通信單元將基于在所述被切斷的狀態(tài)的期間利用所述訪問單元對所述自身裝置的存儲器進(jìn)行寫入的寫入結(jié)果的一致性執(zhí)行請求發(fā)送給所述其他裝置。
4.根據(jù)權(quán)利要求I所述的通信裝置,其特征在于,還具備執(zhí)行進(jìn)程的執(zhí)行單元,在由所述判斷單元判斷為作為所述訪問請求從所述執(zhí)行單元產(chǎn)生的讀入請求不是分配至所述自身裝置的存儲器的地址的情況下,所述控制單元利用所述通信單元基于所述讀入請求與所述其他裝置進(jìn)行通信,所述訪問單元利用所述通信單元將與所述讀入請求對應(yīng)的讀入結(jié)果寫入所述自身裝置的存儲器,所述執(zhí)行單元使用由所述訪問單元寫入的所述讀入結(jié)果來執(zhí)行所述進(jìn)程。
5.根據(jù)權(quán)利要求4所述的通信裝置,其特征在于,在重新發(fā)行被判斷為不是分配至所述自身裝置的存儲器的地址的讀入請求的情況下,所述執(zhí)行單元在至由所述訪問單元寫入與重新發(fā)行的讀入請求對應(yīng)的新的讀入結(jié)果為止的期間,使用被寫入至所述自身裝置的存儲器的讀入結(jié)果來執(zhí)行所述進(jìn)程。
6.根據(jù)權(quán)利要求5所述的通信裝置,其特征在于,在由所述通信單元從所述其他裝置接收了一致性執(zhí)行請求的情況下,所述控制單元使所述訪問單元將該一致性執(zhí)行請求作為所述讀入結(jié)果寫入所述自身裝置的存儲器。
7.根據(jù)權(quán)利要求4所述的通信裝置,其特征在于,所述檢測單元對所述自身裝置和所述其他裝置的通信狀態(tài)進(jìn)行檢測,在由所述檢測單元檢測出所述通信狀態(tài)被切斷的情況后,在由所述判斷單元判斷為所述訪問請求不是分配至所述自身裝置的存儲器的地址的情況下,所述控制單元使所述執(zhí)行單元停止,在由所述檢測單元檢測出所述通信狀態(tài)被連接的情況下,所述控制單元使所述執(zhí)行單元的停止解除。
8.一種通信方法,其特征在于,由能夠控制訪問自身裝置的存儲器的訪問單元、以及與所述其他裝置進(jìn)行通信的通信單元的所述自身裝置的處理器執(zhí)行如下步驟檢測步驟,對從所述自身裝置內(nèi)產(chǎn)生的訪問請求進(jìn)行檢測;判斷步驟,判斷由所述檢測步驟檢測出的訪問請求中的訪問對象數(shù)據(jù)的地址是否是分配至所述自身裝置的存儲器的地址;和控制步驟,基于由所述判斷步驟判斷出的判斷結(jié)果,選擇下述處理、即利用所述訪問單元基于所述訪問請求來訪問所述自身裝置的存儲器的處理、和利用所述通信單元基于所述訪問請求來與所述其他裝置進(jìn)行通信的處理中的任意一方的處理來執(zhí)行。
9.一種通信程序,其特征在于,使能夠控制訪問第I裝置的存儲器的訪問單元、以及與和所述第I裝置不同的第2裝置進(jìn)行通信的通信單元的所述第I裝置的處理器執(zhí)行如下步驟檢測步驟,對從所述第I裝置內(nèi)產(chǎn)生的訪問請求進(jìn)行檢測;判斷步驟,判斷由所述檢測步驟檢測出的訪問請求中的訪問對象數(shù)據(jù)的地址是否是分配至所述第I裝置的存儲器的地址;和控制步驟,基于由所述判斷步驟判斷出的判斷結(jié)果,選擇下述處理、即利用所述訪問單元基于所述訪問請求來訪問所述第I裝置的存儲器的處理、和利用所述通信單元基于所述訪問請求來與所述第2裝置進(jìn)行通信的處理中的任意一方的處理來執(zhí)行。
全文摘要
本發(fā)明涉及通信裝置、通信方法以及通信程序。通信裝置(101#0)能夠控制訪問自身裝置的存儲器亦即MEM(201#0)的訪問部(304)以及通過I/F(109#0)與通信裝置(101#1)通信的通信部(305)。通信裝置(101#0)利用檢測部(301)檢測從自身裝置內(nèi)產(chǎn)生的訪問請求,利用判斷部(302)判斷訪問請求中的訪問對象數(shù)據(jù)的地址是否為分配至MEM(201#0)的地址。通信裝置(101#0)利用控制部(303),基于判斷部(302)判斷的判斷結(jié)果,選擇并執(zhí)行訪問部(304)進(jìn)行的處理、通信部(305)進(jìn)行的處理中任意一方的處理。
文檔編號H04M1/00GK102947817SQ20108006764
公開日2013年2月27日 申請日期2010年6月23日 優(yōu)先權(quán)日2010年6月23日
發(fā)明者山內(nèi)宏真, 山下浩一郎, 鈴木貴久, 栗原康志 申請人:富士通株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1