首页> 中国专利> 数据共享程序、数据分发程序、终端、服务器、数据共享方法以及数据分发方法

数据共享程序、数据分发程序、终端、服务器、数据共享方法以及数据分发方法

摘要

对终端A的逻辑地址空间(LSa)的空地址设定终端(B)的终端ID以及访问分配数据(Db)的文件路径(fpb)。由此,终端(B)的文件系统(FSb)就被装配于终端(A)。同样地,对终端(B)的逻辑地址空间(LSb)的空地址设定终端(A)的终端ID以及访问分配数据(Da)的文件路径(fpa)。由此,终端(A)的文件系统(FSa)就被装配于终端(B)。

著录项

  • 公开/公告号CN103109277A

    专利类型发明专利

  • 公开/公告日2013-05-15

    原文格式PDF

  • 申请/专利权人 富士通株式会社;

    申请/专利号CN201080069103.3

  • 申请日2010-09-17

  • 分类号G06F12/00;G06F13/00;

  • 代理机构北京集佳知识产权代理有限公司;

  • 代理人舒艳君

  • 地址 日本神奈川县

  • 入库时间 2024-02-19 19:02:27

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-09-03

    未缴年费专利权终止 IPC(主分类):G06F12/00 授权公告日:20160323 终止日期:20180917 申请日:20100917

    专利权的终止

  • 2016-03-23

    授权

    授权

  • 2013-06-12

    实质审查的生效 IPC(主分类):G06F12/00 申请日:20100917

    实质审查的生效

  • 2013-05-15

    公开

    公开

说明书

技术领域

本发明涉及对数据进行共享、分发的数据共享程序、数据分发程序、终端、服务器、数据共享方法以及数据分发方法。

背景技术

以往,公开了一种在将数码相机的数据向服务器传输时对多个数码相机分割、分配数据,由各数码相机向服务器传输分配部分的数据的技术(例如参照下述专利文献1)。

另外,公开了一种在分散存储器型计算机中向并列数据库的询问并列处理中,当产生了其他节点向数据库的访问时将节点间的数据传输量减少的技术(例如参照下述专利文献2)。

另外,还公开有在只能使用对等(AdHoc)通信的状况下对分离的终端实现数据通信的技术、当具有所要求的数据的移动终端存在多个时能够从距离最近的终端传输数据的技术(例如参照下述专利文献3、4)。

专利文献1:日本特开2007-66061号公报

专利文献2:日本特开2007-531087号公报

专利文献3:日本特开2007-336360号公报

专利文献4:日本特开2004-64646号公报

然而,当使用上述的现有技术在多个移动终端(例如移动终端A~C)间进行数据共享时,在移动终端A想要利用移动终端B所具有的数据Db时,需要从终端B向终端A发送数据Db。同样,在移动终端A想要利用移动终端C所具有的数据Dc时,需要从移动终端C向移动终端A发送数据Dc。

因此,存在即便当移动终端A的用户想要利用数据Db、Dc时也无法从移动终端A访问移动终端B、C的数据Db、Dc,从而导致数据共享的使用便利性不佳这一问题。

这样的数据共享的使用便利性不佳对于移动终端B利用移动终端A所具有的数据Da、移动终端C所具有的数据Dc的情况、移动终端C利用移动终端A所具有的数据Da、移动终端B所具有的数据Db的情况也同样。

另外,当服务器中存在数据Da~Dc时,通过经由移动电话网来访问服务器,移动终端A~C能够下载数据Da~Dc。

然而,移动电话网中的基站的频带被预先决定,由与基站连接的移动终端分享。因此,与基站连接的移动终端越增加,导致每1台移动终端的使用频带越减少。因此,在按移动终端A~C下载所有数据Da~Dc的情况下,存在下载时间变长这一问题。

另外,由于各移动终端A~C下载所有数据Da~Dc,所以在数据Da~Dc的总数据量庞大的情况下,存在因存储器不足而无法下载这一问题。

发明内容

本发明为了消除上述现有技术的问题点,其目的在于,提供能够在多个终端间实现高效的数据共享的数据共享程序、终端、以及数据共享方法。另外,本发明的目的还在于,为了在多个终端间实现数据共享,提供能够高效地下载各终端的分配内容的数据的数据共享程序、数据分发程序、终端、服务器、数据共享方法、以及数据分发方法。

为了解决上述课题并实现目的,作为一个例子而提出的数据共享程序、终端、以及数据共享方法执行下述处理:检测在对等网络内连接成能够通信的第1终端与第2终端之间的通信频带,将检测出的通信频带和与上述第1终端的存储装置相关的频带进行比较,基于比较结果来设定和上述第1终端的存储装置内的数据与上述第2终端的存储装置内的数据之间的数据共享相关的运用方式,将所决定的运用方式从上述第1终端通知给上述第2终端,基于所决定的运用方式来执行使从上述第2终端访问上述第1终端的存储装置成为可能的装配处理。

另外,作为一个例子而提出的数据分发程序、服务器、以及数据分发方法取得第1终端与能够访问内容的服务器之间的第1通信速度信息,并且取得能够和上述第1终端对等通信的第2终端与上述服务器之间的第2通信速度信息,基于所取得的第1通信速度信息以及第2通信速度信息,来确定上述内容从下载的开始位置到结束位置的下载区间中成为被上述第1终端下载的与上述第1通信速度信息对应的数据量的第1区间、和成为被上述第2终端下载的与上述第2通信速度信息对应的数据量的第2区间,当存在来自上述第1终端的下载请求时,将上述内容中被确定出的上述第1区间内的数据发送给上述第1终端,并且当存在来自上述第2终端的下载请求时,将上述内容中被确定的上述第2区间内的数据发送给上述第2终端。

根据上述数据共享程序、终端以及数据共享方法,起到能够在多个终端间实现高效的数据共享这一效果。另外,根据上述数据共享程序、数据分发程序、终端、服务器、数据共享方法、以及数据分发方法,由于在多个终端间实现数据共享,起到能够高效地下载各终端的分配内容的数据这一效果。

附图说明

图1是表示本发明的实施方式涉及的数据共享系统的系统构成例的说明图。

图2是表示服务器的硬件构成例的框图。

图3是表示终端的硬件构成例的框图。

图4是表示对等通信的连接处理的次序的说明图。

图5是表示图4所示的连接处理(步骤S402、S403、S407)的详细处理步骤的说明图。

图6是表示主终端A中的下载画面的说明图。

图7是表示下载处理的次序的说明图。

图8是表示分配数据的下载处理(步骤S703、S704、S706)的详细处理步骤的次序图。

图9是表示下载区间计算处理(步骤S804)的详细处理步骤的流程图。

图10是表示运用方式设定次序的说明图。

图11是表示图10所示的运用方式决定处理(步骤S1006)的详细处理步骤的流程图。

图12是表示图10所示的连接源终端中的运用方式设定处理(步骤S1008)的详细处理步骤的流程图。

图13是表示图10所示的连接目的地终端中的运用方式设定处理(步骤S1009)的详细处理步骤的流程图。

