Electrical computers and digital processing systems: multicomput – Distributed data processing
Reexamination Certificate
1995-12-08
2001-08-21
Banankhah, Majid (Department: 2755)
Electrical computers and digital processing systems: multicomput
Distributed data processing
C709S241000
Reexamination Certificate
active
06279028
ABSTRACT:
FIELD OF THE INVENTION
The present invention relates to the field of computer networks. Specifically, the present invention relates to the field of managing sets of processes in a network environment.
BACKGROUND OF THE INVENTION
Computers started off as big, centralized mainframe systems. Subsequently, minicomputers, workstations, and personal computers offered significant cost advantages and increased flexibility. Often, multiple computers are coupled together to form a local area network. Thereby, files, resources, information, and communications can be shared by the users. Programs or “jobs” are typically still processed by a user's primary computer. Indeed, current methods of managing multiple related processes are generally limited to a single machine. However, certain jobs may be overly complex or too time-consuming for a single computer to handle. Hence, it would be beneficial if such jobs could somehow be distributed so that they span two or more different computers on the network. In this manner, multiple machines could simultaneously The processing different parts of the job. For this to be implemented, there is a need for an apparatus and method of managing sets of related processes across a network.
Ancillary to the problem of having computers processing different jobs and different pieces of jobs relates to that of resource accounting. Computer networks often have many different, unrelated users that need to be charged separately for resource usage. A system for resource accounting provides records of resource usage that distinguishes users and tracks relevant resource usage information in a manner convenient for later analysis and compilation.
Standard accounting procedures call for the operating system kernel to write a record of resource usage information to a specific file whenever a process exits. The basic unit for record keeping is an individual process. The data generated by this accounting procedure can later be analyzed and post-processed to generate records for individual users or groups of users. However, the standard accounting procedure just described suffers several severe limitations. Many of these problems stem from the granularity of the accounting unit, an individual process, which proves very small for recording purposes. One problem is this system utilizes excessive time for recording information. Each process exit requires a record update. These updates require the system to halt other processing temporarily; the sum total of these delays can significantly stall a system. A second problem is that the amount of data generated by this system is substantial. The space to record the data and the time to analyze and post-process the data is proportional to the number of processes, which is generally very large.
A third problem arises specifically in the context of computer networks. On a network, a single, large process can be divided into several, small processes to run on several different machines simultaneously. For the purposes of both job control and accounting, it would be useful to treat these separate processes as a single entity. For example, a user might wish to remove a collection of related jobs from the entire set of machines simultaneously. In a similar manner, it would be desirable to allow a group of related processes, across different machines, to have their resource usage recorded as a group.
Therefore, it is an object of the present invention to improve the management structure for processes in a networked environment. It is also the object of the present invention to provide an accounting system for resource usage based on the grouping of related processes that offers significant advantages in terms of time, memory, and convenience of use. These and other objects of the present invention not specifically mentioned above will be evident from the detailed descriptions of the present invention herein presented.
SUMMARY OF THE INVENTION
The present invention pertains to a method of correlating a group of related processes residing on separate computers of a computer network so that they can be treated as a single entity. A single, large program is split up into separate processes and simultaneously run on several different computers. This group of related processes are referred to as an array session. Each array session is identified by a unique number, the array session handle. Every process in the computer network contains a reference to one array session handle. All of the processes in the computer network that have the same array session handle are considered to be members of the same array session.
When a new process (i.e., the child process) is created, it is assigned the same array session handle as its parent (i.e., the process that created it). The child process inherits the same array session handle as its parent process, even though the child process is on a separate computer from the parent process that had conceptually created it. If a process determines that it should not belong to its parent's array session, the process can create a new array session (e.g., batch queuing systems that spawn a multi-process job). The operating system provides a mechanism for finding and identifying all of the processes that belong to a particular array session on the computer network. With this information, it is possible to implement programs that treat the array session as a single entity.
REFERENCES:
patent: 4413318 (1983-11-01), Herrington
patent: 5047925 (1991-09-01), Kun et al.
patent: 5301322 (1994-04-01), Hamanaka et al.
patent: 5544316 (1996-08-01), Carpenter et al.
Kaashoek et al, Grup communication in the Ameoba operating system, IEEE 1991.*
Kaashoek et al, Transparent Fault Tolerance In Parallel ORCA Programs, Symposium On Experiences With Distributed And Multiprocessor Ststem, pp. 297-312 Mar. 1992.*
Natarajan et al, Measurement Based Characterization of Global Memory And Network Contention, Operating System And Parallelization, DEC/OS/1 Reference Pages, Section 3, -Routines, vol. 2 2/94 pp 1-459.*
Khalidi et al, An Implementation of Unix On An On An Object-Oriented Operating System, Sun Microsystems Laboratories pp 1-11.
Bradshaw, Jr. Robert David
Dandapani Ajit
Banankhah Majid
Silicon Graphics Inc.
Wagner , Murabito & Hao LLP
LandOfFree
Operating system having a mechanism for handling a group of... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Operating system having a mechanism for handling a group of..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Operating system having a mechanism for handling a group of... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2546208