-
HINTERGRUND DER ERFINDUNG
-
Die
vorliegende Erfindung beziehen sich auf die entfernte Verwaltung
von Datenverarbeitungseinheiten.
-
WO-A-01/0817
beschreibt einen Target-Controller, welcher die Keyboard-, Maus-
und Video- (KVM) Signale einer Target-Vorrichtung empfängt und
diese an einen entfernten Controll-Computer sendet.
-
US-A-6,014,133
zeigt ein Point-of-Sales (POS) System mit einer lokalen POS Vorrichtung
mit einem eigenen Bildschirm. Video-Daten der lokalen POS Vorrichtung
können
durch die lokale POS Vorrichtung an ein entferntes Terminal geschickt
werden zum Anzeigen der gesendeten Information auf einem Display
des entfernten Terminals.
-
Entfernte
Verwaltung einer Datenverarbeitungseinheit, wie z. B. in EP-A-962862
der Anmelderin beschrieben, erlaubt das entfernte Verwalten und Überwachen
einer Datenverarbeitungseinheit. Während in der Vergangenheit
ein solch entferntes Verwalten hauptsächlich das Überwachen interner Eigenschaften
wie Temperatur, Gebläsegeschwindigkeit
und Datenprotokolle, welche in der lokalen Datenverarbeitungseinheit
(wie Computer, Workstation oder Mainframe) Anwendung finden, umfasste,
erlauben neuere Verwaltungseinheiten zudem die Darstellung der Datenanzeige
auf einem entfernten Display der lokalen Datenverarbeitungseinheit.
Zu diesem Zweck wird die entfernte Verwaltungseinheit an einen internen
Bus (wie ein PCI-Bus) der Datenverarbeitungseinheit gekoppelt. Die
entfernte Verwaltungseinheit weist einen Graphikchip auf, der es
ermöglicht,
Instruktionen, welche z. B. von der CPU empfangen wurden, in graphische
Signale umzuwandeln, die an die entfernte Datenverarbeitungseinheit zum Überwachen
der lokalen Datenverarbeitungseinheit zu senden sind. Die entfernte
Datenverarbeitungseinheit empfängt
die graphische Information und kann diese auf einem Monitor anzeigen.
In dieser Lösung
ist jedoch nicht nur unvorteilhaft, dass eine interne graphische
Verarbeitungseinheit (wie eine Graphikkarte) abgeschaltet werden
muss, um die entfernte Darstellung zu ermöglichen, sondern auch, dass
die entfernte Verwaltungseinheit ausgefeiltere und damit kostenintensive
Komponenten erfordert, was die Anwendung solcher entfernter Verwaltungseinheiten
nur für
Hoch-End-Anwendungen möglich macht.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Es
ist eine Aufgabe der vorliegenden Erfindung, eine verbesserte Datenanzeige
einer lokalen Datenverarbeitungseinheit in einer entfernten Datenverarbeitungseinheit
zu liefern. Die Aufgabe wird durch die unabhängigen Ansprüche gelöst. Vorteilhafte
Ausführungen
werden durch die abhängigen Ansprüche gezeigt.
-
Nach
der vorliegenden Erfindung wird eine entfernte Verwaltungseinheit
gekoppelt an einen internen Bus einer lokalen Datenverarbeitungseinheit. Weiterhin
wird an den lokalen Bus eine Graphikeinheit gekoppelt zum Vorsehen
einer Datenanzeige auf einem Monitor der lokalen Datenverarbeitungseinheit.
Die Graphikeinheit weist einen Speicher auf mit einer digitalen
Darstellung der aktuellen Anzeige auf dem lokalen Monitor. Eine
zentrale Prozesseinheit (central processing unit CPU) und weitere
funktionale Einheiten können
auch an den lokalen Bus gekoppelt werden, abhängig von der spezifischen Anwendung.
-
Die
entfernte Verwaltungseinheit, die sich in der lokalen Datenverarbeitungseinheit
befindet, ist angepasst, an die entfernte Datenverarbeitungseinheit,
z. B. über
ein Datenkommunikationsnetzwerk oder eine kabellose Datenübertragung
gekoppelt zu werden. Die entfernte Datenverarbeitungseinheit befindet
sich physisch entfernt von der lokalen Datenverarbeitungseinheit.
Um der lokalen Datenverarbeitungseinheit zu ermöglichen, den aktuellen Inhalt, der
auf dem lokalen Monitor der lokalen Datenverarbeitungseinheit angezeigt
wird, darzustellen, spricht die entfernte Verwaltungseinheit den
Graphikspeicher der Graphikeinheit an, liest seinen aktuellen Dateninhalt
aus oder zumindest Teile davon, und überträgt den ausgelesenen Dateninhalt
an die entfernte Datenverarbeitungseinheit. Die entfernte Datenverarbeitungseinheit
kann dann die empfangenen Daten anzeigen oder weiter verarbeiten.
-
In
einer Ausführung
ermittelt die entfernte Verwaltungseinheit Adressen des Graphikspeichers während eines
Initialisierungsprozesses der lokalen Datenverarbeitungseinheit,
wobei die Graphikeinheit Existenz und Größe des Graphikspeichers an
die CPU mitteilt und im Gegenzug valide Adressen empfängt, welche
es anderen Vorrichtungen ermöglichen,
den Graphikspeicher anzusprechen. Die entfernte Verwaltungseinheit überwacht
solche Initialisierungsprozesse und speichert Information über die aktuelle
Konfiguration der lokalen Datenverarbeitungseinheit und insbesondere
die Adressen des Graphikspeichers.
-
In
einer vorteilhaften Ausführung
ist der lokale Bus der lokalen Datenverarbeitungseinheit ein PCI-Bus,
und die entfernte Verwaltungseinheit ist vorzugsweise auf demselben
PCI-Niveau des lokalen Busses gekoppelt wie die Graphikeinheit.
Es können
jedoch auch andere Bus-Systeme entsprechend angewendet werden, wobei
der Datenzugang der entfernten Verwaltungseinheit auf den Graphikspeicher
durch das spezifische Protokoll des angewendeten Bus-Systems ermittelt
wird.
-
Zum
Reduzieren der Anstrengungen, die für die entfernte Verwaltungseinheit
erforderlich sind, um die Graphikdaten zu verarbeiten und auch um
die Datentransfergeschwindigkeit zu erhöhen, können Datenkompressionsalgorithmen
angewendet werden. In einer Ausführung
wird ein spezifischer Algorithmus verwendet während Daten aus einem Speicher
wie dem Graphikspeicher ausgelesen werden. Zu diesem Zweck wird
der Speicher in eine Vielzahl von Sektionen aufgeteilt. Für jede Sektion
wird eine charakteristische Eigenschaft (z. B. die Prüfsumme des Dateninhalts
dieser Sektion) ermittelt und gespeichert. In einer folgenden Zeiteinheit
werden die Sektionen des Speichers entsprechend analysiert, und die
charakteristische Eigenschaft dieser Zeiteinheit wird verglichen
mit der charakteristischen Eigenschaft der vorhergehenden oder einre
früheren
Zeiteinheit. Sollte die charakteristische Eigenschaft verändert sein,
wird angenommen, das der Inhalt dieser Sektion verändert ist,
und es werden nur die Inhalte solcher Sektionen mit geänderter
charakteristischer Eigenschaft ausgelesen. Von Sektionen mit unveränderter
charakteristischer Eigenschaft wird angenommen, dass sie noch immer
denselben (unveränderten)
Dateninhalt aufweisen.
-
In
einer Ausführung
zum sukzessiven Auslesen eines Speichers einmal pro Zeiteinheit
wird der Inhalt dieses Speichers zunächst in eine Vielzahl von Sektionen
unterteilt.
-
Während einer
ersten Zeiteinheit wird der Inhalt jeder Sektion ausgelesen und
für den
Inhalt jeder der Sektionen wird eine charakteristische Eigenschaft
ermittelt. Die ermittelte charakteristische Eigenschaft wird für jede Sektion
gespeichert. In einer zweiten und bei jeder folgenden Zeiteinheit
wird die charakteristische Eigenschaft erneut für den dann vorhandenen Inhalt
jeder Sektion ermittelt Sollte eine charakteristische Eigenschaft
einer Sektion von der charakteristischen Eigenschaft, welche für diese Sektion
gespeichert ist, abweichen, wird angenommen, dass der Inhalt dieser
Sektion verändert
worden ist. In diesem Fall wird die geänderte charakteristische Eigenschaft
für diese
Sektion gespeichert und der Inhalt dieser Sektion ausgelesen. Sollte
die aktuell ermittelte charakteristische Eigenschaft gleich dem
für diese
Sektion gespeicherten Wert der charakteristischen Eigenschaft sein,
wird angenommen, dass der Inhalt dieser Sektion nicht verändert wurde und
der gespeicherte Wert der charakteristischen Eigenschaft wird aufrechterhalten
(oder erneuert), und es werden aus dieser Sektion keine Daten ausgelesen.
-
Die
Genauigkeit der angewendeten Datenkompression hängt von der Anzahl und Größe der Sektionen
und der Mehrdeutigkeit der ermittelten charakteristischen Eigenschaft
ab. Dieser Datenkompressionsalgorithmus ist besonders passend zum
Auslesen gespeicherter Graphikdaten.
-
Zum
Ermitteln der charakteristischen Eigenschaft kann im Prinzip jeder
nach Stand der Technik bekannte Algorithmus angewendet werden. Typische Algorithmen
können
die Prüfsumme,
die Quadratwurzel und (fast willkürliche) Kombinationen mathematischer
Operationen sein. Die charakteristische Eigenschaft wird vorzugsweise
nur für
einen Teil des Inhalts jeder Sektion ermittelt, sie kann jedoch
auch für den
gesamten Sektionsinhalt ermittelt werden.
-
Zum
Anwenden des vorteilhaften Datenkompressionsalgorithmus zum Auslesen
des Graphikspeichers, teilt die entfernte Verwaltungseinheit den Graphikspeicher
in eine Vielzahl von Sektion. Während
jeder Zeiteinheit ermittelt die entfernte Verwaltungseinheit die
charakteristische Eigenschaft für jede
der Sektionen, vergleicht die ermittelten charakteristischen Eigenschaften
mit den entsprechenden gespeicherten charakteristischen Eigenschaften
und dann wird entweder die geänderte
charakteristische Eigen schaft gespeichert und der Inhalt dieser
Sektion ausgelesen oder der gespeicherte Wert aufrechterhalten,
ohne diese Sektion auszulesen.
-
Es
ist klar, dass die Erfindung ganz oder teilweise ausgeführt oder
unterstützt
werden kann durch ein oder mehrere passende Softwareprogramme, welche
gespeichert sein können
oder anderweitig durch jede Art von Datenträger vorgesehen, und welche
in oder durch jede passende Datenverarbeitungseinheit ausgeführt werden
können.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Andere
Aufgaben und viele der begleitenden Vorteile der vorliegenden Erfindung
werden im Folgenden gewürdigt
und besser verständlich
durch Hinzuziehen der folgenden detaillierten Beschreibung in Verbindung
mit den begleitenden Zeichnungen. Merkmale, die im Wesentlichen
oder funktional gleich oder ähnlich
sind, werden mit den-/demselben Referenzzeichen
bezeichnet.
-
1 zeigt
die Grundzüge
der vorliegenden Erfindung
-
2 zeigt
ein erfindungsgemäßes Auslesen
des Speichers
-
DETAILLIERTE BESCHREIBUNG
DER ERFINDUNG
-
In 1 weist
eine lokale Datenverarbeitungseinheit 10 eine CPU 20 auf,
eine Graphikeinheit (GFX) 30 und eine entfernte Verwaltungseinheit (RMU) 40,
alle gekoppelt an einen internen Bus 50 der lokalen Datenverarbeitungseinheit 10.
An den Bus 50 können
weitere Einheiten gekoppelt werden (wie auf der rechten Seite der 1 gezeigt),
sind hier aber nicht von Interesse.
-
Ein
Monitor 60 wird an den Graphikspeicher 70 der
Graphikeinheit 30 gekoppelt. Der Graphikspeicher 70 enthält eine
digitale Darstellung des Bildes, welches auf dem Monitor 60 aktuell
angezeigt wird.
-
Die
entfernte Verwaltungseinheit 40 kann an eine entfernte
Datenverarbeitungseinheit 100 gekoppelt werden, welche
sich physisch weit von der lokalen Datenverarbeitungseinheit 10 befindet.
-
Die
entfernte Verwaltungseinheit 40 wird vorzugsweise ausgeführt durch
eine der Agilent Remote Management Cards eRMC (N2530), RMC (N2520) oder
pRMC (N2525), welche durch die Anmelderin Agilent Technologies angeboten
werden.
-
Im
Allgemeinen initialisiert die CPU 20 während eines Initialisierungsprozesses
der lokalen Datenverarbeitungseinheit 10 die Graphikeinheit 30 und für den Graphikspeicher 70 wird
ein Adressbereich zugewiesen. Die entfernte Verwaltungseinheit 40 ist zum Überwachen
eines solchen Initialisierungsprozesses vorgesehen und zum Speichern
des zugewiesenen Adressbereichs des Graphikspeichers 70.
-
Der
Inhalt des Graphikspeichers 70 wird wiederholt in bestimmten
Zeiteinheiten oder -intervallen aktualisiert. Dies kann durch die
Graphikeinheit 30 erfolgen oder direkt durch andere Vorrichtungen,
welche von der spezifischen Anwendung und dem Setup der lokalen
Datenverarbeitungseinheit 10 abhängen. Das bedeutet, dass der
Inhalt des Graphikspeichers 30 während jedes Zeitintervalls
unverändert
aufrechterhalten wird, und an den Monitor 60 z. B. durch analoge
oder digitale Konverter oder andere Einheiten gegeben wird.
-
Die
entfernte Verwaltungseinheit 40 kann den Graphikspeicher 70 über den
Bus 50 ansprechen und auslesen. Die ausgelesene Graphikinformation kann
an die entfernte Datenverarbeitungseinheit 100 transferiert
werden und da angezeigt.
-
Eine
vorteilhafte Ausführung
zum Auslesen des Graphikspeichers 70 soll nun allgemein
erklärt werden.
Es ist klar, dass dieses Ausleseschema nicht darauf beschränkt ist,
den Graphikspeicher 70 auszulesen, sondern auch für andere
Zwecke angewendet werden kann. 2 zeigt
den erfindungsgemäßen Algorithmus
für das
effiziente Auslesen eines generischen Speichers 200. Klar
ist, dass die Erklärungen
für den
Speicher 200 genauso für
den Graphikspeicher 70 gelten.
-
Der
Speicher 200 wird unterteilt in eine Vielzahl von Sektionen 210.
In dem Beispiel der 2A–2C, wird
der Speicher 200 unterteilt in 16 Sektionen 210A bis 210P.
Jede Sektion 210 stellt einen Speicherbereich des Speichers 200 dar,
der größer ist
als die kleinste Speicherzelle.
-
Der
Inhalt des Speichers 200 wird wiederholt in aufeinanderfolgenden
Zeitintervallen ausgelesen. Während
eines ersten Zeitintervalls wird der Inhalt jeder der Sektionen 210 ausgelesen.
Weiter zu jeder der Sektionen 210 wird eine charakteristische
Eigenschaft für
diese Sektion ermittelt und auch gespeichert.
-
In
einer vorteilhaften Ausführung
wird die charakteristische Eigenschaft durch eine Prüfsumme dargestellt,
die ermittelt wurde durch alle oder nur einen Teil des/r Inhalts/e
jeder Sektion 210. Diese Sektionen stellen die graphischen
Daten in Form von Pixeln dar. Pixel werden im Allgemeinen dargestellt
als digitale Zahlen (z. B. 2, 4, 8 Bits), die mit ihren entsprechenden
Farbkarten assoziiert sind. In einigen Darstellungen wird die Farbinformation
der Pixel direkt mit der digitalen Zahl (16, 32 Bits)
assoziiert. Eine typischer Prüfsummenalgorithmus
betrachtet solche Sektionen wie ein lineares Segment integrer Daten.
Jeder Standard-CDC (Cyclic Redundancy Check – Zyklische Redundanzprüfung) könnte angewendet
weren. Der Einfachheit und Schnelle wegen kann ein sehr kleiner
Teil der Sektion analysiert werden (zum Beispiel 7 Pixel). Die einfache
Addition der 7 integren Werte, welche dieses Segment darstellen, würden die
Prüfsumme
ergeben. Da es sehr wahrscheinlich ist, dass fast alle Pixel innerhalb
eines Segments sich ändern
wenn die Anzeige sich ändert, ist
es ausreichend, einen Teil Pixel zu testen. Das Beispiel der 2A zeigt
willkürliche
Werte der charakteristischen Eigenschaften, die jeder der Sektionen 210 zugeteilt
sind. In 2A ist die charakteristische
Eigenschaft von Sektion 210A 10, 15 für die Sektion 210B,
7 für die
Sektion 210C und so weiter. Der Wert der charakteristischen
Eigenschaft wird für jede
der Sektionen 210 gespeichert.
-
2B zeigt
ein (ebenfalls willkürliches)
Beispiel für
die Werte der charakteristischen Eigenschaften, welche für die Sektionen 210 in
einem Zeitintervall ermittelt wurden, welches dem Zeitintervall
der 2A nachfolgt. Wie aus der 2B ersichtlich, wurden
nur die Werte der charakteristischen Eigenschaften der Sektionen 210D und 210H verändert. Daher
ist anzunehmen, dass nur diese Sektionen 210D und 210H geändert wurden
und nur die Inhalte dieser Sektionen 210D und 210H ausgelesen
werden.
-
2C zeigt
die Werte der charakteristischen Eigenschaft, welche für jede der
Sektionen 210 in einem Zeitintervall ermittelt wurden,
welches auf das in der 2B gezeigte Zeitintervall folgt.
In dem Beispiel der 2C wurden die Werte der charakteristischen
Eigenschaft nur in den Sektionen 210D und 210P geändert. In Übereinstimmung
mit dem zuvor Gesagten werden nur die geänderten Werte der charakteristischen
Eigenschaft der Sektionen 210A, 210D und 210P vermerkt
und neu gespeichert, während
die Werte der charakteristischen Eigenschaft der anderen Sektionen 210 unverändert aufrechterhalten
werden. Somit wird der Inhalt der Sektionen 210A, 210D und 210P als
verändert
angenommen und (nur diese Sektionen 210A, 210D und 210P werden)
ausgelesen.
-
Daher
wird nur eine limitierte Anzahl von Sektionen 210, in denen
die charakteristische Eigenschaft verändert wurde, ausgelesen. Dies
kann zu einer bedeutend reduzierten Anstrengung zum Auslesen des
Speichers 200 führen,
wenn dieser zwischen aufeinanderfolgenden Zeitintervallen zum Auslesen des
Speichers 200 nur teilweise geändert wurde. Dies stellt eine
Kompression eines zum sukzessiven Auslesen des Speichers 200 erforderlichen
Datenstroms dar.
-
Die
entfernte Verwaltungseinheit 40 verwendet den oben beschriebenen
Kompressionsalgorithmus zum sukzessiven Auslesen des Graphikspeichers 70.
Daher können
die Ressourcen, die zum Auslesen und Speichern des Inhalts des Graphikspeichers 70 erforderlich
sind, reduziert werden. Es muss jedoch durch die entfernte Verwaltungseinheit 40 ein
erhöhter
Aufwand erbracht werden, um die Werte der charakteristischen Eigenschaft
für jede
der Sektionen 210, in welche der Graphikspeicher 70 durch
die entfernte Verwaltungseinheit 40 logisch unterteilt
wurde, wiederholt zu ermitteln und zu speichern.