图14是表示在终端A以及终端B中分别下载了分配数据Da、Db的状态的说明图。

图15是表示从图14所示的状态开始,将终端A作为连接源终端,将终端B作为连接目的地终端进行了疏结合的状态的说明图。

图16是表示图15涉及的疏结合设定后的数据访问的说明图(之1)。

图17是表示图15涉及的疏结合设定后的数据访问的说明图(之2)。

图18是表示在终端A以及终端B中分别下载了分配数据Da、Db的状态的说明图。

图19是表示从图18所示的状态开始,将终端A作为连接源终端,将终端B作为连接目的地终端进行了密结合的状态的说明图。

图20是表示图19涉及的密结合设定后的数据访问的说明图(之1)。

图21是表示图19涉及的密结合设定后的数据访问的说明图(之2)。

图22是表示终端间的数据访问处理的次序的说明图。

图23是表示图22所示的终端间数据访问处理(步骤S2208)的详细处理步骤的次序图(之1)。

图24是表示图22所示的终端间数据访问处理(步骤S2208)的详细处理步骤的次序图(之2)。

图25是表示分配数据的下载处理(步骤S703、S704、S706)的详细处理步骤的次序图。

图26是表示图25所示的下载区间计算处理(步骤S2505)的详细处理步骤的流程图。

图27是表示分配数据的下载处理(步骤S703、S704、S706)的详细处理步骤的次序图。

图28是表示图27所示的下载区间计算处理(步骤S2704)的详细处理步骤的流程图。

图29是表示分配数据的下载处理(步骤S703、S704、S706)的详细处理步骤的次序图。

图30是表示图29所示的下载区间计算处理(步骤S2905)的详细处理步骤的流程图。

具体实施方式

以下,参照附图对本发明的实施方式详细进行说明。

<系统构成例>

图1是表示本发明的实施方式涉及的数据共享系统的系统构成例的说明图。在图1的数据共享系统100中,多个(例如3台)终端A~C经由基站101以及网络103与服务器102连接成能够通信。终端A~C是能够无线通信的便携式计算机,例如包括移动电话机、智能手机、电子词典、图形输入板(tablet)型终端、便携游戏机等。

另外,在服务器102处于网络103内的移动电话网的情况下,各终端A~C经由基站101以及移动电话网对服务器102进行访问。在服务器102处于网络103内的互联网的情况下,各终端A~C经由基站101、移动电话网、互联网对服务器102进行访问。各终端A~C能够在终端间进行对等通信。另外,各终端A~C通过接收来自GPS卫星104的信号,还能够取得当前位置信息。

服务器102预先存储有影像、游戏、地图等数据D,根据来自本终端A~C的下载请求,下载到下载请求源的终端。此外,在图1中,服务器102执行下载请求的受理处理、和存储并下载数据的处理,但也可以由不同的服务器102执行下载请求的受理处理、和存储并下载数据的处理。

该情况下,执行下载请求的受理处理的第1服务器向执行存储并下载数据D的处理的第2服务器发送接收到的下载请求。第2服务器根据接收到的下载请求来确定下载请求源和成为下载对象的数据,下载到下载请求源的终端中。

在这样的数据共享系统100中,各终端A~C从服务器102分割下载数据D。将各终端A~C下载的分割数据称为分配数据。分配数据Da~Dc彼此是不同的数据。各终端A~C能够通过对等通信,来访问数据D中的本终端没有下载的其他终端的分配数据。例如,终端A能够通过对等通信来访问分配数据Db、Dc。

由此,由于各终端A~C相互通过对等通信而连接,所以能够从本终端访问其他终端中存储的分配数据。另外,由于各终端A~C不需要下载所有数据Da~Dc,所以能够实现下载时间的缩短,还能降低陷于存储器不足的情况。

<硬件构成>

图2是表示服务器102的硬件构成例的框图。在图2中,服务器102具备CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、磁盘驱动器204、磁盘205、光盘驱动器206、光盘207、显示器208、I/F(Interface)209、键盘210、鼠标211、扫描仪212、打印机213。另外,各构成部通过总线200分别连接。

这里,CPU201掌控服务器102的整体控制。ROM202存储有引导程序等程序。RAM203作为CPU201的工作区域被使用。磁盘驱动器204按照CPU201的控制来控制磁盘205读/写数据。磁盘205存储在磁盘驱动器204的控制下写入的数据。

光盘驱动器206按照CPU201的控制来控制光盘207读/写数据。光盘207存储在光盘驱动器206的控制下写入的数据、或者使计算机读取光盘207中存储的数据。

显示器208对以光标、图标或者工具箱为代表的文件、图像、功能信息等数据进行显示。作为该显示器208,例如可采用CRT、TFT液晶显示器、等离子显示器等。

接口(以下简记为“I/F”)209通过通信线路与LAN(Local AreaNetwork)、WAN(Wide Area Network)、互联网等网络214连接,并经由该网络214与其他装置连接。而且,I/F209掌控网络214与内部的接口,对来自外部装置的数据的输入输出进行控制。I/F209例如可采用调制解调器或LAN适配器等。

键盘210具备用于输入文字、数字、各种指示等的键,进行数据的输入。另外,也可以是触摸面板式的输入板、数字键等。鼠标211进行光标的移动、范围选择,或者窗口的移动、尺寸的变更等。只要作为定点设备具有同样功能即可,也可以是跟踪球、控制杆等。

扫描仪212以光学方式读取图像,将图像数据输入到服务器102内。此外,扫描仪212也可以具有OCR(Optical Character Reader)功能。另外,打印机213对图像数据、文件数据进行打印。打印机213例如可采用激光打印机、喷墨打印机。

图3是表示终端的硬件构成例的框图。在图3中,终端A~C具备处理器301、存储器302、储存装置(storage)303、显示装置304、输入装置305、GPS接收机306、通信I/F307、多个(图3中为2个)通信模块308。另外,各构成部通过总线309分别连接。

这里,处理器301掌控终端的整体控制。存储器302是作为CPU201的工作区域被使用的主存储装置。存储器302可采用易失性存储器或者非易失性存储器。储存装置303是保存OS、应用程序等程序、各种数据、文件系统的辅助存储装置。作为储存装置303,可采用非易失性存储器、硬盘。

显示装置304是对以光标、图标或者工具箱为代表的文件、图像、功能信息等数据进行显示的显示器。输入装置305基于用户操作来输入文字、数字、各种指示等。作为输入装置305,可采用键盘、数字键、触摸面板等。

GPS接收机306接收来自GPS卫星104的信号,取得本终端的当前位置信息。通信I/F307是经由基站101与移动电话网连接的接口,经由图1所示的网络103与服务器102连接成能够通信。通信模块308是与其他终端进行对等通信的接口。在图3中,由于作为示例而准备了2个,所以最多能够与2台终端同时进行对等通信。

此外,通信模块308的个数也可以为三个以上。需要说明的是,当在多个终端间相互进行对等通信时,在各终端中需要(终端数-1)个通信模块308。例如,当在5台终端间相互进行对等通信时,在各终端中需要4(=5-1)个通信模块308。

