Patent ID: 8392569

Claim:
A data delivery system, comprising: central equipment in which software resources are stored, the central equipment having a communication function; at least one intermediate server capable of communicating with the central equipment and of receiving and storing the software resources sent from the central equipment; and terminal devices communicating with the central equipment and the intermediate server; wherein said central equipment including: a registration-accepting unit configured to accept registration of the software resources; a resource information storage unit configured to store resource information including a version number corresponding to each of the software resources accepted; a resource transfer unit configured to send the software resources accepted and the resource information stored in the resource information storage unit to the intermediate server; a server list-creating unit configured to create a server list of the intermediate servers to be sent to the terminal devices; and a list/information-sending unit configured to send the server list created by the server list-creating unit and the resource information to the terminal devices; wherein each of said terminal devices including: a synchronization decision unit configured to acquire the resource information sent from the intermediate server shown in the server list received from the central equipment by the resource transfer unit and stored in the intermediate server, comparing the resource information received from the central equipment with the resource information acquired from the intermediate server, and determining whether the intermediate server is synchronized with the central equipment based on whether sets of resource information stored therein are coincident in version number of software resources; and a request signal-sending unit which, when the determining indicates that the intermediate server is synchronized, sends a request signal requesting sending of the software resources to the intermediate server among the intermediate servers and sends the request signal to another one of the intermediate servers as indicated on the server list when the determining indicates the intermediate server is not synchronized.