Multi-application execution system and method thereof
AssigneeCanon Kabushiki Kaisha
InventorKunimasa Fujisawa
Life of this patent
Estimating the term…
Abstract
In a single-process/multithread environment, a thread group is prepared for every application, the application is started on the thread belonging to this thread group. When a certain thread accesses a different thread, this access is trapped and rejected if these threads do not belong to the same application thread group. This scheme, when a plurality of applications is run on different threads, prevents parameters etc. within the application from being changed by other applications.
Claims10
A multi-application execution system comprising:
- starting means for starting each of the applications on a thread belonging to a thread group allocated to this application;
- thread storage means for storing the threads in a mapping relationship with the thread groups;
- searching means for searching, when a certain thread tries to access a different thread in a program, thread groups to which these two threads belong, from said thread storage means;
- and
- access control means for enabling the access if the thread groups, obtained by said searching means, to which the two threads belong, are identical.
A multi-application execution system comprising:
- starting means for starting each of the applications on a thread belonging to a thread group allocated to this application;
- thread storage means for storing the threads in a mapping relationship with the thread groups;
- first searching means for searching, when a certain thread tries to access a system resource in a program, a thread group to which this thread belongs, from said thread storage means;
- thread group storage means for storing each application in a mapping relationship with the thread group allocated to this application;
- second searching means for searching the application mapping to the thread group obtained by said first searching means, from said thread group storage means;
- system resource name storage means for storing names of system resources available for the respective applications;
- judging means for judging whether an access target system resource is available for the application obtained by said second searching means with reference to said system resource name storage means;
- and
- access control means for rejecting the access if said judging means judges that the access target system resource is not available.
A multi-application execution method comprising the steps of:
- starting each of applications on a thread belonging to a thread group allocated to this application;
- searching, when a certain thread tries to access a different thread in a program, thread groups to which these two threads belong, from thread storage means for storing threads in a mapping relationship with thread groups;
- and
- enabling the access if the thread groups, obtained in said searching step, to which the two threads belong, are identical.
A multi-application execution system comprising the steps of:
- starting each of the applications on a thread belonging to a thread group allocated to this application;
- searching, when a certain thread tries to access a system resource in a program, a thread group to which this thread belongs, from said thread storage means for storing the threads in a mapping relationship with the thread groups;
- searching the application mapping to the thread group obtained in said searching step, from said thread group storage means for storing each application in a mapping relationship with the thread group allocated to this application;
- and
- judging whether an access target system resource is available for the application obtained by searching with reference to system resource name storage means for storing names of system resources available for the respective applications;
- and
- rejecting the access if the access target system resource is judged not to be available in said judging step.
A computer-readable storage medium storing a program for controlling a computer to perform a plurality of applications, said program comprising codes for causing the computer to perform:
- starting each of applications on a thread belonging to a thread group allocated to this application;
- searching, when a certain thread tries to access a different thread in a program, thread groups to which these two threads belong, from thread storage means for storing threads in a mapping relationship with thread groups;
- and
- enabling the access if the thread groups, obtained in said searching step, to which the two threads belong, are identical.
A computer-readable storage medium storing a program for controlling a computer to perform a plurality of applications, said program comprising codes for causing the computer to perform:
- starting each of the applications on a thread belonging to a thread group allocated to this application;
- searching, when a certain thread tries to access a system resource in a program, a thread group to which this thread belongs, from said thread storage means for storing the threads in a mapping relationship with the thread groups;
- searching the application mapping to the thread group obtained in said searching step, from said thread group storage means for storing each application in a mapping relationship with the thread group allocated to this application;
- and
- judging whether an access target system resource is available for the application obtained by searching with reference to system resource name storage means for storing names of system resources available for the respective applications;
- and
- rejecting the access if the access target system resource is judged not to be available in said judging step.
Dependencies are inferred from the claim text.