Dynamic scheduling an interval for polling devices based on a current operational power mode in an extensible firmware interface architecture
AssigneeIntel Corporation
InventorsVincent J. Zimmer, Michael A. Rothman
Life of this patent
Estimating the term…
Abstract
In some embodiments, the invention involves a platform-based firmware to provide a programmable scheduling timer interval. Dynamic scheduling intervals for non-interrupt driven device drivers and services utilize polling to determine device activity. In at least one embodiment, the disclosed subject matter reduces power consumption of a platform by decreasing the frequency of the system timer-tick when the platform is running in a lower power state. Other embodiments are described and claimed.
Claims19
A method comprising:
- running, by a processor, an extensible firmware interface (EFI) architecture;
- enabling a dynamic scheduling interval in the processor, the scheduling interval to be used for scheduling an interval for polling a plurality of devices communicatively coupled to the processor;
- determining a current scheduling interval based on a current operational power mode of the processor, wherein the current scheduling interval is maintained as a parameterized variable by the EFI;
- polling the plurality of devices, by an EFI firmware service, at the determined current scheduling interval;
- and
- determining whether the current operational power mode of the processor has changed;
- determining an adjusted scheduling interval based on the changed operational power mode of the processor, wherein the adjusted scheduling interval comprises a scheduling interval having an increased interval relative to the current scheduling interval when the processor is in a low power state;
- and
- polling the plurality of devices, by the processor, at the determined adjusted scheduling interval.
A machine readable tangible storage medium having instructions stored thereon, the instructions when executed on a processor of a machine having an extensible firmware interface (EFI) architecture, cause the machine to:
- dynamically adjust a scheduling interval in the machine, the scheduling interval to be used for scheduling an interval for polling a plurality of devices;
- determine a current scheduling interval based on a current operational power mode of the processor of the machine, wherein the current scheduling interval is maintained as a parameterized variable by the EFI;
- poll the plurality of devices, by an EFI firmware service, at the determined current scheduling interval;
- and
- determine whether the current operational power mode of the processor has changed;
- determine an adjusted scheduling interval based on the changed operational power mode of the processor, wherein the adjusted scheduling interval comprises a scheduling interval having an increased interval relative to the current scheduling interval when the machine is in a low power state;
- and
- poll the plurality of devices, by the processor, at the determined adjusted scheduling interval.
A system comprising:
- a platform comprising a processor, chipset and a plurality of ancillary components, the processor configured to run an extensible firmware interface (EFI) architecture;
- a firmware coupled to the processor, the firmware comprising a plurality of EFI services, the firmware further comprising at least one non-interrupt driven device driver, the at least one non-interrupt driven device driver to poll a corresponding device for activity, the polling to occur at a current scheduling interval, wherein the current scheduling interval is maintained as a parameterized variable by the EFI;
- and
- a dynamic scheduler to adjust the current scheduling interval based on an operational power mode of the processor, wherein the dynamic scheduler to adjust the current scheduling interval when a change in the operational power mode of the processor is detected, and wherein the dynamic scheduler is to increase the current scheduling interval when the processor is in a low power state, and
- wherein the at least one non-interrupt drive device driver to poll the corresponding device for activity at the adjusted current scheduling interval.
Dependencies are inferred from the claim text.