-
VERWANDTE ANMELDUNGEN
-
Diese Anmeldung hat einen Bezug zu der ebenfalls übertragenen US-Anmeldung mit dem amtlichen Aktenzeichen 11/173,784, eingereicht von James Kardach, Paul Diefenbaugh, Barnes Cooper, Animesh Mishra und Seh Kwa am 30. Juni 2005, mit dem Titel ”Various Methods and Apparatuses for Power States in a Controller”.
-
HINTERGRUND
-
Typischerweise wird bei einer Rechenplattform (z. B. einem Personal Computer) die Energieverwaltung von einem Betriebssystem und der ihm zugeordneten Software (z. B. einer Energieverwaltungssoftware) koordiniert und gesteuert. Verschiedene Industriestandards beschreiben, wie die Energieverwaltung von der Rechenplattform und dem Betriebssystem implementiert werden kann. Ein derartiger Industriestandard ist die Advanced Configuration Power Interface Specification, Version 3.0a, veröffentlicht am 30. Dezember 2005, und/oder spätere Überarbeitungen (”die ACPI-Spezifikation”). Die ACPI-Spezifikation definiert Leistungszustände einer Rechenplattform oder eines Systems als ”S-Zustände”, und diese Zustände werden in der ACPI-Spezifikation als S0, S1, S2, S3, S4 und S5 bezeichnet. Bei einem üblichen Gebrauch sind diese S-Zustände für die Energieverwaltung einer Rechenplattform verfügbar. Die S-Zustände umfassen drei Kategorien, die in der ACPI-Spezifikation als ”arbeitender”, ”schlafender” und ”weich abgeschalteter (soft off)” Zustand bezeichnet. Der arbeitende Zustand umfasst den Zustand S0, der schlafende Zustand umfasst die Zustände S1, S2, S3 und S4 und der soft off-Zustand umfasst den Zustand S5. Der Übergang einer Rechenplattform zwischen dem arbeitenden, einem schlafenden und dem soft off-Zustand wird typischerweise durch die Energieverwaltungssoftware des Betriebssystems gesteuert.
-
US 5,721,937 A offenbart ein Verfahren und eine Vorrichtung zum Reduzieren des Energieverbrauchs in einem Computersystem durch Einstellen der CPU in einen Niedrigenergiemodus. Eine Energiemanagementschaltung überwacht die Interrupts und direkte Speicherzugriffsaufforderung in dem System, wenn sich die CPU in einem Standby-Zustand befindet. Die CPU tritt in einen aktiven Zustand ein, wenn entweder ein Interrupt oder eine direkte Speicherzugriffsaufforderung festgestellt wurden.
-
US 6,357,013 B1 offenbart eine Schaltung zum Einstellen eines Bussignals eines Computersystems in einen vorbestimmten Zustand mit niedrigem Energieverbrauch. Eine Schaltung für ein Energiemanagement sieht in einem Computersystem vier Zustände vor: Run-Zustand, Sleep-Zustand, Idle-Zustand und Stanby-Zustand. Das Computersystem sieht einen PCI-Bus und einen ISA-Bus vor mit einer CPU-PCI-Brücke. Die Schaltung zum Energiemanagement führt einen Übergang vom Sleep-Zustand in den Idle-Zustand durch, wenn die CPU-PCI-Brücke auf dem PCI-Bus ruht und sich in dem Sleep-Modus befindet. In dem Idle- oder Standby-Zustand ist der Speichercontroller in der CPU-PCI-Brücke nicht in der Lage, Leistung einzusparen.
-
US 6,708,278 B2 offenbart eine Vorrichtung und ein Verfahren zum Aufwecken einer Busschaltung aus einem Zustand niedriger Energie. Die Busschaltung bildet einen Teil eines Computersystems und wird in einen inaktiven Zustand, auch als Shutdown-Zustand bezeichnet, gesetzt, wenn keine Notwendigkeit zum Einsparen von Energie vorhanden ist. Der Bus kann aus dem inaktiven Zustand aufgeweckt werden, wenn bestimmte Ereignisse auf den Bus auftreten.
-
Aufgabe der vorliegenden Erfindung ist es, in der Energieverwaltung in einer Computerplattform den Zeitpunkt zum Überführen der Computerplattform aus einem Systemzustand der Betriebsleistung in einem Standby-Systemzustand zu optimieren.
-
KURZBESCHREIBUNG DER ERFINDUNG
-
Die Erfindung stellt ein Verfahren nach Anspruch 1, eine Vorrichtung nach Anspruch 8, ein System nach Anspruch 14 und ein Computerprogrammprodukt nach Anspruch 21 zur Verfügung.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Blockschaubild einer beispielhaften Rechenplattform;
-
2 ist ein beispielhaftes Blockschaubild eines Teiles eines Controllers, der Logik enthält, um die Rechenplattform zwischen Zuständen höherer und niedriger Leistung übergehen zu lassen;
-
3 ist ein beispielhaftes Ablaufdiagramm der Rechenplattform, die in und aus verschiedene(n) Leistungszustände übergeht; und
-
4 ist ein Ablaufdiagramm eines beispielhaften Verfahrens, um die Rechenplattform zwischen einem Systemzustand der Betriebsleistung und niedriger Leistung zu überführen.
-
GENAUE BESCHREIBUNG
-
Wie es im Hintergrund angesprochen ist, wird der Übergang einer Rechenplattform zwischen arbeitenden, schlafenden und soft off-Zuständen typischerweise durch die Energieverwaltungssoftware eines Betriebssystems gesteuert. Beispielsweise beschreibt die ACPI-Spezifikation Leistungszustände von Komponenten für verschiedene Komponenten, die sich auf einer Rechenplattform befinden oder auf sie ansprechen. Diese Leistungszustände der Komponenten umfassen ”C-Zustände” für Verarbeitungselemente (z. B. eine zentrale Verarbeitungseinheit (CPU – Central Processing Unit)) und ”D-Zustände” für andere Komponenten, die sich auf einer Rechenplattform befinden oder auf sie ansprechen. Diese weiteren Komponenten werden hiernach als ”Baugruppen” bezeichnet und können Controller, Speicher, Peripheriebaugruppen usw. umfassen, sind aber nicht darauf beschränkt.
-
Bei einem Beispiel, wenn eines oder mehrere der Verarbeitungselemente der Rechenplattform ruhen oder unterhalb voller Kapazität arbeiten, bringt die Energieverwaltungssoftware des Betriebssystems diese ruhenden Verarbeitungselemente in C-Zustände niedrigerer Leistung. Wie weiter unten beschrieben wird und der ACPI-Spezifikation entsprechend wird, je höher der C-Zustand ist, desto weniger Energie von dem Verarbeitungselement verbraucht. Zum Beispiel verbraucht ein Verarbeitungselement in einem Leistungszustand C3 weniger Energie als wenn das Verarbeitungselement in einem Leistungszustand C0, C1 oder C2 wäre.
-
Typischerweise, während das eine oder die mehreren Verarbeitungselemente in einen C-Zustand niedriger Leistung gebracht werden, lässt die Energieverwaltungssoftware des Betriebssystems die meisten Baugruppen in einem Leistungszustand, der eine wesentliche Menge an Energie verbraucht. Dies geschieht, weil beispielsweise innewohnende Wartezeitstrafen, die verursacht werden, wenn Baugruppen von der Energieverwaltungssoftware des Betriebssystems zwischen D-Zuständen, die viel oder weniger Energie verbrauchen, überführt werden, größer sein können als das Intervall, über das das Verarbeitungselement tatsächlich in einem Zustand niedrigerer Leistung ist, oder die Funktionalität einer Baugruppe, die von dem OS(Operating System)-Betriebssystem (oder einem Endverbraucher) gefordert wird, verloren geht, wenn in einen D-Zustand, der weniger Energie verbraucht, eingetreten wird. Somit ist das Eingreifen der Energieverwaltungssoftware des Betriebssystems beim Überführen von Baugruppen zwischen D-Zuständen, in denen mehr oder weniger Energie verbraucht wird, bei den Energiesparbemühungen für eine Rechenplattform problematisch, die ein oder mehrere Verarbeitungselemente enthält, die schnell (z. B. in Bruchteilen einer Sekunde) zwischen C-Zuständen, die mehr oder weniger Energie verbrauchen, übergehen.
-
Bei einem Beispiel wird ein Verfahren implementiert, das das Einleiten einer Energieverwaltungsstrategie basierend auf einem Verarbeitungselement für eine Rechenplattform, das in einen vorgegebenen Leistungszustand eintritt, umfasst. Die Energieverwaltungsstrategie besteht darin, eine Feststellung dahingehend einzuführen, ob ein Eingabe/Ausgabe(I/O – Input/Output)-Controller und ein Speichercontroller für die Rechenplattform im Wesentlichen untätig sind, z. B. über eine Dauer praktisch ohne Aktivität, Netzwerkverkehr, Speicheranfragen usw. Die Rechenplattform kann dann aus einem Systemzustand der Betriebsleistung in einen Systemzustand niedriger Leistung überführt werden, basierend auf einer Feststellung, dass sowohl der I/O-Controller als auch der Speichercontroller im Wesentlichen untätig sind, und auf einer Angabe, dass die Rechenplattform in der Lage ist, in den Systemzustand niedriger Leistung einzutreten. Gemäß diesem beispielhaften Verfahren umfasst der Systemzustand niedriger Leistung das Einbringen einer oder mehrerer Baugruppen, die auf die Rechenplattform ansprechen, in eine Leistungsebene, die geeignet ist, einen Konfigurationszustand zu halten, der es ermöglicht, dass die eine oder die mehreren Baugruppen in den Systemzustand der Betriebsleistung zurückkehren, in einer Weise, die für ein Betriebssystem für die Rechenplattform im Wesentlichen transparent ist.
-
1 ist ein Blockschaubild einer beispielhaften Rechenplattform 100. Die Rechenplattform 100 umfasst zum Beispiel eine Rechenplattform für ein Zweiwege-Funkkommunikationssystem, einen Einwege-Pager, einen Zweiwege-Pager, ein persönliches Kommunikationssystem, einen Personal Computer (z. B. Laptop, Desktop, Notebook, Ultra-Mobile usw.), eine Arbeitsstation, einen Server, einen persönlichen digitalen Assistenten (PDA – Personal Digital Assistant), ein tragbares Musik-, Video- oder Spielewiedergabegerät. Bei einer Implementierung, wie sie in 1 veranschaulicht ist, umfasst die Rechenplattform 100 einen Konfigurationscontroller 110, einen Speichercontroller 120, einen Speicher 130, Verarbeitungselemente 140, einen Eingabe/Ausgabe(I/O)-Controller 150, Baugruppen 160 und Leistungsschaltung 170, ist jedoch nicht darauf beschränkt. Diese Offenbarung ist nicht auf eine Rechenplattform beschränkt, die lediglich diese Elemente umfasst.
-
Bei einem Beispiel umfasst der Konfigurationscontroller 110 Logik, die in der 1 als Konfigurationslogik 112 und als Leistungszustandslogik 115 veranschaulicht ist. Die Konfigurationslogik 112 vereinfacht zum Beispiel die Konfiguration einer oder mehrer Baugruppen, die auf die Rechenplattform ansprechen für den Betrieb auf der Rechenplattform 100. Die Leistungszustandslogik 115 vereinfacht zum Beispiel den Übergang der Rechenplattform 100 zwischen einem Systemzustand der Betriebsleistung und einem Systemzustand niedriger Leistung.
-
Bei einer Implementierung sind der Systemzustand der Betriebsleistung und der Systemzustand niedriger Leistung innerhalb des Leistungszustandes S0, wie es in der ACPI-Spezifikation beschrieben ist. Bei dieser Implementierung ist, anders als bei einem Übergang aus einem Leistungszustand S3 gemäß ACPI heraus oder in ihn hinein, kein oder wenig Eingreifen der Energieverwaltungssoftware des Betriebssystems bei den Übergängen der Rechenplattform 100 zwischen den Systemzuständen der Betriebsenergie (z. B. S0_run) und niedriger Leistung (z. B. S0_standby) beteiligt. Somit können Übergänge zwischen Systemzuständen der Betriebsleistung und niedriger Leistung für die Energieverwaltungssoftware des Betriebssystems im Wesentlichen transparent sein. Die Übergänge können auch für einen Endbenutzer transparent sein, z. B. bleibt ein Anzeigebildschirm unverändert, Netzwerkverbindungen verbleiben aktiviert usw. Diese Transparenz vermittelt zum Beispiel ein Aussehen und Gefühl für das OS und/oder den Endbenutzer, dass die Rechenplattform 100 vollständig angeschaltet ist, wenn sie sich tatsächlich in einem Systemzustand niedriger Leistung befindet.
-
Bei einem Beispiel, wie in der 1 veranschaulicht, wird der Konfigurationscontroller 110 als eine getrennte Komponente gehalten, die sich auf der Rechenplattform 100 befindet. Jedoch ist diese Offenbarung nicht nur auf dieses Beispiel eines getrennten Konfigurationscontrollers 110 beschränkt. Der Konfigurationscontroller 110 kann zum Beispiel in andere Controller oder Verarbeitungselemente integriert sein, die sich auf der Rechenplattform 100 befinden (z. B. in einen Firmware-Hub, in eine Verwaltungsmaschine, in einen Chipsatz, in ein System auf einem Chip usw.).
-
Bei einer Implementierung vereinfacht oder steuert der Speichercontroller 120 Speichertransaktionen (z. B. Lese- oder Schreibanfragen) zum Speicher 130. Der Speicher 130 umfasst zum Beispiel einen Systemspeicher, der für Baugruppen und/oder Komponenten, die sich auf der Rechenplattform 100 befinden oder auf sie ansprechen, z. B. Verarbeitungselemente 140, Baugruppen 160 usw., verwendet wird oder zugreifbar ist. Dieser Systemspeicher umfasst zum Beispiel ein oder mehrere dynamische Speichermodule mit wahlfreiem Zugriff (DRAM – Dynamic Random Access Memory) (nicht gezeigt).
-
Obwohl dies in der 1 nicht veranschaulicht ist, kann bei einem Beispiel der Speichercontroller 120 mit anderen Komponenten auf der Rechenplattform 100 integriert sein. Zum Beispiel kann der Speichercontroller 120 mit Verarbeitungselementen 140 integriert sein. Der Speichercontroller 120 kann auch mit anderen Controllern (z. B. dem I/O-Controller 150 und/oder dem Konfigurationscontroller 110) in einem Cluster aus anderen Komponenten (z. B. in einem Chipsatz) angeordnet sein.
-
Bei einer Implementierung stellen die Verarbeitungselemente 140 irgendwelche aus einer weiten Vielfalt von Logikbaugruppe(n) oder ausführbarem Inhalt, um Verarbeitungsfunktionen für die Rechenplattform 100 durchzuführen, dar, z. B. eine zentrale Verarbeitungseinheit (CPU). Die Verarbeitungselemente 140 können zum Beispiel einen oder mehrere aus einem Mikroprozessor, einem Netzwerkprozessor, einem Diensteprozessor, einem Mikrocontroller, einem oder mehreren gesonderten Kernen eines Mehrkern-Mikroprozessors oder einer Kombination aus diesen umfassen.
-
Bei einem Beispiel vereinfacht der I/O-Controller 150 die Steuerung und die Verwaltung von Baugruppen 160, die sich auf der Rechenplattform 100 befinden oder auf sie ansprechen. Die Baugruppen 160 umfassen zum Beispiel eine oder mehrere Baugruppen, so wie eine Tastatur, eine Maus, ein internes/externes Speicherlaufwerk, eine Anzeige, verdrahtete/drahtlose Netzwerkhardware (NICs) usw., sind aber nicht auf diese beschränkt. Diese Baugruppen können an den I/O-Controller 150 über verschiedene Typen Busse oder Verbindungen gekoppelt sein. Diese Busse oder Verbindungen können zum Beispiel entsprechend verschiedenen Verbindungskommunikationsprotokollen des Industriestandards arbeiten, die den Universal Serial Bus (USB), Peripheral Component Interconnect (PCI), PCI Express (PCI-e), Smart Management Bus (SMBus), HyperTransport, Low Pin Count (LPC), Serial Advanced Technology Attachment (SATA) und Parallel Advanced Technology Attachment (PATA), High Definition Multimedia Interface (HDMI) usw. umfassen. Diese Offenbarung ist nicht auf nur die oben aufgeführten Kommunikationsprotokolle für Busse und Verbindungen, um Baugruppen 160 an den I/O-Controller 150 zu koppeln, beschränkt.
-
Bei einer Implementierung umfasst eine Leistungsschaltung 170, wie in der 1 gezeigt, Schaltung 172 für die Betriebsleistung und Schaltung 174 für niedrige Leistung. Obwohl in der 1 nicht veranschaulicht, können die Schaltungen für Betriebsleistung 172 und niedrige Leistung 174 zum Beispiel jede Spannungsregulatoren, Leistungsschalter, Energieversorgungen und Taktgeneratoren wie zweckmäßig umfassen, um die Zustände höherer und niedrigerer Leistung zu halten. Die Schaltung 172 für die Betriebsleistung stellt zum Beispiel Energie zur Verfügung, um zu ermöglichen, dass alle Komponenten bei oder nahe bei voller betrieblicher Kapazität arbeiten. Die Schaltung 175 für niedrige Leistung liefert zum Beispiel Energie, die für Baugruppen auf der oder ansprechend auf die Plattform 100 geeignet ist, um ihre Konfigurationszustände zu halten, und ermöglicht weiter diesen Baugruppen, in einer Weise in den Systemzustand der Betriebsleistung zurückzukehren, die für die Energieverwaltungssoftware des Betriebssystems im Wesentlichen transparent ist. Diese Offenbarung ist nicht auf nur Systemzustände für Betriebsleistung und niedrigere Leistung beschränkt. Andere Leistungsebenen können der Rechenplattform 100 durch die Leistungsschaltung 170 zur Verfügung gestellt werden, wenn die Rechenplattform 100 zwischen Systemzuständen höherer und niedriger Leistung überführt wird.
-
2 ist ein beispielhaftes Blockschaubild eines Teiles des Konfigurationscontrollers 110, der Leistungszustandslogik 115 umfasst, um die gesamte oder Teile der Rechenplattform 100 zwischen Systemzuständen hoher und niedrigerer Energie zu überführen. Wie es in der 2 gezeigt ist, umfasst der Konfigurationscontoller 110 zum Beispiel verschiedene Schnittstellen und logische Gatter, die an die Leistungszustandslogik 115 gekoppelt sind, um diesen Übergang der Rechenplattform 100 zu vereinfachen. Diese Schnittstellen und logischen Gatter sind als C-Zustandsschnittstelle 200, Schnittstelle 230 für die Niedrigleistungsstrategie, AND-Gatter 240 und NOR-Gatter 250 veranschaulicht.
-
Bei einem Beispiel stellen die Leistungszustandslogik 115 und die Konfigurationslogik 112 (siehe 1) jede einzeln oder zusammen irgendeine aus einer weiten Vielfalt von logische(n) Baugruppe(n) oder ausführbarem Inhalt, der bewirkt, dass die Rechenplattform 100 zwischen einem Systemzustand der Betriebsleistung und niedriger Leistung übergeht, dar. Diese logische(n) Baugruppe(n) kann/können einen Mikroprozessor, einen Netzwerkprozessor, einen Diensteprozessor, einen Mikrocontroller, einen vor Ort programmierbaren Logikbaustein (FPGA – Field Programmable Gate Array), eine anwendungsspezifische integrierte Schaltung (ASIC – Application Specific Integrated Circuit), einen gesonderten Thread oder Kern eines Mehrkern/Multi-Thread-Mikroprozessors, einen speziellen Betriebsmodus eines Prozessors oder eine Kombination aus diesen umfassen.
-
Wie als Beispiel in der 2 veranschaulicht ist, umfasst die Leistungszustandslogik 115 ein C-Zustandsmerkmal 205, einen Speicher 210 und ein Niedrigleistungs-Freigabemerkmal 215. Wie es weiter unten beschrieben wird, werden das C-Zustandsmerkmal 205, der Speicher 210 und das Niedrigleistungs-Freigabemerkmal 215 von der Leistungszustandslogik 115 aktiviert oder verwendet, um eine Energieverwaltungsstrategie einzuleiten. Die Energieverwaltungsstrategie, die zum Beispiel bewirkt, dass die Rechenplattform 100 zwischen Systemzuständen mit Betriebsleistung und mit niedriger Leistung übergeht, basiert auf einem C-Zustand, der von einem oder mehreren Verarbeitungselementen aus den Verarbeitungselementen 140 gehalten wird, auf Angaben über im Wesentlichen tätigkeitslose Aktivität von I/O- und vom Speichercontroller 150 und 120 und/oder basiert auf einem Wecksignal über eine Kommunikationsverbindung 260.
-
Bei einer Implementierung implementiert die Rechenplattform 100 Energieverwaltungszustände für C-Zustände bei Verarbeitungselementen 140, wie es in der ACPI-Spezifikation beschrieben ist. Somit kann bei dieser Implementierung ein Verarbeitungselement aus den Verarbeitungselementen 140 und/oder die Energieverwaltungssoftware des Betriebssystems für die Rechenplattform 100 eine Angabe darüber an den Konfigurationscontroller 110 senden, welchen C-Zustand dieses Verarbeitungselement gegenwärtig hält.
-
Bei einem Beispiel kann eine C-Zustandsschnittstelle 220 ein Speicherregister mit einer gegebenen Anzahl von Bits umfassen. Diese Bits in der C-Zustandsschnittstelle 220 können ausgewählt geltend gemacht werden, um den C-Zustand anzugeben, der von einem oder mehreren Verarbeitungselementen aus den Verarbeitungselementen 140 gehalten wird. Wenn zum Beispiel ein gegebenes Verarbeitungselement in einen Leistungszustand C1 übergeht, dann werden die Bits des Speicherregisters ausgewählt geltend gemacht, um anzuzeigen, dass das gegebene Verarbeitungselement sich in dem Leistungszustand C1 befindet. Die Leistungszustandslogik 115 kann zum Beispiel diese Angabe über eine Kommunikationsverbindung 222 empfangen oder feststellen.
-
Bei einem weiteren Beispiel umfasst die C-Zustandsschnittstelle 220 ein oder mehrere Schieberegister (nicht gezeigt), die mit der Kommunikationsverbindung 222 gekoppelt sind. Teile eines gegebenen Schieberegisters (z. B. eines Flip-Flops) werden zum Beispiel einem gegebenen C-Zustand für ein gegebenes Verarbeitungselement aus den Verarbeitungselementen 140 zugewiesen. Die Ausgaben der zugeordneten Teile des Schieberegisters werden zum Beispiel der Leistungszustandslogik 115 über die Kommunikationsverbindung 222 angeben, welcher gegebene C-Zustand gegenwärtig von dem gegebenen Verarbeitungselement gehalten wird.
-
Bei einer Implementierung umfasst der Konfigurationscontroller 110 auch eine Schnittstelle für die Niedrigleistungsstrategie. Die Schnittstelle 230 für die Niedrigleistungsstrategie umfasst zum Beispiel Information, um einen gegebenen C-Zustand anzugeben, der für die Rechenplattform 100 aktiviert ist, um aus einem Systemzustand der Betriebsleistung in einen Systemzustand niedriger Leistung überzugehen. Die Schnittstelle 230 für die Niedrigleistungsstrategie kann auch Information umfassen, die mit Anforderungen bei einer oder mehreren Strategien verknüpft ist, die erfüllt werden müssen, bevor die Rechenplattform 100 in einen Systemzustand niedriger Leistung überfuhrt wird.
-
Bei einem Beispiel umfasst die Schnittstelle 230 für die Niedrigleistungsstrategie ein Speicherregister mit 8 Bit, das von dem Konfigurationscontroller 110 und/oder der Konfigurationslogik 115 unterstützt wird. Bei diesem Beispiel können ein oder mehrere Bits des Speicherregisters ausgewählt geltend gemacht werden, um den vorgegebenen C-Zustand anzugeben, der für die Rechenplattform 100 aktiviert ist, um aus einem Systemzustand der Betriebsleistung in einen Systemzustand niedriger Leistung überzugehen (wenn überhaupt aktiviert ist), und sie können auch die Anforderungen für diesen Übergang angeben. Die Leistungszustandslogik 215 zum Beispiel greift auf Information von der Schnittstelle 230 für Niedrigleistungsstrategie zu oder empfängt diese, um den vorgegebenen C-Zustand und mögliche Anforderungen, um die Rechenplattform 100 zwischen Systemzuständen der Betriebsleistung und niedriger Leistung übergehen zu lassen, festzulegen.
-
Bei einer Implementierung umfasst wenigstens ein Teil der Energieverwaltungsstrategie Anforderungen, die mit einer Anleitung verknüpft sind, die von einem OS und/oder seiner Energieverwaltungssoftware über die Schnittstelle 230 für die Niedrigleistungsstrategie zur Verfügung gestellt wird. Bei dieser Implementierung kann das OS ausgewählt ein oder mehrere Bits eines Speicherregisters geltend machen, das in der Schnittstelle 230 für die Niedrigleistungsstrategie enthalten ist, um die Anleitung zur Verfügung zu stellen. Die Anleitung kann zum Beispiel der Leistungszustandslogik 115 solche Information angeben, wie etwa über eine erwartete Dauer für einen vorgegebenen C-Zustand und die Schwellenzeitwerte, die mit maximal erlaubten Wartezeiten verknüpft sind, um eine Rechenplattform transparent zwischen dem Systemzustand der Betriebsleistung und dem Systemzustand niedriger Leistung zu überführen, wenn ein vorgegebenes Verarbeitungselement in dem vorgegebenen C-Zustand ist. Somit, basierend auf Anforderungen, die mit der Anleitung verknüpft sind, bewirkt zum Beispiel die Leistungszustandslogik 115, dass die Rechenplattform 100 zwischen einem Systemzustand der Betriebsleistung und einem Systemzustand niedriger Leistung in einer im Wesentlichen für das Betriebssystem transparenten Weise übergeht.
-
Bei einer Implementierung dient eine C-Zustand-Schnittstelle 230 zudem als eine Hardwarebasierte Schnittstelle, die Speicherregister oder Schieberegister für die Leistungszustandslogik 115 umfasst, um Information zu sammeln, um zu bestimmen, ob die Rechenplattform 100 in einen Systemzustand niedriger Leistung überführt werden soll. Bei dieser Implementierung dient die Schnittstelle 230 für die Niedrigleistungsstrategie zudem als eine Software-basierte Schnittstelle, die auf Hardware-basierte Komponenten, so wie Speicherregister, vertrauen kann oder nicht. Die Schnittstelle 230 für die Niedrigleistungsstrategie dient zum Beispiel als eine flexiblere Schnittstelle, die eine stärkere Interaktion zwischen der Leistungslogik 115 und Elementen, die sich auf oder entfernt von der Rechenplattform 100 befinden, ermöglicht. Diese Elemente können ein OS für die Rechenplattform 100 umfassen.
-
Bei einem Beispiel, wie in der 2 gezeigt, umfasst der Konfigurationscontroller 100 ein AND-Gatter 240. Das AND-Gatter 240 erhält zum Beispiel Eingaben vom Speichercontroller 120 und vom I/O-Controller 150. Bei einer Implementierung sind diese Eingaben Angaben über eine wesentlichen Inaktivität oder Untätigkeit beim Speichercontroller 120 und beim I/O-Controller 150. Im Wesentlichen untätige Aktivität beim I/O-Controller 150 basiert zum Beispiel auf sehr geringer oder keiner Aktivität oder Verkehr über einen oder mehrere Busse und/oder Verbindungen, die zwischen den I/O-Controller 150 und Gerätebaugruppen 160 gekoppelt sind. Im Wesentlichen untätige Aktivität beim Speichercontroller 120 umfasst zum Beispiel das Entleeren praktisch aller ausstehenden Speichertransaktionsanforderungen an den Speicher 130. Diese Offenbarung ist nicht auf nur diese Angaben im Wesentlichen untätiger Aktivität beschränkt und ist nicht auf nur ein AND-Logikgatter, um diese Eingaben zu erhalten, beschränkt.
-
Bei einer Implementierung gibt die Ausgabe des AND-Gatters 240 der Leistungszustandslogik 215 über eine Kommunikationsverbindung 242 an, dass sowohl der Speichercontroller 120 als auch der I/O-Controller 150 im Wesentlichen untätig sind. Wie genauer hiernach beschrieben wird, kann die Leistungszustandslogik 215 diese Angabe verwenden zu bestimmen, ob bewirkt werden soll, dass die Rechenplattform 100 zwischen einem Systemzustand der Betriebsleistung und einem Systemzustand niedriger Leistung übergehen soll.
-
Bei einem Beispiel, wie in 2 veranschaulicht, umfasst der Konfigurationscontroller 110 außerdem ein NOR-Gatter 250. Das NOR-Gatter 250 erhält zum Beispiel ein Eingabesignal über eine Kommunikationsverbindung 217 und erzeugt eine Ausgabe, die an die Schaltung 172 für die Betriebsleistung der Leistungsschaltung 170 geschickt wird. Bei einer Implementierung wird, wenn kein Signal vom Niedrigleistungsaktivierungsmerkmal 215 erhalten wird, dann ein Signal an die Schaltung 172 für die Betriebsleistung geschickt. Dieses Signal gibt beispielsweise der Schaltung 172 für die Betriebsleistung an, dass sie die Rechenplattform 100 mit zweckmäßiger Energie versorgen soll, um einen Systemzustand der Betriebsleistung zu halten (z. B. den Systemzustand S0 der Betriebleistung). Bei dieser Implementierung, wenn das Niedrigleistungsaktivierungsmerkmal 215 ein Signal über die Kommunikationsverbindung 217 schickt, wird das Ausgangssignal vom NOR-Gatter 250 abgeschnitten oder geschaltet, was somit der Schaltung 172 für die Betriebsleistung angibt, die Betriebsleistung zur Rechenplattform 100 zu deaktivieren. Zum Beispiel wird dann ein Signal an die Schaltung 174 für die Niedrigleistung geschickt, um die Rechenplattform 100 mit geringer Leistung zu versorgen. Ein Signal wird auch zum Beispiel an den Speichercontroller 120 geschickt, um dem Speichercontroller 120 anzuzeigen, wenigstens Teile des Speichers 130 (z. B. DRAM-Module) in einen selbst wiederauffrischenden Zustand mit niedriger Leistung zu bringen.
-
Diese Offenbarung ist nicht auf nur ein NOR-Logikgatter, um ein Eingangssignal über die Kommunikationsverbindung 217 zu empfangen, beschränkt.
-
Bei einem Beispiel kann eine Kommunikationsverbindung 260 verwendet werden, um ein Wecksignal zur Verfügung zu stellen. Dieses Wecksignal, wie es hiernach weiter beschrieben wird, liefert eine Angabe für die Leistungszustandslogik 115 zu bewirken, dass die Rechenplattform 100 aus dem Systemzustand niedriger Leistung heraus und zurück in den Systemzustand der Betriebsleistung übergeht.
-
3 ist ein beispielhaftes Ablaufdiagramm 300, gemäß dem die Rechenplattform 100 in verschiedene Leistungszustände und aus verschiedenen Leistungszuständen übergeht. Bei einem Beispiel veranschaulicht das Ablaufdiagramm 300, wie die Rechenplattform zwischen den arbeitenden (S0), schlafenden (S3 und S4) und Soft-Off (S5) Leistungszuständen übergeht. Wenigstens ein Teil dieser Arbeits-, Schlaf- und Soft-Off-Zustände können dieselben S-Zustände sein, wie sie in der ACPI-Spezifikation beschrieben sind, und sind dadurch gekennzeichnet, dass sie zum Beispiel die Energieverwaltungssoftware des Betriebssystems der Rechenplattform 100 einbeziehen. Auch im Ablaufdiagramm 300 veranschaulicht sind drei unterschiedliche Systemzustände der Leistung innerhalb des Arbeitsleistungszustandes S0 (Betrieb, Ruhen und Bereitschaft). Die Rechenplattform 100 kann zum Beispiel zwischen diesen Leistungszuständen ohne die Einbeziehung der oder im Wesentlichen transparent für die Energieverwaltungssoftware des Betriebssystems und außerdem möglicherweise transparent für einen Endbenutzer übergehen.
-
Im Zustand 310 ist die Rechenplattform 100 zum Beispiel in einem Systemzustand der Betriebsleistung. In diesem Zustand sind zum Beispiel die Verarbeitungselemente 140 in einem vollbetrieblichen Zustand oder einem Leistungszustand C0, wie er in der ACPI-Spezifikation beschrieben ist. Aus dem Zustand 310 kann die Rechenplattform 100 zum Beispiel in verschiedene andere Leistungszustände übergehen, wie es im Ablaufdiagramm 300 dargestellt ist. Diese beziehen die Energieverwaltungssoftware des Betriebssystems ein, um in die verschiedenen Leistungszustände und aus den verschiedenen Leistungszuständen überzugehen, wie oben angesprochen, dem Schlafzustand S3 (S3_sleep) im Zustand 340, dem Winterschlafzustand S4 (S4_Hib) im Zustand 350 und dem Off-Zustand S5 (S5_off) im Zustand 360. Diejenigen Zustände, die die Energieverwaltungssoftware des Betriebssystems nicht einbeziehen oder die für die Software im Wesentlichen transparent sind, sind der Ruhezustand S0 (S0_idle) im Zustand 320 und der Bereitschaftszustand S0 (S0_standby) im Zustand 330. Bei einem Beispiel, wie in 3 gezeigt, kann die Rechenplattform 100 aus dem Zustand 320 oder 330 in den Zustand 310 basierend auf einem Aufweckereignis übergehen. Diese Aufweckereignisse und die Zustände 310, 320 und 330 werden in weiteren Einzelheiten hiernach für die 4 beschrieben.
-
4 ist ein Ablaufdiagramm eines beispielhaften Verfahrens, um die Rechenplattform 100 zwischen einem Systemzustand der Betriebsleistung und einem Systemzustand niedriger Leistung zu überführen. Bei einem Beispiel, wie in der 3 veranschaulicht, sind der Systemzustand der Betriebsleistung und der Systemzustand niedriger Leistung Teil des Arbeitsleistungszustandes S0. Auch, wie es oben kurz für die 3 angesprochen worden ist, umfasst der Leistungszustand S0 außerdem einen zwischengeschalteten Ruheleistungszustand (S0_idle). Bei diesem beispielhaften Verfahren können die Verarbeitungselemente 140 in verschiedene Leistungszustände und aus verschiedenen Leistungszuständen übergehen, so wie zum Beispiel den Energieverbrauchswerten für C-Zustände, die in der ACPI-Spezifikation beschrieben sind. Somit kann S0_idle alle oder einen Teil der Verarbeitungselemente 140 in einem vorgegebenen Zustand niedriger Leistung (z. B. einem C-Zustand mit C1 oder höher) darstellen.
-
Im Block 405 erhält bei einem Beispiel die Leistungszustandslogik 115 Information über die Niedrigleistungsstrategie von der Schnittstelle 230 für die Niedrigleistungsstrategie. Die Information über die Niedrigleistungsstrategie, die von der Schnittstelle 230 für die Niedrigleistungsstrategie erhalten worden ist, kann zum Beispiel wenigstens zeitweilig in einem Speicher abgelegt werden, der auf die Leistungszustandslogik 215 anspricht (z. B. im Speicher 210).
-
Im Block 410 aktiviert bei einem Beispiel die Leistungszustandslogik 115 das Niedrigleistungsaktivierungsmerkmal 215. Das Niedrigleistungsaktivierungsmerkmal 215 bestimmt zum Beispiel, ob die Rechenplattform 100 in der Lage ist, in den Systemzustand niedriger Leistung einzutreten. Diese Feststellung basiert zum Beispiel auf der Information über die Niedrigleistungsstrategie, die von der Schnittstelle 230 für die Niedrigleistungsstrategie erhalten worden ist. Diese Information kann angeben, ob die Rechenplattform 100 in der Lage ist, Energie bereitzustellen, um einen Systemzustand der Betriebsleistung und einen Systemzustand niedriger Leistung zu halten, z. B. die geeignete Leistungsschaltung hat.
-
Im Block 415 gibt zum Beispiel die Information über die Niedrigleistungsstrategie, die von der Schnittstelle für die Niedrigleistungsenergie 230 erhalten worden ist, an, dass die Rechenplattform 100 nicht in der Lage ist, Energie bereitzustellen, um einen Systemzustand der Betriebsleistung- und einen Systemzustand niedriger Leistung zu halten. Bei diesem Beispiel wird, da die Rechenplattform 100 nicht in der Lage ist in den Systemzustand niedriger Leistung überzugehen, der Prozess abgebrochen.
-
Im Block 420 aktiviert bei einem Beispiel die Leistungszustandslogik 215 das C-Zustand-Merkmal 205. Bei einem Beispiel bestimmt das C-Zustand-Merkmal 205, ob ein oder mehrere Verarbeitungselemente aus den Verarbeitungselementen 140 angegeben haben, dass sie in einen gegebenen C-Zustand eintreten, indem die C-Zustand-Schnittstelle 220 befragt worden ist. Das C-Zustand-Merkmal 205 bestimmt zum Beispiel, in welchem gegebenen C-Zustand sie eine Energieverwaltungsstrategie für die Rechenplattform 100 einleiten soll. Diese Bestimmung basiert zum Beispiel auf der Information über die Niedrigleistungsstrategie, die von der Schnittstelle 230 für die Niedrigleistungsstrategie 230 erhalten worden ist. Diese Information kann zum Beispiel dem C-Zustand-Merkmal 205 angeben, dass der gegebene C-Zustand der Leistungszustand C6 ist.
-
Bei einem Beispiel ist der gegebene C-Zustand oder Leistungszustand der Leistungszustand, in dem ein gegebenes Verarbeitungselement seine niedrigste Energiemenge verbraucht. Somit ist bei dem Beispiel oben der Leistungszustand C6 der niedrigste Leistungszustand, in den Verarbeitungselemente 140 eintreten können. Bei anderen Beispielen kann der gegebene C-Zustand oder Leistungszustand irgendein anderer Leistungszustand sein, der weniger Energie verbraucht, als wenn das eine oder die mehreren Verarbeitungselemente aus den Verarbeitungselementen 140 in einem voll betriebenen Leistungszustand C0 sind. Bei diesen weiteren Beispielen ist der gegebene C-Zustand nicht notwendigerweise der C-Zustand, der am wenigsten Energie verbraucht.
-
Im Block 425 hat bei einem Beispiel das C-Zustand-Merkmal 205 festgestellt, dass das gegebene Verarbeitungselement in den gegebenen C-Zustand eingetreten ist. Das C-Zustand-Merkmal 205 leitet basierend auf der Feststellung zum Beispiel die Energieverwaltungsstrategie für die Rechenplattform 100 ein.
-
Im Block 430 greift bei einem Beispiel das Niedrigleistung-Aktivierungsmerkmal 215 auf die Information über die Niedrigleistungsstrategie zu, die von der Schnittstelle 230 für Niederleistungsenergie erhalten worden ist und in dem Speicher ansprechend auf die Leistungszustandslogik 215 gespeichert ist. Bei diesem Beispiel umfasst die Information über die Niedrigleistungsstrategie eine oder mehrere Anforderungen, die erfüllt sein sollten, bevor die Rechenplattform 100 in einen Zustand niedriger Leistung übergeht. Bei einem Beispiel umfasst eine Anforderung einen gegebenen Schwellzeitwert für das Niedrigleistungs-Aktivierungsmerkmal 215, der abgewartet werden soll, bevor die Rechenplattform 100 in einen Systemzustand niedriger Leistung überführt wird, basierend auf dem gegebenen Verarbeitungselement, das in den gegebenen C-Zustand eintritt. Diese Information kann auch eine Anleitung umfassen, die von einem OS für die Rechenplattform 100 zur Verfügung gestellt wird (z. B. über die Schnittstelle 230 für Niedrigleistungsenergie). Diese von dem OS zur Verfügung gestellte Anleitung kann Information über die erwartete Dauer für den gegebenen C-Zustand umfassen, in den das gegebene Verarbeitungselement eingetreten ist. Die vom OS zur Verfügung gestellte Anleitung kann auch Übergangszeitwerte umfassen, die mit dem Erfüllen von Wartezeiterfordernissen verknüpft sind, um in transparenter Weise die Rechenplattform zwischen einem Zustand der Betriebsleistung und einem Zustand niedriger Leistung übergehen zu lassen. Die Information über die Niedrigleistungsstrategie kann auch von Bedingungen abhängige Anforderungen umfassen, die einen Übergang auf gegebenen Bedingungen basieren, z. B. der Anzahl von Übergangen in einem vorgegebenen Zeitintervall.
-
Bei einer Implementierung stößt das Niedrigleistung-Aktivierungsmerkmal 215 basierend auf der Feststellung durch das C-Zustandsmerkmal 205, dass das gegebene Verarbeitungselement tin den gegebenen C-Zustand eingetreten ist, einen Zeitgeber (nicht gezeigt) an oder erhält einen Zeitstempel, um die Zeit anzugeben, in der in den gegebenen C-Zustand eingetreten ist. Bei dieser Implementierung überwacht das C-Zustand-Merkmal 215 den angestoßenen Zeitgeber oder verfolgt das Alter des Zeitstempels, um die Zeitdauer zu bestimmen, über die das gegebene Verarbeitungselement in dem gegebenen C-Zustand gewesen ist. Das Leistungsaktivierungsmerkmal 215 zum Beispiel vergleicht das Alter oder den Zeitgeberwert mit dem gegebenen Schwellenzeitwert, der in der Information über die Niedrigleistungsstrategie angegeben ist, die von der Schnittstelle 230 für die Niedrigleistungsenergie erhalten worden ist. Basierend auf diesem Vergleich bestimmt zum Beispiel das Leistungsaktivierungsmerkmal 215, ob der gegebene Schwellenwert überschritten worden ist. Somit ist zum Beispiel die Anforderung, die einen gegebenen Schwellzeitwert für das Niedrigleistung-Aktivierungsmerkmal 215 umfasst, dass gewartet werden soll, bevor die Rechenplattform 100 in einen Systemzustand niedriger Leistung überführt wird, basierend auf dem gegebenen Verarbeitungselement, das in den gegebenen C-Zustand eintritt, erfüllt worden.
-
Bei einem Beispiel kann ein anderer Teil der Energieverwaltungsstrategie eine Anforderung umfassen, die mit der von dem OS zur Verfügung gestellten Anleitung verknüpft ist. Bei diesem Beispiel vergleicht zum Beispiel das Leistungsaktivierungsmerkmal 215 die erwartete Zeitdauer, über die das gegebene Verarbeitungselement in dem gegebenen C-Zustand sein wird, mit Übergangszeitwerten, die mit dem Erfüllen von Wartezeitanforderungen verknüpft sind, um die Rechenplattform transparent zwischen einem Systemzustand der Betriebsleistung und einem Systemzustand niedriger Leistung zu überführen. Wenn die erwartete Zeitdauer im C-Zustand die Übergangszeitwerte überschreitet, ist bei einem Beispiel die Anforderung, die mit der von dem OS zur Verfügung gestellten Anleitung verknüpft ist, erfüllt worden.
-
Bei einem Beispiel kann ein weiterer Teil der Energieverwaltungsstrategie eine Anleitung enthalten, die Rechenplattform 100 nicht in einen Systemzustand niedriger Leistung zu überführen, wenn bestimmte Bedingungen erfüllt sind. Diese Bedingungen können eine gegebene Schwellenwertzahl für eine Anzahl von Ereignissen in einer gegebenen Zeitdauer umfassen, in der die Rechenplattform 100 in einen Systemzustand niedriger Leistung oder aus ihm heraus übergegangen ist. Diese Anleitung kann zum Beispiel auf den Kosten (z. B. Wartezeiten und/oder Leistung) basieren eine Rechenplattform 100 in und aus dem Systemzustand niedriger Leistung schnelle zu überführen, die den Nutzen (Energiesparen), nachdem die Schwellenzahl für eine gegebene Zeitdauer erreicht ist, übersteigen. Bei diesem Beispiel hält das Leistungsaktivierungsmerkmal 215 einen Zählwert für die Anzahl von Zeitpunkten, zu denen die Rechenplattform 100 in einer gegebenen Zeitdauer übergegangen ist. Wenn der Zählwert die Schwellenzahl nicht überschreitet, ist die Anforderung, die mit der bedingten Anleitung verknüpft ist, erfüllt worden.
-
Bei einem Beispiel, wie es in der 4 veranschaulicht ist, kann der Prozess zum Block 420 oder zum Block 435 zurückkehren. Der Prozess kehrt zum Block 420 zurück, wenn zum Beispiel die vom OS zur Verfügung gestellte Anleitung oder die bedingten Anleitungserfordernisse nicht erfüllt sind. Der Prozess kehrt zum Block 435 zurück, wenn zum Beispiel nur die Zeitgeberanforderung nicht erfüllt ist.
-
Im Block 435 hat bei einem Beispiel das Niedrigleistung-Aktivierungsmerkmal 215 festgestellt, dass eine oder mehrere Anforderungen, die in der Information über die Energieverwaltungsstrategie enthalten sind, erfüllt worden sind. Das Niedrigleistung-Aktivierungsmerkmal 215 bestimmt dann zum Beispiel, ob der Speichercontroller 120 und der I/O-Controller 150 für die Rechenplattform im Wesentlichen untätig (in einer Periode der Inaktivität) sind. Wie oben angesprochen wird, der Ausgang aus dem AND-Gatter 240 die Untätigkeit über die Kommunikationsverbindung 242 signalisieren, wenn sowohl der Speichercontroller 120 als auch der I/O-Controller 150 angegeben haben, dass sie im Wesentlichen untätig sind.
-
Im Block 440 hat bei einem Beispiel das Niedrigleistung-Aktivierungsmerkmal 215 festgestellt, das die eine oder die mehreren Anforderungen erfüllt worden sind und der Speichercontroller 120 und der I/O-Controller 150 im Wesentlichen untätig sind. Basierend darauf macht bei einer Implementierung das Niedrigleistung-Aktivierungsmerkmal 215 ein Signal über die Kommunikationsverbindung 217 geltend. Diese Signaldurchsetzung sendet zum Beispiel ein Signal an den Speichercontroller 120, um wenigstens Teile des Speichers 130 in einen Selbstauffrischmodus zu überführen, und sendet auch ein Signal an die Schaltung 174 für die Niedrigleistung, um die Rechenplattform 100 mit geringer Energie zu versorgen. Auch führt zum Beispiel die geltend gemachte Eingabe an das NOR-Gatter 250 zu einer Ausgabe, die nicht geltend gemacht wird und gibt der Schaltung 172 für die Betriebsleistung an, die Betriebsleistung an die Rechenplattform 100 nicht zur Verfügung zu stellen, zu deaktivieren oder abzuschalten.
-
Im Block 445 bestimmt bei einem Beispiel das Niedrigleistung-Aktivierungsmerkmal 215, ob ein Aufweckereignis geschehen ist, um zu bewirken, dass die Rechenplattform 100 aus dem Systemzustand niedriger Leistung herausgeht. Ein Aufweckereignis kann zum Beispiel ein Wecksignal umfassen, das über die Kommunikationsverbindung 260 empfangen wird, eine Angabe, dass der Speichercontroller 120 und der I/O-Controller 150 nicht mehr im Wesentlichen untätig sind oder das gegebene Verarbeitungselement nicht mehr in dem gegebenen C-Zustand ist. Ein Aufweckereignis kann auch auf einer Anforderung basieren, die in einer Energieverwaltungsstrategie enthalten ist, die eine Grenze für eine Zeitdauer setzt, über die die Rechenplattform 100 in einem Systemzustand niedriger Leistung sein kann. Diese Grenze basiert zum Beispiel auf einer vom OS zur Verfügung gestellten Anleitung, die mit Übergangszeitwerten zum Erfüllen von Wartezeiterfordernissen verknüpft sind, um die Rechenplattform 100 zwischen einem Systemzustand der Betriebsleistung und einem Systemzustand niedriger Leistung transparent zu überführen.
-
Im Block 450 stellt bei einem Beispiel das Niedrigleistung-Aktivierungsmerkmal 215 fest, dass ein Aufweckereignis aufgetreten ist. Die Rechenplattform 100 wird dann zum Beispiel zurück in den Systemzustand der Betriebsleistung überführt. Das Niedrigleistung-Aktivierungsmerkmal 215 bewirkt bei einer Implementierung diesen Übergang, indem das Signal auf der Kommunikationsverbindung 217 nicht geltend gemacht wird. Als ein Ergebnis wird zum Beispiel die Schaltung 274 für die Niedrigleistung deaktiviert und die Schaltung 272 für die Betriebsleistung wird aktiviert. Auch überführt zum Beispiel der Speichercontroller 120 die Teile des Speichers 130, die in einen Selbstauffrischmodus gebracht worden sind, zurück in einen aktiven Modus. Das Verfahren kehrt dann zum Beispiel zum Block 420 zurück, um zu bestimmen, ob oder wann ein oder mehrere Verarbeitungselemente aus den Verarbeitungselementen 140 wieder in einen gegebenen C-Zustand eintreten. Als Alternative, obwohl dies in der 4 nicht gezeigt ist, kann das Verfahren zum Block 405 zurückkehren.
-
Obwohl das beispielhafte Verfahren in 4 eine gegebene Abfolge von Tätigkeiten veranschaulicht, die vorgenommen werden, um eine Rechenplattform aus einem Systemzustand der Betriebsleistung in einen Systemzustand niedriger Energie zu überführen, ist diese Offenbarung nicht auf diese bestimmte Folge oder Reihenfolge von Tätigkeiten beschränkt. Diese Offenbarung kann auch eine Abfolge von Tätigkeiten umfassen, die mehr oder weniger Tätigkeiten umfasst, als es für die 4 veranschaulicht und beschrieben ist.
-
Mit Bezug wieder auf den Speicher 130 in 1 und den Speicher 210 in 2. Zusätzlich zu den DRAM-Modulen, die oben für den Speicher 130 angesprochen worden sind, können der Speicher 130 und der Speicher 210 eine weite Vielfalt von Speichermeden enthalten, einschließlich, jedoch nicht beschränkt auf flüchtigen Speicher, nichtflüchtigen Speicher, Flash, programmierbare Variablen oder Zustände, Speicher mit wahlfreiem Zugriff (RAM – Random Access Memory), Nur-Lese-Speicher (ROM – Read Only Memory), Flash oder andere statische oder dynamische Speichermedien. Bei einem Beispiel können dem Speicher 130 und/oder dem Speicher 210 maschinenlesbare Befehle von einer Form eines Mediums, auf das von einer Maschine zugegriffen werden kann, zur Verfügung gestellt werden. Ein Medium, auf das durch eine Maschine zugegriffen werden kann, kann irgendeinen Mechanismus darstellen, der Information oder Inhalt in einer Form zur Verfügung stellt (d. h. speichert und/oder sendet), die von einer Maschine lesbar ist (z. B. einer ASIC, einem Controller oder Prozessor mit speziellen Funktionen, einer FPGA, einer Baugruppe, einer Rechenplattform oder einer anderen Hardwarebaugruppe). Zum Beispiel kann ein Medium, auf das durch eine Maschine zugegriffen werden kann, ein computerlesbares Medium enthalten, das umfasst: ROM; RAM; Magnetplatten-Speichermedien; optische Speichermedien; Flash-Speicherbaugruppen. Das Medium, auf das von einer Maschine zugegriffen werden kann, kann auch ein Kommunikationsmedium enthalten, das umfasst: einen elektrische, optische, akustische oder andere Form sich fortpflanzender Signale (z. B. Trägerwellen, Infrarotsignale, digitale Signale) und dergleichen.
-
Bezüge, die in der Beschreibung auf den Ausdruck „ansprechend auf” hergestellt wurden, sind nicht auf die Ansprechbarkeit auf nur ein bestimmtes Merkmal und/oder eine Struktur beschränkt. Ein Merkmal kann auch „ansprechend auf” ein weiteres Merkmal und/oder eine Struktur sein und sich auch innerhalb des Merkmals und/oder der Struktur befinden. Zusätzlich kann der Ausdruck „ansprechend auf” auch Synonym zu anderen Ausdrücken sein, so wie „zur Kommunikation gekoppelt an” oder „betrieblich gekoppelt mit”, obwohl der Ausdruck in dieser Hinsicht nicht beschränkt ist.