METHOD FOR SIMULATING THE OPERATION OF A DEVICE HAVING AN ARCHITECTURE AND A PROCESSOR DETERMINED BY MEANS OF ANOTHER DEVICE CONNECTED TO A COMPUTER NETWORK
First Claim
1. A method which allows simulation of the operation of devices having a determined architecture on devices which may have a distinct architecture, characterized in that it involves:
- a computer terminal (2) which comprises at least one means such as a network browser providing access to a computer network Internet/Intranet and with which pages may be viewed;
at least one server (3) which notably includes;
at least one client module (4) transferable to the computer terminal (2), this client module (4) comprising at least one emulation kernel which allows emulation of at least one determined application (REF_LOG_A);
an inference engine;
at least one parameterizable “
contents file”
, having a specific format and which comprises the whole of the configuration information as well as the data and resources required for running the determined application (REF_LOG_A) to be emulated;
and in that it comprises the carrying out of the following steps;
transmission by a user client (1) connected to a computer network, by means of the computer terminal (2), of a request to the server (3), this request relating to accessing a determined application (REF_LOG_A) comprised on said server (3);
transfer from the server (3) to the client-user (1) of the corresponding client module and its automatic integration into the network browser;
initialization of the client module (4) and transmission of a request by the client module (4) in order to obtain the transfer from the server (3) to the client-user (1), of at least one portion of said information, data and resources comprised in the corresponding “
contents file”
;
transfer from the server (3) to the client-user (1) of said information, data and resources comprised in the “
contents file”
;
initialization of an emulation kernel comprised in the client module (4), this initialization and selection of the emulation kernel being carried out on the basis of said information or data comprised in the “
contents file”
which have been transferred in the previous step;
integration of said data or resources having been transferred beforehand into the emulation kernel, this integration being carried out on the basis of the transmitted configuration information;
automatic execution of the determined application (REF_LOG_A).
1 Assignment
0 Petitions
Accused Products
Abstract
A method for simulating the operation of devices having a predetermined architecture relative to devices that may have a different architecture, includes the following steps: transmission by a user client connected to a computer network of a request to a server, the purpose of the request being to access a predetermined application contained in the server; transfer from the server to the user client of the corresponding client module with the automatic integration thereof into the network browser; setting up of the client module and transmission of a request by the client module in order to obtain the transfer from the server to the user client of a portion at least of the information, data and resources included in the corresponding content file; setting up of an emulation node contained in the client module; integration of the data or resources previously transferred into the emulation node; automatic execution of the predetermined application.
20 Citations
21 Claims
-
1. A method which allows simulation of the operation of devices having a determined architecture on devices which may have a distinct architecture, characterized in that it involves:
-
a computer terminal (2) which comprises at least one means such as a network browser providing access to a computer network Internet/Intranet and with which pages may be viewed; at least one server (3) which notably includes; at least one client module (4) transferable to the computer terminal (2), this client module (4) comprising at least one emulation kernel which allows emulation of at least one determined application (REF_LOG_A); an inference engine; at least one parameterizable “
contents file”
, having a specific format and which comprises the whole of the configuration information as well as the data and resources required for running the determined application (REF_LOG_A) to be emulated;and in that it comprises the carrying out of the following steps; transmission by a user client (1) connected to a computer network, by means of the computer terminal (2), of a request to the server (3), this request relating to accessing a determined application (REF_LOG_A) comprised on said server (3); transfer from the server (3) to the client-user (1) of the corresponding client module and its automatic integration into the network browser; initialization of the client module (4) and transmission of a request by the client module (4) in order to obtain the transfer from the server (3) to the client-user (1), of at least one portion of said information, data and resources comprised in the corresponding “
contents file”
;transfer from the server (3) to the client-user (1) of said information, data and resources comprised in the “
contents file”
;initialization of an emulation kernel comprised in the client module (4), this initialization and selection of the emulation kernel being carried out on the basis of said information or data comprised in the “
contents file”
which have been transferred in the previous step;integration of said data or resources having been transferred beforehand into the emulation kernel, this integration being carried out on the basis of the transmitted configuration information; automatic execution of the determined application (REF_LOG_A). - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
said elements as for them may notably be formed by a “
contents file”
;transmission by the server (3) to the client-user (1) of said parameters; transfer from the server (3) to the client-user (1) of the client module (4) and its automatic integration into the network browser, the client module (4) being produced in a technology compatible with the requirement of integration into such a browser; initialization of the client module (4) and transmission of a request by the latter (4) in order to obtain transfer from the server to the client-user (1) of part of said information, data and resources comprised in the corresponding “
contents file”
, this information which allows automatic execution of the determined application (REF_LOG_A) notably relating to the size of each packet forming the application (REF_LOG_A) as well as to the number of these packets;reading by the inference engine of the server (3) of said information, data and resources comprised in the “
contents file” and
which are relative to the image (7) of the determined application to be emulated (REF_LOG_A) present on the server (3);transmission by the server (3) to the client-user (1) of a reply comprising said information, data and resources comprised in the “
contents file”
;automatic initialization of the emulation kernel comprised in the client module (4), this initialization as well as the selection of the emulation kernel, being carried out on the basis of said information or data comprised in the “
contents file”
, which have been transferred beforehand;integration of said data or resources transferred beforehand into the emulation kernel, this integration being carried out on the basis of transmitted configuration information; execution of the determined application (REF_LOG_A).
-
-
3. The method according to claim 2, characterized in that the “
- contents file”
comprises;media files which may assume the form of “
disk images”
such as cassettes, hard disks, CD-ROMs;media files which may assume the form of read-only memory images such as EEPROM images; at least one script which may be interpreted by the client application onboard the Internet browser; a pre-saved state of the starting state of the application to be simulated (REF_LOG_A).
- contents file”
-
4. The method according to claim 2,
characterized in that the parameters required for launching the determined application (REF_LOG_A) are: -
the address where a client module (4) appears on the server (3), notably comprising an emulation kernel which may emulate said application (REF_LOG_A); identifiers of software and hardware components to be simulated, these identifiers allowing these components to be located in a structured and indexable means such as a database, comprised in the server (3); information concerning the client-user (1); data relating to the display, to sound inputs, to user inputs.
-
-
5. The method according to claim 2, characterized in that the information which allows automatic execution of the determined application (REF_LOG_A) notably concerns the size of each packet forming the application (REF_LOG_A) as well as the number of these packets.
-
6. The method according to claim 1,
characterized in that its initialization is achieved by selecting a simple HTML link on a WEB page. -
7. The method according to claim 1,
characterized in that the “ - contents file”
is cut up into packets.
- contents file”
-
8. The method according to claim 7, characterized in that after initialization of the application to be emulated (REF_LOG_A), the packets required for executing this application are transmitted “
- on the fly”
from the server (3) to the client-user (1) in a unitary way, this notably allowing dynamic reading from the server (3) of corresponding data and resources which are required for running said application (REF_LOG_A).
- on the fly”
-
9. The method according to claim 7,
characterized in that in a first phase, only part of the information, data and resources comprised in the “ - contents file”
is transferred from the server (3) to the client-user (1) in order to obtain a minimum “
contents file”
upon initialization of the execution of the emulated application;
subsequently, the other data and resources required for running said application are read dynamically from the server (3) during emulation of this application, thus, these other data and resources are transmitted as packets towards the computer terminal (2) of the client-user (1) and processed sequentially.
- contents file”
-
10. The method according to claim 7,
characterized in that the packets comprising data and resources which allow execution of this application are volatile and are processed by the emulation kernel sequentially without requiring storage on mass memory. -
11. The method according to claim 2,
characterized in that the inference engine generates, during the second step of said method, a specific “ - contents file”
depending on the nature of the initial request from the client-user (1).
- contents file”
-
12. The method according to claim 2,
characterized in that the “ - contents file”
is generated by a physical person and then is loaded on said server (3).
- contents file”
-
13. The method according to claim 11,
characterized in that the “ - contents file”
is parameterized in order to better control the use that the client-user (1) may make of the application to be emulated (REF_LOG_A), it is thus possible to notably proceed with parameterizations;of the expiry date of the “
contents file”
;
if this date is exceeded, the “
contents file”
is no longer utilizable on the server (3); and
/orof the maximum emulation time of the “
contents file”
;
when this time has elapsed, the client-user (1) is informed that he can no longer use the emulated application (REF_LOG_A) stored in the “
contents file”
; and
/orof the domain name on which the “
contents file”
is functional.
- contents file”
-
14. The method according to claim 11,
characterized in that during the generation of the “ - contents file”
, the regional characteristics which the operating system should have present on the computer terminal (2) of the client-user (1) are indicated so that the application to be emulated (REF_LOG_A) may be executed on said computer terminal (2).
- contents file”
-
15. The method according to claim 1,
characterized in that each resource, datum, configuration information comprised in the “ - contents file”
is cut up into blocks, and each of these blocks may be encrypted by using an algorithm and a different key.
- contents file”
-
16. The method according to claim 1,
characterized in that the graphic data of the application to be emulated (REF_LOG_A) are saved on the server (3) in a first specific format adapted to the original hardware to be simulated, these graphic data being comprised in a “ - contents file”
;
in order to make them more accessible and to thereby optimize the performances of the emulated GPU (Graphics Processing Unit), these graphic data are transformed by decoding into a second format which is more suitable for proceeding with an emulation of the aforesaid type, these data being then recorded in a buffer memory in order to avoid having to again proceed with their decoding.
- contents file”
-
17. The method according to claim 16, characterized in that the graphic data of a same type of data (A, B, C, . . . ) are initially organized as a column in memory cells (5), which corresponds to a planar organization of the data and is suitable for the original hardware to be simulated, if they are required, these graphic data, after transformation by decoding, are reorganized linearly and recorded in a cache memory in order to optimize the emulation process.
-
18. The method according to claim 17, characterized in that, depending on the GPU to be simulated, said cache memory has the following specificities:
-
the cache memory corresponds to a buffer memory having a large size in order to be able to comprise the displayable primitives;
orthe cache memory is of the LRU (Least Recently Used) type which only allows the most used graphic data to be put into cache memory, while allowing said cache to not exceed a limiting size.
-
-
19. A device for applying the method according to claim 1,
characterized in that it comprises: -
at least one interactive and multimedia computer terminal (2) provided with peripherals; with multimedia outputs such as a screen; with man/machine input and/or interaction such a keyboard, a mouse, a joystick, a touch screen; with means for transmission with at least one Internet/Intranet site such as notably a browser and a network connection supported by a specific communications protocol independent of the network protocols which is utilizes; at least one server (3) of the Internet type at least partly accessible via said Internet/Intranet site, this server (3) including; at least one client module (4) transferable to the computer terminal (2), this client module (4) comprises at least one emulation kernel allowing emulation of at least one determined application (REF_LOG_A) and also a means for saving and restoring a complete state of the emulated system at any moment through an action of the client-user (1); an inference engine notably proceeding; with calculating and generating parameters and elements required for launching a determined application (REF_LOG_A); with reading information, data and resources concerning the “
contents file”
comprising the image (7) of the determined application (REF_LOG_A);with managing the transmission to the client module (4) integrated in the computer terminal (2) of the client-user (1) of packets forming the “
contents file” and
therefore the determined application (REF_LOG_A);at least one parameterizable “
contents file”
having a specific format and which comprises the whole of the configuration information as well as the data and resources required for running the determined application (REF_LOG_A) to be emulated.
-
-
20. The device according to claim 19, characterized in that its includes:
-
at least one means for persistent storage in memory of the data comprised on the server (3), these data may notably be information relating to the state of the emulated application (REF_LOG_A) such as screen captures, a state of random memory, a state of video memory, a state of EEPROM memory, the best scores in the case when this application (REF_LOG_A) is a video game; and
/ora network connectivity module (6) comprised on the server (3) allowing several clients-users (1) to access and use on the network the same application (REF_LOG_A), this module (6) making multi-user synchronization possible.
-
-
21. The device according to claim 20, characterized in that the multi-user synchronization of the same application (REF_LOG_A) is achieved by means of peer-to-peer technology, the computer terminals (2) of the different clients-users (1) directly communicating with each other without resorting to a network connectivity module (6).
Specification