P
US9038075B2ActiveUtilityPatentIndex 50

Batch execution of system calls in an operating system

Assignee: RED HAT INCPriority: Nov 26, 2012Filed: Nov 26, 2012Granted: May 19, 2015
Est. expiryNov 26, 2032(~6.4 yrs left)· nominal 20-yr term from priority
Inventors:HORMAN NEIL R T
G06F 11/1415G06F 9/545
50
PatentIndex Score
0
Cited by
3
References
18
Claims

Abstract

A system and a method are disclosed for batch execution of system calls in an operating system. In one implementation, a processing device configures a system call batching buffer table in a user space of an operating system, the system call batching buffer table including a plurality of system call units, associates a system call number with the system call batching buffer table, and issues a trap instruction to a kernel of the operating system to execute at least one of the plurality of system call units, the trap instruction including the system call number.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method comprising:
 configuring, by a processing device, a system call batching buffer table in a user space of an operating system, the system call batching buffer table comprising a plurality of system call units; 
 associating, by the processing device, a system call number with the system call batching buffer table; and 
 issuing a trap instruction to a kernel of the operating system to execute at least one of the plurality of system call units, the trap instruction comprising the system call number. 
 
     
     
       2. The method of  claim 1 , further comprising:
 adding a last system call unit executed in the kernel to an executable index record in the system call batching buffer table. 
 
     
     
       3. The method of  claim 1 , wherein the system call batching buffer table further comprises a buffer length record, further comprising:
 indicating in the buffer length record a number of system call units included in the system call batching buffer table. 
 
     
     
       4. The method of  claim 1 , wherein each of the plurality of system call units comprises:
 a data table comprising a data table length record, a system call unit number, and a plurality of system call unit argument records; and 
 a record table comprising a result table length record, a result code, and a plurality of result option records. 
 
     
     
       5. The method of  claim 4 , wherein each of the plurality of result option records comprises:
 a result low value record; 
 a result high value record; and 
 an action indicator record. 
 
     
     
       6. The method of  claim 5  wherein the action indicator record instructs the kernel to continue executing another system call unit or not to continue or retry when one of the plurality of system call units fails to execute. 
     
     
       7. An apparatus comprising:
 a memory, a processing device coupled to the memory, and an operating system, the apparatus to: 
 configure a system call batching buffer table in a user space of the operating system, comprising a plurality of system call units; 
 associate a system call number with the system call batching buffer table; 
 issue a trap instruction into a kernel of the operating system to execute at least one of the plurality of system call units, the trap instruction comprising the system call number. 
 
     
     
       8. The apparatus of  claim 7 , further comprising:
 add a last system call unit executed in the kernel to an executable index record in the system call batching buffer table. 
 
     
     
       9. The apparatus of  claim 7 , wherein the system call batching buffer table further comprises a buffer length record, further comprising:
 indicate in the buffer length record a number of system call units included in the system call batching buffer table. 
 
     
     
       10. The apparatus of  claim 7 , wherein each of the plurality of system call units comprises:
 a data table comprising a data table length record, a system call unit number, and a plurality of system call unit argument records; and 
 a record table comprising a result table length record, a result code, and a plurality of result option records. 
 
     
     
       11. The apparatus of  claim 10 , wherein each of the plurality of result option records comprises:
 a result low value record; 
 a result high value record; and 
 an action indicator record. 
 
     
     
       12. The apparatus of  claim 11  wherein the action indicator record instructs the kernel to continue executing another system call unit or not to continue or retry when one of the plurality of system call units fails to execute. 
     
     
       13. A non-transitory computer readable storage medium including instructions that, when executed by a processing device, cause the procesing device to:
 configure, by the processing device, a system call batching buffer table in a user space of an operating system, the system call batching buffer table comprising a plurality of system call units; 
 associate, by the processing device, a system call number with the system call batching buffer table; and 
 issue a trap instruction to a kernel of the operating system to execute at least one of the plurality of system call units, the trap instruction comprising the system call number. 
 
     
     
       14. The non-transitory computer readable storage medium of  claim 13 , the processing device further to:
 add a last system call unit executed in the kernel to an executable index record in the system call batching buffer table. 
 
     
     
       15. The non-transitory computer readable storage medium of  claim 13 , wherein the system call batching buffer table further comprises a buffer length record, the processing device further to:
 indicate in the buffer length record a number of system call units included in the system call batching buffer table. 
 
     
     
       16. The non-transitory computer readable storage medium of  claim 13 , wherein each of the plurality of system call units comprises:
 a data table comprising a data table length record, a system call unit number, and a plurality of system call unit argument records; and 
 a record table comprising a result table length record, a result code, and a plurality of result option records. 
 
     
     
       17. The non-transitory computer readable storage medium of  claim 16 , wherein each of the plurality of result option records comprises:
 a result low value record; 
 a result high value record; and 
 an action indicator record. 
 
     
     
       18. The non-transitory computer readable storage medium of  claim 17  wherein the action indicator record instructs the kernel to continue executing another system call unit or not to continue or retry when one of the plurality of system call units fails to execute.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.