<终端间的相互连接处理>

接下来,对终端间的相互连接进行说明。在本实施方式中,相互共享数据的多个终端中的某个终端进行主宣言。进行了主宣言的终端(主终端)与其他终端分别进行对等通信的连接处理。在除了主终端以外的其余终端间,由于对等通信的连接处理没有结束,所以根据来自主终端的指示,在其余的终端间进行对等通信的连接处理。

图4是表示对等通信的连接处理的次序的说明图。在图4中,作为示例将终端A设为主终端,但也可以是终端B或终端C为主终端。首先,终端A进行主宣言处理(步骤S401)。通过主宣言处理而成为主终端的终端A(主终端A)执行与终端B、C的连接处理(步骤S402、S403)。对于与终端B、C的连接处理(步骤S402、S403)的详细内容将后述。

然后,主终端A确定组内终端(步骤S404)。组是指相互共享数据的终端组,具体而言,在图4的例子中,由主终端A和与主终端A进行了对等通信的连接处理的终端B、C构成。

即,主终端A确定连接处理的连接目的地的终端B、C。该确定为了使连接目的地的终端B、C彼此执行对等通信的连接处理。然后,主终端A对连接目的地的终端B、C中的终端B通知与终端C的对等通信的连接指示(步骤S405)。

然后,接收到连接指示的通知的终端B确定连接请求目的地(步骤S406)。该情况下,由于连接请求目的地只为终端C,所以终端B执行与终端C的连接处理(步骤S407)。对于该连接处理(步骤S407)的详细内容也将后述。

另外,若假设终端D(未图示)被确定为组内终端,则S406中的连接请求目的地终端为终端C、D,终端B执行与终端C的连接处理、和与终端D的连接处理。该情况下,终端A对终端C也通知连接指示(步骤S405),终端C进行请求目的地确定(步骤S406),将终端D确定为连接请求目的地。然后,终端C执行与终端D的连接处理(步骤S407)。

如果终端B完成与终端C的连接处理,则终端B向主终端A发送完成通知(步骤S408)。若接收到完成通知,则主终端A设定组内终端的终端ID(步骤S409)。终端ID是对组内终端分配的固有的识别信息。例如,如主终端A的终端ID为0,终端B为1,终端C为2那样,成为将主终端设为0而从0开始的连续编号。

然后,主终端A通过对等通信向终端B、C发送终端ID以及终端总数(步骤S410)。终端总数是指组内终端的总数。该情况下,由于是终端A~C,所以终端总数为3。因此,对终端B发送终端ID:1以及终端总数:3。另外,对终端C发送终端ID:2以及终端总数:3。

图5是表示图4所示的连接处理(步骤S402、S403、S407)的详细处理步骤的说明图。在图5中,将进行连接请求的终端设为“请求源终端”,将成为连接请求目的地的终端设为“请求目的地终端”。因此,在步骤S402中,请求源终端为主终端A,请求目的地终端为终端B。另外,在步骤S403中,请求源终端为主终端A,请求目的地终端为终端C。并且,在步骤S407中,请求源终端为终端B,请求目的地终端为终端C。

首先,请求源终端将连接请求发送给请求目的地终端(步骤S501)。在步骤S402、S403的情况下,主终端A的主宣言处理(步骤S401)成为连接请求的触发。在步骤S407的情况下,请求目的地确定(步骤S406)成为连接请求的触发。

若请求目的地终端接收到连接请求,则执行响应处理(步骤S502)。然后,请求目的地终端对请求源终端发送对等通信的连接允许/不允许通知。

请求源终端接收来自请求目的地终端的连接允许/不允许通知,判断对等通信的连接是允许还是不允许(步骤S503)。在允许的情况下(步骤S503:是),建立通话(步骤S504),能够在连接源终端与连接目的地终端之间进行对等通信。另一方面,在不允许的情况下(步骤S503:否),不建立通话。该情况下,再次针对相同的请求目的地终端重试,或改变请求目的地终端来进行重试。

<各终端中的下载处理>

接下来,对各终端中的下载处理进行说明。在本实施方式中,以终端总数对成为对象的数据进行分割来进行下载。将由各终端下载的数据称为“分配数据”。通过主终端A访问服务器102来决定下载哪个数据。

图6是表示主终端A中的下载画面的说明图。(A)是对成为下载对象的内容的类型进行指定的画面。这里,例如设为选择了“电影”。(B)是在(A)中选择了“电影”的情况的迁移画面。如果选择“电影”,则接着从各种内容中选择想要下载的内容。这里,作为例子,设为选择了“77个武士”。

接下来,下载画面迁移为(C)。在(C)中,下载主终端A的分配数据。若下载完成,则迁移为(D)。其中,针对主终端A以外的终端B、C,从主终端A通知在(B)中指定的内容“77个武士”被保存的URL,下载内容为“77个武士”之中的分配数据。

图7是表示下载处理的次序的说明图。首先,主终端A访问服务器102,取得与如图6的(B)那样选择出的内容相关的文件(对象文件)的URL(步骤S701)。

然后,主终端A将取得的URL通过对等通信通知给终端B、C(步骤S702)。随后,主终端A访问服务器102,执行主终端A的分配数据的下载处理(步骤S703)。

另外,在步骤S702中接收到URL的通知的终端B访问服务器102,执行终端B的分配数据的下载处理(步骤S704)。然后,终端B在下载完成后将分配数据的下载完成通知发送给主终端A(步骤S705)。

另外,在步骤S702中接收到URL的通知的终端C访问服务器102,执行终端C的分配数据的下载处理(步骤S706)。然后,终端C在下载完成后将分配数据的下载完成通知发送给主终端A(步骤S707)。

图8是表示分配数据的下载处理(步骤S703、S704、S706)的详细处理步骤的次序图。在图8中,将访问服务器102来下载分配数据的终端称为“分配终端”。因此,主终端A、终端B、C都是分配终端。

分配终端首先按照取得或者接收到通知的服务器102的URL,对服务器102发送Web页请求(步骤S801)。服务器102在接收到Web页请求后,对分配终端发送Web页(步骤S802)。然后,分配终端从Web页中选择对象文件(步骤S803)。具体而言,例如在主终端A的情况下,如图6所示的(A)、(B)那样选择对象文件(内容:“77个武士”)。另一方面,在终端B、C的情况下,由于对象文件已被主终端A决定,所以不选择对象文件。

随后,分配终端执行下载区间计算处理(步骤S804)。对于下载区间计算处理(步骤S804)的详细内容将后述。若通过下载区间计算处理(步骤S804)计算出下载区间,则分配终端对服务器102发送下载请求以及下载区间I(k)。

服务器102若从分配终端接收到下载请求以及下载区间I(k),则判断接收到的下载区间I(k)的分配数据是否存在于对象文件中(步骤S805)。在存在的情况下(步骤S805:是),服务器102将由下载区间I(k)规定的分配数据发送给分配终端(步骤S806)。分配终端将从服务器102发送来的分配数据储存到内部的存储装置(存储器302或者文件系统)中(步骤S807)。

另一方面,当在步骤S805中,接收到的下载区间I(k)的分配数据在对象文件中不存在时(步骤S805:否),服务器102将完成通知发送给分配终端(步骤S808)。由此,结束分配数据的下载处理。

图9是表示下载区间计算处理(步骤S804)的详细处理步骤的流程图。首先,分配终端将下载区间I(k)的下载开始位置start(k)设为start(k)=k×S(步骤S901)。另外,分配终端将下载区间I(k)的下载结束位置end(k)设为end(k)=start(k)+S-1(步骤S902)。

这里,k的初始值为分配终端的终端ID。S为查找尺寸。查找尺寸S被预先决定。然后,分配终端将下载请求以及下载区间I(k)发送给服务器102(步骤S903)。随后,对k加上n(终端数)来更新k(步骤S904),然后返回到步骤S901。

<运用方式设定处理>

接下来,对运用方式设定处理进行说明。运用方式是指对下载到各终端的数据进行共享的方式。运用方式包括分散方式、疏结合方式、密结合方式这3种。分散方式是各终端对服务器102请求下载分配数据以外的数据,来下载分配数据以外的数据的方式。

疏结合方式以及密结合方式都是通过对等通信来访问其他终端下载的分配数据的方式。尤其疏结合方式是通过等通信对存储其他终端所下载的分配数据的其他终端的文件系统进行访问的方式。

具体而言,是通过将从本终端指定其他终端的分配数据的逻辑地址变换成其他终端的文件系统中的由文件路径指定的分配数据的物理地址(逻物变换),来访问其他终端的分配数据的方式。

另外,密结合方式是对下载了分配数据以外的数据(从其他终端来看为分配数据)的终端内的存储器302进行访问的方式。具体而言,是通过将从本终端指定其他终端的分配数据的逻辑地址变换成对其他终端的存储器302上的分配数据进行指定的逻辑地址(逻逻变换),来访问其他终端的分配数据的方式。该情况下,在其他终端中,通过将变换后的逻辑地址变换成分配数据的物理地址(逻物变换),来访问分配数据。

图10是表示运用方式设定次序的说明图。对等通信的连接源终端以及连接目的地终端都在经过一定时间之前待机(步骤S1001:否),在经过了一定时间的情况下(步骤S1001:是),使用由GPS接收机306接收到的数据,对表示本终端的当前位置的坐标信息进行更新(步骤S1002),然后返回到步骤S1001。

在表示连接源终端以及连接目的地终端的当前位置的坐标信息如此被实时更新的状况下,连接源终端将连接目的地终端的坐标信息取得请求发送给连接目的地终端(步骤S1003)。连接目的地终端在接收到坐标信息取得请求后,将连接目的地终端的最新的坐标信息发送给连接源终端(步骤S1004)。

连接源终端在接收到连接目的地终端的坐标信息后,计算出与连接目的地终端的相对距离(步骤S1005)。然后,连接源终端执行运用方式决定处理(步骤S1006)。对于运用方式决定处理(步骤S1006)的详细内容将后述。然后,连接源终端将所决定的运用方式通知给连接目的地终端(步骤S1007)。

随后,连接源终端执行连接源终端中的运用方式设定处理(步骤S1008),连接目的地终端执行连接目的地终端中的运用方式设定处理(步骤S1009)。针对各运用方式设定处理(步骤S1008、S1009)的详细内容将后述,表示连接源终端以及连接目的地终端的当前位置的坐标信息被实时更新。因此,运用方式被动态变更,根据状况被决定为最佳的运用方式。

图11是表示图10所示的运用方式决定处理(步骤S1006)的详细处理步骤的流程图。首先,在该运用方式决定处理(步骤S1006)中,根据终端间的相对距离、通信频带Rt与储存装置频带Rs/存储器频带Rm之间的比较结果来决定连接源终端与连接目的地终端的运用方式。其中,设在通信频带Rt的比较中具有某种程度的变化幅度(range)(在本例中为±ΔRt)。另外,储存装置频带Rs/存储器频带Rm存储在本终端内的存储器302或者储存装置303中。

首先,连接源终端检测坐标信息取得期间的通信频带Rt(步骤S1101)。然后,连接源终端判断根据连接源终端的坐标信息与连接目的地终端的坐标信息求出的相对距离是否在规定距离以内(步骤S1102)。

当不在规定距离以内时(步骤S1102:否),连接源终端将连接源终端与连接目的地终端之间的运用方式决定为分散方式(步骤S1103)。然后,连接源终端将所决定的运用方式通知给连接目的地终端(步骤S1104)。

另一方面,当在步骤S1102中相对距离为规定距离以内时(步骤S1102:是),连接源终端将通信频带Rt与储存装置频带Rs进行比较(步骤S1105)。然后,在通信频带Rt与储存装置频带Rs之间的比较结果是Rt<Rs-ΔRs的情况下(步骤S1105:Rt<Rs-ΔRs),连接源终端将连接源终端与连接目的地终端之间的运用方式决定为分散方式(步骤S1103)。然后,连接源终端将所决定的运用方式通知给连接目的地终端(步骤S1104)。

另一方面,在通信频带Rt与储存装置频带Rs之间的比较结果是Rs-ΔRs≤Rt≤Rs+ΔRs的情况下(步骤S1105:Rs-ΔRs≤Rt≤Rs+ΔRs),连接源终端将连接源终端与连接目的地终端之间的运用方式决定为疏结合方式(步骤S1106)。然后,连接源终端将所决定的运用方式通知给连接目的地终端(步骤S1104)。

另外,在通信频带Rt与储存装置频带Rs之间的比较结果是Rt>Rs+ΔRs的情况下(步骤S1105:Rt>Rs+ΔRs),连接源终端将通信频带Rt与存储器频带Rm进行比较(步骤S1107)。然后,在通信频带Rt与存储器频带Rm的比较结果是Rt<Rm的情况下(步骤S1107:Rt<Rm),连接源终端将连接源终端与连接目的地终端之间的运用方式决定为疏结合方式(步骤S1106)。然后,连接源终端将所决定的运用方式通知给连接目的地终端(步骤S1104)。

另一方面,在通信频带Rt与存储器频带Rm的比较结果是Rt≥Rm的情况下(步骤S1107:Rt≥Rm),连接源终端将连接源终端与连接目的地终端之间的运用方式决定为密结合方式(步骤S1108)。然后,连接源终端将所决定的运用方式通知给连接目的地终端(步骤S1104)。

这样,可根据终端间的相对距离、通信频带Rt的大小来决定连接源终端与连接目的地终端之间的运用方式。此外,当在步骤S1102中相对距离为规定距离以内时(步骤S1102:是),也可以不将通信频带Rt与储存装置频带Rs进行比较(步骤S1105)便决定为疏结合方式。

另外,当在步骤S1102中相对距离为规定距离以内时(步骤S1102:是),也可以不将通信频带Rt与储存装置频带Rs进行比较(步骤S1105)、不将通信频带Rt与存储器频带Rm进行比较(步骤S1107)便决定为密结合方式。

另外,当在步骤S1105中,通信频带Rt与储存装置频带Rs之间的比较结果是Rt>Rs+ΔRs时(步骤S1105:Rt>Rs+ΔRs),也可以不将通信频带Rt与存储器频带Rm进行比较(步骤S1107)便决定为疏结合方式或者密结合方式中的任意一个方式。

图12是表示图10所示的连接源终端中的运用方式设定处理(步骤S1008)的详细处理步骤的流程图。首先,连接源终端确认所决定的运用方式(步骤S1201)。在是分散方式的情况下(步骤S1201:分散),结束连接源终端中的运用方式设定处理(步骤S1008)。

另一方面,在是疏结合方式的情况下(步骤S1201:疏结合),连接源终端从连接目的地终端取得被连接目的地终端下载的分配数据的文件路径(步骤S1202)。接下来,连接源终端将对被连接目的地终端下载的分配数据进行指定的逻辑地址设定成应用程序能够参照的逻辑地址空间(步骤S1203)。

然后,连接源终端将在步骤S1202中取得的文件路径写入到步骤S1203中的指定逻辑地址。随后,连接源终端进行逻逻变换停止设定(步骤S1205)。由此,结束连接源终端中的运用方式设定处理(步骤S1008)。

另外,当在步骤S1201中是密结合方式时(步骤S1201:密结合),连接源终端将连接目的地终端中下载的分配数据在连接源终端中的逻辑地址(变换源逻辑地址)设定为逻辑地址空间(步骤S1206)。接下来,连接源终端从连接目的地终端取得连接目的地终端中下载的分配数据在连接目的地终端中的逻辑地址(变换目的地逻辑地址)(步骤S1207)。

然后,连接源终端生成逻逻变换表(步骤S1208)。逻逻变换表是将变换源逻辑地址、变换目的地逻辑地址和成为变换目的地的连接目的地终端的终端ID建立对应的表。随后,连接源终端进行逻逻变换起动设定(步骤S1209)。逻逻变换起动设定是使得访问逻逻变换表变为可能的设定。

由此,结束连接源终端中的运用方式设定处理(步骤S1008)。这样,通过连接源终端中的运用方式设定处理(步骤S1008),能够根据疏结合或者密结合来进行与连接目的地终端的装配(mount)。

图13是表示图10所示的连接目的地终端中的运用方式设定处理(步骤S1009)的详细处理步骤的流程图。连接目的地终端等待来自连接源终端的运用方式(步骤S1301:否),在接收到运用方式的情况下(步骤S1301:是),连接目的地终端对接收到的运用方式进行确认(步骤S1302)。在是分散方式的情况下(步骤S1302:分散),结束连接目的地终端中的运用方式设定处理(步骤S1009)。

另一方面,在是疏结合方式的情况下(步骤S1302:疏结合),连接目的地终端从连接源终端取得被连接源终端下载的分配数据的文件路径(步骤S1303)。接下来,连接目的地终端将对被连接源终端下载的分配数据进行指定的逻辑地址设定成应用程序能够参照的逻辑地址空间(步骤S1304)。

然后,连接目的地终端将在步骤S1303中取得的文件路径写入到步骤S1304中的指定逻辑地址。随后,连接目的地终端进行逻逻变换停止设定(步骤S1306)。由此,结束连接目的地终端中的运用方式设定处理(步骤S1009)。

另外,当在步骤S1302中是密结合方式时(步骤S1302:密结合),连接目的地终端将连接源终端中下载的分配数据在连接目的地终端中的逻辑地址(变换源逻辑地址)设定成逻辑地址空间(步骤S1307)。接下来,连接目的地终端从连接源终端取得连接源终端中下载的分配数据在连接源终端中的逻辑地址(变换目的地逻辑地址)(步骤S1308)。

然后,连接目的地终端生成逻逻变换表(步骤S1309)。逻逻变换表是将变换源逻辑地址、变换目的地逻辑地址和成为变换目的地的连接源终端的终端ID建立对应关系的表。随后,连接目的地终端进行逻逻变换起动设定(步骤S1310)。逻逻变换起动设定是使得访问逻逻变换表变为可能的设定。由此,结束连接目的地终端中的运用方式设定处理(步骤S1009)。这样,通过连接目的地终端中的运用方式设定处理(步骤S1009),能够根据疏结合或者密结合来进行与连接源终端的装配。

即,通过执行连接源终端中的运用方式设定处理(步骤S1008)和连接目的地终端中的运用方式设定处理(步骤S1009),可在连接源终端与连接目的地终端之间实现交叉装配。

<疏结合的具体例>

接下来,使用图14~图17对疏结合的具体例进行说明。

图14是表示在终端A以及终端B中分别下载了分配数据Da、Db的状态的说明图。在图14中,将终端A的分配数据Da的文件系统FSa中的文件路径设为fpa,将终端B的分配数据Db的文件系统FSb中的文件路径设为fpb。

另外,终端A的分配数据Da在从终端A的应用程序看到的逻辑地址空间LSa内,被保存在逻辑地址[0x0150,0x0249]。另外,终端B的分配数据Db在从终端B的应用程序看到的逻辑地址空间LSb内,被保存在逻辑地址[0x0200,0x0299]。

图15是表示从图14所示的状态开始,将终端A作为连接源终端,将终端B作为连接目的地终端而进行了疏结合的状态的说明图。具体而言,在终端A的逻辑地址空间LSa的空地址中设定终端B的终端ID以及指向分配数据Db的文件路径fpb。由此,终端B的文件系统FSb被装配于终端A。同样,在终端B的逻辑地址空间LSb的空地址中设定终端A的终端ID以及指向分配数据Da的文件路径fpa。由此,终端A的文件系统FSa被装配于终端B。

图16是表示图15涉及的疏结合设定后的数据访问的说明图(之1)。在图16中,是终端A访问分配数据Da、Db的例子。在终端A访问分配数据Da的情况下,通过终端A的应用程序指定逻辑地址空间LSa的分配数据Da的逻辑地址,使得终端A的储存装置303的控制器参照指向分配数据Da的文件路径fpa来进行逻物变换。然后,通过指定逻物变换后的物理地址,终端A能够访问分配数据Da。

另外,在终端A访问分配数据Db的情况下,终端A的应用程序指定具有逻辑地址空间LSa的终端B的终端ID以及文件路径fpb的逻辑地址,使通信驱动器起动。然后,终端A经由通信驱动器对终端B发送文件路径fpb。在终端B中,参照来自终端A的文件路径fpb,访问终端B的储存装置303内的分配数据Db。

然后,在读访问的情况下,终端B将分配数据Db发送给终端A。终端A接收来自终端B的分配数据Db。另外,在写访问的情况下,终端B将写完成通知发送给终端A。这样,终端A能够访问分配数据Db。

