Creating a thread of execution in a computer processor without operating system intervention
First Claim
1. An apparatus for creating a thread of execution in a computer processor, the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the computer processor to:
- copy, as indicated by a hardware processor opcode, the hardware processor opcode having been specified by a user-level process, data from a first set of registers to a second set of registers, wherein the first set of registers is associated with a parent hardware thread, wherein the second set of registers is associated with a child hardware thread, wherein the first set of registers and the second set of registers are located on the computer processor, wherein the child hardware thread is in a wait state; and
change, as indicated by the hardware processor opcode, the child hardware thread from the wait state to an ephemeral run state, wherein the ephemeral run state indicates a lack of operating system support structures for the child hardware thread.
1 Assignment
0 Petitions
Accused Products
Abstract
Creating a thread of execution in a computer processor includes an apparatus for copying data from a first set of registers to a second set of registers. The first set of registers is associated with a parent hardware thread and the second set of registers is associated with a child hardware thread. The copying is indicated by a hardware processor opcode called by a user-level process. The copying is performed with no operating system involvement. The child hardware thread is in a wait state. Creating the thread also includes changing, as indicated by the hardware processor opcode, the child hardware thread from the wait state to an ephemeral run state. The ephemeral run state indicates a lack of operating system support structures for the child hardware thread.
21 Citations
14 Claims
-
1. An apparatus for creating a thread of execution in a computer processor, the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the computer processor to:
-
copy, as indicated by a hardware processor opcode, the hardware processor opcode having been specified by a user-level process, data from a first set of registers to a second set of registers, wherein the first set of registers is associated with a parent hardware thread, wherein the second set of registers is associated with a child hardware thread, wherein the first set of registers and the second set of registers are located on the computer processor, wherein the child hardware thread is in a wait state; and change, as indicated by the hardware processor opcode, the child hardware thread from the wait state to an ephemeral run state, wherein the ephemeral run state indicates a lack of operating system support structures for the child hardware thread. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program product for creating a thread of execution in a computer processor, the computer program product disposed upon a non-transitory computer readable storage medium, the computer program product comprising computer program instructions to:
-
copy, as indicated by a hardware processor opcode, the hardware processor opcode having been specified by a user-level process, data from a first set of registers to a second set of registers, wherein the first set of registers is associated with a parent hardware thread, wherein the second set of registers is associated with a child hardware thread, wherein the first set of registers and the second set of registers are located on the computer processor, wherein the child hardware thread is in a wait state; and change, as indicated by the hardware processor opcode, the child hardware thread from the wait state to an ephemeral run state, wherein an the ephemeral run state indicates a lack of operating system support structures for the child hardware thread. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification