US 9,811,374 B1
Partial resume for operating system modules
Dmitry Schmidt, Mountain View, CA (US); Iliyan Batanov Malchev, Mountain View, CA (US); and Dave Burke, Mountain View, CA (US)
Assigned to Google Inc., Mountain View, CA (US)
Filed by Google Inc., Mountain View, CA (US)
Filed on Sep. 27, 2016, as Appl. No. 15/277,687.
Application 15/277,687 is a continuation of application No. 14/721,747, filed on May 26, 2015, granted, now 9,483,305.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 9/46 (2006.01); G06F 9/48 (2006.01)
CPC G06F 9/485 (2013.01) [G06F 9/4881 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A method comprising:
receiving, by a computing device, a data packet, wherein the computing device is operating a plurality of kernel-space software modules that are in a suspended state, and wherein the computing device is also operating a plurality of user-space software modules that are in the suspended state;
determining that the data packet is to be consumed by a particular one of the plurality of user-space software modules that are in the suspended state;
in response to determining that the data packet is to be consumed by a particular one of the plurality of user-space software modules that are in the suspended state, transitioning a subset of the plurality of kernel-space software modules and at least the particular one of the plurality of user-space software modules to a non-suspended state;
consuming, by the particular one of the plurality of user-space software modules, the data packet; and
transitioning the non-suspended kernel-space software modules and user-space software modules to the suspended state, wherein transitioning the non-suspended kernel-space software modules to the suspended state is in response to determining, by way of calls to a plurality of callback functions pre-registered by the non-suspended kernel-space software modules, that the non-suspended kernel-space software modules can be transitioned to the suspended state.