图17是表示图15涉及的疏结合设定后的数据访问的说明图(之2)。在图17中,是终端B访问分配数据Da、Db的例子。在终端B访问分配数据Db的情况下,通过终端B的应用程序指定逻辑地址空间LSb的分配数据Db的逻辑地址,使得终端B内的储存装置303的控制器参照指向分配数据Db的文件路径fpb来进行逻物变换。然后,通过指定逻物变换后的物理地址,终端B能够访问分配数据Db。

另外,在终端B访问分配数据Da的情况下,终端B的应用程序指定具有逻辑地址空间LSb的终端A的终端ID以及文件路径fpa的逻辑地址,使通信驱动器起动。然后,终端B经由通信驱动器对终端A发送文件路径fpa。在终端A中,参照来自终端B的文件路径fpa,访问终端A的储存装置303内的分配数据Da。

然后,在读访问的情况下,终端A将分配数据Da发送给终端B。终端B接收来自终端A的分配数据Da。另外,在写访问的情况下,终端A将写完成通知发送给终端B。这样,终端B能够访问分配数据Da。

<密结合的具体例>

接下来,使用图18~图21对密结合的具体例进行说明。

图18是表示在终端A以及终端B中分别下载了分配数据Da、Db的状态的说明图。在图18中,将终端A的分配数据Da在文件系统FSa中的文件路径设为fpa,将终端B的分配数据Db在文件系统FSb中的文件路径设为fpb。

另外,终端A的分配数据Da在从终端A的应用程序看到的逻辑地址空间LSa内,被保存在逻辑地址[0x0150,0x0249]。另外,终端B的分配数据Db在从终端B的应用程序看到的逻辑地址空间LSb内,被保存在逻辑地址[0x0200,0x0299]。

另外,终端A如果处于密结合状态,则将分配数据Da从终端A的储存装置303内的文件系统FSa读出到终端A的存储器302(以下记作“存储器Ma”)。在已经读出的情况下不需要该处理。分配数据Da在存储器Ma上的物理地址[0x1100,0x1199]与在逻辑地址空间LSa的逻辑地址[0x0150,0x0249]对应。由此,若被指定逻辑地址[0x0150,0x0249],则存储器Ma的控制器将其逻物变换成存储器Ma上的物理地址[0x1100,0x1199]。

同样,终端B如果处于密结合状态,则将分配数据Db从终端B的储存装置303内的文件系统FSb读出到终端B的存储器302(以下记作存储器Mb)。在已经读出的情况下不需要该处理。分配数据Db在存储器302上的物理地址[0x1150,0x1249]与在逻辑地址空间LSb的逻辑地址[0x0200,0x0299]对应。由此,若被指定逻辑地址[0x1150,0x1249],则存储器Mb的控制器将其逻物变换成存储器Mb上的物理地址[0x0200,0x0299]。

图19是表示从图18所示的状态开始,将终端A作为连接源终端,将终端B作为连接目的地终端而进行了密结合的状态的说明图。具体而言,终端A从终端B取得分配数据Db的逻辑地址(变换目的地逻辑地址),对终端A的逻辑地址空间分配分配数据Db的变换源逻辑地址。然后,终端A生成使变换源逻辑地址、变换目的地终端ID和变换目的地逻辑地址建立了对应关系的逻逻变换表LLTa。由此,终端B的存储器Mb被装配于终端A。

同样,终端B从终端A取得分配数据Da的逻辑地址(变换目的地逻辑地址),对终端B的逻辑地址空间分配分配数据Da的变换源逻辑地址。然后,终端B生成使变换源逻辑地址、变换目的地终端ID和变换目的地逻辑地址建立了对应关系的逻逻变换表LLTb。由此,终端A的存储器Ma被装配于终端B。

图20是表示图19涉及的密结合设定后的数据访问的说明图(之1)。在图20中,是终端A访问分配数据Da、Db的例子。在终端A访问分配数据Da的情况下,通过终端A的应用程序指定逻辑地址空间LSa的分配数据Da的逻辑地址,使得存储器Ma的控制器将其逻物变换成分配数据Da的物理地址。然后,通过指定逻物变换后的物理地址,终端A能够访问存储器Ma上的分配数据Da。

另外,在终端A访问分配数据Db的情况下,终端A的应用程序指定逻辑地址空间LSa的分配数据Db的逻辑地址,将所指定的逻辑地址作为变换源逻辑地址,来参照逻逻变换表LLTa。在逻逻变换表LLTa中确定变换目的地的终端ID和变换目的地逻辑地址。

因此,终端A起动通信驱动器,对作为变换目的地的终端B发送变换目的地逻辑地址。在终端B中,参照来自终端A的变换目的地逻辑地址,存储器302的控制器将其逻物变换成分配数据Db的物理地址。然后,通过指定逻物变换后的物理地址,终端B能够访问存储器Mb上的分配数据Db。

随后,在读访问的情况下,终端B将分配数据Db发送给终端A。终端A接收来自终端B的分配数据Db。另外,在写访问的情况下,终端B将写完成通知发送给终端A。这样,终端A能够访问分配数据Db。

图21是表示图19涉及的密结合设定后的数据访问的说明图(之2)。在图21中,是终端B访问分配数据Da、Db的例子。在终端B访问分配数据Db的情况下,通过终端B的应用程序指定逻辑地址空间LSb的分配数据Db的逻辑地址,存储器Mb的控制器将其逻物变换成分配数据Db的物理地址。然后,通过指定逻物变换后的物理地址,终端B能够访问存储器Mb上的分配数据Db。

另外,在终端B访问分配数据Da的情况下,终端B的应用程序指定逻辑地址空间LSb的分配数据Da的逻辑地址,将所指定的逻辑地址作为变换源逻辑地址来参照逻逻变换表LLTb。在逻逻变换表LLTb中确定变换目的地的终端ID和变换目的地逻辑地址。

因此,终端B起动通信驱动器,对作为变换目的地的终端A发送变换目的地逻辑地址。在终端A中参照来自终端B的变换目的地逻辑地址,存储器Ma的控制器将其逻物变换成分配数据Da的物理地址。然后,通过指定逻物变换后的物理地址,终端A能够访问存储器Ma上的分配数据Da。

随后,在读访问的情况下,终端A将分配数据Da发送给终端B。终端B接收来自终端A的分配数据Da。另外,在写访问的情况下,终端A将写完成通知发送给终端B。这样,终端B能够访问分配数据Da。

图22是表示终端间的数据访问处理的次序的说明图。首先,访问源终端待机至有数据访问(读/写)请求为止(步骤S2201:否),在有数据访问请求的情况下(步骤S2201:是),访问源终端判断是否起动了逻逻变换(步骤S2202)。在起动了的情况下(步骤S2202:是),访问源终端参照逻逻变换表,执行逻逻变换(步骤S2203)。

另一方面,在没有起动逻逻变换的情况下(步骤S2202:否),移至步骤S2204。在步骤S2204中,访问目的地终端判断访问目的地是否是本终端(访问源终端)(步骤S2204)。具体而言,例如当在疏结合中制定了终端ID以及文件路径时,由终端ID指定的终端成为访问目的地终端。当在密结合的情况下参照了逻逻变换表时,由终端ID指定的终端为访问目的地终端。

