Massively multicore processor and operating system to manage strands in hardware
First Claim
1. A computing apparatus, comprising:
- a set of interconnected central processing units (CPUs), each of the CPUs embedding an operating system (OS), the OS comprising an operating system kernel, the operating system kernel being a state machine based on a network protocol stack; and
at least one of the CPUs further embedding executable instructions for allocating multiple strands to one or more other CPUs of the set of interconnected CPUs.
1 Assignment
0 Petitions
Accused Products
Abstract
A computing apparatus and corresponding method for operating are disclosed. The computing apparatus may comprise a set of interconnected central processing units (CPUs). Each CPU may embed an operating system including a kernel comprising a protocol stack. At least one of the CPUs may further embed executable instructions for allocating multiple strands among the rest of the CPUs. The protocol stack may comprise a Transmission Control Protocol/Internet Protocol (TCP/IP), a User Datagram Protocol/Internet Protocol (UDP/IP) stack, an Internet Control Message Protocol (ICMP) stack or any other suitable Internet protocol. The method for operating the computing apparatus may comprise receiving input/output (I/O) requests, generating multiple strands according to the I/O requests, and allocating the multiple strands to one or more CPUs.
-
Citations
24 Claims
-
1. A computing apparatus, comprising:
-
a set of interconnected central processing units (CPUs), each of the CPUs embedding an operating system (OS), the OS comprising an operating system kernel, the operating system kernel being a state machine based on a network protocol stack; and at least one of the CPUs further embedding executable instructions for allocating multiple strands to one or more other CPUs of the set of interconnected CPUs. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method, comprising:
-
receiving an input/output (I/O) request; generating one or more strands according to the I/O request; allocating the one or more strands to one or more central processing units (CPUs) of a set of CPUs, wherein each CPU of the set embeds an operating system (OS) having a kernel based on a network protocol stack; and processing the one or more strands. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23)
-
-
24. A non-transitory computer-readable storage medium having embodied instructions thereon, instructions executable by a processor in a computing device to perform a method, the method comprising:
-
receiving an input/output (I/O) request; generating one or more strands according to the I/O request; allocating the one or more strands to one or more central processing units (CPUs) of a set of CPUs, wherein each CPU of the set embeds an operating system (OS), the OS comprising a kernel that is a state machine based on a network protocol stack; and processing the one or more strands.
-
Specification