Software operating system and the software-operating method thereof
First Claim
1. A software operating system, comprising a client execution module located at a client site, and a server control and data distribution module located at a server site;
- the client execution module further comprising;
a process loading sub-module which acquires and loads software package definition files and establishes an environment required for running an application program, and directs the operating system to create a corresponding process for the application program to be executed;
an I/O monitoring and processing sub-module which monitors and captures an I/O request of the application program; and
a network communication sub-module which communicates with the server through the network according to the I/O request, and downloads the corresponding data to the local computer;
the server control and data distribution module further comprising;
a control sub-module which coordinates the work between other server sub-modules and the client; and
a data distribution sub-module which provides specific data in a software package to the client.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention relates to a brand new software-operating method and a software operating system a software operating system comprising a client execution module positioned at the client and a server control and data distribution module positioned at the server; the client execution module further comprising: a process loading sub-module which acquires and loads a software package definition file and establishes an environment required for running an application program on the one hand; and directs the operating system to create a corresponding process for the application program to be executed on the other hand; an I/0 monitoring and processing sub-module which monitors and captures an I/O request of the application program; and a network communication sub-module which communicates with the server through the network according to the request, and downloads the corresponding data to a local computer; the server control and data distribution module further comprising: a control sub-module which coordinates the work between other server sub-modules and the client; and a data distribution sub-module which provides specific data in a software package to the client. For the present invention, because the files or subprograms which are not used are not needed to be loaded, thus greatly reducing the requirements for storage space of the client computer on the one hand, and preventing the procedure of installing the whole software at the client on the other hand.
-
Citations
10 Claims
-
1. A software operating system, comprising a client execution module located at a client site, and a server control and data distribution module located at a server site;
-
the client execution module further comprising; a process loading sub-module which acquires and loads software package definition files and establishes an environment required for running an application program, and directs the operating system to create a corresponding process for the application program to be executed; an I/O monitoring and processing sub-module which monitors and captures an I/O request of the application program; and a network communication sub-module which communicates with the server through the network according to the I/O request, and downloads the corresponding data to the local computer; the server control and data distribution module further comprising; a control sub-module which coordinates the work between other server sub-modules and the client; and a data distribution sub-module which provides specific data in a software package to the client. - View Dependent Claims (2)
-
-
3. A software-operating method of an operating system comprising a plurality of steps of:
-
<
1>
a server control and data distribution module is installed in a server;
a client execution module is installed in a client computer; and
a source of the software to be operated is deployed in the server;<
2>
a process loading sub-module checks whether a software package definition file of a designated software source is cached to the client computer;
if not, the server is connected to download the software package definition file; and
a process loading sub-module checks whether a working directory corresponding to the software package exists;
if not, a working directory corresponding to the software package is created;<
3>
a full path of an executable file is obtained according to a location of the working directory and a file name of the executable file designated by the process loading sub-module, and the process loading sub-module calls an API function of the operating system by taking a path as a parameter to direct the operating system to create a new process;<
4>
the operating system opens an executable file pointed by the path using the API function while creating the new process, and maps the contents of the executable file to an address space of the process based on a ‘
memory-file mapping mechanism’
;
if the executable file is dependent on other program module files, the operating system repeats the procedure, opens the program module files, and maps the files to the address space; and
the procedure is stopped until all the program module files depended on are opened and mapped to the address space; and<
5>
the operating system starts to execute an entry function defined in the said executable file, and the entry function continues to call other functions of the file or other files according to the logic of the entry function;
a CPU executes a reading operation on the address of each function while executing each function to obtain the content of a command, decode and execute the command;
a page fault is generated when file data corresponding to the address accessed by the CPU are not in a physical memory, the original execution process is suspended at the moment, a processing subprogram of the page fault initiates an I/O reading request for reading corresponding section of the corresponding file into the physical memory, and then continues the original execution process;
the I/O monitoring and processing sub-module can monitor each I/O reading request, firstly checks whether the data to be read exist in the memory, reads out the data from the memory if yes, and returns the data to an upper caller to complete the reading operation;
if the data do not exist in the memory, the I/O monitoring and processing sub-module requests the network communication sub-module to download the data from the server to the memory, and returns the data to the upper caller to complete the reading operation. - View Dependent Claims (4, 5, 6)
-
-
7. A software-operating method of a software operating system comprising a plurality of steps of:
-
<
1>
a server control and data distribution module is installed in a server;
a client execution module is installed in a client computer; and
a software source is made for the software to be operated, and the software source is deployed in the server;<
2>
a process loading sub-module checks whether a software package definition file of a designated software source is cached to the client computer;
if not, the server is connected to download the software package definition file; and
the process loading sub-module checks whether a working directory corresponding to the software package exists in a pre-configured location;
if not, a working directory corresponding to the software package is created;<
3>
a full path of an executable file is obtained according to a location of the working directory and a file name of an executable file designated by the process loading sub-module, and the process loading sub-module calls an API function of the operating system by taking the path as a parameter to direct the operating system to create a new process;<
4>
the operating system opens the executable file pointed by the full path using the API function while creating the new process, and mapped the content of the executable file to an address space of the process based on a ‘
memory-file mapping mechanism’
;
if the executable file is dependent on other program module files, the operating system repeats the procedure, opens the program module files, and mapped the files to the address space;
the procedure is stopped until all the dependent files are opened and mapped to the address space;<
5>
an I/O monitoring and processing sub-module monitors an I/O request for opening a file sent by the operating system, checks whether the client computer has a corresponding cache file while completing the opening request by a standard file opening process of the operating system;
if not, the cache management sub-module creates an initial cache file with null content; and<
6>
the operating system starts to execute an entry function defined in the executable file, and the entry function continues to call other functions of the file or other files according to the logic of an entry function;
a CPU executes a reading operation on the address of each function while executing each function to obtain the contents of a command, decode and execute the command;
a page fault is generated when file data corresponding to the address accessed by the CPU are not in a physical memory, the original execution process is suspended at the moment, a processing subprogram of the page fault initiates an I/O reading request for reading corresponding section of the corresponding file into the physical memory, and then continues the original execution process;
the I/O monitoring and processing sub-module can monitor each I/O reading request, firstly checks whether the data to be read exist in the cache file corresponding to the file, reads out the data from the cache file if yes, and returns the data to an upper caller to complete the reading operation;
if the data do not exist in the cache file, the I/O monitoring and processing sub-module requests the network communication sub-module to download the data from the server to the memory, writes the data in the cache file, and returns the data to the upper caller to complete the reading operation. - View Dependent Claims (8, 9, 10)
-
Specification