在访问目的地是本终端的情况下(步骤S2204:是),访问源终端将由访问请求指定的逻辑地址逻物变换成物理地址(步骤S2205)。然后,访问源终端访问本终端内的被变换后的物理地址(步骤S2206)。由此,结束数据访问。

另一方面,当在步骤S2204中访问目的地是其他终端时(步骤S2204:否),访问源终端起动通信驱动器(步骤S2207),执行终端间数据访问处理(步骤S2208)。由此,能够通过对等通信实现向访问目的地终端的数据访问。

图23是表示图22所示的终端间数据访问处理(步骤S2208)的详细处理步骤的次序图(之1)。图23表示了数据访问为读取的情况。首先,访问源终端通过对等通信向访问目的地终端发送读请求(步骤S2301)。访问目的地终端在接收到读请求后,对读请求进行解析(步骤S2302)。具体而言,例如访问目的地终端取出读请求中含有的信息。在疏结合的情况下取出文件路径,在密结合的情况下取出变换目的地逻辑地址。

然后,访问目的地终端基于通过解析而得到的信息,来确定成为读取目的地的物理地址(步骤S2303)。具体而言,例如在取出了文件路径的情况下,访问目的地终端参照文件路径来确定物理地址。在取出了变换目的地逻辑地址的情况下,对变换目的地逻辑地址进行逻物变换,来确定物理地址。

随后,访问目的地终端针对确定出的物理地址进行访问,读出对象数据(步骤S2304)。然后,访问目的地终端向作为读请求的发送源的访问源终端发送读出的对象数据(步骤S2305)。访问源终端接收由访问目的地终端发送来的对象数据(步骤S2306)。由此,结束读取时的终端间数据访问处理(步骤S2208)。

图24是表示图22所示的终端间数据访问处理(步骤S2208)的详细处理步骤的次序图(之2)。图24表示了数据访问为写的情况。首先,访问源终端通过对等通信向访问目的地终端发送写请求以及对象数据(步骤S2401)。访问目的地终端在接收到写请求后,对写请求进行解析(步骤S2402)。具体而言,例如访问目的地终端取出写请求中包含的信息。在疏结合的情况下取出文件路径以及对象数据,在密结合的情况下取出变换目的地逻辑地址以及对象数据。

然后,访问目的地终端基于通过解析而得到的信息,来确定成为读取目的地的物理地址(步骤S2403)。具体而言,例如在取出了文件路径的情况下,访问目的地终端参照文件路径来确定物理地址。在取出了变换目的地逻辑地址的情况下,对变换目的地逻辑地址进行逻物变换来确定物理地址。

随后,访问目的地终端对确定出的物理地址进行访问,写入对象数据(步骤S2404)。然后,访问目的地终端向作为写请求的发送源的访问源终端发送写完成通知(步骤S2405)。由此,结束写时的终端间数据访问处理(步骤S2208)。这样,通过在终端间进行交叉装配,能够实现终端间的数据访问。

<分配数据的下载处理的另一例1>

图25是表示分配数据的下载处理(步骤S703、S704、S706)的详细处理步骤的次序图。在图8中,对分配终端成为主体来下载分配数据的处理进行了说明,在图25中,对服务器102成为主体来下载分配数据的处理进行说明。其中,对与图8相同的处理赋予相同的步骤编号而省略其说明。

当在步骤S803中选择了对象文件后,分配终端对服务器102发送下载请求、终端ID(=k)和终端总数n(步骤S2504)。然后,服务器102执行下载区间计算处理(步骤S2505)。对于下载区间计算处理(步骤S2505)将后述。随后,服务器102将由下载区间指定的分配数据发送给分配终端(步骤S2506)。

分配终端将接收到的分配数据储存到存储器302或者储存装置303(步骤S2507)。随后,在下载了所有分配数据的情况下,服务器102向分配终端发送完成通知(步骤S2508)。由此,结束分配数据的下载处理。

图26是表示图25所示的下载区间计算处理(步骤S2505)的详细处理步骤的流程图。首先,服务器102将下载区间I(k)的下载开始位置start(k)设为start(k)=k×S(步骤S2601)。另外,服务器102将下载区间I(k)的下载结束位置end(k)设为end(k)=start(k)+S-1(步骤S2602)。

服务器102判断由接收到的下载区间I(k)指定的分配数据在对象文件中是否存在(步骤S2603)。在存在的情况下(步骤S2603:是),服务器102将由下载区间I(k)指定的分配数据发送给分配终端(步骤S2604)。

其中,分配终端将从服务器102发送来的分配数据储存到内部的存储装置(存储器302或者储存装置303)中(步骤S2507)。随后,服务器102对k加上n来进行更新(步骤S2605),然后返回到步骤S2601。由此,下载开始位置以及下载结束位置被更新。

另一方面,当在步骤S2603中,由接收到的下载区间I(k)指定的分配数据在对象文件中不存在时(步骤S2603:否),服务器102将完成通知发送给分配终端(步骤S2606)。由此,结束分配数据的下载处理。

<分配数据的下载处理的另一例2>

图27是表示分配数据的下载处理(步骤S703、S704、S706)的详细处理步骤的次序图。在图8中,对分配终端成为主体来下载分配数据的处理进行了说明,在图27中,对分配终端成为主体并考虑性能差异来下载分配数据的处理进行说明。其中,对与图8相同的处理赋予相同的步骤编号而省略其说明。另外,将主终端以外的分配终端称为“从属终端”。

当在步骤S803中选择了对象文件后,主终端执行下载区间计算处理(步骤S2704)。对于下载区间计算处理(步骤S2704)的详细内容将后述。

在下载区间计算处理(步骤S2704)中,主终端对服务器102发送下载请求以及主终端的下载区间I(j)(步骤S2705)。另外,主终端在下载区间计算处理(步骤S2704)中对从属终端发送从属终端的下载区间I(j)(步骤S2706)。

随后,从属终端对服务器102发送下载请求以及从属终端的下载区间I(j)(步骤S2707)。服务器102在接收到下载请求以及下载区间I(j)后,判断接收到的下载区间I(j)的分配数据在对象文件中是否存在(步骤S2708)。在存在的情况下(步骤S2708:是),服务器102将由下载区间I(j)规定的分配数据发送给下载区间I(j)的发送源的终端(主终端或者从属终端)(步骤S2709)。

主终端将从服务器102发送来的分配数据储存到内部的存储装置(存储器302或者文件系统)中(步骤S2710)。从属终端将从服务器102发送来的分配数据储存到内部的存储装置(存储器302或者储存装置303)中(步骤S2711)。

另一方面,当在步骤S2708中,接收到的下载区间I(j)的分配数据在对象文件中不存在时(步骤S2708:否),服务器102将完成通知发送给下载区间I(j)的发送源的终端(主终端或者从属终端)(步骤S2712)。

