This disclosure relates to a computer system comprising a system component having a non-volatile memory module that stores a system software component to control hardware components of the system component, at least one non-volatile mass memory that stores an operating system and associated software components, and at least one power supply unit that supplies the system component and the mass memory with a supply voltage. The disclosure relates, in particular, to improved energy management for such a computer system.
Computer systems of the type mentioned at the outset are widely known. In particular, so-called “desktop” computers generally have a system component in the form of a system board with hardware components arranged on the latter, for example, a processor, a chipset and a non-volatile memory module that stores BIOS code to start the computer system. Further internal components, for example, non-volatile mass memory drives such as magnetic hard disks or semiconductor memory drives, are often connected to the system component and usually store an operating system, for example, Windows 8 with associated driver components. During operation of the computer system, the processor executes program code of the operating system, of associated software components or of the system software component and applications called by a user.
Such computers are widely used in office environments, in particular, and generally operate more or less without interruption at least during normal working hours, for example, from 8 AM to 5 PM.
Against the background of climate change in general and the effort to improve the energy efficiency of electrical devices in particular, it could be helpful to further improve the energy balance of such computer systems.
A multiplicity of approaches to improving the energy efficiency of computer systems are known.
A widespread energy-saving approach is described by the so-called “ACPI” standard (“Advanced Configuration and Power Interface Specification”), revision 5.0 dated Dec. 6, 2011, from Hewlett Packard Corporation, Intel Corporation, Microsoft Corporation, Phoenix Technologies Limited and Toshiba Corporation. The standard provides, inter alia, different power states G0 to G3 and different operating states or sleep states S0 to S4 within the power state G0. A computer system is respectively completely ready for operation in the numerically lowest states, that is to say the G0 power state and the S0 operating state. The energy consumption of the computer system is reduced in accordingly higher-ranking states, in particular to reduce the power consumption of the computer in one or more sleep states.
One problem of the states known from the ACPI standard is that no user applications are executed in all operating states, apart from the G0/S0 operating state, and virtually no communication can take place between the system and the outside world, apart from receiving particular wake-up events. The known energy-saving states, in particular, are therefore not suitable for computer systems which provide background tasks, for example, continued network communication or reachability via a special application, for example, a Voice-over-IP application (VoIP) or a chat application. They are also not suitable for those computer systems that execute user-specific applications for reminders or other ongoing tasks, for example, the playback of music.
It could further be helpful to provide a universally usable but nevertheless energy-efficient overall concept as well as methods and apparatuses of operating computer systems mentioned at the outset.
We provide a computer system including a system component having a non-volatile memory module that stores a system software component of a firmware layer to control hardware components of the system component; at least one non-volatile mass memory that stores an operating system and associated software components; and at least one power supply unit that supplies the system component and the non-volatile mass memory with a supply voltage; the system software component of the firmware layer providing at least one interface that selects energy-saving functions, which interface provides at least one function to operate the computer system in an absence mode in which at least one first application running on the computer system can be addressed via a network connection; at least one software component of an operating system layer being executed by the operating system during operation of the computer system, which software component is configured to stop at least one second application when absence of a user is detected and call the function that operates the computer system in the absence mode via the interface; and the system software component of the firmware layer configured to change at least one hardware component of the computer system into an energy-saving state when the function that operates the computer system in the absence mode is called to reduce energy consumption of the computer system when the user is absent.
We further provide a non-volatile memory device storing at least one software component of an operating system layer of a computer system, which cause a data processing device of the computer system to perform the following steps on execution of the at least one software component: detecting the absence of a user from the computer system; when the absence of a user is detected, stopping at least one application executing under the control of the operating system in an application layer; and when the absence of a user is detected, further calling a function provided by an interface of a system software component of a firmware layer of the computer sytem that operates the computer system in an absence mode, wherein the system software component is configured to change at least one hardware component of the computer system into an energy-saving state when the function that operates the computer system in the absence mode is called to reduce the energy consumption of the computer system.
We yet further provide a non-volatile memory device storing at least one system software component of a firmware layer of a computer system that controls hardware components of a system component of the computer system, which cause a data processing device of the computer system to perform the following steps on execution of the at least one system software component: providing at least one interface that selects energy-saving functions, the interface providing at least one function that operates the computer system in an absence mode, in which at least one first application running under the control of an operating system in an application layer of the computer system can be addressed via a network connection; when the function that operates the computer system in the absence mode is called by software component of an operating system layer of the computer system, changing at least one hardware component of the computer system into an energy-saving state to reduce the energy consumption of the computer system.
1 Computer system
2 System board
3 Power supply unit
4 Mass memory drive
5 Processor
6 Chipset
7 Volatile memory module
8 Microcontroller
9 Mass memory controller
10 Network interface
11 Input/output interface
12 Graphics module
13 BIOS program code
14 Non-volatile memory module
15 Operating system
16 Software component
17 Memory bus
18 Peripheral bus
19 System management bus
20 Software stack
21 Firmware layer
22 BIOS interface
23 ACPI interface
24 Proprietary interface
25 Function
26 Operating system layer
27 Kernel layer
28 User layer
29 Operating system core
30 ACPI driver
31 Driver (for real-time clock)
32 First system service
33 Second system service
34 First setting mask
35 Second setting mask
36 Application layer
37 First application (VoIP application)
38 Second application (Web browser)
39 Third application (electronic appointments calendar)
40 Scheduler
41 Working mode
42 Absence mode
43 Presence sensor
We provide a computer system including a system software component providing at least one interface to select energy-saving functions, which interface provides at least one function that operates the computer system in an absence mode in which at least one first application running on the computer system can be addressed via a network connection. In addition, at least one software component is executed by the operating system during operation of the computer system, which software component is set up to stop at least one second application when absence of a user is detected and to call the function to operate the computer system in the absence mode via the interface. The system software component is set up to change at least one hardware component of the computer system into an energy-saving state when the function to operate the computer system in the absence mode is called to reduce the energy consumption of the computer system when the user is absent.
The above-mentioned measures enable a combined hardware and software solution that controls the computer system. In this case, individual applications can be stopped on the software side to reduce utilization of the processor, while further applications, in particular the first application that provides a network connection can continue to run. At the same time, a system-specific function, which is therefore independent of the operating system, that optimizes the hardware in an absence mode is enabled via the interface of the system software component.
The individual measures which are used on the software side and/or hardware side to achieve the intended energy saving may differ from computer system to computer system and from application scenario to application scenario. They partially form subjects of dependent claims and/or are described in the following examples.
One advantage of the computer system is that further measures to save energy on the software side and/or hardware side can be triggered by coupling to existing energy-saving mechanisms, for example, a mechanism that deactivates a screen display. Preferably, the at least one software component is implemented for this purpose as a system service for the operating system, which system service is set up to monitor the operating system for an event to switch off a screen display and stop the at least second application when an event to switch off the screen display is detected and call the function that operates the computer system in the absence mode via the interface.
Advantageously, the operating system itself may also be switched to a restricted operating mode, for example, the so-called “Away Mode” of the Microsoft Windows operating system to reduce utilization of the computer system on the software side. A plurality of actions partially matched to one another can be carried out by activating a restricted operating mode provided by the operating system. In this case, the measures can be adapted by the software component if necessary.
Advantageously, the system component has at least one microcontroller with a plurality of programmable outputs. The system software component is set up to provide at least one control signal to change the at least one hardware component into the energy-saving state via at least one programmable output of the microcontroller when the function that operates the computer system in the absence mode is called. This makes it possible to trigger energy-saving measures which could not be achieved by mere software control.
For example, a first output of the microcontroller may be connected to a control connection of a processor of the computer, the power of the processor being restricted to a predetermined maximum power when at least one first control signal is provided at the control connection. The so-called PROCHOT signal of known Intel processors, which is usually used to avoid thermal overload situations, is suitable for this purpose, for example. Providing the PROCHOT signal makes it possible to reduce the power consumption of a processor, in terms of hardware, to a fraction of the conventional power consumption. In this case, applications executed on the processor continue to run, albeit with a highly restricted performance or speed.
These and other measures make it possible to restrict the energy consumption of the computer system to a fraction of the conventional power. For example, it is possible to reduce a conventional office PC to a power consumption of 3 to 20 W, with the result that its power consumption, despite substantial reachability of the computer system, moves to the order of magnitude of previously known sleep states in which meaningful use of the computer system is no longer possible.
Our systems are described in detail below using different examples with reference to the attached figures.
The computer system 1 may be, for example, a desktop computer system according to the common Intel x86 architecture. The power supply unit 3 is usually a switched mode power supply unit having one or more switching converters. The power supply unit 3 may comprise a plurality of switching converters, at least one switching converter being provided for the purpose of operating the computer system in an energy-efficient manner in a low-load range and at least one further switching converter which can be switched off being provided for the purpose of operating the computer system 1 in a full-load range. In addition, the power supply unit 3 may have a circuit for mains filtering and/or limiting a switch-on current when operating the power supply unit in the full-load range, which circuit can be switched off and/or bridged. The mass memory drive 4 may be, for example, a conventional magnetic memory drive having one or more rotating storage media or a semiconductor memory drive with non-volatile mass memory modules, in particular a so-called “Solid State Disk” (SSD).
The system board 2, generally referred to as the so-called “motherboard” or “mainboard,” may comprise a processor 5, a single-part or multi-part chipset 6, one or more volatile memory modules 7 and a microcontroller 8. The microcontroller 8 executes program code which is used, inter alia, for system management and for energy management of the computer system 1. The exact function of the microcontroller 8 is discussed in detail below. Further components, in particular a mass memory controller 9, a network interface 10 and an I/O interface 11, connect to the processor 5 and to the memory module 7 via the chipset 6. Furthermore, the processor 5 connects to a graphics module 12 either directly or via the chipset 6.
The components 5 to 12 of the system board 2 connect to one another via a plurality of bus systems. In particular, the processor 5, the chipset 6 and the memory modules 7 connect to one another via a system and/or memory bus 17. The chipset 6, the mass memory controller 9, the network interface 10, the I/O interface 11 and the graphics module 12 connect to one another via a peripheral bus 18, for example, a PCI-Express bus (PCIe). In addition, all or individual components of the system board 2 are connected to one another via a so-called “system management” bus 19. The microcontroller 8, the chipset 6 and the processor 5 connect to one another via the system management bus.
The system architecture of the computer system 1, as illustrated in
As a hardware addition to the otherwise conventional system architecture of the computer system 1, the microcontroller 8 connects to the PROCHOT signal input of the processor 5 via a control line. Alternatively or additionally, programmable control outputs of the microcontroller 8 connect, for example, to one or more control inputs of the power supply unit 3 and/or to voltage converters (not illustrated in
Further functions to manage the energy of the computer system 1 are provided or implemented using BIOS program code 13 which is stored in a non-volatile memory module 14 connected to the chipset 6. In particular, the BIOS program code 13 provides a so-called “energy management interface” according to the ACPI standard mentioned at the outset. The BIOS program code 13 additionally provides an extended interface, for example, for a system-specific energy-saving profile, one or more system-specific function calls or a BIOS function independent of the ACPI standard. The interfaces of the BIOS program code 13 may be addressed, for example, by an operating system 15 stored on the mass memory drive 4 or an operating-system-specific software component 16. The interaction between the individual software components 13, 15 and 16 is explained in detail below using the diagram according to
A firmware layer 21 is at the lowest level of the software stack 20 in the illustration according to
The ACPI interface 23 has been extended by at least one optional user-specified or system-specified function 25 compared to the ACPI standard. The function 25 allows a predetermined energy-saving profile to be called for an absence mode of the computer system 1 or allows individual functions of the microcontroller 8 to be addressed in a targeted manner, for example. Alternatively or additionally, the microcontroller 8 or energy-saving functions implemented by the latter can also be addressed via the proprietary interface 24.
An operating system layer 26 is above the firmware layer 21. The operating system layer 26 is subdivided further into a kernel layer 27 and a user layer 28. The actual operating system core 29 and different system drivers are executed inside the kernel layer 27. Of the drivers, an ACPI driver 30 and a driver 31 for a real-time clock are illustrated in the illustrated example. Further software components (not illustrated in
The first system service 32 is, for example, a software component present as standard and intended to deactivate a screen display during input pauses of a user. Such software components are also referred to as screensavers. For example, the first system service 32 can be configured, via the associated setting mask 34, to switch off a display using the graphics module 12 and therefore to deactivate a monitor connected thereto after input pauses of more than five minutes, that is to say periods of time in which the user does not make any keyboard or mouse inputs.
The second system service 33 may be used to initiate extended energy-saving measures while a user is absent. For this purpose, the second system service 33 monitors the first system service 32 and/or other software components of the operating system layer 26 for the occurrence of system events, for example, the switching-off or switching-on of a screen display. If it is detected that a screen display is switched off, the second system service 33 ensures that further measures to save energy which are preconfigured using the second setting dialog 35 are taken. In particular, the second system service 33 is used to call a predetermined energy-saving profile of the extended ACPI BIOS interface 23 via the ACPI driver 30. In this case, the BIOS layer 21 is used to activate a absence mode in which particular hardware components of the computer system 1 are deactivated or operated with reduced power.
An application layer 36 is above the operating system layer 26. Three applications 37, 38 and 39 may be executed inside the application layer 36. For example, the first application 37 is Voice-over-IP software to implement a telephone function by the computer system 1. The second application 38 is a web browser in the example. The third application 39 is a so-called “electronic appointments calendar”.
Different measures to save energy during operation of the computer system 1 when the absence of a user is detected are described below using the system architecture according to
A first measure to save energy involves the second system service 33 changing the operating system core 29 into a special operating mode. For example, a functionality referred to as an “Away Mode” to operate a computer system as a remote media server, which carries out a multiplicity of settings to optimize a computer system, is present in the kernel of the Microsoft Windows operating system as of the “Windows XP Media Center Edition 2005” version. If the measures implemented as standard are not suitable for the absence mode described here, they can be reconfigured or reversed by the second system service. For example, the Away Mode provides for the muting of local audio components not suitable for the absence mode of the computer system 1, as described below.
Another energy-saving measure involves suspending applications that are possibly not required. The suspension described can be carried out by the second system service 33 itself or indirectly by calling the restricted operating mode of the operating system 15. For this purpose, the second system service 33 has, for example, one or more filter lists with clearances or bans for predetermined applications. Such lists are also referred to as a “White List” and “Black List” in the field of electronic data processing.
For example, the second system service 33 has a white list containing applications absolutely intended to continue to run if absence of a user is detected to ensure functionality of the computer system 1. This includes, in particular, the first application 37 to provide the Voice-over-IP telephony. This is because, even if a user does not make any inputs using a keyboard of the computer system 1 over a relatively long time, the user is still supposed to remain reachable by telephone.
In contrast, in an alternative or additional black list, it is possible to enter applications that are supposed to be stopped, for example, ended or interrupted in terms of their execution, in any case when the computer 1 is activated. These include, in particular, particularly high-power applications, for example, the application 28 for web browsing with associated plug-ins to display animations. Such applications often run unnoticed by the user in the background and ensure a high degree of utilization of a processor 5. If a user does not make any inputs and the monitor connected to the computer system 1 is accordingly switched off, it is possible to dispense with the continued operation of such applications without substitution. Applications entered in the black list may be suspended by the second system service 33 when absence of the user is detected, with the result that no further computation time is allocated to them by the operating system 15.
Further applications, for example, the application 39, can either be entered by the user in the black list or in the white list or can be handled according to a predefined setting of the second setting mask 35. For example, such applications may continue to be operated with a greatly reduced computation time.
Energy-saving functions enabled by the lower software layers, in particular the firmware layer 21, and underlying hardware components may be called either individually using the function 25 of the ACPI interface 23 or of the proprietary interface 24 or may be activated as a collected set of associated settings by selecting a user-specific or system-specific ACPI profile. The second approach described harbors the advantage that such profiles can be integrated in a comparatively simple manner in standard operating system components, for example, the first system service 33 to set energy-saving measures.
The energy-saving measures provided on the hardware side may include, in particular, the activation of the PROCHOT signal by the microcontroller 8 to restrict the processor 5. As described with respect to
Further measures to reduce an energy consumption of the computer system 1 triggered by software or hardware involve switching predetermined system components, for example, the network interface 10 or the I/O interface 11, into an operating mode with a reduced power consumption. In particular, WLAN controllers according to the IEEE 802.11 protocol family, Ethernet controllers according to the IEEE 802.2 protocol family and peripheral and host devices according to the USB standard may be switched into a particularly energy-saving mode by software by selecting predetermined profiles of an associated driver model. For example, the transmission power or data rate of a WLAN controller is reduced, parts of an Ethernet controller according to the IEEE 802.3az standard are changed to a standby state, and peripheral devices connected to a USB controller are put into an energy-saving state.
Another energy-saving measure involves predetermined events, for example, arrival of an email or telephone message, not automatically resulting in the activation of the display which is usually switched off when inactivity of a user is detected. Instead, the system service 33 or a further software component (not separately illustrated in
The individual energy-saving measures described above can be combined in one or more predetermined energy-saving profiles. These energy-saving profiles may also be combined with already known energy-saving profiles, for example, the energy-saving states S3 (so-called “Save to RAM” sleep state), S4 (so-called “Save to Disk” or hibernate state) and S5 (software off) known from the ACPI standard. In this respect, another example provides a scheduler 40 which, in addition to manual changes between the different operating modes, also makes it possible to assume predetermined operating states depending on the time of day. A possible linking of operating states is indicated in
The left-hand area of
The transition from the working mode 41 to the absence mode 42 may be triggered by detecting the absence of a user. For this purpose, system events of an operating system may be monitored, for example. For example, after a predetermined time in which input components are not used, the screensaver provided as standard in the operating system triggers a signal which results in the screen being switched off and possibly in the log-in screen being displayed. Alternatively, the transition or the absence of the user may also be effected using a hardware component, in particular a presence sensor 43 integrated in the display and intended to detect movements of the user. The transition in the opposite direction, that is to say the transition from the absence mode 42 to the working mode 41, may likewise be triggered by a suitable hardware component, for example, the presence sensor 43, or by a user manually pressing a button of the computer system 1.
After expiry of a predetermined time in the absence mode 42 or after reaching a predetermined time, the scheduler 40 can change the computer system 1 into a further energy-saving state, for example, the S3 standby state or the S4 hibernate state. For example, the system may remain in the absence mode 42 during normal working hours from 8 AM to 5 PM, but can be selectively switched to one of the three ACPI states mentioned after 5 PM.
It is also possible to deliberately change the computer system 1 into one of the three ACPI states mentioned by a deliberate user input, for example, an operating element of the computer system 1 or a graphical user interface of the operating system 15.
The system can also be automatically changed from one of the ACPI states S3, S4 or S5 back into the S0 state via the scheduler 40 or a hardware arrangement which is possibly present and intended to monitor a user. For example, the system can be automatically changed back into the absence mode 42 in the morning around 8 AM so that a user does not have to wait for the computer system 1 to boot at the beginning of work. Additionally or alternatively, the system can be automatically changed into the working mode 41 if a movement of a user in the area of the computer system 1 is detected. Such an action can also be manually triggered using an operating element of the computer system 1.
The flowcharts according to
It can be seen in
As illustrated in
If this is the case, a predetermined set of actions are carried out in the subsequent step 454 to increase the energy efficiency of the computer system 1 by choosing associated measures. In particular, user applications entered in a black list are stopped. In addition, a WLAN controller possibly contained in the computer system 1 is changed into an energy-saving mode. In addition, an operating display of the computer system 1, in particular an LED status display, that signals the assumed absence mode 42 is programmed using the proprietary interface 24. In the example, instead of permanent signaling to indicate a normal working mode 41, pulsating signaling to indicate the reduced power consumption in the absence mode 42 is used. Finally, different energy-saving hardware mechanisms are activated. For example, a power supply unit 3 can be changed into an operating mode with a greatly reduced output power.
In a subsequent step 456, audio outputs of predetermined applications are reconfigured for the absence mode. In particular, local audio signaling which was previously deactivated by the Away Mode is reactivated (unmute), an audio output device predetermined for the absence mode 42 is stipulated as the standard audio output device and a predetermined volume is selected. For example, it is useful to divert an audio output from an installed loudspeaker of a possibly deactivated monitor to an internal loudspeaker of the computer system 1. This ensures that incoming messages, for example, emails or telephone calls can be reliably signaled to the user even if the display is switched off.
In a final step 458, a timer of a real-time clock is finally programmed for the end of the calculated business hours.
In a step 460, a triggering event is generated using this timer at the end of the conventional business hours. After this event has been detected in step 460 or in the event of a negative result of the queries in steps 442 and 452, a system variable to indicate that the activation of the previously described Away Mode of the operating system 15 is no longer required is deleted in step 462. If system variables are set, it is indicated to the energy management of the computer that the Away Mode is intended to be assumed instead of a conventional ACPI S3 standby operating mode in which an operating state of the computer is held in the volatile memory. However, this is not required outside business hours.
Different measures implemented in step 454 are then reversed in a step 464. In particular, a power supply unit 3 is changed into a normal operating state again, an LED status display of the computer system 1 is programmed for normal, in particular permanent, signaling and a WLAN controller is changed into a normal operating state. Finally, the user applications stopped in step 454 are continued. In a subsequent step 466, the normal audio settings are restored and the measures in step 456 are therefore reversed.
In a step 468, a timer of the real-time clock is programmed for the start of the subsequent business hours. The computer system 1 then changes into the power management according to the operating system specifications, which is explained below with reference to
Although only an absence mode 42 was respectively described in the preceding description using all available measures, it is possible to use individual measures or subgroups of measures to implement further energy-saving modes. For example, it is possible to dispense with the suspension of user applications to control a conventional idle state of the computer system. This is advantageous, in particular, when it is detected that the currently running applications produce such a low system load that operation of the computer system 1 can be ensured even with a reduced hardware energy consumption, for example, by restricting the processor 5 and/or reconfiguring the power supply unit 3 or voltage controllers. Such energy-saving states can be linked to one another via timers or the scheduler 40, with the result that only a first part of energy-saving measures is initially carried out during brief working pauses of a user, for example, and further energy-saving measures are gradually added during longer working pauses of the user.
Desktop computer systems, in particular, can be operated in an operating state controlled for the respective operation by combining the described measures in conjunction with the particularly flexible concept of combined hardware and software control. A user therefore need no longer actively intervene in the energy management and can simply leave his computer system switched on without this resulting in an increased energy consumption.
The described computer system has a number of advantages, in particular:
Number | Date | Country | Kind |
---|---|---|---|
102013106699.2 | Jun 2013 | DE | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2014/060912 | 5/27/2014 | WO | 00 |