-
GEBIET DER
ERFINDUNG
-
Das
Gebiet der Erfindung bezieht sich allgemein auf den Computerbereich
und insbesondere auf eine Nicht-Haupt-CPU/OS-basierte Betriebsumgebung.
-
ALLGEMEINER
STAND DER TECHNIK
-
A. Rechnersysteme
-
1 zeigt eine Ausführungsform
eines Rechnersystems 100. Das Rechnersystem umfaßt eine
Zentraleinheit (CPU) 101, einen Cache 102, eine
Speicher- und E/A-Steuerung 103 und einen Systemspeicher 104.
Softwarebefehle, die durch das Rechnersystem (und seine entsprechenden
Daten) ausgeführt
werden, sind im Systemspeicher 104 und Cache 102 (wo
häufig
verwendete Befehle und Daten im Cache 102 gespeichert werden)
gespeichert. Die Softwarebefehle (zusammen mit den entsprechenden
Daten) werden durch die CPU 101 ausgeführt. Der Speichercontrollerteil
der Speicher- und E/A-Steuerung 103 ist verantwortlich
für die
Verwaltung der Zugriffe auf den Systemspeicher 104 (der außer der
CPU 101 durch andere Funktionselemente, wie beispielsweise
den Grafikcontroller 105 und verschiedene E/A-Einheiten, verwendet
werden kann).
-
Der
Grafikcontroller 105 und die Anzeige 106 stellen
die computergenerierten Bilder, die durch den Benutzer des Rechnersystems 100 betrachtet
werden, bereit. Der E/A-Controller der Speicher- und E/A-Steuerfunktion 103 ist
verantwortlich für
das Verwalten der Zugriffe auf den Systemspeicher 104 (und/oder
die CPU 101) für
die verschiedenen E/A-Einheiten 1081 bis 108N und 109, 111, 113 und 115.
Die E/A-Einheiten werden typischerweise als Funktionseinheiten gesehen,
die Informationen an das/von dem Rechnersystem (z.B. ein Netzwerkadapter,
ein MODEM, eine drahtlose Schnittstelle, eine Tastatur, eine Maus
usw.) und/oder Funktionseinheiten, die für das Speichern der Informationen
des Rechnersystems innerhalb des Rechnersystems 100 (z.B.
Festplattenlaufwerk-Einheit) verwendet werden, senden/empfangen.
-
Innerhalb
eines Rechnersystems werden häufig
verschiedene E/A-Einheiten angetroffen, und ferner werden verschiedene
Typen von Schnittstellen für
die Kommunikation zwischen einer E/A-Einheit und der E/A-Steuerfunktion
häufig
innerhalb eines Rechnersystems angetroffen. Oft sind diese Schnittstellen
durch einen Industriestandard definiert. Die Rechnersystemarchitektur
des Beispiels von 1 zeigt
eine Systembusschnittstelle 107, in die unterschiedliche
E/A-Einheiten 1081 bis 108N eingesteckt werden können, und
unterschiedliche Schnittstellen 110, 112, 114 und 116.
Jede der unterschiedlichen Schnittstellen 110, 112, 114 und 116 ist
in 1 mit ihrer eigenen
entsprechenden E/A-Einheit 109, 111, 113 und 115 eingezeichnet.
-
Es
ist anzumerken, daß von
Computersystem zu Computersystem eine unterschiedliche Anzahl von
Schnittstellen unterhalten werden kann und daß von Computersystem zu Computersystem
unterschiedliche Schnittstellentypen (z.B. hinsichtlich der maximalen
Anzahl von E/A-Einheiten pro Schnittstelle, Technik zur Schaffung
von Schnittstellen usw.) unterhalten werden können. Um nur eine mögliche Ausführung zu
nennen, die das Rechnersystem von 1 als
Vorlage verwendet, ist: 1. der Systembus 107 ein PCI-Bus;
2. die Schnittstelle 110 ein serieller Port; 3. die Schnittstelle 112 eine
USB-Schnittstelle; 4. die Schnittstelle 114 eine serielle
Schnittstelle, und 5. die Schnittstelle 116 eine IDE-Schnittstelle
(oder eine andere Speicherungsvorrichtungs-Schnittstelle).
-
B. Zustandsdiagramm des
Rechnersystems
-
2 zeigt ein Zustandsdiagramm
für ein Rechnersystem
des bisherigen Standes der Technik. Eine Ausführungsform der in 2 beobachteten Betriebszustände kann
in der (durch Compaq Computer Corporation, Intel Corporation, Microsoft
Corporation, Phoenix Technologies Ltd. und Toshiba Corporation veröffentlichten)
Revision 2.0a der Advanced Configuration and Power Interface (ACPI) Spezifikation
vom 31.03.2002 gefunden werden. Obwohl anerkannt wird, daß die ACPI-Spezifikation
eine große
Anzahl von bestehenden Rechnersystemen beschreibt, sollte erkannt
werden, daß eine
große Anzahl
von Rechnersystemen, die nicht der ACPI-Spezifikation entsprechen,
immer noch der in 2 zu
beobachtenden Betriebszustandskonfiguration entsprechen können. Als
solche entspricht die Beschreibung von 1 einer generischeren Beschreibung, mit
der die ACPI-Spezifikation übereinstimmt.
-
Gemäß der Darstellung
von 2 ist ein erster
Zustand 201, der als "normaler
An-Zustand" 201 bezeichnet
wird, der normale Betriebszustand des Computers (d.h., der Zustand
des Computers, in dem er aktiv angetrieben wird und durch einen
Benutzer betrieben wird (oder bereit ist, betrieben zu werden)). Innerhalb
der ACPI-Spezifikation, wird der "normale An-Zustand" 201 als "G0-Zustand" bezeichnet. Ein zweiter Zustand 202 bezieht
sich auf einen von einem oder mehreren Zuständen, in denen erkannt wird,
daß das
Rechnersystem "aus" ist. Die ACPI-Spezifikation
erkennt zwei solcher Zustände an:
einen hardwarebasierten Aus-Zustand (z.B. wenn der Strom vom gesamten
System entfernt wurde) und einen softwarebasierten Aus-Zustand (wo das System
mit Strom versorgt wird aber das BIOS und Betriebssystem (OS) ohne
Bezugnahme auf den gespeicherten Kontext einer vorhergehend betriebenen
Umgebung von vorne neu geladen werden müssen). Die ACPI-Spezifikation
bezeichnet den hardwarebasierten Aus-Zustand als "G3"-Zustand und den
softwarebasierten Aus-Zustand als "G2"-Zustand.
-
Ein
dritter Zustand 203 bezieht sich auf einen von einem oder
mehreren Zuständen,
in denen erkannt wird, daß das
Rechnersystem im "Schlafzustand" ist. Für Schlafzustände wird
die Betriebsumgebung eines Systems innerhalb des "normalen An-Zustands" 201 (z.B.
der Zustand und die Daten verschiedener Softwareroutinen) gespeichert,
bevor die CPU des Computers in einen Zustand mit niedrigerem Stromverbrauch
eingeführt
wird. Der/die Schlafzustand/Schlafzustände 203 sind darauf
ausgerichtet, den durch die CPU über
einen Pausenzeitraum bei der kontinuierlichen Verwendung des Rechnersystems
verbrauchten Strom einzusparen. Das heißt, wenn ein Benutzer ein Rechnersystem
im normalen An-Zustand 201 (z.B. beim Tippen eines Dokuments)
verwendet und dann abgelenkt wird, um vorübergehend Abstand von dieser
Verwendung zu nehmen (z.B., um einen Telefonanruf anzunehmen), kann
das Rechnersystem automatisch vom normalen An-Zustand 201 in
einen Schlafzustand 202 übergehen, um den Stromverbrauch
des Systems zu verringern.
-
Hier
wird die Softwarebetriebsumgebung des Rechnersystems (z.B. einschließlich des
gegenwärtig
bearbeiteten Dokuments), die auch als "Kontext" oder "der Kontext" bezeichnet wird, vorhergehend gespeichert.
Infolgedessen kann das Rechnersystem, wenn der Benutzer nach beendeter
Ablenkung zur Verwendung des Rechnersystems zurückkehrt, dem Benutzer automatisch
die Umgebung, die beim Entstehen der Ablenkung vorhanden war, als Teil
des Übergangs
zurück
vom Schlafzustand 203 in den Normalzustand 201 präsentieren
(indem der gespeicherte Kontext wieder aufgerufen wird). Die ACPI-Spezifikation
erkennt eine Sammlung von unterschiedlichen Schlafzuständen (insbesondere
die "S1"-, "S2"-, "S3"- und "S4"-Zustände) an,
von denen jeder sein entsprechendes Gleichgewicht zwischen Stromersparnissen
und Verzögerung
bei der Rückkehr
zum "normalen An-Zustand" 201 hat
(hier wird anerkannt, daß die
Zustände
S1, S2 und S3 unterschiedliche Standby-Varianten sind und der Zustand S4
ein Schlafzustand ist).
-
Ein
Problem, das indes mit den Schlafzuständen des bisherigen Stands
der Technik verbunden ist, ist, daß die CPU dabei nicht imstande
ist, nützliche
Arbeiten auszuführen.
Als solches ist es, obwohl Stromersparnisse anerkannt werden, unmöglich, Aufgaben
auszuführen,
deren Durchführung während des
Zeitraums, über
den das System im Schlafzustand war, nützlich gewesen wäre.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Die
Erfindung kann am besten unter Bezugnahme auf die nachfolgende Beschreibung
und die begleitenden Zeichnungen, die verwendet werden, um Ausführungsformen
der Erfindung zu veranschaulichen, verstanden werden. Es zeigen:
-
1 zeigt
eine Ausführungsform
eines Rechnersystems;
-
2 zeigt
ein Zustandsdiagramm des bisherigen Stands der Technik für ein Rechnersystem;
-
3 zeigt
ein verbessertes Zustandsdiagramm für ein Rechnersystem, das nützliche Niedrigstromzustände hat;
-
4A bis 4C veranschaulichen
eine Ausführungsform
des Verhältnisses
zwischen aktiven und inaktiven Rechnersystem-Hardwarekomponenten
für, in
dieser Reihenfolge, einen "normalen An-Zustand" (4A);
einen "Haupt-CPU/OS-basierten
Niedrigstromzustand" (4B),
und einen "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" (4C);
-
5 zeigt
eine Ausführungsform
der Verteilung von verschiedenen Funktionsrollen für ein vollständiges Telefonsystem über, in
dieser Reihenfolge, einen "normalen
An- Zustand"; einen "Haupt-CPU/OS-basierten
Niedrigstromzustand", und
einen "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom";
-
6A und 6B veranschaulichen
Verfahrensablaufbeispiele für
das Übergehen
von einem "normalen
An-Zustand" in einen "Haupt-CPU/OS-basierten
Niedrigstromzustand" (6A)
und für
das Übergehen
von einem "Haupt-CPU/OS-basierten Niedrigstromzustand" in einen "normalen An-Zustand" (6B);
-
7 zeigt
eine Ausführungsform
einer Zustandsübergangslogik,
die verwendet werden kann, um die Übergänge eines Rechnersystems zwischen: 1.
einem "normalen
An-Zustand" und einem oder mehreren
Schlafzuständen
und 2. einem "Haupt-CPU/OS-basierten Niedrigstromzustand" und einem "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" zu
unterstützen
steuern;
-
8A und 8B veranschaulichen
Verfahrensablaufbeispiele für
das Übergehen
von einem "Haupt-CPU/OS-basierten
Niedrigstromzustand" in einen "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" (8A)
und für
das Übergehen von
einem "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" in
einen "Haupt-CPU/OS-basierten
Niedrigstromzustand" (8B);
-
9A zeigt
eine detailliertere Ausführungsform
eines Rechnersystems, das ein Niedrigstrom- aber betriebsbereites
Nicht-Haupt-CPU/OS-basiertes Teilsystem hat;
-
9B zeigt
eine Ausführungsform
von einem Paar von mobilen Rechnersystemen, von denen jedes eine
Benutzerschnittstelle mit "geschlossenem Deckel" bereitstellt;
-
10 zeigt
eine Ausführungsform
einer Softwarearchitektur für
einen "Haupt-CPU/OS-basierten
Niedrigstromzustand" und
eine Ausführungsform
einer Softwarearchitektur für
einen "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" und
mögliche
Beziehungen zwischen den Zustandspaaren;
-
11 veranschaulicht
ein Beispiel von einer Anzahl von Zustandsübergängen, die auf die Verwendung
eines Rechnersystems über
die Zeit reagieren.
-
BESCHREIBUNG
-
Zustandsdiagramm
und Rechnersystem mit Niedrigstrom-Betriebszuständen
-
Damit
das Rechnersystem von innerhalb eines Zustands mit niedrigem Stromverbrauch
nützliche
Aufgaben ausführen
kann, müssen
im System besondere Zustände
entwickelt werden. Insbesondere sollten diese besonderen Zustände konfiguriert sein,
um über
ein ausreichendes Ausmaß an
Funktionstüchtigkeit
zu verfügen,
derart, daß eine
oder mehrere nützliche
Aufgaben ausgeführt
werden können,
während
gleichzeitig weniger Strom verbraucht wird als in Verbindung mit
dem "normalen An-Zustand". Hier veranschaulichen
die 3 und 4A bis 4C eine
Ausführungsform
eines Rechnersystems, das über
zwei dieser besonderen Zustände verfügt.
-
3 stellt
ein Zustandsdiagramm dar. 4A bis 4C zeigen
eine Darstellung eines Beispiels der verschiedenen Komponenten eines Beispiels
für ein
Rechnersystem, die nicht in einen Niedrigstromzustand gezwungen
werden oder die innerhalb von jedem Zustand, von dem nützliche
Aufgaben durchgeführt
werden können,
in einen Niedrigstromzustand gezwungen werden (wo ein schraffierter
Bereich anzeigt, daß eine
Komponente zum Verbleiben innerhalb eines inaktiven Niedrigstromzustands
gezwungen wurde, und ein nicht schraffierter Bereich anzeigt, daß eine Komponente nicht
zum Verbleiben innerhalb eines inaktiven Niedrigstromzustands gezwungen
wurde). Es ist wichtig, anzumerken, daß, wie nachstehend detaillierter
beschrieben werden wird, sowohl das Rechnersystem als auch die besondere
Kombination von Komponenten, die in einen inaktiven Niedrigstromzustand
gezwungen werden, und von Komponenten, die nicht in einen inaktiven
Niedrigstromzustand gezwungen werden, die in 4A bis 4C beobachtet
werden können,
Beispiele sind und von Ausführungsform
zu Ausführungsform
variieren können.
-
Gemäß dem schematischen
Zustandsdiagramm, das in 3 beobachtet werden kann, hat ein
Rechnersystem drei primäre
Zustände,
in denen nützliche
Aufgaben ausgeführt
werden können:
1. einen "normalen
An-Zustand" 301 mit
Hochstrom; 2. einen "Haupt-CPU/OS-basierten Niedrigstromzustand" 304, und
3. einen "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" 305.
Die 4A bis 4C zeigen
ein Ausführungsbeispiel
eines einzelnen Rechnersystems für
jeden der vorhergehend beschriebenen Zustände. Eine kurze Übersicht über jeden
dieser Zustände
wird direkt untenstehend bereitgestellt, und ihr folgt eine eingehendere Erörterung des "Haupt-CPU/OS-Niedrigstromzustands" 304 und des "Nicht-Haupt-CPU/OS-Zustands mit niedrigerem Strom" 305.
-
4A zeigt
eine Ausführungsform
eines Rechnersystems in einem "normalen
An-Zustand" 301. Es
ist anzumerken, daß keine
der verschiedenen Komponenten des Rechnersystems zum Eintritt in
einen inaktiven Niedrigstromzustand gezwungen wurde, da keine der
Komponenten schraffiert ist. In verschiedenen Ausführungsformen
wird zumindest einigen der Komponenten des Rechnersystems die Berechtigung
gegeben, ihren eigenen Stromverbrauch angesichts der ermittelten
Verwendung zu regulieren (z.B. von einem Zustand mit niedrigstem Stromverbrauch
zu einem Zustand mit höchstem Stromverbrauch).
Hier können
Komponenten, die imstande sind, ihren eigenen Stromverbrauch zu
regulieren, dies innerhalb des "normalen
An-Zustands" 301 tun,
indem eine Komponente nicht in einen inaktiven Niedrigstromzustand
gezwungen wird.
-
Im
Gegensatz dazu zeigt 4B eine Ausführungsform des gleichen Rechnersystems,
nachdem es in den "Haupt-CPU/OS-basierten
Niedrigstromzustand" 304 gesetzt
wurde. Hier wurden bestimmte (durch Schraffierung angezeigte) Komponenten
in einen inaktiven Niedrigstromzustand gezwungen. In Übereinstimmung
mit dieser Perspektive wird denjenigen Komponenten, die über die
Berechtigung verfügen,
ihren eigenen Stromverbrauch zu regulieren, und die in einen inaktiven
Niedrigstromzustand gezwungen werden, ihre Berechtigung zur Regulierung
ihres Stromverbrauchs genommen, und sie werden in ihren niedrigsten
Stromverbrauchszustand gezwungen. Hier ist anzumerken, daß der Begriff "inaktiv" bedeutet, daß die Komponente
ihre primäre(n)
Funktion(en) eingestellt hat, damit Strom gespart werden kann. Es
ist anzumerken, daß die
Haupt-CPU nicht deaktiviert wurde und folglich mit dem Ausführen von
Softwareprogrammen fortfahren kann.
-
4C zeigt
eine Ausführungsform
des gleichen Rechnersystems, nachdem es in den "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" 305 gesetzt
wurde. Hier ist anzumerken, daß zusätzliche
Komponenten (insbesondere die CPU), wie durch zusätzliche
Schraffierung im Vergleich zu 4B gezeigt,
in einen inaktiven Niedrigstromzustand gesetzt wurden.
-
Eine
eingehendere Erörterung
des "Haupt-CPU/OS-Niedrigstromzustands" 304 und
des "Nicht-Haupt-CPU/OS-Zustands
mit niedrigerem Strom" 305 wird
direkt nachstehend bereitgestellt.
-
Bezugnehmend
auf die 3 und 4B entspricht
ein "Haupt-CPU/OS-basierter
Niedrigstromzustand" 304 einem
Zustand, in dem die Haupt-CPU 401 angeschaltet ist und
Software ausführen
kann; dennoch wird der Gesamtstromverbrauch im Vergleich zum "normalen An-Zustand" 301 reduziert.
Der Zustand 304 wird als "Haupt-CPU/OS-basiert" bezeichnet, da die Haupt-CPU, basierend
auf dem Haupt-Betriebssystem (OS), Software ausführen kann. Der Strom kann durch
eine oder mehrere der direkt untenstehend beschriebenen Techniken
reduziert werden.
-
1.
Rechnersystemkomponenten außer
der CPU, die über
die Intelligenz/Fähigkeit
verfügen,
ihren eigenen Stromverbrauch dynamisch zu regulieren, wird ihre
Berechtigung, ihren eigenen Stromverbrauch dynamisch zu regulieren,
genommen, und statt dessen werden sie in ihren niedrigsten Stromzustand
gezwungen. Zum Beispiel verfügen
im Fall eines der ACPI entsprechenden Systems verschiedene Komponenten
innerhalb eines Rechnersystems (einschließlich Anzeige, Grafikcontroller,
verschiedene E/A-Vorrichtungen (wie beispielsweise das Festplattenlaufwerk)
usw.) über
die Berechtigung, ihren eigenen Stromverbrauch (z.B. basierend auf
der durch ihren Gerätetreiber
beobachteten Nutzung) gemäß mehrerer
Zustände
von D0 bis D3 zu regulieren, wo der D0-Zustand der Betriebszustand
mit dem höchsten
Strom ist und der D3-Zustand der Nichtbetriebszustand mit dem niedrigsten
Strom ist (wobei D1 und D2 ebenfalls Nichtbetriebszustände mit
in zunehmendem Maße
niedrigerem Strom sind). In einer Ausführungsform konfiguriert der "Haupt-CPU/OS-basierte
Niedrigstromzustand" 304 mit
Absicht bestimmte Komponenten so, daß sie permanent innerhalb des
D3-Zustands bleiben, solange sich das System im "Haupt-CPU/OS-basierten Niedrigstromzustand" 304 befindet.
Nicht-ACPI-Systeme können
auf ähnliche
Weise konfiguriert werden. In 4B sind
Komponenten, die in ihren niedrigsten Stromzustand gezwungen wurden,
schraffiert; daher sind im Beispiel von 4B der
Grafikcontroller 405, die Anzeige 406 und die
E/A-Einheiten 4082 bis 408N in ihren niedrigsten Stromzustand
gezwungen. In alternativen Ausführungsformen
kann es möglich
sein, bestimmte Komponenten derart zu konstruieren, daß ihre Stromversorgungsspannung
reduziert oder entfernt wird, während
sich das System innerhalb des "Nicht-Haupt-CPU/OS-basierten
Niedrigstromzustands" 304 befindet.
-
2.
Wenn die CPU imstande ist, ihren Stromverbrauch dynamisch unter
mehreren unterschiedlichen Stromverbrauchszuständen anzupassen (z.B. durch
dynamisches Wechseln ihrer internen Spannungspegel und/oder Taktfrequenzen),
wird die CPU gezwungen, innerhalb des niedrigsten Stromzustands
(oder zwischen den niedrigsten Stromzuständen) zu arbeiten. Zum Beispiel
kann eine auf der Intel SpeedStepTM-Technologie
basierende CPU unterschiedliche "Pn"-Zustände haben:
P0 bis P4, wo P0 der höchste
Stromzustand ist und P4 der niedrigste Stromzustand
ist. Eine auf der SpeedStepTM-Technologie
basierende CPU reduziert den Strom durch Reduzieren von sowohl ihrer
Spannung als auch ihrer Frequenz, um eine dynamische Stromverringerung mit
einer bescheidenen Verringerung der Leistung zu erhalten. In einer
Ausführungsform,
die eine auf der SpeedStepTM-Technologie
basierende CPU verwendet, wird die CPU gezwungen, im P4-Zustand
zu arbeiten (obgleich einige Anwendungpolitiken für besondere
Ausnahmen den Eintritt in den nächstniedrigeren
Stromzustand P3 vorsehen), während das Rechnersystem
sich innerhalb des "Nicht-Haupt-CPU/OS-Niedrigstromzustands" 304 befindet.
Es ist anzumerken, daß andere
CPU's existieren
können,
die den Strom reduzieren, indem sie die Spannung und/oder die Frequenz
reduzieren, die jedoch nicht auf der SpeedStepTM-Technologie
basierende CPU's
sind. Als solche kann die gegenwärtig beschriebene
Technik sowohl mit auf der SpeedStepTM-Technologie
basierenden CPU's
als auch mit nicht auf der SpeedStepTM-Technologie
basierenden CPU's
ausgeführt
werden. In weiteren Ausführungsformen
wird die Taktfrequenz in dem Maße,
in dem die interne Taktfrequenz innerhalb eines niedrigsten Stromzustands
angepaßt
werden kann, auf die niedrigste Taktfrequenz, auf der der Prozessor
richtig arbeiten kann, eingestellt werden.
-
3.
Das Definieren von Applikationssoftwareprogrammen, die nicht innerhalb
des "Nicht-Haupt-CPU/OS-Niedrigstromzustands" 304 zu
verwenden sind und das Aufheben ihrer Verwendung während dieses
Zustands. Software-Aufgaben oder Applikationen, die als nicht nützlich oder
notwendig für
die Ausführung
des "Haupt-CPU/OS-basierten
Niedrigstromzustands" 304 und
des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" 305 betrachtet
werden, könnten
aufgehoben werden, um einen sehr niedrigen Systemstrom zu erreichen.
Beispiele dafür
können
einen Bildschirmschoner, eine Textverarbeitungsapplikation, eine
Präsentations-/Grafikapplikation
und/oder ein Tabellenkalkulations-Applikationsprogramm umfassen.
Ferner könnten
Batch-Computing-Jobs während
des Betriebs in den Zuständen 504 und 505 aufgehoben
werden.
-
4.
In einem Rechnersystem, das mehrere Haupt-CPU's hat (d.h. die CPU 101 von 1 umfaßt genau
genommen mehrere CPU's),
wird die Anzahl der aktiv arbeitenden CPU's verringert (z.B. in einem System,
das während
des "normalen An-Zustands" 301, N
Haupt-CPU's umfaßt), und
nur eine solche Haupt-CPU ist während
des "Haupt-CPU/OS-Niedrigstromzustands" 304 aktiv.
-
Bezugnehmend
auf die 3 und 4C entspricht
der "Nicht-Haupt-CPU/OS-basierte
Zustand mit niedrigerem Strom" 305 einem
Zustand, in dem die Haupt-CPU 401 abgeschaltet wird, so
daß sie
nicht, basierend auf dem Haupt-OS des Rechnersystems, Software ausführen kann.
Es ist anzumerken, daß im
Beispiel von 4C der Cache 402, der Systemspeicher 404 und
mindestens der Speichercontrollerteil der Speicher-E/A-Steuereinheit 403 ebenfalls
zwangsweise in einen inaktiven Niedrigstromzustand eingeführt werden
(da sie weitgehend die Bemühungen
der Haupt-CPU 401, Software auszuführen, unterstützen). Da
die Haupt-CPU 401 inaktiv ist, ist der Zustand 305 "Nicht-Haupt-CPU/OS-basiert". Ferner ist, zumindest
weil die CPU 401 inaktiv gemacht wurde, der Zustand 305 mit "niedrigerem Strom" im Vergleich zu
den Zuständen 301 und 304. Daher
kann der Zustand 305 als ein "Nicht-Haupt-CPU/OS-basierter Zustand
mit niedrigerem Strom" bezeichnet
werden. Es ist indes wichtig, anzumerken, daß die genaue Kombination von Komponenten,
die während
des Zustands 305 in einen inaktiven Zustand gezwungen werden,
je nach Ausführungsform
(z.B. kann als ein Beispiel ein System konstruiert werden, das den
Systemspeicher 404 während
des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" 305 in
einem aktiven Zustand hält,
so daß der
Systemspeicher 404 innerhalb dieses Zustands verwendet
werden kann) variieren kann.
-
Ausführungsbeispiel
-
Vollständiges schnurloses Telefonsystem
-
Die
Verbindung der Zustände 301, 304 und 305 (z.B.
wie ersichtlich aus dem in den 4A bis 4C zu
beobachtenden Rechnersystem-Antriebsprofil) ermöglicht es, ein Rechnersystem
speziell auf das Erstellen bestimmter Aufgaben zuzuschneiden, wenn
es sich in verschiedenen Stufen des verringerten Stromverbrauchs
befindet – und,
infolgedessen, sollte sich eine verbesserte Effizienz ergeben. Ein Beispiel
hilft beim Veranschaulichen des Potentials dieser Vorgehensweise. 5 zeigt
ein Beispiel eines "vollständigen" – doch energieeffizienten – schnurlosen
Telefonsystems, das mit einem wie in einem in den 3 und 4A bis 4C dargestellten
Rechnersystem ausgeführt
werden kann. Hier ist ein vollständiges
schnurloses Telefonsystem ein System, das: 1. eine grundlegende
schnurlose Telefonfunktion (d.h. eine Schnittstelle für ein herkömmliches
Telefonsystem (POTS) und eine drahtlose Verbindung zwischen einem
schnurlosen Telefon und der POTS-Schnittstelle); 2. einen Anrufbeantworter, der
eine Nachricht eines Anrufers aufzeichnet, wenn das schnurlose Telefon
als Reaktion auf den Anruf des Anrufers unbeantwortet bleibt, und
3. eine Net-Meeting-Maschine, die als Reaktion auf die ID eines
Anrufers, die mit einem Anrufer verbunden ist, für den ein Net-Meeting angebracht
ist, einen Austausch über
das Internet einrichtet, bereitstellt.
-
Eine
Basisausführung
des vorhergehend genannten vorhergehend beschriebenen vollständigen schnurlosen
Telefonsystems, wie es in 5 beobachtet
werden kann, besteht aus dem Ausführen: 1. der grundlegenden
schnurlosen Telefonfunktion von innerhalb des "Nicht-Haupt-CPU/OS-basierten Zustands
mit niedrigerem Strom" 505;
2. der Anrufbeantworterfunktion von innerhalb des "Haupt-CPU/OS-basierten
Niedrigstromzustands" 504,
und 3. der Net-Meeting-Maschine von innerhalb des "normalen An-Zustands" 501. Durch
das Ausführen
der grundlegenden schnurlosen Telefonfunktion innerhalb des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" 505 kann
das Rechnersystem sich, wie durch seine Verwendung bestimmt, leicht
selbst zwischen einer "nur" grundlegenden schnurlosen
Telefonfunktion und einem ausgewachsenen Rechnersystem hin und zurück konvertieren.
Bezugnehmend auf die 4A bis 4C als das
zugrundeliegende Rechnersystem ist anzumerken, daß: 1. die
Net-Meeting-Maschine mit dem vollständigen Rechnersystem von 4A ausgeführt ist;
2. der Anrufbeantworter mit dem Haupt-CPU-basierten System mit niedrigerem Strom
von 4B ausgeführt
ist, und 3. die grundlegende schnurlose Telefonfunktion mit der
E/A-Einheit 4081 ausgeführt ist.
-
Es
ist anzumerken, daß die
Funktionsausführungen,
die unmittelbar vorhergehend beschrieben wurden, mit ihren entsprechenden
Funktions-/Verarbeitungskapazitäts-
und Stromverbrauchsanforderungen übereinstimmen. Das heißt, eine
grundlegende schnurlose Telefonfunktion kann leicht aus einigen
wenigen einfachen Komponenten konstruiert werden und infolgedessen:
1. kann sie leicht in eine einzelne E/A-Einheit (wie beispielsweise
die E/A-Einheit 4081 ) integriert werden, und 2. wird sie
(im Verhältnis
zu einem vollständigen
Rechnersystem) geringe Mengen an Strom verbrauchen. Als solches
ist ein grundlegendes schnurloses Telefon eine ideale, in einer
E/A-Einheit 4081 als eine der Funktionen
des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" 505 des
Rechnersystems zu konstruierende Funktion.
-
Im
Gegensatz dazu ist ein Anrufbeantworter eine kompliziertere Funktion,
die Speichermittel für sowohl:
1. die aufgezeichnete, für
einen Anrufer, dessen Anruf nicht beantwortet wurde, abzuspielende Nachricht,
als auch 2. die aufgezeichnete Nachricht des Anrufers (falls vorhanden)
erfordert. Als solches ist es, obgleich ein Anrufbeantworter in
eine E/A-Einheit
integriert werden kann, wahrscheinlich wirtschaftlicher, die Speichermittel
des Hauptspeichers 404 des Rechnersystems zum Speichern
der aufgezeichneten Nachrichten zu verwenden. Ferner können die
Haupt-CPU 401 und das Haupt-OS verwendet werden, um Applikationssoftware
auszuführen, die
die Wiedergabe der aufgezeichneten Nachricht (sowohl für den Anrufer,
dessen Anruf nicht beantwortet wird, als auch für den Benutzer des Rechnersystems,
der eine Nachricht des Anrufers hören möchte) handhabt.
-
Es
ist ebenfalls anzumerken, daß ein
Anrufbeantworter oft eine Nachricht aufzeichnet, wenn der Benutzer
nicht für
die Beantwortung eines Anrufs verfügbar ist. Als solches ist es
in den meisten Situationen kein Nachteil, wenn die Anzeige 406 und
der Grafikcontroller 405 nicht angeschaltet sind (z.B.
wird der Benutzer, wenn der Benutzer nicht zu Hause ist, um einen
Telefonanruf zu beantworten, ebenfalls nicht imstande sein, sich über die
Anzeige 406 mit dem Rechnersystem zu verbinden). Ferner
ist anzumerken, daß,
da die Haupt-CPU 401 und das Haupt-OS verwendet werden
können,
um, wie unmittelbar vorhergehend beschrieben, den Betrieb des Anrufbeantworters
zu unterstützen,
die Aufgaben des Anrufbeantworters für die CPU 401 eines
typischen Rechnersystems keinesfalls "Hochleistungs-Aufgaben" sind. Infolgedessen
können
diese Aufgaben leicht ausgeführt
werden, wenn die Haupt-CPU 401 konfiguriert ist, um einen
reduzierten Leistungs-/Stromverbrauchszustand (z.B., indem sie gezwungen
wird, niedrigere interne Spannungen und/oder niedrigere Taktfrequenzen
zu verwenden) zu haben.
-
Alle
der vorhergehend genannten Eigenschaften eines Anrufbeantworters
zusammen genommen ist anzumerken, daß die Anrufbeantworterfunktion
gut für
den "Haupt-CPU/OS-basierten Niedrigstromzustand" 504 geeignet
ist. Das heißt, unter
Bezugnahme auf 4B, die Anzeige 406 und der
Grafikcontroller 405 sind inaktiv (um Strom zu sparen),
und Haupt-CPU und OS können
in einer reduzierten Leistungs-/Stromverbrauchskapazität verwendet
werden, um die Funktionen des Wiedergebens und Meldens der Nachrichten
zu handhaben. Infolgedessen zeigt 5, daß der Anrufbeantworterteil
des vollständigen
Telefonsystems mit dem "Haupt-CPU/OS-basierten
Niedrigstromzustand" 504 ausgeführt wird.
Demnach ist beim Überdenken
der bisherigen Erörterung
von 5 klar, daß die
Ausführung
des Telefonsystems durch das Rechnersystem gewollt an die Betriebszustände des
Rechnersystems angepaßt
ist. Das heißt,
die grundlegende schnurlose Telefonfunktion mit niedrigerem Strom/niedrigerer
Leistung ist im "Nicht-Haupt-CPU/OS-Zustand
mit niedrigerem Strom" 505 konstruiert,
und die anspruchsvollere Anrufbeantworterfunktion ist im "Haupt-CPU/OS-Niedrigstromzustand" 504 konstruiert.
-
Schließlich ist
die Net-Meeting-Funktion des vollständigen schnurlosen Telefonsystems
von 5 konstruiert, um verwendet zu werden, während sich das
Rechnersystem innerhalb des "normalen
An-Zustands" 501 befindet.
Hier kann die Software, die für die
Handhabung einer Transaktion über
das Internet verantwortlich ist, Aufgaben mit höherer Leistung (z.B. Schicht 4, Flußsteuerung,
IP-Schicht-Headerverarbeitung usw.) umfassen. Ferner kann die Internetverbindung
neben der POTS-Schnittstelle, die mit dem schnurlosen Telefon verbunden
ist, über
eine andere Netzschnittstelle (z.B. eine drahtlose Schnittstelle)
eingerichtet werden. Als solche kann die Internettransaktion die
Verwendung einer E/A-Einheit außer
der E/A-Einheit, in der die grundlegende schnurlose Telefonfunktion
integriert ist (z.B. die E/A-Einheit 4082 ,
wenn die E/A-Einheit 4082 eine
drahtlose Schnittstelle bereitstellt), umfassen. Somit ist die Net-Meeting-Funktion
des vollständigen
schnurlosen Telefonsystems gut für
das Rechnersystem geeignet, wenn es sich innerhalb des "normalen An-Zustands" befindet (da die
Internet-Kommunikationsfähigkeit des
normalen Rechnersystems weitgehend für die Net-Meeting-Kommunikationsfunktion
des schnurlosen Telefonsystems wiederverwendet werden kann).
-
Da
das Rechnersystem zwischen den verschiedenen Zuständen im
Zustandsdiagramm von 5 übergehen kann, entspricht das
vorhergehend beschriebene vollständige
schnurlose Telefonsystem einem Rechnersystem, das, basierend auf
seiner Verwendung zwischen einem "Hochstrom-Rechnersystem" und einem grundlegenden
schnurlosen Telefon, "mit
niedrigerem Strom" pendeln
kann. Zum Beispiel wird, wenn, nur als ein Beispiel, ein Benutzer das
Rechnersystem für
eine herkömmliche
Verwendung des Rechnersystems verwendet (z.B. zum Schreiben eines
Dokuments und/oder Schreiben eines Dokuments), das Rechnersystem
im "normalen An-Zustand" 501 sein.
Wenn der Benutzer dann diese Tätigkeit
nachfolgend aufhebt, um das Rechnersystem vorübergehend zu verlassen (z.B.,
indem er "etwas
anderes" tut, das
nichts mit dem Computer zu tun hat), kann das Rechnersystem automatisch
in seinen aktiven Zustand mit dem niedrigsten Strom 505 (den "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom) abfallen, um sich wie ein grundlegendes
schnurloses Telefonsystem zu verhalten und in Übereinstimmung damit Strom
zu verbrauchen. Es ist anzumerken, daß ein Benutzer ein Rechnersystem
in vielen Fällen
für jeweils
mehrere Stunden verlassen kann – somit
verursacht das automatische Abfallen des Rechnersystems in den Zustand
die Zustände
mit niedrigerem Strom beim Rechnersystem das Regulieren seines eigenen Stromverbrauchs
als eine Funktion der Art und Weise, auf die es verwendet wird.
-
Das
Rechnersystem kann daher ebenfalls als eine Mischform zwischen einem
herkömmlichen "Hochstrom"-Rechnersystem und
einem Low-End-Gerät
(in diesem Fall ein grundlegendes schnurloses Telefon) angesehen
werden. Wenn der Benutzer das System für herkömmliche Rechnerzwecke verwendet
(z.B. Schreiben von Dokumenten, Surfen auf dem Internet usw.), verhält sich das
System wie ein herkömmliches
Rechnersystem, und wenn der Benutzer das System nicht wie ein herkömmliches
Rechnersystem verwendet, wird das System (hinsichtlich Funktionen
und Stromverbrauch) auf ein grundlegendes Gerät (in diesem Fall eine grundlegende
schnurlose Telefonfunktion) herabgesetzt. Da das Zustandsdiagramm,
das in 5 betrachtet werden kann, zeigt, daß das Rechnersystem
imstande ist, von einem von mehreren nützlichen Zuständen 501, 504 und 505 in
den anderen und zurück überzugehen,
ist das Rechnersystem desgleichen imstande, von einem herkömmlichen
Rechnersystem in ein grundlegendes Gerät und zurück überzugehen.
-
Ferner
kann, wenn der Benutzer unter Fortführung des unmittelbar vorhergehend
bereitgestellten Beispiels einen Telefonanruf erhält, nachdem
er den Computer vorübergehend
verlassen hat, und er diesen Telefonanruf nicht beantworten kann,
das Rechnersystem einen Zustandsübergang
vom Betriebszustand mit dem niedrigsten Strom 505 in den Zwischenstrom-Betriebszustand 504 auslösen, um sich
von einem grundlegenden schnurlosen Telefon (wie durch den Zustand 505 dargestellt)
in ein grundlegendes schnurloses Telefon mit einem Anrufbeantworter
(wie durch Zustand 504 dargestellt) umzuwandeln. In diesem
Fall ist anzumerken, daß das
System imstande ist, seine Funktionsfähigkeiten und seinen entsprechenden
Stromverbrauch angesichts der Gesamtverwendungen, die sich dem System
bieten, anzupassen.
-
Nachdem,
unter Fortführung
dieses gleichen Beispiels, die Nachricht des Anrufers (z.B. durch Speicherung
im Systemspeicher 404) aufgezeichnet wurde, kann die Software,
die mit dem "Haupt-CPU/OS-basierten
Niedrigstromzustand" 504 verbunden
ist, derart geschrieben werden, daß das System (unter Abwesenheit
der Rückkehr
des Benutzers für
herkömmliche
Rechnersystemverwendungen) wieder in den Zustand mit niedrigerem
Strom 505 zurückfällt, um das
Rechnersystem zurück
in ein grundlegendes schnurloses Telefon umzuwandeln. Angesichts
dieser Zustandsübergänge ist
anzumerken, daß das
System nicht nur imstande ist, seine Funktionsfähigkeiten und den entsprechenden Stromverbrauch
zwischen einem herkömmlichen Rechnersystem
(Zustand 501) und einem grundlegenden Gerät (dem grundlegenden
schnurlosen Telefon von Zustand 505) anzupassen, sondern
ebenfalls imstande ist, seine Funktionsfähigkeiten und den entsprechenden
Stromverbrauch an diejenigen eines "Zwischengeräts" (des Anrufbeantworters von Zustand 504)
anzupassen. Ferner können
die vorhergehend beschriebenen Umwandlungen zwischen den verschiedenen
Funktionsfähigkeiten
angesichts gleich welcher Verwendungen, die sich dem Rechnersystem über die
Zeit bieten, automatisch ausgelöst
werden.
-
Ein
Beispiel eines vollständigen
schnurlosen Telefonsystems, das eine Abfolge von Ereignissen zeigt,
die ausreichen, um die Einrichtung eines Net-Meetings zu verursachen,
wird nachstehend unter Bezugnahme auf 11 detaillierter
bereitgestellt werden.
-
Zustandsübergangsverfahren
und unterstützende Hardware
-
Angesichts
dessen, daß das
vorhergehende Beispiel ein arbeitendes System beschreibt, das imstande
ist, zwischen verschiedenen nützlichen
Zuständen 501, 504, 505 (von
denen jeder ein eigenes Maß an
Funktionsfähigkeit
und Stromverbrauch hat) überzugehen,
ist die Art und Weise, in der diese Zustandsübergänge ausgeführt werden, von großer Bedeutung.
Die 6A, 6B bis 8A, 8B richten
sich auf diese Zustandsübergangsaspekte. Insbesondere
stellen die 6A und 6B Verfahren
für den
Zustandsübergang
zwischen dem "normalen
Hochstrom-An-Zustand" 301 und
dem "Haupt-CPU/OS-basierten
Niedrigstromzustand" 304 von 3 bereit.
Die 8A und 8B stellen
Verfahren für
den Zustandsübergang
zwischen dem "Haupt-CPU/OS-basierten
Niedrigstromzustand" 304 und
dem "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" 305 bereit. 7 stellt
eine Ausführungsform
eines Schaltungsplans, der zum Unterstützen des Zustandsübergangsverfahrens
verwendet werden kann, bereit.
-
6A zeigt
eine Ausführungsform
eines Verfahrens, das durch ein Rechnersystem ausgeführt werden
kann, um von einem "normalen
Hochstrom-An-Zustand" 301 in
den "Haupt-CPU/OS-basierten
Niedrigstromzustand" 304 überzugehen.
Gemäß dem Verfahren
von 6A, wird das System anfangs innerhalb des "normalen Hochstrom-An-Zustands" 601 "ausgeführt". In diesem Zustand
kann das System für
herkömmliche
Rechnerzwecke verwendet werden. Zu irgendeinem Zeitpunkt wird ein Ereignis
ermittelt 602, das das Übergangsverfahren vom "normalen An-Zustand" in den "Haupt-CPU/OS-basierten
Niedrigstromzustand" auslöst. Das
Ereignis kann von Ausführungsform
zu Ausführungsform
und von Anwendung zu Anwendung variieren.
-
Zum
Beispiel kann, um nur einige der möglichen Fälle zu nennen, das Rechnersystem
erkennen, daß über einen
längeren
Zeitraum kein Impuls durch einen Benutzer bereitgestellt wurde (der
Benutzer hat z.B. eine Maus nicht benutzt oder während eines längeren Zeitraums
nicht auf einer Tastatur getippt), oder das Rechnersystem kann erkennen,
daß der
Benutzer den Deckel des Rechnersystems (wenn das Rechnersystem ein
Handheld-Gerät,
wie beispielsweise ein Laptop-/Notebookcomputer, ist) geschlossen
oder den Bildschim/die Anzeige abgeschaltet hat (wenn das Rechnersystem
ein typisches "Desktop-System" ist). Es ist anzumerken,
daß, ob das
Ereignis das Eintreten des Systems in den "Haupt-CPU/OS-Niedrigstromzustand" oder einen Schlafzustand 303 des
bisherigen Stands der Technik verursachen soll, angesichts mehrerer
Bedingungen bestimmt wird, die von Ausführungsform zu Ausführungsform
und von Anwendung zu Anwendung variieren können. Als nur ein mögliches
Beispiel, geht das System, wenn ein Betriebszustand mit niedrigerem
Strom durch Setzen eines Flags in einer Software als "aktiv" erkannt wird (z.B.
wenn das grundlegende schnurlose Telefonsystem als aktiv erkannt
wird), automatisch in einen Betriebszustand mit niedrigerem Strom 304, 305 anstatt
in einen Schlafzustand 303 des bisherigen Stands der Technik über.
-
Als
Reaktion auf das ermittelte Ereignis 602, kennzeichnet
sich 603 das OS als sich innerhalb des "Haupt-CPU/OS-Niedrigstromzustands" befindend. Hier
ist erneut daran zu erinnern, daß die "Haupt-CPU/OS-Komponente" dieses Niedrigstrom- aber
betriebsbereiten Zustands bedeutet, daß die Haupt-CPU immer noch
betriebsbereit ist und daß das
Haupt-OS immer noch betriebsbereit ist, derart, daß eine oder
mehrere Applikationssoftwareprogramme auf Haupt-CPU und OS ausgeführt werden können. Als
solches kennzeichnet sich 603 das OS, derart, daß es formell
erkennen kann, daß es
innerhalb eines Zustands mit niedrigerem Strom arbeitet. Geeignete
Softwaretreiber können
sich auf ähnliche Art
kennzeichnen. Dann wird der "Haupt-CPU/OS-basierte
Niedrigstromzustand" 304 eingerichtet
oder hergestellt 604. In diesem Fall ist daran zu erinnern,
daß der
Zustand 304 durch: 1. Nehmen der Berechtigung verschiedener
Komponenten (z.B. des Grafikcontrollers und der Anzeige), ihren
eigenen Stromverbrauch zu regulieren und/oder 2. Zwingen der CPU,
innerhalb eines niedrigeren Leistungs-/Stromverbrauchsbetriebsmodus zu bleiben
und/oder 3. Parken bestimmter Applikationssoftwareprogamme oder
Aufgaben und/oder 4. Reduktion der Anzahl aktiver Haupt-CPU's innerhalb eines
Systems mit mehreren Haupt-CPU's
und/oder 5. Entfernen oder Herabsetzen des Stroms für verschiedene
Komponenten ausgeführt
werden kann. Software, die für
den "Haupt-CPU/OS-Niedrigstromzustand" deaktiviert wird,
kann ihren Kontext abspeichern, derart, daß sie bei der Rückkehr zum "normalen An-Zustand" ihre Betriebsumgebung
wieder abrufen kann. Nachdem der "Haupt-CPU-Niedrigstromzustand" eingerichtet wurde,
wird das System in diesem Zustand ausgeführt 605.
-
Der Übergang
des Systems vom "Haupt-CPU/OS-basierten
Niedrigstromzustand" zum "normalen An-Zustand" einer Ausführungsform, die
in 6B beobachtet werden kann, kann weitgehend als
das Gegenteil des Übergangs
vom „normalen
An-Zustand" zum „Haupt-CPU/OS-basierten Niedrigstromzustand" ausgeführt werden.
Das heißt unter
Bezugnahme auf 6B, daß während des Ausführens 606 innerhalb
des "Haupt-CPU/OS-basierten
Niedrigstromzustands",
ein Ereignis ermittelt wird 607, das einen Zustandsübergang
in den "normalen
An-Zustand" auslöst. Erneut
kann die genaue Art des auslösenden
Ereignisses 607 von Ausführungsform zu Ausführungsform
und von Anwendung zu Anwendung variieren. Im Fall eines wie unter
Bezugnahme auf 5 beschriebenen Anrufbeantworters
kann das auslösende
Ereignis 607 das Erkennen, daß für einen momentan empfangenen
Anruf ein Net-Meeting
eingerichtet werden muß,
sein.
-
Als
Reaktion auf das auslösende
Ereignis 607 kennzeichnen 608 sich OS und anwendbare
Gerätetreiber
als innerhalb des "normalen
An-Zustands". Der "normale An-Zustand" wird dann eingerichtet/hergestellt 609 (z.B.,
indem verschiedenen Komponenten das Regulieren ihres eigenen Stromverbrauchs
gewährt
wird, es der Haupt-CPU erlaubt wird, in einem Betriebsmodus mit
höherer
Leistung/höherem
Stromverbrauch zu arbeiten, Reaktivieren von "geparkten" Applikationssoftwareprogammen und Wiederherstellen
ihres Kontexts, erneutes Beliefern verschiedener Komponenten mit
ihrer richtigen Stromzufuhr). Nachdem der "normale An-Zustand" eingerichtet wurde, wird das System
im "normalen An-Zustand" ausgeführt 610.
-
Da
die/das Haupt-CPU/OS während
des "Haupt-CPU/OS-basierten
Niedrigstromzustands" angetrieben
wird/im Wachzustand gehalten wird, werden Haupt-CPU und Haupt-OS
während
eines Zustandsübergangsverfahrens
zwischen dem "normalen
An-Zustand" und
dem "Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" nicht
in den Schlafzustand gesetzt. Im Gegensatz dazu zeigt die "Nicht-Haupt-CPU/OS-Komponente" des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" an,
daß die
Haupt-CPU/OS in einen inaktiven Zustand gesetzt werden. Demzufolge
umfaßt das Übergehen
in den "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom",
daß die/das Haupt-CPU/OS
in einen Schlafzustand gesetzt wird. Allgemein sind die Anfangsphasen
des "Weckverfahrens", wenn die/das Haupt-CPU/OS "aufwacht", nachdem sie/es
in den Schlafzustand gesetzt wurde, ähnlich wie diejenigen Verfahren,
die ausgeführt
werden, wenn das gesamte Rechnersystem zuerst als Ganzes angeschaltet
wird oder wenn das Rechnersystem einen RESET-Zustand verläßt. Das
heißt,
die grundlegende BIOS-Software muß gemeinsam mit dem OS selbst
geladen und ausgeführt
werden.
-
Ein
grundsätzlicher
Unterschied zwischen einem grundlegenden Einschalten oder einer
RESET-Reaktion und einer Rückkehr
aus einem Schlafzustand ist indes, daß das Anfangssoftware-Ladeverfahren
bei der Rückkehr
aus einem Schlafzustand erkennt, daß das System aus einem Schlafzustand zurückkehrt.
Dieses Erkennen verursacht wiederum das Neuladen des vorhergehend
gespeicherten Kontexts. Im Gegensatz dazu existiert beim Initialisieren aus
einem grundlegenden Einschalten oder RESET kein solches Erkennen
oder Kontext. Hier werden ein oder mehrere spezifische Bits, die
an spezifischen gesuchten Orten gespeichert sind, während des Weckverfahrens
verwendet, damit das System bestimmen kann, ob es aus einem grundlegenden
Einschalten/RESET oder aus einem Schlafzustand (und in verschiedenen
Fällen
den Typ von Schlafzustand, aus dem das System geweckt wird) heraus
initialisiert wird. Wenn ein oder mehrere Bits anzeigen, daß das System
aus einem Schlafzustand zurückkehrt,
wird der gespeicherte Kontext wiederhergestellt, damit das System
zu seiner ursprünglichen
Umgebung zurückkehren
kann.
-
Das
Vorhandensein dieser gesuchten Bits zeigt an, daß ein eingeschränktes Maß an Hardware, die
mit der CPU- und/oder der Speichercontroller- und/oder E/A-Controllerfunktion
verbunden ist, während
des Zeitraums, während
dem die/das Haupt-CPU/OS im Schlafzustand ist, angeschaltet bleibt.
Eine Ausführungsform
dieser eingeschränkten Hardware
kann in 7 beobachtet werden. Der spezifische
Schaltungsaufbau von 7 sorgt nicht nur für den Wiederanlauf
aus einem Schlafzustand, der durch den Eintritt in einen "Nicht-Haupt-CPU/OS-basierten Niedrigstromzustand" eingeleitet wurde,
sondern ist ebenfalls kompatibel mit dem Wiederanlauf aus (einem)
mit ACPI übereinstimmenden
Schlafzustand/Schlafzuständen des
bisherigen Standes der Technik. Als solches kann der Schaltungsausbau
von 7 unter Bezugnahme auf die 3 und 7 durch
ein ACPI-komptatibles System verwendet werden, um sowohl: 1. den Übergang
von (einem) herkömmlichen
Schlafzustand/Schlafzuständen 303 und
2. den Übergang
vom "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" 305 zu
handhaben.
-
In
verschiedenen Ausführungsformen
ist die Schaltung, die für
den Wiederanlauf von einem Schlafzustand (wie beispielsweise die
Schaltung von 7) mit den Speichercontroller- und/oder E/A-Controllerfunktionen
integriert. In einer weiteren Ausführungsform ist die Speichercontrollerfunktion mit
einem ersten Halbleiterchip ausgeführt, und die E/A-Controllerfunktion
ist mit einem zweiten Halbleiterchip ausgeführt. In diesem Fall kann die
Schaltung, die für
den Wiederanlauf von einem Schlafzustand (wie beispielsweise die
Schaltung von 7) in entweder den Speichercontroller-Halbleiterchip oder
den E/A-Controller-Halbleiterchip
integriert sein.
-
Nun
Bezug nehmend auf 7 entspricht ein "gesuchtes" Bit, das einem erwachenden
System anzeigt, ob das System aus einem Schlafzustand oder einem
grundlegenden Strom/RESET-Zustand erwacht oder nicht, dem Bit 702 ("WAK_STS"). Der Betriebsablauf,
der den Zustand des "WAK_STS"-Bits 702 bestimmt,
wird nachstehend detaillierter beschrieben. Die "SLP_EN"- und "SLP_TYP"-Bits 712 und 713 werden
angeschrieben, wenn das System als Ganzes in einen herkömmlichen "nicht betriebsbereiten" Schlafzustand (z.B.
Zustand/Zustände 303 von 3)
eintritt. Hier zeigt das "SLP_EN"-Bit 712 an,
daß das
System in einen herkömmlichen
nicht betriebsbereiten Schlafmodus eintritt, und die "SLP_TYP"-Bits 713 zeigen an,
welches der spezifische Typ des herkömmlichen nicht betriebsbereiten
Schlafzustandes ist, in den eingetreten wird (z.B. S0 bis S4 in
einem ACPI-basierten System), wobei anzumerken ist, daß die bestimmte
SLP_TYP-Ausführungsform
von 7 drei Bits verwendet.
-
Wenn
das System in einen herkömmlichen nicht
betriebsbereiten Schlafzustand eintritt, werden sowohl die "SLP_EN"- als auch die "SLP_TYP"-Bits 712 und 713 von
der Weck-/Schlaflogik 701 verwendet,
um das geeignete Stromversorgungsschema innerhalb des Rechnersystems
einzurichten. Das heißt,
jeder Typ von herkömmlichem
Schlafzustandsmodus kann sein eigenes spezifisches Stromversorgungs-Spannungsschema
haben (z.B. kann bei einigen Komponenten die Zufuhr entfernt, bei
einigen Komponenten die Stromversorgungsspannung verringert werden
usw.). Der Ausgang 709 wird verwendet, um das richtige
Stromversorgungsschema für den
angegebenen herkömmlichen
Schlafmodus auszuführen.
Es ist anzumerken, daß,
wenn ein bestimmtes Schlafmodusschema eine oder mehrere Komponenten
logisch deaktiviert, anstatt ihre Stromversorgungsspannung einzustellen
(z.B. durch Abschalten eines Eingangstakts, Aktivieren eines Deaktivierungsbits
usw.), die Weck-/Schlaflogik 701 und der Ausgang 709 ebenfalls
zu Deaktivierungszwecken verwendet werden können.
-
Das "NMC/O_EN"-Bit 710 wird
angeschrieben, wenn das System vom "Haupt-CPU/OS-basierten Niedrigstromzustand" 304 in
den "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" 305 übergeht.
Hier hat die Weck-/Schlaflogik 701 in einer Ausführungsform,
da der "Nicht-Haupt-CPU/OS-basierte
Zustand mit niedrigerem Strom" sein
eigenes spezifisches Stromversorgungs-Spannungsschema (z.B. in Bezug
auf die spezifischen Komponenten, deren Versorgungsstrom entfernt,
verringert usw. wird) haben kann, ein besonderes "NMC/O_EN"-Eingangsbit 710,
um anzuzeigen, daß das
Stromversorgungsschema, das für
den "Nicht-Haupt-CPU-basierten
Zustand mit niedrigerem Strom" spezifisch
ist, einzuschalten ist.
-
In
einer alternativen Ausführungsform
wird der Begriff des "Schlafs" sogar innerhalb
des "Nicht-CPU/OS-basierten
Zustands mit niedrigerem Strom" durch
die "SLP_EN" und "SLP_TYP"-Bits 712 und 713 gekennzeichnet
(z.B., indem eine spezifische vordem nicht verwendete Kombination
von SLP_TYP-Bits verwendet wird, um den "Nicht-Haupt-CPU/OS-basierten Zustand" zu kennzeichnen). Hier kann das "NMC/O_EN"-Bit als eine zusätzliche
Information verwendet werden, die, wenn sie eingestellt ist, die
Weck-/Schlaflogik 701 darüber informiert, daß auf einen "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" übergegangen
wird. Ungeachtet dessen wird der Ausgang 709 verwendet,
um das richtige Stromschema einzurichten. Es ist erneut anzumerken,
daß, wenn
der "Nicht-Haupt-CPU/OS-basierte Zustand
mit niedrigerem Strom" 305 eine
oder mehrere Komponenten logisch deaktiviert, anstatt ihre Stromversorgungsspannung
einzustellen (z.B. durch Abschalten eines Eingangstaktes, Aktivieren
eines Deaktivierungsbits usw.), die Weck-/Schlaflogik 701 und
der Ausgang 709 ebenfalls für Deaktivierungszwecke verwendet werden
können.
-
Die
Eingangsbits 704 und 714 zum mehrfachen Eingangs-ODER-Gatter 703 sind
Weckereignisbits. Das heißt,
beim Eintreten eines Ereignisses, das ausreicht, um die/das Haupt-CPU/OS aus einem herkömmlichen
Schlafzustand oder dem "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" zu
wecken, wird mindestens eines dieser Eingangsbits 710 und 714 aktiviert.
Dies verursacht die Aktivierung des Netzes 708, was wiederum die
Aktivierung des WAK_STS-Bits 702 verursacht. Als Reaktion
auf die Aktivierung des WAK_STS-Bits 702, erkennt die/das
Haupt-CPU/OS, daß sie/es
aus einem Schlafzustand geweckt wird, und sie/es kann auf die Bits 704 und 714 schauen,
um ferner zu erkennen, warum das System geweckt wurde. Ferner kann
die/das Haupt-CPU/OS in Abhängigkeit
von der Ausführung
erkennen, daß sie/es
vom "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" geweckt
wurde, indem sie/es den Status des NMC/O_EN-Bits 710 oder
den Status des NMC/O_STS-Bits 714 liest.
-
Da
das NMC/O_EN-Bit 710 als aktiv eingestellt wird, um das
System in den "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" einzuführen, kann
das Bit 710 in einer Ausführungsform während des
Weckens gelesen werden, um zu erkennen, daß das System aus dem "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" erwacht.
Es ist anzumerken, daß das Bit 710 in
diesem Fall ein Lese-/Schreib-Bit sein kann, in dem Sinne, daß es sowohl
angeschrieben (zum Eintritt in den "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom")
als auch gelesen (zum Übergang
vom "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom")
werden kann. In diesem besonderen Fall, wird das NMC/O_STS-Bit 714 einfach
verwendet, um die Schaltungen von 7 darüber zu benachrichtigen,
daß das
System vom "Nicht-CPU/OS-basierten
Zustand mit niedrigerem Strom" entfernt
wurde (d.h., daß ein
Weckereignis eingetreten ist).
-
In
einer alternativen Ausführungsform,
in der die SLP_TYP-Bits 713 verwendet werden, um anzuzeigen,
daß das
System in den "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" eintritt
(z.B. durch eine spezifische vordem nicht verwendete Kombination
von SLP_TYP-Bit-Einstellungen), werden diese gleichen SLP_TYP-Bits
gelesen, um zu erkennen, daß das System
aus dem "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" erwacht.
In einer anderen alternativen Ausführungsform ist das System konfiguriert,
um das NMC/O_STS-Bit 714 anzuschauen, um zu erkennen, ob
das System vom "Nicht-CPU/OS-basierten Zustand
mit niedrigerem Strom" erwacht
oder nicht (d.h., wenn das Bit 714 beim Wecken aktiv ist,
erwacht das System vom "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom").
Die Bits 704 sind ACPI-Bits des bisherigen Stands der Technik,
die herkömmlichen
Weckereignissen entsprechen (z.B. gegenüber dem LID_STS-Bit das Öffnen eines
vorhergehend geschlossenen Deckels eines Laptop-/Notebookcomputers).
-
Die 8A und 8B zeigen
in dieser Reihenfolge Verfahren, die für das Übergehen des Rechnersystems
vom "Haupt-CPU/OS-basierten Niedrigstromzustand" 304 in
den "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" 305 (8A)
und vom "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" 305 in
den "Haupt-CPU/OS-basierten Niedrigstromzustand" 304 (8B)
ausreichen. Bezug nehmend auf 8A wird
das System anfangs innerhalb des "Haupt-CPU/OS-basierten Niedrigstromzustands" ausgeführt 801.
In irgendeinem Moment wird ein Ereignis ermittelt 802,
das ausreicht, um den Übergang
des Systems in den "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" 305 auszulösen (z.B.
die Anrufbeantworterfunktion 504 von 5 hat
ihre Aufnahme eines unbeantworteten Anrufs von einem Anrufer beendet,
und der Benutzer ist nicht zum Rechnersystem zurückgekehrt).
-
Demzufolge
werden Haupt-CPU und OS in den Schlafzustand gesetzt 805.
Dies umfaßt
1. Vorbereiten des OS und der Treiber für die Transaktion und das Speichern
des Kontexts 803 und 2. Aufzeichnen, daß die/das Haupt-CPU/OS in den
Schlafzustand gesetzt wird, da sie/es in den "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" eintritt
(z.B. durch Einstellen des NMC/O_EN-Bits 710 von 7 und/oder
der SLP_EN- und SLP_TYP-Bits 712 und 713) und
Einrichten 804 des Stromverbrauchszustands des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" (z.B.
durch Absenken der Strompegel für
die CPU, den Speichercontroller, den Systemspeicher usw., z.B. wie
durch die Weck-/Schlaflogik 701 bereitgestellt). Nachdem
dies erfolgt ist, wird das System 806 vom "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" ausgeführt.
-
8B stellt
eine generischere Weckabfolge bereit, der das Rechnersystem folgen
kann, wenn es aus entweder einem herkömmlichen Schlafzustand 303 oder
vom "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" 305 erwacht.
Gemäß dem Verfahren
von 8B, löst
ein Weckereignis 807 das Austreten der Haupt-CPU aus einem Schlafzustand
aus, und die BIOS-Software wird geladen 808. Im Fall eines Übergangs
von einem herkömmlichen
Schlafzustand kann das Weckereignis 807 eine Anzeige sein,
daß der
Benutzer zur Benutzung des Systems zurückgekehrt ist (z.B. indem er gegenüber dem
LID_STS-Eingang von 7 den Deckel eines geschlossenen
Notebooks/Laptops geöffnet
hat). Im Fall eines Übergangs
vom "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" kann
das Weckereignis 807 durch ein Bedürfnis, eine Funktion zu verwenden,
die innerhalb des Zustands mit niedrigerem Strom nicht betrieben werden
kann (z.B. ein Anrufbeantworter angesichts eines unbeantworteten
Anrufs), verursacht werden.
-
Als
Reaktion auf das Laden des BIOS zum Initialisieren der geeigneten
Hardware wird die Steuerung des Systems an das Haupt-OS übergeben, das
bestimmt 809, ob das Weckereignis 807 einem Übergang
von einem herkömmlichen
Schlafzustand 303 oder vom "Nicht-CPU/OS-basierten Zustand mit niedrigerem Strom" 305 entspricht
oder nicht. Hier kann sich das Haupt-OS in Abhängigkeit von der Ausführung auf
die Bits 712, 710 und/oder 714 von 7 beziehen,
um diese Bestimmung 809 vorzunehmen. Beim Übergang
des Systems von einem herkömmlichen
Schlafzustand 303, kann eine Weck-Abfolge des bisherigen
Standes der Technik befolgt werden 810. Wenn das Haupt-OS
bestimmt, daß ein Übergang
des Systems vom "Nicht-Haupt-CPU/OS-basierten
Niedrigstromzustand" vorliegt,
wird das Haupt-OS versuchen, zu verstehen 810, warum das
nicht Haupt-CPU/OS-basierte Teilsystem das auslösende Ereignis erzeugt hat.
-
Hier
umfaßt
das Nicht-Haupt-CPU/OS-Teilsystem mit niedrigerem Strom einen Prozessor,
der Software ausführt
(wie nachstehend in Bezug auf 9 detaillierter
beschrieben werden wird), die/das Haupt-CPU/OS kann eine Nachricht
an das Nicht-Haupt-CPU/OS-Teilsystem
mit niedrigerem Strom senden, um zu bestimmen, warum das auslösende Ereignis 807 erzeugt
wurde. Wenn das Nicht-Haupt-CPU/OS-Teilsystem keine Software ausführt, kann
das Haupt-OS zum Beispiel in zusätzliche
Hardware-Bits schauen, die durch die/das Nicht-Haupt-CPU/OS eingestellt wurden, um
das Haupt-OS über
die Art des auslösenden
Ereignisses 807 zu informieren.
-
Es
ist anzumerken, daß das
Bit 710 von 7 deaktiviert werden kann, um
bei der Weck-/Schlaflogik 701 von 7 das richtige
Anschalten der Hardware in einen "normalen An-Zustand" zu verursachen (wie z.B. in 4A beobachtet
werden kann), wenn der Übergang
von einem herkömmlichen
Schlafzustand 303 erfolgt. Ebenso kann das Bit 710 und/oder
das Bit 712 in Abhängigkeit
von der Ausführung
deaktiviert werden, um bei der Weck-/Schlaflogik 701 das
richtige Anschalten der Hardware in einen "Haupt-CPU/OS-basierten Niedrigstromzustand" zu verursachen (wie
es z.B. in 4B beobachtet werden kann),
wenn der Übergang
vom "Nicht-Haupt-CPU/OS-basierten Niedrigstromzustand" 305 erfolgt.
-
Hardware- und Softwareanordnung
des Nicht-Haupt-CPU/OS-basierten Zustands mit niedrigerem Strom
-
Die 9A und 9B werden
jetzt dazu verwendet, um eine detailliertere Erörterung von möglichen
Hardware- und Softwareanordnungen für den "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" zu
unterstützen.
Hier kann die gegenwärtige
Erörterung
als eine detailliertere Ausarbeitung der Erörterung, die ursprünglich in
Bezug auf 4A dargelegt wurde, gesehen
werden. Unter kurzer erneuter Bezugnahme auf 4C ist
daran zu erinnern, daß eine
grob vereinfachende Version der Hardware, die für das Ausführen des "Nicht-Haupt-CPU/OS-basierten Zustands mit niedrigerem
Strom" verwendet
wird, bereitgestellt wurde, in der, genauer gesagt, eine einzelne
E/A-Einheit 4081 aktiviert wurde,
um den Nicht-Haupt-CPU/OS-Zustand 305 auszuführen.
-
Im
Gegensatz dazu sind gegenwärtig
ausgefeiltere Hardwareausführungen
für den Nicht-Haupt-CPU/OS-Zustand 305 möglich, die
als Rechnersysteme mit niedrigerem Strom/niedrigerer Leistung gesehen
werden können,
die identifizierbare Software und E/A haben. 9A zeigt
ein Beispiel. In der Veranschaulichung von 9A wird
ein Rechnersystem gezeigt, das ein Haupt-CPU/OS-basiertes System
hat (das eine Haupt-CPU 901, einen Cache 902,
einen Systemspeicher 904, einen Grafikcontroller 905,
eine Hauptanzeige 906 usw. umfaßt). Viele Hauptkomponenten
des Haupt-CPU/OS-basierten Systems werden deaktiviert, während sie
im "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" sind. Ähnlich wie
das Schema der 4A bis 4C sind
die Komponenten, die während
des "Nicht-Haupt-CPU/OS-basierten Zustands mit
niedrigerem Strom" deaktiviert
sind, in 9A als schraffierte Bereiche
gezeichnet.
-
Daher
umfaßt
das Rechnersystem gemäß der Ausführungsform
von 9A, das zum Ausführen des "Nicht-Haupt-CPU/OS-basierten Zustands mit
niedrigerem Strom" verwendet
wird, seine eigenen charakteristischen: 1. Controller 917 (der
durch einen Prozessor, einen Mikrocontroller, eine Logikzustandsmaschine
usw. mit im Vergleich zur Haupt-CPU niedrigerer Leistung/niedrigerem
Strom ausgeführt
werden kann); 2. primärer
Speicher 918 (der mit einem Speicher mit wahlfreiem Zugriff
(RAM) mit im Vergleich zum Hauptsystemspeicher 904 niedrigerer
Geschwindigkeit und/oder weniger dichtem RAM ausgeführt werden
kann); 3. Benutzerschnittstelle 925 (die eine Anzeige 919,
Tastatur/Knöpfe 920 und
LED 924 umfassen kann); 4. Systembus 923; 5. E/A-Einheit 922 (die,
als lediglich ein Beispiel, mit Speiche rungsressourcen, wie beispielsweise
einem FLASH-basierten Speicher oder einem Polymer-basierten Speicher,
ausgeführt
werden kann), und 6. FLASH-Speicher 921.
-
Es
ist anzumerken, daß das
Rechnersystem, das zum Ausführen
des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" verwendet wird,
neben den charakteristischen Merkmalen, die unmittelbar vorhergehend
hervorgehoben wurden, ebenfalls verschiedene E/A-Einheiten mit dem Haupt-CPU/OS-Rechnersystem
teilen kann. In der Ausführungsform
von 9A umfassen die geteilten E/A-Einheiten: 1. eine
MODEM-Einheit 909; 2. eine Wireless Local Area Network(WLAN)-Einheit 911, und
3. eine Wireless Wide Area Network(WWAN)-Einheit 913. Hier
sind diese "geteilten" E/A-Einheiten 909, 911 und 913 während des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" aktiv.
Andere geteilte E/A-Schnittstelleneinheiten sind ebenfalls möglich (z.B.
Bluetooth). In verschiedenen Ausführungsformen arbeiten "geteilte" E/A-Einheiten innerhalb
des Paars von Rechnersystemen (Haupt-CPU/OS und Nicht-Haupt-CPU/OS),
indem sie Befehle von der/vom Haupt-CPU/OS entgegennehmen, wenn
sie nicht im "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" sind,
und, indem sie Befehle vom Nicht-Haupt-CPU/OS-System entgegennehmen, wenn
sie im "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" sind).
Es ist ebenfalls möglich,
daß die
geteilte E/A-Einheit in den Hauptsystembus 907 eingesteckt
werden kann (z.B. E/A-Einheit 908N wie
durch die Kommunikationsschnittstelle 926 dargestellt).
-
In
einer Ausführungsform
entsprechen die Schnittstellen 910, 912, 914 und 916 (die
während des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" nicht
aktiv sind) in dieser Reihenfolge: 1. für die Schnittstelle 910,
einer Schnittstelle eines seriellen Ports (in diesem Fall kann das
MODEM 909 ferner einem V.90-MODEM 909 entsprechen);
2. für
die Schnittstelle 912, einer USB-Schnittstelle für eine IEEE-802.11-basierte
Netzschnittstellenkarte; 3. für
die Schnittstelle 914, einer seriellen Schnittstelle für ein drahtloses
General Packet Radio Services(GPRS)-Modem; 4. für die Schnittstelle 916, einer
ATA-100-Schnittstelle für
ein IDE-Festplattenlaufwerk
(HDD). In weiteren Ausführungsformen, wird
eine USB-Schnittstelle (universeller serieller Bus), die aus dem
E/A-Controllerteil des Speichers und der E/A-Steuerfunktion 903 (in 9A aus
Gründen
der Einfachheit nicht gezeigt) ausgeht, innerhalb des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" deaktiviert
und umfaßt
eine Bluetooth-E/A-Einheit. Hier kann die Bluetooth-Schnittstelleneinheit
ebenfalls geteilt werden, um während des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" aktiv
zu sein.
-
In
einer anderen Ausführungsform
kann der Systembus 923 der gleiche Systembus 907 sein.
In diesem Fall kann die Haupt-CPU 901 im "normalen An-Zustand" 301 zusätzlich zum
Controller 917 auf die Geräte 9081 bis 908N zugreifen. Der Controller 917 kann
dann indes über
den Systembus 923/907 (der in dieser Ausführungsform
der gleiche Bus ist, aber in 9A aus
Gründen
der Übersichtlichkeit nicht
gezeigt wird) auf die Geräte 9081 bis 908N zugreifen,
wenn das System im "Nicht-Haupt-CPU/OS-Zustand
mit niedrigerem Strom" 304 ist.
Es ist anzumerken, daß die
Geräte 9081 bis 908N in
dieser Ausführungsform
im "Nicht-Haupt-CPU/OS-Zustand mit
niedrigerem Strom" 304 aktiv
bleiben würden
(nicht schraffiert), damit der Controller 917 auf sie zugreifen
kann.
-
Es
ist anzumerken, daß das Nicht-Haupt-CPU/OS-System
seine eigene charakteristische Benutzerschnittstelle 925 umfassen
kann. Die Ausführungsform
von 9A zeigt, daß die
charakteristische Benutzerschnittstelle eine LED 924 (deren
Status durch den Controller 917 gesteuert wird), eine Anzeige 919 und
Tastatur/Knopf/Knöpfe 920 umfaßt. Die/der
mechanische Anordnung/Aufbau der Benutzerschnittstelle 925 kann
ihre Besonderheit in Bezug auf den "Nicht-Haupt-CPU/OS-basierten Zustand
mit niedrigerem Strom" erhöhen. Insbesondere
kann die Benutzerschnittstelle 925 in einer mobilen Rechneranwendung
(z.B. Laptop-/Notebookcomputer)
derart angeordnet/angelegt sein, daß der Benutzer die Anzeige 919 und
LED 924 sehen kann und/oder den/die Tastatur/Knopf/Knöpfe 920 verwenden
kann, wenn der Deckel der Hauptanzeige 906 geschlossen
ist, um die Haupttastatur zu bedecken. 9B zeigt
ein Paar von Laptop-/Notebook-Rechnersystemen, von denen jedes eine
Benutzerschnittstelle hat, auf die zugegriffen werden kann, wenn
der "Deckel" des Rechnersystems
geschlossen ist.
-
Beispiele
von Daten, auf die auf dieser Benutzerschnittstelle mit geschlossenem
Deckel zugegriffen werden könnte,
sind Kalender-, Kontakt- und To-Do-Informationen, die für gewöhnlich als
Daten des persönlichen
Informationsmanagements (PIM) bezeichnet werden; sie sind indes
nicht auf diesen Typ von Daten beschränkt und können jede Art von Informationen
umfassen, die für
einen Endbenutzer, der einen Notebookcomputer in einem Zustand mit "geschlossenem Deckel" benutzt, wichtig
sein könnten
(z.B. aktuelle Verkaufsdaten für
einen reisenden Verkaufsangestellten). Zusätzlich kann das gesamte Rechnersystem
die Steuerung von Funktionen innerhalb des Notebooks durch eine
Benutzerschnittstelle mit geschlossenem Deckel vorsehen. Ein Beispiel dafür könnte das
Abspielen von auf dem Computer gespeicherten MP3-Musikdateien über einen drahtlosen Kopfhörer sein.
In diesem Fall könnte
der Benutzer das Abspielen von Musik (Auswahl der Lieder, Lautstärke und
andere Attribute) über
die Schnittstelle mit geschlossenem Deckel steuern.
-
Wieder
Bezug nehmend auf 9A ist anzumerken, daß das Nicht-Haupt-CPU/OS-Rechnersystem mit
einem Controller 917 ausgeführt werden kann, der wiederum
als ein Mikroprozessor oder Mikrocontroller ausgeführt werden
kann. Demzufolge werden Ausführungsformen,
in denen das Nicht-Haupt-CPU/OS-Rechnersystem seine eigenen Softwareroutinen
ausführt,
für möglich gehalten. 10 zeigt
ein Diagramm, das veranschaulicht, wie die Software des Nicht-Haupt-CPU/OS-Rechnersystems
(rechte Seite von 10) mit Software, die durch
Haupt-CPU und OS ausgeführt
wird, zusammenwirken könnte.
Das heißt,
daß, wenn
wir uns daran erinnern, daß das
Nicht-Haupt-CPU/OS-Rechnersystem sowohl während des "aktiven An-Zustands" als auch während des "Haupt-CPU/OS-basierten Zustands mit
niedrigerem Strom" angeschaltet
und aktiv bleiben kann, es möglich
ist, ein "duales System" auszuführen, in
dem Software von beiden Systemen (Haupt-CPU/OS und Nicht-Haupt-CPU/OS)
entweder während
des "aktiven An-Zustands" oder während des "Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" als
ein zusammenwirkendes Ganzes miteinander arbeiten. 10 ist
ein Versuch, dieses Verhältnis
darzustellen.
-
10 kann
als eine Ausführungsform
(obgleich sie nicht als lediglich darauf beschränkt ausgelegt werden sollte)
eines Systems gesehen werden, das eine Schnittstelle mit geschlossenem
Deckel (wie diejenigen, die in 9B gezeigt
werden) verwendet, um auf relevante Endbenutzerdaten zuzugreifen
oder nützliche
Endbenutzerfunktionen zu steuern, während der Deckel des Laptop-/Notebookcomputers
geschlossen ist. 10 zeigt, wie Betriebsfunktionen
zwischen den unterschiedlichen in 3 beschriebenen
Systemzuständen
verteilt sind: "normaler
An-Zustand" 301, "Haupt-CPU/OS-basierter" Zustand 304 und "Nicht-Haupt-CPU/OS-basierter" Zustand 305.
-
Die
rechte Seite von 10 zeigt Softwarekomponenten
des Nicht-Haupt-CPU/OS-Rechnersystems.
Diese umfassen Komponenten des Nicht-Haupt-Betriebssystems (d.h.
Nicht-Haupt-OS) wie
beispielsweise: 1. eine Anwendungsprogrammiererschnittstelle (API) 1001;
2. eine Verwaltungsfunktion 1002 (die sowohl Ereignisverwaltungs-
als auch Funktionsverwaltungsroutinen umfassen kann); 3. eine Datenspeicherungs-Verwaltungsfunktion 1003 (um
die Verwendung seiner charakteristischen Datenspeicherungsressourcen
(wie beispielsweise der FLASH- oder Polymerspeicher 922 von 9A) durch
das Nicht-Haupt-CPU/OS-Rechnersystem
zu steuern), und 4. eine Benutzerschnittstellen-Verwaltungsfunktion 1004 (um
die Verwendung seiner charakteristischen Benutzerschnittstelle (wie
beispielsweise die Benutzerschnittstelle 925 von 9A) durch
das Nicht-Haupt-CPU/OS-Rechnersystem zu steuern).
-
Die
Applikationssoftware 1005, 1006 kann sich ebenfalls
auf dem Nicht-Haupt-CPU/OS-Rechnersystem
befinden. Applikationssoftware kann typischerweise in zwei Typen
unterteilt werden: 1. Datenspeicherung 1005 (die auf die
Verwendung/Verwaltung gespeicherter Daten ausgerichtet ist) und
2. funktionelle 1006 (die auf nützliche, durch den zugrundeliegenden
Controller 917 auszuführende Funktionen
ausgerichtet ist).
-
Wie
typische Softwareumgebungen, verfügen die Applikationen des Nicht-Haupt-CPU/OS-Rechnersystems 1005, 1006 durch
eine API 1001 über
eine Schnittstelle mit dem Betriebssystem des Nicht-Haupt-CPU/OS-Rechnersystems.
-
Wenn
es sich im "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" befindet,
arbeitet das Nicht-Haupt-CPU/OS-Rechnersystem (einschließlich der
Softwarekomponenten 1001 bis 1006) unabhängig. Die
Softwarekomponenten 1007 bis 1012, die auf der/dem
Haupt-CPU/OS laufen, sind ebenso inaktiv, weil die/das Haupt-CPU/OS während des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" inaktiv
ist. Wenn sich das Gesamtsystem indes innerhalb des "normalen aktiven
Zustands" oder des "Haupt-CPU/OS-basierten
Niedrigstromzustands" befindet,
sind verschiedene Softwarekomponenten, die auf der/dem Haupt-CPU/OS
laufen, aktiv, und die Software von beiden Systemen kann ferner
als ein zusammenwirkendes Ganzes zusammenarbeiten, weil das Nicht-Haupt-CPU/OS-Rechnersystem während beiden
von diesen Zuständen
aktiv bleibt.
-
Zum
Beispiel kann die Software der Haupt-CPU/OS-Seite zum "Verwenden" dieser Ressourcen
konfiguriert werden, indem sie über
bestimmte Ressourcen, die durch das Nicht-Haupt-CPU/OS-Rechnersystem gesteuert
werden, unterrichtet wird. Zum Beispiel können Softwareroutinen auf dem
Haupt-CPU/OS-Rechnersystem konfiguriert werden, um Datenspeicherungs- oder
Speicherressourcen zu verwenden, die für das Nicht-Haupt-CPU/OS- Rechnersystem (wie
z.B. die Einheiten 918, 921 und 922 von 9A)
charakteristisch sind. Als ein anderes Beispiel können Softwareroutinen
auf dem Haupt-CPU/OS-Rechnersystem konfiguriert werden, um den Status
von verschiedenen Ressourcen, die mit einer Benutzerschnittstelle, die
für das
Nicht-Haupt-CPU/OS-Rechnersystem charakteristisch ist, verbunden
sind, zu beeinträchtigen.
Zum Beispiel kann, wie nachstehend detaillierter erklärt werden
wird, ein Anrufbeantworter eines schnurlosen Telefons, der innerhalb
des "Haupt-CPU/OS-basierten
Niedrigstromzustands" (wie
unter Bezugnahme auf 5 beschrieben) ausgeführt ist,
wünschen,
eine LED (wie beispielsweise die LED 924 von 9A),
die mit der Nicht-Haupt-CPU/OS-basierten
Benutzerschnittstelle verbunden ist, wiederholt "an- und ausblinken" zu lassen (z.B., um einen Benutzer
darüber
zu informieren, daß eine
abzuhörende
Nachricht für
den Benutzer aufgezeichnet wurde). Eine Beschreibung von einer solchen
Ausführungsform
wird nachstehend unter Bezugnahme auf 11 detaillierter
beschrieben werden.
-
Damit
die Haupt-CPU/OS-Software 1007 bis 1012 "mit" der Nicht-Haupt-CPU/OS-Sofware 1001 bis 1006 "arbeitet", kann solche Software
Nachrichten an den Nicht-Haupt-CPU/OS-Controller 917 senden,
um bestimmte Tätigkeiten
anzufordern, oder sie kann Datenobjekte zur Speicherung 1003 weiterleiten.
Die Applikationssoftware kann erneut in die Datenapplikationen 1009, 1010 und
die Funktionsapplikationen 1013, 1011 unterteilt
werden. Einige dieser Applikationen 1009, 1013 können indes
vorab mit einem Verständnis,
daß Ressourcen
auf einem Nicht-Haupt-CPU/OS-Rechnersystem verfügbar sind, geschrieben werden,
wohingegen andere (z.B. ältere "geerbte") Softwareapplikationen 1010, 1011 ohne
eine Erkennung oder Kenntnis, daß solche Ressourcen existieren,
geschrieben werden konnten. Für
diese Softwareapplikationen des späteren Typs kann "Proxy-Software" 1007, 1008,
die als eine "Klebeschicht" wirkt, verwendet
werden, um zu erzwingen oder auf eine andere Art zu verursachen, daß die Altanwendungen
imstande sind, zusammenwirkend mit den Nicht-Haupt-CPU/OS-Systemressourcen
zu arbeiten. Die Funktionsblöcke 1002, 1003 und 1004 ermöglichen
es dem Benutzer, mit der Benutzerschnittstelle 925 zu interagieren,
um PIM und andere Informationen anzuzeigen oder, um einige Funktionen,
wie das Abspielen von MP3-Dateien, zu ermöglichen. Der Manager 1002 nimmt
Datenobjekte an, die dann im Speicherblock 1003 gespeichert
werden. Diese Datenobjekte stellen auf der Benutzerschnittstelle
anzuzeigende Daten (PIM oder andere Daten) dar und stammen aus den
Datenapplikationen 1005, 1010 oder 1009.
Die Applikationen 1010 und 1007 arbeiten im "normalen An-Zustand" 301 und
sind verantwortlich für
das Bereitstellen von durch die API 1001 über den
Manager 1002 im Speicher 1003 zu speichernden
Datenobjekten. Beispiele von Altdatenanwendungen 1010 sind
die gegenwärtigen
Versionen von OutlookTM und Lotus NotesTM, die PIM-Daten umfassen aber über keine
Kenntnisse über
die Art des Erzeugens von Datenobjekten, die die Benutzerschnittstelle 1004 verstehen
kann, oder über
die Art des Bewegens dieser Objekte in den Speicher 1003 verfügen. Die
Proxy-Anwendung 1007 ist verantwortlich für diese
Funktion und zieht im Wesentlichen die geeigneten Daten aus der
Altanwendung, formatiert sie in das korrekte Datenobjekt und leitet
diese Datenobjekte dann über
die API 1001 an dem Manager 1002 weiter, um durch
den Speicher 1003 gespeichert zu werden. In der Zukunft
werden diese Typen von Applikationen diese Exportfunktionen einbauen
und werden durch die Datenapplikation 1009 dargestellt.
-
Funktionen,
die im "Haupt-CPU/OS-basierten
Zustand" 304 arbeiten
werden, und die durch diese Benutzerschnittstelle 925/1004 gesteuert
werden, umfassen die Applikationen 1011, 1008 und 1013. Erneut
stellen die Altfunktionen etwas dar, dem die Nicht-Haupt-CPU/OS-Funktionen nicht
bewußt
sind, und das deshalb einen CPU/OS-Proxy-Treiber zur Bildung einer
Schnittstelle mit diesen Funktionen benötigt. Ein Beispiel einer solchen
Applikation ist ein Alt-Media-Player,
der Musikdateien abspielen kann. In diesem Fall kann eine Proxy-Applikation 1008 geschrieben
werden, um es der Benutzerschnittstelle 1004 zu ermöglichen,
diese Applikation zu steuern, während
sie sich im Haupt-CPU/OS-basierten Zustand 304 befindet.
Diese Applikation würde
es dem Benutzer ermöglichen,
das Abspielen von Media-Liedern, die auf den Teilsystemen, die im Haupt-CPU/OS-basierten
Zustand 304 verfügbar sind,
zu steuern und dann über
eine Audio-Schnittstelle auszugeben. In der Zukunft werden diese
Typen von Applikationen diese Proxy-Funktionen einbauen und werden
durch die Funktionsapplikation 1013 dargestellt.
-
Die
Funktionen, die im Nicht-Haupt-CPU/OS-basierten Zustand 305 arbeiten,
befinden sich auf der rechten Seite des Diagramms. Die Benutzerschnittstelle 1004 ist
verantwortlich für
das Reagieren auf die Knopfdrücke
des Benutzers (Tastatur/Knöpfe 920)
und das anschließende
Anzeigen der Datenobjekte auf der Anzeige 919. Navigationsbefehle,
die der Benutzerschnittstelle, basierend auf dem Knopf, der gedrückt wird,
mitteilen, welche Objekte als nächstes
anzuzeigen sind, sind innerhalb der Datenobjekte eingebettet. Zusätzlich wird
es der Manager dem Benutzer ermöglichen, die
MP3-Wiedergabe durch eine Funktionsapplikation 1006 in
einem MP3-Nicht-Haupt-CPU/OS-basierten Zustand mit niedrigem Strom,
die für
die Entnahme der MP3-Datei aus dem Speicher 1003, das Entschlüsseln der
Datei und das Senden des Ausgangs durch eine Bluetooth-Schnittstelle
zu einem drahtlosen Kopfhörer
verantwortlich ist, zu steuern.
-
Ein
Beispiel einer Datenspeicherungsapplikation 1005 ist eine
Applikation, die sich wieder mit einem Enterprise-Server verbindet,
um neue PIM-Datenobjekte wiederaufzufinden, die dann für den Zugriff
durch den Benutzer über
die Benutzerschnittstelle 1004 im Speicher 1003 abgelegt
werden können.
In diesem Fall würde
die Applikation 1005 über
eine drahtlose Kommunikationsvorrichtung, die im Nicht-Haupt-CPU/OS-basierten
Zustand 305 arbeitet (wie beispielsweise WLAN 911 oder
WWAN 913) auf diese neuen Datenobjekte zugreifen.
-
11 zeigt
eine andere Ausführungsform der
Zustandsübergänge, die
sich im Verlauf des Betriebes des vollständigen schnurlosen Telefonsystems,
wie in Bezug auf 5 beschrieben, ergeben können. Das
Beispiel von 11 ist indes insofern etwas
ausgefeilter als die Erörterung
von 5, als daß sowohl
eine LED blinkt (um dem Benutzer anzuzeigen, daß eine Nachricht von einem
unbeantworteten Telefonanruf aufgezeichnet wurde und auf den Benutzer
wartet) und ein Net-Meeting eingerichtet wird. Gemäß der Vorgehensweise
von 11 ist das System während eines Zeitraums T1 ursprünglich innerhalb
des "Nicht-Haupt-CPU/OS-basierten
Zustands mit niedrigerem Strom" 505, 1101,
wo sich keine Aktivität/Verwendung
des Computers außer derjenigen
eines grundlegenden schnurlosen Telefons ergibt.
-
Zum
Zeitpunkt T2 wird ein Anruf an das schnurlose Telefon vorgenommen,
auf den niemand antwortet. Demzufolge wird ein Übergang in den "Haupt-CPU/OS-basierten
Niedrigstromzustand" 504, 1102 verursacht,
um die Anrufbeantworterfunktion auszuführen. Über den Zeitraum T3 beantwortet die
Anrufbeantworterfunktion den Anruf, spielt für den Anrufer eine Nachricht
ab, zeichnet die Nachricht des Anrufers auf und verursacht das wiederholte Blinken
einer LED auf der Benutzerschnittstelle, die für das Nicht-Haupt-CPU/OS-Rechnersystem charakteristisch
ist (z.B. die LED 924 von 9A). Es
ist anzumerken, daß die
spätere
Funktion des Verursachens des Blinkens der LED einem zusammenwirkenden
Arbeitsablauf zwischen der Software des Anrufbeantworters, die sich
auf der/dem Haupt-CPU/OS
befindet, und der Software/Hardware der LED, die für das Nicht-Haupt-CPU/OS-Rechnersystem charakteristisch
ist, entspricht.
-
Bei
der Beendigung der vorhergehenden Funktionen zum Zeitpunkt P4 geht
das Gesamtrechnersystem zurück
in den "Nicht-Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" 505, 1103. Zum
Zeitpunkt T5 klingelt das Telefon bei kontinuierlich blinkender
LED (d.h., sie blinkt, bis der Benutzer die aufgezeichnete Nachricht
abhört)
erneut. Diesmal beantwortet der Benutzer indes den Anruf und erkennt,
daß der
gegenwärtige
Anruf ein Net-Meeting betrifft,
das eingerichtet werden muß.
Der Benutzer drückt
auf einen "Net-Meeting-Knopf", der sich auf der
Benutzerschnittstelle des Nicht-Haupt-CPU/OS-Rechnersystems befindet
(z.B. in Verbindung mit der/den Tastatur/Knöpfen 920 von 9A).
-
Das
Drücken
des "Net-Meeting-Knopfes" verursacht einen
ersten Übergang
in den "Haupt-CPU/OS-basierten
Zustand mit niedrigerem Strom" 505, 1104 und
einen zweiten Übergang
in den "normalen
An-Zustand" 501, 1105.
Im "normalen An-Zustand" werden die ID des
Anrufers des eingehenden Telefonanrufs und die Ressourcen der/des Haupt-CPU/OS
verwendet, um ein Net-Meeting einzurichten und dabei eine Arbeit
auszuführen
(z.B. durch Ändern
eines gemeinsamen Dokuments mit einer anderen Person über das
Internet). Die LED blinkt unter der Steuerung der/des Nicht-Haupt-CPU/OS
weiter, da der Benutzer die aufgezeichnete Nachricht immer noch
nicht abgehört hat.
-
Es
sollte ebenfalls verstanden werden, daß, da die Ausführungsformen
der vorliegenden Lehren als ein oder mehrere Softwareprogramme ausgeführt werden
können,
Ausführungsformen
der vorliegenden Lehren auf einem oder innerhalb eines maschinenlesbaren
Mediums) ausgeführt
oder verwirklicht werden können.
Ein maschinenlesbares Medium umfaßt einen Mechanismus zum Speichern
oder Übermitteln
von Informationen in einer Form, die durch eine Maschine (z.B. einen
Computer) gelesen werden kann. Ein maschinenlesbares Medium umfaßt zum Beispiel
einen Nurlesespeicher (ROM), einen Speicher mit wahlfreiem Zugriff
(RAM), Magnetdisketten-Speichermedien, optische Speichermedien, Flash-Speichervorrichtungen,
elektrische, optische, akustische oder eine andere Form von Signalübertragung
(z.B. Trägerwellen,
Infrarotsignale, digitale Signale usw.) usw.
-
In
der vorhergehenden Beschreibung wurde die Erfindung unter Bezugnahme
auf spezifische Ausführungsformen
beschrieben. Es wird indes offensichtlich sein, daß verschiedene Änderungen
und Veränderungen
daran vorgenommen werden können,
ohne vom breiteren Gegenstand und Umfang der Erfindung gemäß den angefügten Ansprüchen abzuweichen.
Die Beschreibung und die Zeichnungen sind dementsprechend eher in
einem veranschaulichenden als in einem einschränkenden Sinne aufzufassen.
-
ZUSAMMENFASSUNG
-
Es
wird ein Rechnersystem beschrieben, das eine E/A-Einheitsschnittstelle
umfaßt,
die deaktiviert ist, während
das Rechnersystem innerhalb eines Nicht-Haupt-CPU/OS-basierten Betriebszustands
arbeitet. Das Rechnersystem umfaßt ebenfalls einen Controller,
der funktionelle Aufgaben betreibt, während sich das Rechnersystem
innerhalb des Nicht-Haupt-CPU/OS-basierten
Betriebszustands befindet. Das Rechnersystem umfaßt ebenfalls
eine E/A-Einheit,
die sowohl an die E/A-Einheitsschnittstelle als auch an den Controller
gekoppelt ist.