图28是表示图27所示的下载区间计算处理(步骤S2704)的详细处理步骤的流程图。首先,主终端将作为终端ID的k设定为k=0,将终端ID=k的终端(若k=0则为主终端A,若k=1、2则为从属终端B、C)的查找尺寸S(k)设定为S(k)=S×{b(k)/Σb(k)}(步骤S2801)。

S是固定的查找尺寸,b(k)是终端ID=k的终端的通信线路速度,Σb(k)是相互共享数据的所有终端(终端A~C)的通信线路速度的总和。即,查找尺寸S(k)成为考虑了终端的性能差异的查找尺寸。其中,从属终端的通信线路速度b(k)为定期取得的速度。

接下来,主终端将变量j设为j=k(步骤S2802),判断是否j=0(步骤S2803)。在j=0的情况下(步骤S2803:是),主终端A将对象文件的下载区间I(j)的下载开始位置start(j)设为start(j)=0(步骤S2804),然后移至步骤S2806。另一方面,在不是j=0的情况下(步骤S2803:否),主终端A将对象文件的下载开始位置start(j)设为start(j)=end(j-1)+1(步骤S2804),然后移至步骤S2806。

在步骤S2806中,主终端将下载区间I(j)的下载结束位置end(j)设定为end(j)=start(j)+S(k)-1(步骤S2806)。然后,主终端A判断作为终端ID的k是否k=0(步骤S2807)。在k=0的情况下(步骤S2807:是),主终端A将来自主终端A(k=0)的下载请求以及下载区间I(j)发送给服务器102(步骤S2808),然后移至步骤S2810。

另一方面,在不是k=0的情况下(步骤S2807:否),主终端对终端ID=k(k≠0)的从属终端发送其下载区间I(j)(步骤S2809),然后移至步骤S2810。

在步骤S2810中,主终端对变量j进行递增处理(步骤S2810),作为终端ID的k也进行递增处理(步骤S2811)。然后,主终端A判断是否k=n(步骤S2812)。N是终端总数。在不是k=n的情况下(步骤S2812:否),返回到步骤S2803。另一方面,在k=n的情况下(步骤S2812:是),主终端还原成k=0(步骤S2813),然后返回到步骤S2803。

由此,由于下载区间I(k)的区间宽度根据分配终端的性能、即查找尺寸S(k)而变动,所以越是性能好的分配终端,所下载的文件尺寸越大。

<分配数据的下载处理的另一例3>

图29是表示分配数据的下载处理(步骤S703、S704、S706)的详细处理步骤的次序图。在图27中,对分配终端成为主体并考虑性能差异来下载分配数据的处理进行了说明,在图29中,对服务器102成为主体并考虑分配终端的性能差异来下载分配数据的处理进行说明。其中,对与图8相同的处理赋予相同的步骤编号而省略其说明。

当在步骤S803中选择了对象文件后,分配终端对服务器102发送下载请求、终端ID(=k)、线路速度b(k)(步骤S2904)。服务器102在接收到来自分配终端的下载请求后,执行下载区间计算处理(步骤S2905)。对于下载区间计算处理(步骤S2905)的详细内容将后述。

服务器102在计算出下载区间I(k)后,将对象文件中由下载区间I(k)指定的分配数据发送给分配终端(步骤S2906)。分配终端在接收到分配数据后,将分配数据储存到存储装置(存储器302或者文件系统)中(步骤S2907)。其中,在下载区间计算处理(步骤S2905)中,当没有由下载区间I(k)指定的分配数据时,服务器102对分配终端发送完成通知(步骤S2908)。

图30是表示图29所示的下载区间计算处理(步骤S2905)的详细处理步骤的流程图。首先,服务器102将作为终端ID的k设定为k=0,将终端ID=k的分配终端的查找尺寸S(k)设定为S(k)=S×{b(k)/Σb(k)}(步骤S3001)。

S是固定的查找尺寸,b(k)是终端ID=k的分配终端的通信线路速度,Σb(k)是相互共享数据的所有终端(分配终端A~C)的通信线路速度的总和。即,查找尺寸S(k)成为考虑了分配终端的性能差的查找尺寸。其中,由于若没有所有分配终端的通信线路速度b(k)则无法执行下载区间计算处理(步骤S2905),所以当有来自某个分配终端的下载请求时,也可以取得其余分配终端的通信线路速度。另外,也可以定期取得所有分配终端的通信线路速度而使用最新的通信线路速度。

接下来,服务器102将变量j设为j=k(步骤S3002),并判断是否j=0(步骤S3003)。在j=0的情况下(步骤S3003:是),服务器102将对象文件的下载区间I(j)的下载开始位置start(j)设为start(j)=0(步骤S3004),然后移至步骤S3006。另一方面,在不是j=0的情况下(步骤S3003:否),服务器102将对象文件的下载开始位置start(j)设为start(j)=end(j-1)+1(步骤S3005),然后移至步骤S3006。

在步骤S3006中,服务器102将下载区间I(j)的下载结束位置end(j)设定为end(j)=start(j)+S(k)-1(步骤S3006)。然后,服务器102判断是否存在由下载区间I(j)指定的分配数据(步骤S3007)。

当存在由下载区间I(j)指定的分配数据时(步骤S3007:是),服务器102将由下载区间I(j)指定的分配数据发送给终端ID=k的分配终端(步骤S3008)。随后,将变量j加1(步骤S3009),作为终端ID的k也加1(步骤S3010)。

然后,服务器102判断是否k=n(步骤S3011)。N是终端总数。在不是k=n的情况下(步骤S3011:否),返回到步骤S3003。另一方面,在k=n的情况下(步骤S3011:是),服务器102还原成k=0(步骤S3012),然后返回到步骤S3003。

另外,当在步骤S3007中没有由下载区间I(j)指定的分配数据时(步骤S3007:否),服务器102对终端ID=k的分配终端发送完成通知(步骤S3013)。由此,结束下载区间计算处理(步骤S2905)。

由此,由于下载区间I(k)的区间宽度根据分配终端的性能、即查找尺寸S(k)而变动,所以越是性能好的分配终端,所下载的文件尺寸越大。

如以上说明那样,根据本实施方式,能够在多个终端间实现高效的数据共享。另外,能够根据与连接目的地终端的通信频带的大小、相对距离来动态切换运用方式。因此,可在终端间实现效率良好的数据共享。并且,由于能够考虑各终端的性能差异来从服务器102进行下载,所以可根据终端的性能来分散下载对终端施加的负荷。

此外,对于上述的流程图而言,在执行主体为服务器102的情况下,具体例如通过使CPU201执行图2所示的ROM202、RAM203、磁盘205等存储装置中存储的程序来实现。在执行主体为终端的情况下,具体例如通过使处理器301执行图3所示的存储器302、储存装置303等存储装置中存储的程序来实现。

附图标记说明:

100-数据共享系统;101-基站;103-网络;102-服务器;302-存储器;303-储存装置;Rt-通信频带;Rs-储存装置频带;Rm-存储器频带;FSa-文件系统;FSb-文件系统;LSa-逻辑地址空间;LSb-逻辑地址空间;LLTa-逻逻变换表;LLTb-逻逻变换表。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号