IP Library Granted Patent US 7,546,600
Granted Patent B2
US 7,546,600 · App. 10/837,110 · Granted Jun 9, 2009

Method of assigning virtual process identifier to process within process domain

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,546,600
App. No.
10/837,110
Granted
Jun 9, 2009
Kind
B2
Abstract

An embodiment of a method of virtualizing a process identifier begins with creation of a child process from a parent process. The parent process creates the child process by making a system call. If the parent process executes before the child process begins to execute, at a kernel level and without interruption the parent process maps a free virtual process identifier to a kernel process identifier for the child process. If the child process executes before the parent process begins to execute, at the kernel level and without interruption the child process determines the kernel process identifier. The child process then maps the free virtual process identifier to the kernel process identifier.

Claims (54)

1. A method of virtualizing a process identifier comprising the steps of:

creating a child process from a parent process by making a system call from the parent process;

if the parent process executes before the child process begins to execute, at a kernel level and without interruption mapping a free virtual process identifier to a kernel process identifier for the child process, wherein the parent process performs the mapping of the free virtual process identifier to the kernel process identifier if the parent process executes before the child process begins to execute; and

if the child process executes before the parent process begins to execute, at the kernel level and without interruption:

determining the kernel process identifier for the child process; and

mapping the free virtual process identifier to the kernel process identifier, wherein the child process performs the mapping of the free virtual process identifier to the kernel process identifier if the child process executes before the parent process begins to execute.

2. The method of claim 1 wherein the mapping of the free virtual process identifier to the kernel process identifier makes an entry in a mapping table.

3. The method of claim 1 wherein a loadable kernel module places the system call within a wrapper function.

4. The method of claim 3 wherein the wrapper function includes wrapper code to perform the mapping of the free virtual process identifier to the kernel process a identifier.

5. The method of claim 1 wherein the child process begins execution at a user level.

6. The method of claim 5 wherein the child process begins with an instruction which directs the child process to enter the kernel level.

7. The method of claim 6 wherein the child process upon entering the kernel level performs the steps of:

determining the kernel process identifier for the child process; and

mapping the free virtual process identifier to the kernel process identifier.

8. A method of virtualizing a process identifier comprising the steps of:

creating a child process from a parent process by making a system call from the parent process;

if the parent process executes before the child process begins to execute, at the kernel level:

acquiring a lock on a mapping table;

assigning a free virtual process identifier to the child process;

mapping the free virtual process identifier to a kernel process identifier for the child process which makes an entry in the mapping table, wherein the parent process performs the mapping of the free virtual process identifier to the kernel process identifier if the parent process executes before the child process begins to execute; and

unlocking the mapping table; and

if the child process executes before the parent process begins to execute, at the kernel level:

acquiring a lock on the mapping table;

determining the kernel process identifier for the child process;

assigning the free virtual process identifier to the child process;

mapping the free virtual process identifier to the kernel process identifier which makes the entry in the mapping table, wherein the child process performs the mapping of the free virtual process identifier to the kernel process identifier if the child process executes before the parent process begins to execute; and

unlocking the mapping table.

9. A computer readable media having stored thereon computer code which when executed implements a method of virtualizing a process identifier, the method of virtualizing the process identifier comprising the steps of:

creating a child process from a parent process by making a system call from the parent process;

if the parent process executes before the child process begins to execute, at a kernel level and without interruption mapping a free virtual process identifier to a kernel process identifier for the child process, wherein the parent process performs the mapping of the free virtual process identifier to the kernel process identifier if the parent process executes before the child process begins to execute; and

if the child process executes before the parent process begins to execute, at the kernel level and without interruption:

determining the kernel process identifier for the child process; and

mapping the free virtual process identifier to the kernel process identifier, wherein the child process performs the mapping of the free virtual process identifier to the kernel process identifier if the child process executes before the parent process begins to execute.

10. The computer readable media of claim 9 wherein the mapping of the free virtual process identifier to the kernel process identifier makes an entry in a mapping table.

11. The computer readable media of claim 9 wherein a loadable kernel module places the system call within a wrapper function.

12. The computer readable media of claim 11 wherein the wrapper function includes wrapper code to perform the mapping of the free virtual process identifier to the kernel process identifier.

13. The computer readable media of claim 9 wherein the child process begins execution at a user level.

14. The computer readable media of claim 13 wherein the child process begins with an instruction which directs the child process to enter the kernel level.

15. The computer readable media of claim 14 wherein the child process upon entering the kernel level performs the steps of:

determining the kernel process identifier for the child process; and

mapping the free virtual process identifier to the kernel process identifier.

16. A computer readable media having stored thereon computer code which when executed implements a method of virtualizing a process identifier, the method of virtualizing the process identifier comprising the steps of:

creating a child process from a parent process by making a system call from the parent process;

if the parent process executes before the child process begins to execute, at the kernel level:

acquiring a lock on a mapping table;

assigning a free virtual process identifier to the child process;

mapping the free virtual process identifier to a kernel process identifier for the child process which makes an entry in the mapping table, wherein the parent process performs the mapping of the free virtual process identifier to the kernel process identifier if the parent process executes before the child process begins to execute; and

unlocking the mapping table; and

if the child process executes before the parent process begins to execute, at the kernel level:

acquiring a lock on the mapping table;

determining the kernel process identifier for the child process;

assigning the free virtual process identifier to the child process;

mapping the free virtual process identifier to the kernel process identifier which makes the entry in the mapping table, wherein the child process performs the manning of the free virtual process identifier to the kernel process identifier if the child process executes before the parent process begins to execute; and

unlocking the mapping table.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2022
From: OT PATENT ESCROW, LLC
To: VALTRUS INNOVATIONS LIMITED
Reel/Frame 061244/0298 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →