Network interface sharing methods and apparatuses that support kernel mode data traffic and user mode data traffic
First Claim
1. An apparatus comprising:
- user mode logic;
kernel mode logic; and
kernel mode to user mode interface logic;
is configured to receive at least one data packet over a shared communication port and selectively distribute said data packet to either said user mode logic or said kernel mode logic;
includes bridge logic configured to;
individually determine if said received data packet is a user mode data packet that is to be selectively distributed to said user mode logic or a kernel mode data packet to be selectively distributed to said kernel mode logic; and
store a plurality of user mode data packets in memory operatively coupled to said bridge logic in a queued buffer configuration.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatuses are provided that allow kernel mode data traffic and user mode data traffic to share a common network communication port. One apparatus includes user mode logic, kernel mode logic, and kernel mode to user mode interface logic. The interface logic is configured to receive data packets and selectively distribute the data packet to either the user mode or kernel mode logic. The interface logic includes “virtual” bridge logic and “virtual” miniport logic. The bridge logic determines if a received data packet is a user mode or kernel mode data packet. If it is a kernel mode data packet, then the bridge logic provides the data packet to the kernel mode logic. If it is a user mode data packet, then the bridge logic stores the data packet in memory for subsequent use by the user mode logic. The bridge logic also receives outgoing kernel mode data packets from the kernel mode logic and provides them to a network communication port, and retrieves outgoing user mode data packets from memory and provides them to the same network communication port. The miniport logic provides an interface between the memory accessed by the bridge logic and user mode logic. The miniport logic accepts outgoing user mode data packets and stores them in the memory for subsequent access by the bridge logic, and retrieves incoming user mode data packets stored in memory by the bridge logic.
-
Citations
3 Claims
-
1. An apparatus comprising:
-
user mode logic; kernel mode logic; and kernel mode to user mode interface logic; is configured to receive at least one data packet over a shared communication port and selectively distribute said data packet to either said user mode logic or said kernel mode logic; includes bridge logic configured to; individually determine if said received data packet is a user mode data packet that is to be selectively distributed to said user mode logic or a kernel mode data packet to be selectively distributed to said kernel mode logic; and store a plurality of user mode data packets in memory operatively coupled to said bridge logic in a queued buffer configuration.
-
-
2. A method comprising:
-
providing at least one processing unit to selectively run user mode logic and kernel mode logic; receiving at least one data packet through a shared communication port; and while said processing unit is running said kernel mode logic, selectively handling said data packet for use with either said user mode logic or said kernel mode logic includes; determining if said received data packet is a user mode data packet for use by said user mode logic or a kernel mode data packet for use by said kernel mode logic; and storing received data packets determined to be user mode data packets in memory, wherein storing received data packets determined to be user mode data packets in memory further includes storing a plurality of such user mode data packets in said memory in a queued buffer configuration.
-
-
3. A computer readable media having computer instructions for performing acts comprising:
-
selectively running at least one processing unit using either user mode logic or kernel mode logic; receiving at least one data packet through a shared communication port; and while running said kernel mode logic, selectively handling said data packet for use with either said user mode logic or said kernel mode logic, wherein selectively handling said data packet for use with either said user mode logic or said kernel mode logic further includes; determining if said received data packet is a user mode data packet for use by said user mode logic or a kernel mode data packet for use by said kernel mode logic; and storing received data packets determined to be user mode data packets in memory, wherein storing received data packets determined to be user mode data packets in memory further includes is storing a plurality of such user mode data packets in said memory in a queued buffer configuration.
-
Specification