通信裝置制造方法
【專利摘要】一種通信裝置,其依照規(guī)定的通信標(biāo)準(zhǔn)進(jìn)行通信,該通信裝置具有:保存部,其構(gòu)成為至少保存包含用于實(shí)現(xiàn)通信裝置的第1功能的程序在內(nèi)的第1虛擬程序、和包含用于實(shí)現(xiàn)通信裝置的第2功能的程序在內(nèi)的第2虛擬程序;執(zhí)行部,其構(gòu)成為依次執(zhí)行第1及第2虛擬程序;以及切換控制部,其構(gòu)成為通過以下過程對在執(zhí)行部中執(zhí)行的第1以及第2虛擬程序進(jìn)行切換,該過程為:從保存部讀出第1以及第2虛擬程序的某一方的虛擬程序的至少一部分,并存儲至執(zhí)行部的存儲器中,在執(zhí)行部中執(zhí)行,在一方的虛擬程序的處理結(jié)束后,與存儲器的空閑容量相對應(yīng)而從存儲器刪除一方的虛擬程序的至少一部分,從保存部讀取第1以及第2虛擬程序的另一方的虛擬程序的至少一部分,并存儲至執(zhí)行部的存儲器,在執(zhí)行部中執(zhí)行。
【專利說明】通信裝置
【技術(shù)領(lǐng)域】
[0001 ] 本發(fā)明涉及一種通信裝置。
[0002]本申請基于在2012年5月25日向日本申請的日本特愿2012-120180主張優(yōu)先權(quán),并在此引用其內(nèi)容。
【背景技術(shù)】
[0003]當(dāng)前,在車間或工廠等中,為了實(shí)現(xiàn)高級的自動操作,構(gòu)建出將被稱為現(xiàn)場儀器的測定器、操作器等現(xiàn)場設(shè)備、和對這些現(xiàn)場設(shè)備進(jìn)行控制的控制裝置經(jīng)由通信單元連接而成的分散控制系統(tǒng)(DCS distributed Control System)。成為如上所述的分散控制系統(tǒng)的基礎(chǔ)的通信系統(tǒng),幾乎都是通過有線進(jìn)行通信的結(jié)構(gòu),但近年來還實(shí)現(xiàn)了依照ISA100.11a、WirelessHART (注冊商標(biāo))等工業(yè)無線通信標(biāo)準(zhǔn)進(jìn)行無線通信的結(jié)構(gòu)。
[0004]上述ISA100 是由國際測量控制學(xué)會(ISA:1nternat1nal Society ofAutomat1n)制定出的在車間等的測量?控制等中使用的無線通信標(biāo)準(zhǔn)。與此相對,上述WirelessHART (注冊商標(biāo))是美國的 HART (Highway Addressable Remote Transducer)通信協(xié)會提倡,以傳感器網(wǎng)絡(luò)(使多個帶傳感器的無線終端分散在空間中,能夠?qū)λ鼈冞M(jìn)行協(xié)調(diào)從而采集環(huán)境、物理狀況的無線網(wǎng)絡(luò))作為基礎(chǔ)的無線通信標(biāo)準(zhǔn)。
[0005]在以下的專利文獻(xiàn)I中公開有將依照近距離.低消耗電力的無線通信標(biāo)準(zhǔn)即ZigBee(注冊商標(biāo))的無線傳感器網(wǎng)絡(luò),與使用互聯(lián)網(wǎng)協(xié)議(IP:1nternet Protocol)技術(shù)而彼此相連接的計(jì)算機(jī)網(wǎng)絡(luò)即IP網(wǎng)絡(luò)彼此連接的技術(shù)。具體而言,在以下的專利文獻(xiàn)I中,通過設(shè)置下述的網(wǎng)關(guān),從而將這些網(wǎng)絡(luò)彼此連接起來,其中,該網(wǎng)關(guān)具有:經(jīng)由依照Zigbee的無線傳感器網(wǎng)絡(luò)實(shí)現(xiàn)通信的協(xié)議棧;以及經(jīng)由IP網(wǎng)絡(luò)實(shí)現(xiàn)通信的協(xié)議棧。
[0006]專利文獻(xiàn)1:日本特許第4897884號公報(bào)
【發(fā)明內(nèi)容】
[0007]與上述IP網(wǎng)絡(luò)連接的計(jì)算機(jī)大多是具有處理能力高的CPU(中央處理裝置)、大容量的存儲器等的結(jié)構(gòu)。如上所述的計(jì)算機(jī)預(yù)先嵌入有多個應(yīng)用程序以及用于實(shí)現(xiàn)多個通信協(xié)議的程序,能夠使多個應(yīng)用并行動作,并且能夠針對每個應(yīng)用切換所使用的通信協(xié)議。
[0008]與此相對,上述的現(xiàn)場儀器、在上述的傳感器網(wǎng)絡(luò)中所使用的儀器,由于需要進(jìn)行省電動作,因此大多構(gòu)成必要最小限度的硬件結(jié)構(gòu)。具體而言,大多采用下述結(jié)構(gòu),即,具有:CPU,其具有能夠使特定的應(yīng)用動作,并且能夠?qū)崿F(xiàn)利用特定的通信協(xié)議而進(jìn)行通信的處理能力;以及存儲器,其具有能夠執(zhí)行用于實(shí)現(xiàn)這些應(yīng)用以及通信協(xié)議的程序的容量。
[0009]上述應(yīng)用程序在使用于與上述的IP網(wǎng)絡(luò)連接的計(jì)算機(jī),或者使用于上述的需要進(jìn)行省電動作的儀器的任意一者的情況下,有時出于追加新的功能或者對已有的功能進(jìn)行強(qiáng)化的目的,也要進(jìn)行版本升級。與IP網(wǎng)絡(luò)連接的計(jì)算機(jī)具有大容量的存儲器,因此即使由于版本升級等,應(yīng)用程序的大小增加,也幾乎不會產(chǎn)生問題。然而,上述的需要進(jìn)行省電動作的儀器由于大多構(gòu)成必要最小限度的硬件結(jié)構(gòu),因此如果由于版本升級等,應(yīng)用程序的大小增加,則有時由于存儲器不足而導(dǎo)致無法執(zhí)行應(yīng)用程序。
[0010]此外,現(xiàn)場儀器、與傳感器網(wǎng)絡(luò)連接的儀器大多在硬件的擴(kuò)展性方面受到制約。例如,盡管閃存等低速存儲器能夠利用外部接口而容易地進(jìn)行擴(kuò)展,但是具有能夠連接高速存儲器的外部總線的低速存儲器較少,其中,高速存儲器能夠儲存程序、執(zhí)行時的參數(shù)等。因此,針對如上所述的程序大小的增加,連接高速存儲器,對能夠執(zhí)行程序的容量進(jìn)行擴(kuò)展是不容易的。
[0011]在本發(fā)明的一個方式中,提供一種即使程序大小增加,也能夠?qū)⒊霈F(xiàn)應(yīng)用程序不能執(zhí)行的情況避免的通信裝置。
[0012]本發(fā)明的一個方式的通信裝置依照規(guī)定的通信標(biāo)準(zhǔn)進(jìn)行通信,該通信裝置具有:保存部,其構(gòu)成為至少保存第I虛擬程序和第2虛擬程序,其中,該第I虛擬程序包含用于實(shí)現(xiàn)所述通信裝置的第I功能的程序,該第2虛擬程序包含用于實(shí)現(xiàn)所述通信裝置的第2功能的程序;執(zhí)行部,其構(gòu)成為依次執(zhí)行所述第I以及第2虛擬程序;以及切換控制部,其構(gòu)成為,從所述保存部讀出所述第I以及第2虛擬程序中的某一方的虛擬程序的至少一部分,并存儲至所述執(zhí)行部的存儲器中,在所述執(zhí)行部中執(zhí)行,在所述一方的虛擬程序的處理結(jié)束后,與所述存儲器的空閑容量相對應(yīng)而從所述存儲器刪除所述一方的虛擬程序的至少一部分,從所述保存部讀取所述第I以及第2虛擬程序中的另一方的虛擬程序的至少一部分,并存儲至所述執(zhí)行部的存儲器,在所述執(zhí)行部中執(zhí)行,從而對在所述執(zhí)行部中執(zhí)行的所述第I以及第2虛擬程序進(jìn)行切換。
[0013]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述執(zhí)行部具有信息保持區(qū)域,該信息保持區(qū)域?qū)υ谒龅贗虛擬程序和所述第2虛擬程序之間傳遞的信息進(jìn)行保持。
[0014]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述第I虛擬程序包含經(jīng)由由所述規(guī)定的通信標(biāo)準(zhǔn)規(guī)定的協(xié)議棧進(jìn)行數(shù)據(jù)的發(fā)送/接收的程序,所述第2虛擬程序至少包含實(shí)現(xiàn)數(shù)據(jù)的前處理或后處理的程序。
[0015]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述切換控制部構(gòu)成為,在從外部向所述通信裝置發(fā)送數(shù)據(jù)的情況下,在所述執(zhí)行部中執(zhí)行所述第I虛擬程序,進(jìn)行數(shù)據(jù)的接收處理,在利用所述第I虛擬程序進(jìn)行的接收處理結(jié)束后,將在所述執(zhí)行部中執(zhí)行的虛擬程序從所述第I虛擬程序切換為所述第2虛擬程序,使所述第2虛擬程序針對進(jìn)行所述接收處理后的數(shù)據(jù)進(jìn)行后處理。
[0016]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述第I虛擬程序使用在所述接收處理中所使用的參數(shù),所述第2虛擬程序使用在所述后處理中所使用的參數(shù)。
[0017]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述切換控制部構(gòu)成為,在將數(shù)據(jù)發(fā)送至所述通信裝置的外部的情況下,在所述執(zhí)行部中執(zhí)行所述第2虛擬程序,進(jìn)行數(shù)據(jù)的前處理,在利用所述第2虛擬程序進(jìn)行的前處理結(jié)束后,將在所述執(zhí)行部中執(zhí)行的虛擬程序從所述第2虛擬程序切換為所述第I虛擬程序,使所述第I虛擬程序?qū)M(jìn)行所述前處理后的數(shù)據(jù)進(jìn)行發(fā)送處理。
[0018]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述第I虛擬程序使用在所述發(fā)送處理中所使用的參數(shù),所述第2虛擬程序使用在所述前處理中所使用的參數(shù)。
[0019]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述第I虛擬程序包含以執(zhí)行頻率作為基準(zhǔn)而預(yù)先規(guī)定的通常動作時所使用的程序,所述第2虛擬程序包含以執(zhí)行頻率作為基準(zhǔn)而預(yù)先規(guī)定的非通常動作時所使用的程序。
[0020]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述切換控制部構(gòu)成為,在所述一方的虛擬程序的處理結(jié)束后,在確認(rèn)到在所述執(zhí)行部的存儲器中不存在能夠存儲所述另一方的虛擬程序的至少一部分的空閑容量的情況下,從所述存儲器刪除所述一方的虛擬程序的至少一部分。
[0021]此外,根據(jù)本發(fā)明的一個方式的通信裝置,所述切換控制部構(gòu)成為,在所述一方的虛擬程序的處理結(jié)束后,在確認(rèn)到在所述執(zhí)行部的存儲器中存在能夠存儲所述另一方的虛擬程序的至少一部分的空閑容量的情況下,不從所述存儲器刪除所述一方的虛擬程序,而使所述執(zhí)行部的存儲器存儲所述另一方的虛擬程序的至少一部分。
[0022]本發(fā)明的一個方式的程序執(zhí)行控制方法是依照規(guī)定的通信標(biāo)準(zhǔn)進(jìn)行通信的通信裝置中的程序執(zhí)行控制方法,所述方法包含以下步驟:使第I虛擬程序和第2虛擬程序中的某一方的虛擬程序的至少一部分存儲至所述通信裝置的執(zhí)行部的存儲器中,并在所述執(zhí)行部中執(zhí)行所述一方的虛擬程序的步驟,其中,該第I虛擬程序包含用于實(shí)現(xiàn)所述通信裝置的第I功能的程序,該第2虛擬程序包含用于實(shí)現(xiàn)所述通信裝置的第2功能的程序;在所述一方的虛擬程序的執(zhí)行結(jié)束后,與所述存儲器的空閑容量相對應(yīng)而從所述存儲器刪除所述一方的虛擬程序的至少一部分的步驟;以及在與所述存儲器的空閑容量相對應(yīng)而從所述執(zhí)行部的存儲器刪除所述一方的虛擬程序的至少一部分后,使所述第I以及第2虛擬程序的另一方的虛擬程序的至少一部分存儲至所述執(zhí)行部的存儲器,并在所述執(zhí)行部中執(zhí)行所述另一方的虛擬程序的步驟。
[0023]此外,根據(jù)本發(fā)明的一個方式的程序執(zhí)行控制方法,所述第I虛擬程序包含經(jīng)由由所述規(guī)定的通信標(biāo)準(zhǔn)規(guī)定的協(xié)議棧進(jìn)行數(shù)據(jù)的發(fā)送/接收的程序,所述第2虛擬程序至少包含實(shí)現(xiàn)數(shù)據(jù)的前處理或后處理的程序。
[0024]此外,根據(jù)本發(fā)明的一個方式的程序執(zhí)行控制方法,所述第I虛擬程序包含以執(zhí)行頻率作為基準(zhǔn)而預(yù)先規(guī)定的通常動作時所使用的程序,所述第2虛擬程序包含以執(zhí)行頻率作為基準(zhǔn)而預(yù)先規(guī)定的非通常動作時所使用的程序。
[0025]此外,根據(jù)本發(fā)明的一個方式的程序執(zhí)行控制方法,與所述存儲器的空閑容量相對應(yīng)而從所述存儲器刪除所述一方的虛擬程序的至少一部分的步驟包含:在所述執(zhí)行部的存儲器中不存在能夠存儲所述另一方的虛擬程序的至少一部分的空閑容量的情況下,從所述存儲器刪除所述一方的虛擬程序的至少一部分的步驟。
[0026]此外,根據(jù)本發(fā)明的一個方式的程序執(zhí)行控制方法,與所述存儲器的空閑容量相對應(yīng)而從所述存儲器刪除所述一方的虛擬程序的至少一部分的步驟包含:在所述執(zhí)行部的存儲器中存在能夠存儲所述另一方的虛擬程序的至少一部分的空閑容量的情況下,不從所述存儲器刪除所述一方的虛擬程序,而使所述執(zhí)行部的存儲器存儲另一方的虛擬程序的至少一部分的步驟。
[0027]發(fā)明的效果
[0028]根據(jù)本發(fā)明的一個方式,由于在切換控制部的控制之下在執(zhí)行部中執(zhí)行第I虛擬程序和第2虛擬程序中的某一方,因此具有即使程序大小增加,也能夠?qū)⒊霈F(xiàn)應(yīng)用程序不能執(zhí)行的情況避免這樣的效果,其中,該第I虛擬程序包含用于實(shí)現(xiàn)協(xié)議棧實(shí)現(xiàn)的通信程序以及應(yīng)用程序的一部分(經(jīng)由協(xié)議棧進(jìn)行數(shù)據(jù)的發(fā)送/接收的程序),該第2虛擬程序包含其余的應(yīng)用程序。此外,在應(yīng)對虛擬程序大小的增加時,也能夠通過將保存部進(jìn)行擴(kuò)展而容易地應(yīng)對。
【專利附圖】
【附圖說明】
[0029]圖1是表示本發(fā)明的第I實(shí)施方式涉及的通信裝置的要部結(jié)構(gòu)的框圖。
[0030]圖2是表示本發(fā)明的第I實(shí)施方式的虛擬程序的一個例子的圖。
[0031]圖3是用于說明本發(fā)明的第I實(shí)施方式的虛擬程序的切換條件的圖。
[0032]圖4是表示本發(fā)明的第I實(shí)施方式涉及的通信裝置的接收動作的流程圖。
[0033]圖5是表示本發(fā)明的第I實(shí)施方式涉及的通信裝置的發(fā)送動作的流程圖。
[0034]圖6是表示本發(fā)明的第2實(shí)施方式涉及的通信裝置的動作的流程圖。
【具體實(shí)施方式】
[0035]以下,參照附圖詳細(xì)說明本發(fā)明的一個實(shí)施方式涉及的通信裝置。
[0036]〔第I實(shí)施方式〕
[0037]圖1是表示本發(fā)明的第I實(shí)施方式涉及的通信裝置的要部結(jié)構(gòu)的框圖。如圖1所示,該第一實(shí)施方式的通信裝置I具有:虛擬程序保存部11 (保存部)、虛擬程序執(zhí)行部12 (執(zhí)行部)、切換控制部13、以及無線通信接口部14,依照規(guī)定的無線通信標(biāo)準(zhǔn)進(jìn)行通信。例如,通信裝置I是依照工業(yè)用無線通信標(biāo)準(zhǔn)即ISA100進(jìn)行無線通信的現(xiàn)場儀器。
[0038]虛擬程序保存部11 例如利用閃存 ROM (Read Only Memory) >EEPR0M (Electrical IyErasable and Programmable ROM)等非易失性存儲器實(shí)現(xiàn),對在通信裝置I中使用的虛擬程序Pl(第I虛擬程序)以及虛擬程序P2(第2虛擬程序)進(jìn)行保存。虛擬程序Pl以及P2是與通信裝置I的硬件結(jié)構(gòu)相對應(yīng)而包含有多個程序或分割后的程序的程序。
[0039]圖2是表示本發(fā)明的第I實(shí)施方式的虛擬程序的一個例子的圖。如圖2所示,虛擬程序PI包含通信程序P11?P13以及應(yīng)用程序P21,使用參數(shù)PMl。通信程序P11?P13是依照上述的無線通信標(biāo)準(zhǔn)實(shí)現(xiàn)協(xié)議棧ST的程序。具體而言,通信程序Pll實(shí)現(xiàn)協(xié)議棧ST的數(shù)據(jù)鏈路層,通信程序P12實(shí)現(xiàn)協(xié)議棧ST的網(wǎng)絡(luò)層,通信程序P13實(shí)現(xiàn)協(xié)議棧ST的傳輸層。
[0040]例如,通信程序Pll實(shí)現(xiàn)由無線通信標(biāo)準(zhǔn)IEEE802.15.4規(guī)定的數(shù)據(jù)鏈路層。通信程序P12實(shí)現(xiàn)由互聯(lián)網(wǎng)協(xié)議的一種即IPv6規(guī)定的網(wǎng)絡(luò)層。通信程序P13實(shí)現(xiàn)由互聯(lián)網(wǎng)協(xié)議規(guī)定的UDP(User Datagram Protocol:用戶數(shù)據(jù)報(bào)協(xié)議)而作為傳輸層。
[0041]應(yīng)用程序P21是用于實(shí)現(xiàn)通信裝置I的功能(例如,流量測定功能、溫度測定功能、其它功能)的應(yīng)用程序P20中的、經(jīng)由協(xié)議棧ST進(jìn)行數(shù)據(jù)的發(fā)送/接收的程序。參數(shù)PMl是在通信程序Pll?P13以及應(yīng)用程序P21的執(zhí)行時所使用的參數(shù),例如,包含表示數(shù)據(jù)的發(fā)送目標(biāo)和發(fā)送源的信息、用于識別通信網(wǎng)絡(luò)的信息(子網(wǎng)ID)。
[0042]與此相對,虛擬程序P2包含應(yīng)用程序P22,使用參數(shù)PM2。應(yīng)用程序P22是應(yīng)用程序P20中的除了應(yīng)用程序P21之外其余的程序。例如,應(yīng)用程序P22是用于實(shí)現(xiàn):經(jīng)由協(xié)議棧ST而發(fā)送的數(shù)據(jù)的前處理、經(jīng)由協(xié)議棧ST而接收到的數(shù)據(jù)的后處理、以及上述的通信裝置I的功能(例如,流量測定功能、溫度測定功能、其它功能)的程序。在所述前處理中包含加密處理,但也可以包含除此之外的處理。在所述后處理中包含解密處理,但也可以包含除此之外的處理。參數(shù)PM2是在應(yīng)用程序P22的執(zhí)行時所使用的參數(shù),例如包含:在加密處理中所使用的密鑰信息、表示加密算法的信息、表示測定出的流量、溫度的單位的信息。
[0043]在該第一實(shí)施方式中,對應(yīng)用程序P20被分割為經(jīng)由協(xié)議棧ST進(jìn)行數(shù)據(jù)的發(fā)送/接收的程序即應(yīng)用程序P21,以及其余的應(yīng)用程序P22的例子進(jìn)行說明,但應(yīng)用程序P20的分割方法是任意的。例如,應(yīng)用程序P20也可以分割為大于或等于3個的程序。但是,不會發(fā)生應(yīng)用程序P20無法執(zhí)行的情況,并且,不會對通信裝置I的處理(例如,數(shù)據(jù)的發(fā)送/接收處理)造成障礙。此外,也可以是應(yīng)用程序P22被分割為多個子程序,并以該子程序?yàn)閱挝贿M(jìn)行程序的執(zhí)行。如上所述,將應(yīng)用程序P22分割的目的在于,即使應(yīng)用程序P22的程序大小是通信裝置I無法執(zhí)行的大小,也能夠執(zhí)行應(yīng)用程序P22。
[0044]虛擬程序執(zhí)行部12依次執(zhí)行在虛擬程序保存部11中保存的虛擬程序Pl以及P2。該虛擬程序執(zhí)行部12利用CPU (中央處理裝置)以及RAM (Random Access Memory)等易失性的存儲器實(shí)現(xiàn),將利用切換控制部13的控制而從虛擬程序保存部11讀出的虛擬程序存儲至易失性存儲器中并執(zhí)行。另外,構(gòu)成虛擬程序執(zhí)行部12的一部分的易失性存儲器的容量可以設(shè)定為能夠使虛擬程序Pl以及P2執(zhí)行的容量。此外,在圖1中,為了便于理解,將讀出至虛擬程序執(zhí)行部12的虛擬程序表現(xiàn)為虛線的虛擬程序PO。
[0045]此外,虛擬程序執(zhí)行部12具有信息保持區(qū)域R1,其是對在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序之間所傳遞的信息進(jìn)行保持的區(qū)域。在該信息保持區(qū)域Rl中,例如保持:通過虛擬程序Pl進(jìn)行接收處理后的數(shù)據(jù)、以及通過虛擬程序P2進(jìn)行加密處理后的數(shù)據(jù)等。通過設(shè)置該信息保持區(qū)域R1,能夠在虛擬程序Pl以及P2之間順利地進(jìn)行信息的傳遞,其中,虛擬程序Pl以及P2利用切換控制部13進(jìn)行切換。
[0046]切換控制部13進(jìn)行在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序Pl以及P2的切換。具體而言,切換控制部13如圖3所示,在從虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序PO輸出了事件信號El的情況下,進(jìn)行在虛擬程序執(zhí)行部12中所執(zhí)行的虛擬程序Pl以及P2的切換。圖3是用于說明本發(fā)明的第I實(shí)施方式的虛擬程序的切換條件的圖。
[0047]例如,在從通信裝置I的外部發(fā)送數(shù)據(jù)的情況下,切換控制部13從虛擬程序保存部11讀出虛擬程序Pl并存儲至虛擬程序執(zhí)行部12的存儲器,在虛擬程序執(zhí)行部12中執(zhí)行。并且,在表示接收處理結(jié)束這一情況的事件信號El從虛擬程序Pl (虛擬程序PO)輸出時,切換控制部13確認(rèn)在虛擬程序執(zhí)行部12的存儲器中是否存在能夠存儲虛擬程序P2的空閑容量,在存在空閑容量的情況下,不刪除虛擬程序P1,而從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器。另一方面,在虛擬程序執(zhí)行部12的存儲器中不存在能夠存儲虛擬程序P2的空閑容量的情況下,從虛擬程序執(zhí)行部12的存儲器中刪除虛擬程序P1,從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器。此外,在虛擬程序Pl以及P2分別包含多個子程序的情況下,也可以是以該子程序?yàn)閱挝?,將程序從虛擬程序保存部11讀出,存儲至虛擬程序執(zhí)行部12的存儲器,從存儲器中刪除。由此,將在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序從虛擬程序Pl切換為虛擬程序P2,針對進(jìn)行接收處理后的數(shù)據(jù)進(jìn)行解密處理等后處理。
[0048]此外,例如,在將數(shù)據(jù)發(fā)送至通信裝置I的外部的情況下,切換控制部13從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器,在虛擬程序執(zhí)行部12中執(zhí)行,進(jìn)行加密處理等前處理。并且,在表示加密處理結(jié)束這一情況的事件信號El從虛擬程序P2(虛擬程序PO)輸出時,切換控制部13確認(rèn)在虛擬程序執(zhí)行部12的存儲器中是否存在能夠存儲虛擬程序Pl的空閑容量,在存在空閑容量的情況下,不刪除虛擬程序P2,而從虛擬程序保存部11讀出虛擬程序P1,并存儲至虛擬程序執(zhí)行部12的存儲器。另一方面,在虛擬程序執(zhí)行部12的存儲器中不存在能夠存儲虛擬程序Pl的空閑容量的情況下,從虛擬程序執(zhí)行部12的存儲器中刪除虛擬程序P2,從虛擬程序保存部11讀出虛擬程序P1,并存儲至虛擬程序執(zhí)行部12的存儲器。此外,在虛擬程序Pl以及P2分別包含多個子程序的情況下,也可以是以該子程序?yàn)閱挝?,將程序從虛擬程序保存部11讀出,存儲至虛擬程序執(zhí)行部12的存儲器,從存儲器中刪除。由此,將在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序從虛擬程序P2切換為虛擬程序P1,對進(jìn)行加密處理后的數(shù)據(jù)進(jìn)行發(fā)送處理。
[0049]并且,切換控制部13在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序PO的狀態(tài)不定的情況下(例如,利用看門狗定時器檢測出問題的情況下等),必須在虛擬程序執(zhí)行部12中執(zhí)行包含實(shí)現(xiàn)協(xié)議棧ST的通信程序Pll?P13在內(nèi)的虛擬程序P1。這是由于,例如,為了通過遠(yuǎn)程操作而將在虛擬程序P2的執(zhí)行過程中產(chǎn)生的問題復(fù)原,將通信裝置I設(shè)為能夠通信的狀態(tài)。如上所述,如果通過遠(yuǎn)程操作能夠?qū)⒃谕ㄐ叛b置I中產(chǎn)生的問題復(fù)原,則不需要使作業(yè)人員前往通信裝置I的設(shè)置場所進(jìn)行復(fù)原作業(yè),能夠盡快地使通信裝置I復(fù)原。
[0050]無線通信接口部14從通信裝置I的外部接收作為無線信號而發(fā)送的數(shù)據(jù),并且將發(fā)送至通信裝置I的外部的數(shù)據(jù)以無線信號的形式進(jìn)行發(fā)送。該無線通信接口部14例如與由無線通信標(biāo)準(zhǔn)IEEE802.15.4、無線通信標(biāo)準(zhǔn)IEEE802.lln、或者無線通信標(biāo)準(zhǔn)IEEE802.1la規(guī)定的物理層相當(dāng)。
[0051]下面,對上述結(jié)構(gòu)中的通信裝置I的動作進(jìn)行簡單的說明。另外,以下,以從通信裝置I的外部接收以無線信號發(fā)送出的數(shù)據(jù)時的動作(接收動作)、以及將發(fā)送至通信裝置I的外部的數(shù)據(jù)以無線信號的形式進(jìn)行發(fā)送時的動作(發(fā)送動作)為例進(jìn)行說明。通信裝置I為了降低消耗電力,設(shè)為按照預(yù)先規(guī)定的時間表進(jìn)行間歇動作。因此,通信裝置I在預(yù)先規(guī)定的定時進(jìn)行發(fā)送動作,并在與進(jìn)行發(fā)送動作的定時不同的預(yù)先規(guī)定的定時進(jìn)行接收動作。
[0052]〈接收動作〉
[0053]圖4是表示本發(fā)明的第I實(shí)施方式涉及的通信裝置I的接收動作的流程圖。在進(jìn)行接收動作的情況下,首先,在虛擬程序保存部11中保存的虛擬程序Pl由切換控制部13讀出,并存儲至虛擬程序執(zhí)行部12的存儲器,在虛擬程序執(zhí)行部12被執(zhí)行(步驟Sll)。由此,在通信裝置I中實(shí)現(xiàn)如圖2所示的協(xié)議棧ST、以及經(jīng)由協(xié)議棧ST進(jìn)行的數(shù)據(jù)的發(fā)送/接收功能(利用應(yīng)用程序P21實(shí)現(xiàn)的功能)。
[0054]在正在執(zhí)行虛擬程序Pl的狀態(tài)下,如果從通信裝置I的外部發(fā)送來以通信裝置I為目標(biāo)的數(shù)據(jù),則該數(shù)據(jù)由無線通信接口部14接收(步驟S12)。由無線通信接口部14接收到的數(shù)據(jù)被輸出至虛擬程序執(zhí)行部12,進(jìn)行利用虛擬程序Pl進(jìn)行的接收處理(數(shù)據(jù)包處理等)(步驟S13)。另外,利用虛擬程序Pl進(jìn)行的接收處理,是使用利用通信程序Pll?P13而實(shí)現(xiàn)的協(xié)議棧ST和參數(shù)PMl進(jìn)行的。進(jìn)行接收處理后的數(shù)據(jù)被保持在虛擬程序執(zhí)行部12的信息保持區(qū)域Rl中(步驟S14)。
[0055]如果利用虛擬程序Pl進(jìn)行的接收處理結(jié)束,則表示接收處理結(jié)束這一情況的事件信號El從虛擬程序Pl (虛擬程序PO)輸出至切換控制部13 (步驟S15)。然后,切換控制部13確認(rèn)在虛擬程序執(zhí)行部12的存儲器中是否存在能夠存儲虛擬程序P2的空閑容量(步驟S16)。在虛擬程序執(zhí)行部12的存儲器中存在能夠存儲虛擬程序P2的空閑容量的情況下(步驟S16的確認(rèn)結(jié)果是“YES”的情況下),不從存儲器中刪除虛擬程序P1,而從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器(步驟S18)。另一方面,在虛擬程序執(zhí)行部12的存儲器中不存在能夠存儲虛擬程序P2的空閑容量的情況下(步驟S16的確認(rèn)結(jié)果是“NO”的情況下),從虛擬程序執(zhí)行部12的存儲器刪除虛擬程序Pl (步驟S17),從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器(步驟S18)。此外,在虛擬程序Pl以及P2分別包含多個子程序的情況下,也可以是以該子程序?yàn)閱挝唬瑢⒊绦驈奶摂M程序保存部11讀出,存儲至虛擬程序執(zhí)行部12的存儲器,從存儲器中刪除。由此,將在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序從虛擬程序Pl切換為虛擬程序P2。由此,實(shí)現(xiàn)圖2所示的應(yīng)用程序P22的功能,進(jìn)行經(jīng)由協(xié)議棧ST接收到的數(shù)據(jù)的解密處理等后處理(步驟S19)。另外,在解密處理中,利用應(yīng)用程序P22讀出在信息保持區(qū)域Rl中保持的數(shù)據(jù),并使用在虛擬程序P2中所包含的參數(shù)PM2。由此,發(fā)送至通信裝置I的數(shù)據(jù)被接收。
[0056]在以上的接收處理中得到的數(shù)據(jù)在例如利用應(yīng)用程序P22而實(shí)現(xiàn)的功能(例如,流量測定功能、溫度測定功能、其它功能)中使用。另外,在步驟S17?S19的處理中產(chǎn)生問題的情況下,例如,為了能夠利用遠(yuǎn)程操作而將在虛擬程序P2的執(zhí)行過程中所產(chǎn)生的問題復(fù)原,在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序利用切換控制部13從虛擬程序P2切換為虛擬程序Pl。
[0057]〈發(fā)送動作〉
[0058]圖5是表示本發(fā)明的第I實(shí)施方式涉及的通信裝置I的發(fā)送動作的流程圖。在進(jìn)行發(fā)送動作的情況下,首先,在虛擬程序保存部11中保存的虛擬程序P2由切換控制部13讀出,并存儲至虛擬程序執(zhí)行部12的存儲器,在虛擬程序執(zhí)行部12中被執(zhí)行(步驟S21)。由此,實(shí)現(xiàn)圖2所示的應(yīng)用程序P22的功能。如果執(zhí)行虛擬程序P2,則進(jìn)行取得發(fā)送至通信裝置I的外部的數(shù)據(jù)的處理(步驟S22)。例如,在通過應(yīng)用程序P22的執(zhí)行而在通信裝置I中實(shí)現(xiàn)流量測定功能的情況下,進(jìn)行測定流量并取得流量數(shù)據(jù)的處理,另一方面,在通信裝置I中實(shí)現(xiàn)溫度測定功能的情況下,進(jìn)行測定溫度并取得溫度數(shù)據(jù)的處理。
[0059]如果發(fā)送至通信裝置I的外部的數(shù)據(jù)被取得,則該數(shù)據(jù)在虛擬程序執(zhí)行部12中被進(jìn)行加密處理等前處理(步驟S23)。另外,加密處理使用在虛擬程序P2中所包含的參數(shù)PM2進(jìn)行。進(jìn)行加密處理后的數(shù)據(jù)保持在虛擬程序執(zhí)行部12的信息保持區(qū)域Rl中(步驟S24)。
[0060]如果利用虛擬程序P2進(jìn)行的加密處理結(jié)束,則表示加密處理結(jié)束這一情況的事件信號El從虛擬程序P2 (虛擬程序PO)輸出至切換控制部13 (步驟S25)。然后,切換控制部13確認(rèn)在虛擬程序執(zhí)行部12的存儲器中是否存在能夠存儲虛擬程序Pl的空閑容量(步驟S26)。在虛擬程序執(zhí)行部12的存儲器中存在能夠存儲虛擬程序Pl的空閑容量的情況下(步驟S26的確認(rèn)結(jié)果是“YES”的情況下),不從存儲器中刪除虛擬程序P2,而從虛擬程序保存部11讀出虛擬程序P1,并存儲至虛擬程序執(zhí)行部12的存儲器(步驟S28)。另一方面,在虛擬程序執(zhí)行部12的存儲器中不存在能夠存儲虛擬程序Pl的空閑容量的情況下(步驟S26的確認(rèn)結(jié)果是“NO”的情況下),從虛擬程序執(zhí)行部12的存儲器刪除虛擬程序P2(步驟S27),從虛擬程序保存部11讀出虛擬程序P1,并存儲至虛擬程序執(zhí)行部12的存儲器(步驟S28)。此外,在虛擬程序Pl以及P2分別包含多個子程序的情況下,也可以是以該子程序?yàn)閱挝?,將程序從虛擬程序保存部11讀出,存儲至虛擬程序執(zhí)行部12的存儲器,從存儲器中刪除。由此,將在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序從虛擬程序P2切換為虛擬程序P1。由此,實(shí)現(xiàn)圖2所示的協(xié)議棧ST、和經(jīng)由協(xié)議棧ST進(jìn)行的數(shù)據(jù)的發(fā)送/接收功能(利用應(yīng)用程序P21實(shí)現(xiàn)的功能)。
[0061]利用虛擬程序P2被加密后的數(shù)據(jù),在虛擬程序執(zhí)行部12中進(jìn)行利用虛擬程序Pl進(jìn)行的發(fā)送處理(數(shù)據(jù)包處理等)(步驟S29)。另外,利用虛擬程序Pl進(jìn)行的發(fā)送處理,是使用利用通信程序Pll?P13實(shí)現(xiàn)的協(xié)議棧ST和參數(shù)PMl進(jìn)行的。利用虛擬程序Pl進(jìn)行的發(fā)送處理結(jié)束后的數(shù)據(jù),從虛擬程序執(zhí)行部12輸出至無線通信接口部14而作為無線信號被發(fā)送。如上所述,將數(shù)據(jù)從通信裝置I發(fā)送至外部。
[0062]另外,在步驟S21?S27的處理中產(chǎn)生問題的情況下,在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序利用切換控制部13從虛擬程序P2切換為虛擬程序Pl。與接收處理的情況同樣地,這是為了例如能夠利用遠(yuǎn)程操作而將在虛擬程序P2的執(zhí)行中所產(chǎn)生的問題復(fù)原。
[0063]如上所述,在本第I實(shí)施方式中,構(gòu)成為,將虛擬程序Pl以及P2保存至虛擬程序保存部11,并利用切換控制部13對在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序Pl以及P2進(jìn)行切換,其中,該虛擬程序Pl以及P2與通信裝置I的硬件結(jié)構(gòu)相對應(yīng)而包含有多個程序或分割后的程序。因此,即使用于實(shí)現(xiàn)通信裝置I的功能的應(yīng)用程序P20的程序大小有一定量的增加,也能夠避免出現(xiàn)應(yīng)用程序20無法執(zhí)行的情況。
[0064]〔第2實(shí)施方式〕
[0065]下面,對本發(fā)明的第2實(shí)施方式涉及的通信裝置進(jìn)行說明。該第2實(shí)施方式的通信裝置與第I實(shí)施方式涉及的通信裝置I同樣地,是具有虛擬程序保存部11?無線接口 14的結(jié)構(gòu)。然而,關(guān)于該第2實(shí)施方式的通信裝置,在虛擬程序保存部11中保存的虛擬程序Pl以及P2與第I實(shí)施方式不同。
[0066]具體而言,在前述的第I實(shí)施方式中,在虛擬程序Pl以及P2中所包含的應(yīng)用程序P20是以有無進(jìn)行數(shù)據(jù)的發(fā)送/接收的功能為基準(zhǔn),而分割為進(jìn)行數(shù)據(jù)的發(fā)送/接收的應(yīng)用程序P21、和其余的應(yīng)用程序P22。與此相對,在該第2實(shí)施方式中,在虛擬程序Pl以及P2中所包含的應(yīng)用程序P20是以執(zhí)行頻率為基準(zhǔn),而分割為在通常動作時所使用的應(yīng)用程序P21、和在非通常動作時所使用的(根據(jù)需要而執(zhí)行)應(yīng)用程序P22。
[0067]上述的在通常動作時所使用的應(yīng)用程序P21是應(yīng)用程序P20中的、包含經(jīng)由協(xié)議棧ST進(jìn)行數(shù)據(jù)的發(fā)送/接收的程序,以及實(shí)現(xiàn)流量測定功能、溫度測定功能等的程序在內(nèi)的程序。與此相對,在非通常動作時所使用的應(yīng)用程序P22是應(yīng)用程序P20中的、進(jìn)行用于維護(hù)的處理或利用公鑰加密進(jìn)行的密鑰交換處理的程序。
[0068]S卩,如果參照圖2進(jìn)行說明,則在該第2實(shí)施方式中,虛擬程序Pl包含用于實(shí)現(xiàn)協(xié)議棧ST的通信程序Pll?P13、以及上述的在通常動作時所使用的應(yīng)用程序P21,使用參數(shù)PMl0在參數(shù)PMl中,包含用于進(jìn)行通信的發(fā)送目標(biāo)、發(fā)送源、子網(wǎng)ID等信息,以及表示測定出的流量、溫度的單位的信息。與此相對,虛擬程序P2包含上述的在非通常動作時所使用的應(yīng)用程序P22,使用參數(shù)PM2。在參數(shù)PM2中,包含非通常動作時中的主要的信息(例如,證書的私鑰、認(rèn)證機(jī)構(gòu)(CA-Certificat1n Authority)的公鑰等)。
[0069]另外,該第2實(shí)施方式的切換控制部13根據(jù)通過通信而來自外部的事件進(jìn)行虛擬程序P21以及P22的切換。具體而言,切換控制部13在啟動時將進(jìn)行通常動作的虛擬程序Pl存儲至虛擬程序執(zhí)行部12的存儲器,并在虛擬程序執(zhí)行部12中執(zhí)行。然后,在從外部接收到非通常動作的數(shù)據(jù)包(用于密鑰交換、維護(hù)的數(shù)據(jù)包)而輸出了來自虛擬程序Pi(虛擬程序PO)的事件信號El的情況下,切換控制部13確認(rèn)在虛擬程序執(zhí)行部12的存儲器中是否存在能夠存儲虛擬程序P2的空閑容量,在存在空閑容量的情況下,不刪除虛擬程序P1,而從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器。另一方面,在虛擬程序執(zhí)行部12的存儲器中不存在能夠存儲虛擬程序P2的空閑容量的情況下,從虛擬程序執(zhí)行部12的存儲器中刪除虛擬程序P1,從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器。此外,在虛擬程序Pl以及P2分別包含多個子程序的情況下,也可以是以該子程序?yàn)閱挝?,將程序從虛擬程序保存部11讀出,存儲至虛擬程序執(zhí)行部12的存儲器,從存儲器中刪除。由此,將在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序切換為虛擬程序P2。
[0070]下面,對該第2實(shí)施方式涉及的通信裝置I的動作進(jìn)行簡單說明。圖6是表示該第2實(shí)施方式涉及的通信裝置的動作的流程圖。另外,圖6所示的流程圖在接通電源并啟動通信裝置后開始。
[0071]〈通常動作〉
[0072]如果通信裝置I啟動,則首先,將在虛擬程序保存部11中保存的虛擬程序Pl由切換控制部13讀出,并存儲至虛擬程序執(zhí)行部12的存儲器,在虛擬程序執(zhí)行部12中被執(zhí)行(步驟S31)。由此,在通信裝置中實(shí)現(xiàn):圖2所示的協(xié)議棧ST、和用于經(jīng)由協(xié)議棧ST實(shí)現(xiàn)數(shù)據(jù)的發(fā)送/接收功能以及流量測定功能等的程序(利用應(yīng)用程序P21實(shí)現(xiàn)的功能),進(jìn)行通常動作(步驟S32)。另外,在通常動作時,經(jīng)由無線通信接口 14進(jìn)行數(shù)據(jù)的發(fā)送/接收。
[0073]在通常動作時,虛擬程序執(zhí)行部12按照虛擬程序Pl (虛擬程序PO)而判斷是否接收有非通常動作的數(shù)據(jù)包(步驟S33)。具體而言,判斷是否經(jīng)由無線通信接口部14接收到用于密鑰交換、維護(hù)的數(shù)據(jù)包。在虛擬程序執(zhí)行部12判斷為沒有接收到非通常動作的數(shù)據(jù)包的情況下(判斷結(jié)果為“NO”的情況下),重復(fù)進(jìn)行通常動作(步驟S32)。
[0074]與此相對,在判斷為接收到非通常動作的數(shù)據(jù)包的情況下(步驟S33的判斷結(jié)果是“YES”的情況下),虛擬程序Pl (虛擬程序PO)通過協(xié)議棧ST處理數(shù)據(jù)包。然后,虛擬程序Pl(虛擬程序PO)將該處理結(jié)果(例如,密鑰交換信息)保持在信息保持區(qū)域Rl中,并且將事件信號El輸出至切換控制部13 (步驟S34)。
[0075]〈非通常動作〉
[0076]如果來自虛擬程序Pl (虛擬程序PO)的事件信號El被輸入,則切換控制部13確認(rèn)在虛擬程序執(zhí)行部12的存儲器中是否存在能夠存儲虛擬程序P2的空閑容量(步驟S35)。在虛擬程序執(zhí)行部12的存儲器中存在能夠存儲虛擬程序P2的空閑容量的情況下(步驟S35的確認(rèn)結(jié)果是“YES”的情況下),不從存儲器中刪除虛擬程序Pl,而從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器(步驟S37)。另一方面,在虛擬程序執(zhí)行部12的存儲器中不存在能夠存儲虛擬程序P2的空閑容量的情況下(步驟S35的確認(rèn)結(jié)果是“NO”的情況下),從虛擬程序執(zhí)行部12的存儲器刪除虛擬程序Pl (步驟S36),從虛擬程序保存部11讀出虛擬程序P2,并存儲至虛擬程序執(zhí)行部12的存儲器(步驟S37)。此外,在虛擬程序Pl以及P2分別包含多個子程序的情況下,也可以是以該子程序?yàn)閱挝?,將程序從虛擬程序保存部11讀出,存儲至虛擬程序執(zhí)行部12的存儲器,從存儲器中刪除。由此,在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序從虛擬程序Pl切換為虛擬程序P2。由此,圖2所示的應(yīng)用程序P22的功能在通信裝置中被實(shí)現(xiàn),進(jìn)行非通常動作。具體而言,在信息保存區(qū)域Rl中所保持的密鑰交換信息由虛擬程序P2(虛擬程序PO)取出,并使用在參數(shù)PM2中所包含的私鑰進(jìn)行解密處理(步驟S38)。
[0077]如果解密處理結(jié)束,則將該處理結(jié)果保持在信息保持區(qū)域Rl中,并且從虛擬程序P2(虛擬程序PO)向切換控制部13輸出事件信號El (步驟S39)。如果來自虛擬程序P2(虛擬程序PO)的事件信號El被輸入,則切換控制部13確認(rèn)在虛擬程序執(zhí)行部12的存儲器中是否存在虛擬程序Pl (步驟S40)。在虛擬程序執(zhí)行部12的存儲器中存在虛擬程序Pl的情況下(步驟S40的確認(rèn)結(jié)果是“YES”的情況下),將在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序從虛擬程序P2切換為虛擬程序P1。在虛擬程序執(zhí)行部12的存儲器中不存在虛擬程序Pl的情況下(步驟S40的確認(rèn)結(jié)果是“NO”的情況下),確認(rèn)在虛擬程序執(zhí)行部12的存儲器中是否存在能夠存儲虛擬程序Pl的空閑容量(步驟S41)。在虛擬程序執(zhí)行部12的存儲器中存在空閑容量的情況下(步驟S41的確認(rèn)結(jié)果是“YES”的情況下),不刪除虛擬程序P2,而從虛擬程序保存部11讀出虛擬程序P1,并存儲至虛擬程序執(zhí)行部12的存儲器(步驟S31)。另一方面,在虛擬程序執(zhí)行部12的存儲器中不存在能夠存儲虛擬程序Pl的空閑容量的情況下(步驟S41的確認(rèn)結(jié)果是“NO”的情況下),從虛擬程序執(zhí)行部12的存儲器刪除虛擬程序P2 (步驟S42),從虛擬程序保存部11讀出虛擬程序Pl,并存儲至虛擬程序執(zhí)行部12的存儲器(步驟S31)。此外,在虛擬程序Pl以及P2分別包含多個子程序的情況下,也可以是以該子程序?yàn)閱挝?,將程序從虛擬程序保存部11讀出,存儲至虛擬程序執(zhí)行部12的存儲器,從存儲器中刪除。由此,將在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序由虛擬程序P2切換為虛擬程序Pl,再次進(jìn)行通常動作(步驟S32)。
[0078]另外,如果再次進(jìn)行通常動作,則在信息保持區(qū)域Rl中所保持的解密處理的處理結(jié)果由虛擬程序Pl (虛擬程序PO)取出,并使用由此得到的密鑰進(jìn)行通常動作。另外,在步驟S36?S42的處理中產(chǎn)生問題的情況下,在虛擬程序執(zhí)行部12中執(zhí)行的虛擬程序,利用切換控制部13從虛擬程序P2被切換為虛擬程序P1。與第I實(shí)施方式同樣地,這是為了例如能夠利用遠(yuǎn)程操作而將在虛擬程序P2的執(zhí)行過程中所產(chǎn)生的問題復(fù)原。
[0079]如上所述,在該第2實(shí)施方式中,與通信裝置I的硬件結(jié)構(gòu)相對應(yīng),將應(yīng)用程序P20以執(zhí)行頻率為基準(zhǔn)而分割為應(yīng)用程序P21以及P22,并分別包含在虛擬程序Pl以及P2中,利用切換控制部13對這些虛擬程序Pl以及P2進(jìn)行切換。由此,對于需要進(jìn)行省電動作的儀器而言,即使程序大小有變大趨勢的程序(例如,利用公鑰加密而進(jìn)行密鑰交換處理的程序)的程序大小有一定量的增加,也能夠避免出現(xiàn)應(yīng)用程序20無法執(zhí)行的情況。
[0080]以上,對本發(fā)明的一個實(shí)施方式涉及的通信裝置進(jìn)行了說明,但本發(fā)明不限于上述的實(shí)施方式,能夠在本發(fā)明的范圍內(nèi)自由變更。例如,在上述實(shí)施方式中,以通信裝置I是依照ISA10進(jìn)行無線通信的現(xiàn)場儀器的情況為例進(jìn)行了說明,但也可以是依照WirelessHART(注冊商標(biāo))進(jìn)行無線通信的現(xiàn)場儀器。此外,本發(fā)明不僅能應(yīng)用于進(jìn)行無線通信的通信裝置,還能夠應(yīng)用于進(jìn)行有線通信的通信裝置。
[0081]標(biāo)號的說明
[0082]I 通信裝置
[0083]11 虛擬程序保存部
[0084]12 虛擬程序執(zhí)行部
[0085]13 切換控制部
[0086]P1、P2 虛擬程序
[0087]Pll?P13 通信程序
[0088]P20 應(yīng)用程序
[0089]P2UP22 應(yīng)用程序
[0090]PM1、PM2 參數(shù)
[0091]Rl 信息保持區(qū)域
[0092]ST 協(xié)議棧
【權(quán)利要求】
1.一種通信裝置,其依照規(guī)定的通信標(biāo)準(zhǔn)進(jìn)行通信,該通信裝置具有: 保存部,其構(gòu)成為至少保存第I虛擬程序和第2虛擬程序,其中,該第I虛擬程序包含用于實(shí)現(xiàn)所述通信裝置的第I功能的程序,該第2虛擬程序包含用于實(shí)現(xiàn)所述通信裝置的第2功能的程序; 執(zhí)行部,其構(gòu)成為依次執(zhí)行所述第I以及第2虛擬程序;以及 切換控制部,其構(gòu)成為,從所述保存部讀出所述第I以及第2虛擬程序中的某一方的虛擬程序的至少一部分,并存儲至所述執(zhí)行部的存儲器中,在所述執(zhí)行部中執(zhí)行,在所述一方的虛擬程序的處理結(jié)束后,與所述存儲器的空閑容量相對應(yīng)而從所述存儲器刪除所述一方的虛擬程序的至少一部分,從所述保存部讀取所述第I以及第2虛擬程序中的另一方的虛擬程序的至少一部分,并存儲至所述執(zhí)行部的存儲器,在所述執(zhí)行部中執(zhí)行,從而對在所述執(zhí)行部中執(zhí)行的所述第I以及第2虛擬程序進(jìn)行切換。
2.根據(jù)權(quán)利要求1所述的通信裝置,其中, 所述執(zhí)行部具有信息保持區(qū)域,該信息保持區(qū)域?qū)υ谒龅贗虛擬程序和所述第2虛擬程序之間傳遞的信息進(jìn)行保持。
3.根據(jù)權(quán)利要求1所述的通信裝置,其中, 所述第I虛擬程序包含經(jīng)由由所述規(guī)定的通信標(biāo)準(zhǔn)規(guī)定的協(xié)議棧進(jìn)行數(shù)據(jù)的發(fā)送/接收的程序, 所述第2虛擬程序至少包含實(shí)現(xiàn)數(shù)據(jù)的前處理或后處理的程序。
4.根據(jù)權(quán)利要求3所述的通信裝置,其中, 所述切換控制部構(gòu)成為,在從外部向所述通信裝置發(fā)送數(shù)據(jù)的情況下,在所述執(zhí)行部中執(zhí)行所述第I虛擬程序,進(jìn)行數(shù)據(jù)的接收處理,在利用所述第I虛擬程序進(jìn)行的接收處理結(jié)束后,將在所述執(zhí)行部中執(zhí)行的虛擬程序從所述第I虛擬程序切換為所述第2虛擬程序,使所述第2虛擬程序針對進(jìn)行所述接收處理后的數(shù)據(jù)進(jìn)行后處理。
5.根據(jù)權(quán)利要求4所述的通信裝置,其中, 所述第I虛擬程序使用在所述接收處理中所使用的參數(shù), 所述第2虛擬程序使用在所述后處理中所使用的參數(shù)。
6.根據(jù)權(quán)利要求3所述的通信裝置,其中, 所述切換控制部構(gòu)成為,在將數(shù)據(jù)發(fā)送至所述通信裝置的外部的情況下,在所述執(zhí)行部中執(zhí)行所述第2虛擬程序,進(jìn)行數(shù)據(jù)的前處理,在利用所述第2虛擬程序進(jìn)行的前處理結(jié)束后,將在所述執(zhí)行部中執(zhí)行的虛擬程序從所述第2虛擬程序切換為所述第I虛擬程序,使所述第I虛擬程序?qū)M(jìn)行所述前處理后的數(shù)據(jù)進(jìn)行發(fā)送處理。
7.根據(jù)權(quán)利要求6所述的通信裝置,其中, 所述第I虛擬程序使用在所述發(fā)送處理中所使用的參數(shù), 所述第2虛擬程序使用在所述前處理中所使用的參數(shù)。
8.根據(jù)權(quán)利要求1所述的通信裝置,其中, 所述第I虛擬程序包含以執(zhí)行頻率作為基準(zhǔn)而預(yù)先規(guī)定的通常動作時所使用的程序, 所述第2虛擬程序包含以執(zhí)行頻率作為基準(zhǔn)而預(yù)先規(guī)定的非通常動作時所使用的程序。
9.根據(jù)權(quán)利要求1所述的通信裝置,其中, 所述切換控制部構(gòu)成為,在所述一方的虛擬程序的處理結(jié)束后,在確認(rèn)到在所述執(zhí)行部的存儲器中不存在能夠存儲所述另一方的虛擬程序的至少一部分的空閑容量的情況下,從所述存儲器刪除所述一方的虛擬程序的至少一部分。
10.根據(jù)權(quán)利要求1所述的通信裝置,其中, 所述切換控制部構(gòu)成為,在所述一方的虛擬程序的處理結(jié)束后,在確認(rèn)到在所述執(zhí)行部的存儲器中存在能夠存儲所述另一方的虛擬程序的至少一部分的空閑容量的情況下,不從所述存儲器刪除所述一方的虛擬程序,而使所述執(zhí)行部的存儲器存儲所述另一方的虛擬程序的至少一部分。
11.一種方法,其是依照規(guī)定的通信標(biāo)準(zhǔn)進(jìn)行通信的通信裝置中的程序執(zhí)行控制方法,所述方法包含以下步驟: 使第I虛擬程序和第2虛擬程序中的某一方的虛擬程序的至少一部分存儲至所述通信裝置的執(zhí)行部的存儲器中,并在所述執(zhí)行部中執(zhí)行所述一方的虛擬程序的步驟,其中,該第I虛擬程序包含用于實(shí)現(xiàn)所述通信裝置的第I功能的程序,該第2虛擬程序包含用于實(shí)現(xiàn)所述通信裝置的第2功能的程序; 在所述一方的虛擬程序的執(zhí)行結(jié)束后,與所述存儲器的空閑容量相對應(yīng)而從所述存儲器刪除所述一方的虛擬程序的至少一部分的步驟;以及 在與所述存儲器的空閑容量相對應(yīng)而從所述執(zhí)行部的存儲器刪除所述一方的虛擬程序的至少一部分后,使所述第I以及第2虛擬程序的另一方的虛擬程序的至少一部分存儲至所述執(zhí)行部的存儲器,并在所述執(zhí)行部中執(zhí)行所述另一方的虛擬程序的步驟。
12.根據(jù)權(quán)利要求11所述的方法,其中, 所述第I虛擬程序包含經(jīng)由由所述規(guī)定的通信標(biāo)準(zhǔn)規(guī)定的協(xié)議棧進(jìn)行數(shù)據(jù)的發(fā)送/接收的程序, 所述第2虛擬程序至少包含實(shí)現(xiàn)數(shù)據(jù)的前處理或后處理的程序。
13.根據(jù)權(quán)利要求11所述的方法,其中, 所述第I虛擬程序包含以執(zhí)行頻率作為基準(zhǔn)而預(yù)先規(guī)定的通常動作時所使用的程序, 所述第2虛擬程序包含以執(zhí)行頻率作為基準(zhǔn)而預(yù)先規(guī)定的非通常動作時所使用的程序。
14.根據(jù)權(quán)利要求11所述的方法,其中, 與所述存儲器的空閑容量相對應(yīng)而從所述存儲器刪除所述一方的虛擬程序的至少一部分的步驟包含:在所述執(zhí)行部的存儲器中不存在能夠存儲所述另一方的虛擬程序的至少一部分的空閑容量的情況下,從所述存儲器刪除所述一方的虛擬程序的至少一部分的步驟。
15.根據(jù)權(quán)利要求11所述的方法,其中, 與所述存儲器的空閑容量相對應(yīng)而從所述存儲器刪除所述一方的虛擬程序的至少一部分的步驟包含:在所述執(zhí)行部的存儲器中存在能夠存儲所述另一方的虛擬程序的至少一部分的空閑容量的情況下,不從所述存儲器刪除所述一方的虛擬程序,而使所述執(zhí)行部的存儲器存儲所述另一方的虛擬程序的至少一部分的步驟。
【文檔編號】H04L29/06GK104322032SQ201380026421
【公開日】2015年1月28日 申請日期:2013年5月24日 優(yōu)先權(quán)日:2012年5月25日
【發(fā)明者】岡部宣夫, 秋定征世, 宮澤和紀(jì), 櫻井康樹 申請人:橫河電機(jī)株式會社