DE10061991A1 - Verfahren und System zur zuverlässigen Gerätekonfiguration in einem Computersystem - Google Patents
Verfahren und System zur zuverlässigen Gerätekonfiguration in einem ComputersystemInfo
- Publication number
- DE10061991A1 DE10061991A1 DE10061991A DE10061991A DE10061991A1 DE 10061991 A1 DE10061991 A1 DE 10061991A1 DE 10061991 A DE10061991 A DE 10061991A DE 10061991 A DE10061991 A DE 10061991A DE 10061991 A1 DE10061991 A1 DE 10061991A1
- Authority
- DE
- Germany
- Prior art keywords
- computer
- message
- user
- configuration
- configuration process
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
Eine Konfigurationsbenachrichtigungseinheit überwacht interne Nachrichten, die von einem Betriebssystem eines Computers erzeugt werden und mit einem Gerätekonfigurationsprozess für Plug-and-Play-Geräte zusammenhängen, die über eine serielle Busschnittstelle an den Computer angeschlossen werden. Die Konfigurationsbenachrichtigungseinheit gibt eine Warnung an den Benutzer in Echtzeit aus, wenn es unsicher ist, die Anzahl von an den Computer angeschlossenen Vorrichtungen zu verändern. Bei einer bevorzugten Ausführungsform umfasst die Konfigurationsbenachrichtigungseinheit einen Nachrichtenhandhaber, der mit einer Hinweiseinheit verbunden ist.
Description
Die vorliegende Erfindung betrifft allgemein das
Vorsehen einer Benachrichtigung über den Status eines Kon
figurationsprozesses für einen Computer, der mit Periphe
riegeräten verbunden ist. Spezieller ist die vorliegende
Erfindung auf das Vorsehen einer Benachrichtigung über den
Status eines Konfigurationsprozesses in einem Personalcom
puter gerichtet, der über USB-Anschlüsse (universal serial
bus = universeller serieller Bus) mit Peripheriegeräten
verbunden ist.
Kompakte Personalcomputer weisen typischerweise
eine begrenzte Anzahl von Peripheriegerätanschlüssen bezie
hungsweise -Ports auf. Ein Problem, das sich entwickelt
hat, besteht darin, dass es eine große Vielfalt von unter
schiedlichen Geräteanschlüssen gibt und verschiedene Her
steller gesetzlich geschützte Schnittstellen für Periphe
riegerätanschlüsse entwickelt haben, die inkompatibel mit
einander sind. Ein Weg, der entwickelt wurde, um die Anzahl
von unterschiedlichen Peripheriegeräten zu erhöhen, die an
einen Personalcomputer angeschlossen werden kann, besteht
in einem Standard-Industrieschnittstellenanschluss-Port.
Es existieren verschiedene Industriestandards für
serielle Busschnittstellen. Eine der am häufigsten verwen
deten ist die universelle serielle Busschnittstelle (USB).
USB ist eine Standartschnittstelle, um Peripheriegeräte mit
dem Systembus eines Personalcomputer zu verbinden. USB ist
eine schnelle, bidirektionale, isochrone, kostengünstige,
dynamisch anschließbare, serielle Schnittstelle. Sie wird
nun häufig verwendet, um Personalcomputer an eine große
Vielfalt von anderen Peripherie-Eingabe/Ausgabe (I/O) Vor
richtungen anzuschließen, wie beispielsweise Monitore,
Plattenlaufwerke, Modems, Mäuse, Drucker, Scanner, Spiele-
Controller, Tastaturen und andere Peripheriegeräte. Beim
USB gibt es einen einzigen Anschlusstyp, der es ermöglicht,
alle USB-Geräte in den gleichen USB-Buchsentyp einzuste
cken. Es ist üblich, dass Personalcomputer und Notebookcom
puter zumindest einen USB-Port aufweisen.
Ein USB-Betriebssystem weist Softwareprogramm-
Subroutinen auf, die die Topologie des Busses überwachen
und die den Zugriff auf die USB-Resourcen steuern. Ein USB-
Hub ist dafür verantwortlich, Daten aufwärts beziehungswei
se upstream (zu dem Computer) und abwärts beziehungsweise
downstream (von dem Computer zu Peripheriegeräten) zu über
tragen. Ein Personalcomputer weist typischerweise einen
Wurzel- beziehungsweise Root-Hub auf, der üblicherweise ei
nen oder zwei USB-Ports enthält. Der Root-Hub kann mit an
deren externen Hubs verbunden werden, wodurch es einer gro
ßen Anzahl von Peripheriegeräten ermöglicht wird, über ei
nen zusätzlichen Hub an einen Personalcomputer angeschlos
sen zu werden, wie dies in den Fig. 1-2 dargestellt ist,
die den Stand der Technik zeigen.
USB verwendet eine Busarchitektur auf Tokenbasis.
Die USB-Initialisierungssoftware erlaubt es, dass USB-
Geräte zu jedem Zeitpunkt über einen Nummerierungssprozess
hinzugefügt oder entfernt werden können, das heißt, USB-
Anschlüsse erlauben ein sogenanntes "Hotplugging" bei dem
neue Geräte angeschlossen oder entfernt werden können, während
der Computer in Betrieb ist. Immer wenn ein Periphe
riegerät hinzugefügt oder entfernt wird, wird die Änderung
in der Topologie durch den Personalcomputer erkannt und ge
eignete Treiber werden geladen, so dass die Vorrichtung na
hezu unmittelbar zur Verwendung bereit ist.
Ein Ziel von USB besteht im echten "plug-and-
play-"Betrieb, bei dem der Benutzer Peripheriegeräte zur
unmittelbaren Benutzung dynamisch an einem Personalcomputer
anschließen kann. Sobald ein Gerät an den PC-Host ange
schlossen wird, wird das Gerät durch die USB-
Initialisierungssoftware nummeriert und es wird ihm eine
eindeutige Identifizierung zugeordnet. In der Praxis kann
der Konfigurationsprozess jedoch einen signifikanten Zeit
abschnitt erfordern. Die zum Abschluss des Konfigurations
prozesses erforderliche Zeit hängt von vielen Faktoren ab,
beispielsweise vom Typ der Treiber, die geladen werden müs
sen, und von der Komplexität des Systems, sie beträgt typi
scherweise jedoch zumindest einige Sekunden. Ein dadurch
verursachtes Problem besteht darin, dass der Benutzer ver
suchen könnte, den Computer zu benutzen, bevor das Be
triebssystem das Laden der Treiber und die anwendbaren Sys
temverwaltungsaktivitäten abgeschlossen hat. Dies kann ei
nen Systemfehler verursachen. Ein anderes Problem besteht
darin, dass ernsthafte Betriebssystem-(Operating System =
O/S-)Probleme auftreten können, wenn ein USB-Gerät hinzu
gefügt und dann entfernt wird, bevor die Bustopologie wie
der konfiguriert ist. Beispielsweise wenn das plug-and-
play-Gerät hinzugefügt und dann vor der erfolgreichen Wie
der-Konfiguration entfernt wird, hat das O/S die Bearbei
tung der Gerätekonfiguration und seine entsprechenden Vor
gänge noch nicht vollständig abgeschossen. Dies kann einen
Crash beziehungsweise Absturz des USB-Busses derart verur
sachen, dass die anderen Peripheriegeräte nicht korrekt ar
beiten. In ähnlicher Weise kann ein Absturz des USB-Busses
auftreten, wenn der Benutzer den Typ eines an die USB-
Buchse angeschlossenen Gerätes ändert, bevor die Bustopolo
gie eine Chance hat, wieder-konfiguriert zu werden. Bei
spielsweise kann ein Benutzer zuerst einen Drucker mit ei
ner USB-Buchse verbinden und dann seine oder ihre Meinung
ändern und den Drucker durch einen Scanner austauschen.
Wenn der Austausch zu schnell erfolgt, hat die Bustopologie
nicht ausreichend Zeit, um den Konfigurationsprozess abzu
schließen, wenn der Drucker angeschlossen oder entfernt
wird, so dass ein Absturz des USB-Busses auftreten kann.
Bekannte Systeme benachrichtigen einen Benutzer
nicht direkt über den Status des Wieder-
Konfigurationsprozesses. Beispielsweise verändert das Win
dows® '98-Betriebssystem den Mauscursor immer zu einem
Sanduhr-Icon, wenn ein USB-Gerät eingesteckt oder aus
gesteckt wird. Das Sanduhr-Icon verschwindet kurz nachdem
die Konfiguration abgeschlossen ist. Ein Problem bei der
Benutzung des Sanduhr-Icons besteht jedoch darin, dass es
für den Benutzer schwierig sein kann, es zu sehen. Bei
spielsweise wenn sich der Cursor an der Kante des Bild
schirms befindet, kann das Sanduhr-Icon schwer zu sehen
sein. Weiterhin kann eine signifikante Zeitverzögerung auf
treten, bevor das Sanduhr-Icon durch das System angezeigt
wird. Ein anderes Problem besteht darin, dass das Sanduhr-
Icon generell verwendet wird, um anzuzeigen, dass der Com
puter beschäftigt ist, und es kann daher nicht eindeutig
interpretiert werden, dass es bedeutet, dass eine Installa
tion beziehungsweise ein Set-Up des USB-Geräts erfolgt.
Folglich kann ein Sanduhr-Icon keinen ausreichend klaren
Hinweis ergeben, dass der Benutzer warten sollte, USB-
Anschlüsse zu verbinden/zu trennen. Ein wichtiger Punkt be
steht darin, dass das Sanduhr-Icon den Benutzer nicht di
rekt informiert, wann genau es für den Benutzer sicher ist,
USB-Anschlüsse zu verbinden oder zu trennen, es ist ledig
lich ein allgemeines Icon, das darauf hinweist, dass das
Betriebssystem beschäftigt ist und den Status des Konfigu
rationsprozesses anzeigt.
Was erwünscht ist, ist eine neue Vorrichtung und
ein neues Verfahren, um eine Echtzeitbenachrichtigung über
den Fortschritt eines Konfigurationsprozesses für einen
Computer vorzusehen, der mit anderen Geräten oder Systemen
durch einen seriellen Bus verbunden ist, beispielsweise ei
nen Personalcomputer, der durch eine USB-Schnittstelle mit
Peripheriegeräten verbunden ist.
Ein Ziel der vorliegenden Erfindung besteht dar
in, die Zuverlässigkeit eines Konfigurationsprozesses für
einen Computer zu verbessern, der über eine serielle Bus
schnittstelle mit einem Peripheriegerät verbunden ist. All
gemein ausgedrückt, ist die vorliegenden Erfindung darauf
gerichtet, für den Benutzer eine Echtzeitinformation vorzu
sehen, die den Benutzer dabei unterstützt, es zu vermeiden,
Peripheriegeräte zu ungeeigneten Zeitpunkten an den Compu
ter anzuschließen oder zu entfernen.
Die Vorrichtung gemäß der vorliegenden Erfindung
weist allgemein ein Computersystem auf, das umfasst: einen
Computer mit zumindest einem seriellen Bus-Port, um Peri
pheriegeräte an den Computer anzuschließen; ein sich auf
dem Computer befindendes Betriebssystem, das dazu program
miert ist, das Computersystem dynamisch zu konfigurieren,
wobei das Betriebssystem zumindest eine erste Subroutine
zum Erzeugen einer ersten internen Nachricht aufweist, die
darauf hinweist, dass das Betriebssystem eine Veränderung
der Anzahl von an den Computer angeschlossenen Geräten er
fasst, und eine zweite Subroutine zum Erzeugen einer zwei
ten Nachricht, die darauf hinweist, dass das Betriebssystem
einen Konfigurationsprozess abschließt; und ein auf dem
Computer befindliches Konfigurationsbenachrichtigungspro
gramm, dass die erste und die zweite Nachricht empfängt und
eine visuelle Anzeige erzeugt, die den Benutzer in Echtzeit
benachrichtigt, wenn es unsicher ist, ein plug-and-play-
Gerät zu entfernen oder hinzuzufügen. Bei einer bevorzugten
Ausführungsform weist das Konfigurationsbenachrichtigungs
programm einen auf dem Computer befindlichen Nachrichten
handhaber beziehungsweise Message-Handler auf, wobei der
Nachrichtenhandhaber die ersten und zweiten Nachrichten
hookt, wobei der Nachrichtenhandhaber eine Nachrichtenana
lyseeinheit und eine Zustandsbestimmungseinheit umfasst,
die vorgesehen sind, um ein erstes Ausgangssignal vorzuse
hen, wenn der Konfigurationsprozess läuft, und ein zweites
Ausgangssignal, wenn der Konfigurationsprozess abgeschlos
sen ist; und eine Hinweiseinheit, die sich auf dem Computer
befindet und mit dem Ausgang des Nachrichtenhandhabers ver
bunden ist, wobei die Hinweiseinheit eine visuelle Anzeige
erzeugt, die den Benutzer darüber benachrichtigt, wenn es
unsicher ist, ein plug-and-play-Gerät zu entfernen oder
hinzuzufügen.
Das Verfahren gemäß der vorliegenden Erfindung
zum Vorsehen einer Benachrichtigung über den Status eines
Wieder-Konfigurationsprozesses eines Betriebssystems eines
mit Peripheriegeräten verbundenen Computers umfasst allge
mein die Schritte: Erfassen einer Ereignisnachricht, die
von dem Betriebssystem immer dann erzeugt wird, wenn sich
die Anzahl der mit dem Computer verbundenen Peripheriegerä
te ändert; Feststellen, wenn die Erfassungsnachricht einer
Veränderung der Anzahl oder des Typs von Peripheriegeräten
entspricht, die erfordert, dass ein Benutzer benachrichtigt
wird; Benachrichtigen des Benutzers, dass ein Konfigurati
onsprozess läuft; Erfassen einer Abschlussnachricht, die
von dem Betriebssystem erzeugt wird, wenn der Konfigurati
onsprozess abgeschlossen ist; Feststellen, wenn die Ab
schlussnachricht einer Veränderung der Anzahl oder des Typs
der Peripheriegeräte entspricht, die erfordert, dass der
Benutzer darüber benachrichtigt wird, dass der Konfigurati
onsprozess abgeschlossen ist; Benachrichtigen des Benut
zers, dass der Konfigurationsprozess abgeschlossen ist; und
Benachrichtigen des Benutzers, dass es sicher ist, die An
zahl oder den Typ von an den Computer angeschlossenen Peri
pheriegeräten zu verändern.
Eine Aufgabe der vorliegenden Erfindung besteht
darin, ein Verfahren und eine Vorrichtung vorzusehen, um
die Häufigkeit von Abstürzen des universellen seriellen
Busses zu verringern. Bei einer bevorzugten Ausführungsform
eines kompakten Personalcomputers wird ein eine Port-
Replikationsfunktion durchführender Verbindungs- bezie
hungsweise Compound-Hub dazu verwendet, die Anzahl von an
dem Gehäuse des Computers befestigten Anschlüssen zu ver
ringern. Die Konfigurationsbenachrichtigungseinheit erzeugt
eine Warnung für den Benutzer, wenn die Konfiguration der
art läuft, dass es unsicher ist, ein Peripheriegerät an den
Computer anzuschließen oder es zu entfernen, wodurch die
Häufigkeit verringert wird, mit der Benutzer Peripheriege
räte zu ungeeigneten Zeitpunkten anschließen oder entfer
nen. Eine weitere Aufgabe der vorliegenden Erfindung be
steht darin, ein Verfahren und einen Vorrichtung vorzuse
hen, um eine prompte Benachrichtigung des Benutzers vorzu
sehen, wenn die Konfiguration abgeschlossen ist, wodurch
der Benutzer dabei unterstützt wird, festzustellen, wann
das Computersystem für weitere Vorgänge bereit ist.
Eine noch weitere Aufgabe der vorliegenden Erfin
dung besteht darin, ein Verfahren und eine Vorrichtung vor
zusehen, um Benutzer zu informieren, wenn es sicher ist,
Peripheriegeräte an einen Computer anzuschließen oder zu
entfernen.
Fig. 1 zeigt ein zum Stand der Technik gehören
des Computersystem, bei dem der Computer durch einen (uni
verseller serieller Bus) USB-Hub mit einem Peripheriegerät
verbunden ist.
Fig. 2 zeigt ein zum Stand der Technik gehören
des Computersystem, bei dem ein Computer über verschachtel
te USB-Hubs mit einem Peripheriegerät verbunden ist.
Fig. 3 ist ein Blockschaltbild eines zum Stand
der Technik gehörenden Hubs.
Fig. 4 ist ein Blockschaltbild eines zum Stand
der Technik gehörenden Compound-Hubs.
Fig. 5A ist eine perspektivische Darstellung von
einem bevorzugten Compound-Hub, der eine Vielzahl von An
schluss-Ports aufweist.
Fig. 5B ist ein Blockschaltbild von der elektronischen
Funktion des in Fig. 5A gezeigten Hubs.
Fig. 6A ist eine veranschaulichende Seitenan
sicht von einem kompakten tragbaren Computer.
Fig. 6B ist eine perspektivische Darstellung des
Computer von Fig. 6A.
Fig. 7 ist eine Rückansicht des Gehäuses von ei
nem herkömmlichen tragbaren Computer, die den entsprechen
den Bereich von üblichen Anschluss-Ports zeigt.
Fig. 8 ist eine Rückansicht von dem Gehäuse ei
nes herkömmlichen kompakten tragbaren Computers, der an ei
nen herkömmlichen Port-Replikator angeschlossen ist, wobei
die Figur den entsprechenden Bereich von üblichen An
schluss-Ports zeigt.
Fig. 9 zeigt eine Rückansicht von einem bevor
zugten kompakten Computer, der an einen Compound-Port ähn
lich dem in Fig. 5A dargestellten angeschlossen ist.
Fig. 10 zeigt eine bevorzugte Ausführungsform
des Konfigurationsbenachrichtigungssystems gemäß der vor
liegenden Erfindung.
Fig. 11A ist ein schematisches Blockschaltbild,
das zeigt, wie herkömmliche Betriebssysteme Ereignisnach
richten an Anwendungsprogramme verteilen.
Fig. 11B ist ein Funktions-Blockschaltbild, das
den Fluss von internen Nachrichten in einem herkömmlichen
Betriebssystem zeigt.
Fig. 12 ist ein Funktions-Blockschaltbild von
der Konfigurationsbenachrichtigungseinheit gemäß der vor
liegenden Erfindung.
Fig. 13 ist ein Flussdiagramm, das ein bevorzug
tes Verfahren zum Betrieb der Konfigurationsbenachrichti
gungseinheit von Fig. 12 zeigt.
Fig. 14 ist ein Blockschaltbild, das die Anzei
geausgaben der Identifikationseinheit von Fig. 12 zeigt.
Fig. 15 zeigt bevorzugte Anzeige-
Bildschirmimplementierungen der Ausgaben von Fig. 14.
Wie dies in Fig. 1 dargestellt ist, kann eine
serielle Busschnittstelle dazu verwendet werden, Periphe
riegeräte 40 an einen Computer 10 anzuschließen. Eine häu
fig verwendete serielle Busschnittstelle ist die universel
le serielle Busschnittstelle (USB). Während ein einzelnes
Peripheriegerät über einen USB-Anschluss angeschlossen wer
den könnte, ist es üblich, mehrere Geräte 40 über einen Hub
30 an einen Computer 10 anzuschließen. Wie dies in Fig. 1
dargestellt ist, können USB-Kabel 80 ein oder mehrere Peri
pheriegeräte 40 über einen Hub 30 an den Computer 10 an
schließen. Wie dies in Fig. 2 dargestellt ist, können meh
rere Hubs miteinander verbunden werden, um die potentielle
Anzahl von an einen Computer angeschlossenen Peripheriege
räten weiter zu erhöhen. Wie dies in Fig. 2 angedeutet
ist, können, beim USB, Peripheriegeräte mit bis zu 5 Hub-
Leveln tief derart verschachtelt werden, dass bis zu 127
I/O-Geräte an einen Computer unter Verwendung der USB-
Schnittstelle angeschlossen werden können.
Fig. 3 ist ein Blockschaltbild von einem her
kömmlichen Hub 330. Der Hub 330 umfasst einen Aufwärts- be
ziehungsweise Upstreamanschluss 335, um mit dem Computer 10
zu kommunizieren. Ein Verstärker beziehungsweise Repeater
340, ein Controller 345 und eine Leistungssteuerung 350
sind angeordnet, um den Datenfluss zwischen dem Upstrea
manschluss 335 und Abwärts- beziehungsweise Downstreamanschlüssen
355 zu steuern. Fig. 4 ist ein Blockschalt
bild von einem Compound-Hub 430. Der Compound-Hub 435 um
fasst einen Upstreamanschluss 435 und einen Repeater 440,
einen Controller 445 und eine Leistungssteuerung 450. Zu
sätzlich zu den Downstreamanschlüssen 455 weist er jedoch
eingebettete I/O-Geräte 460 auf. Diese eingebetteten I/O-
Geräte können jedes herkömmliche I/O-Gerät aufweisen, das
mit dem Computer 10 über eine USB-Schnittstelle kommuni
ziert, das heißt, die I/O-Geräte sind in den Hub integriert
und mit Steuerungsschaltungen ausgestattet, die es ihnen
erlauben, mit dem Computer über die USB-Schnittstelle zu
kommunizieren. Der Repeater 440, der Controller 455 und die
Leistungssteuerung 450 sind angeordnet, um den Datenfluss
zwischen dem Upstreamanschluss 435 und dem Downstrea
manschlüssen 455 und den eingebetteten Geräten 460 zu steu
ern.
Fig. 5A ist eine Profilansicht von einem Com
pound-Hub 530, der von Fujitsu Ltd., Japan, der Anmelderin
der vorliegenden Erfindung, hergestellt und als der Fujitsu
Universal LAN Hub® vertrieben wird. Der Compound-Hub 530
umfasst einen Upstream-USB-Port 510, mehrere Downstream-
USB-Ports 515, 520 und 525, mehrere Peripheriegerätan
schlüsse wie beispielsweise einen "Parallel"-Anschluss-Port
540, einen PS/2-Tastatur-Portanschluss 550, einen RJ-45 E
thernet-Anschluss-Port 560, einen RS232-Typ Kommunikations
anschluss-Port 570, einen PS/2-Mausanschluss-Port 580, zu
sammen mit einem Lautstärkeregler 585 und einer Kopfhörer
buchse 590. Fig. 5B ist ein Funktions-Blockschaltbild von
dem Compound-Hub 530. Wie dies in Fig. 5B zu erkennen ist,
arbeitet jeder der Anschluss-Ports als ein eingebettetes
USB-I/O-Gerät, das heißt, er kommuniziert über den USB-
Ubstream-Port mit einem Upstream-Computer.
Der Compound-Hub 530 ergibt einen wichtigen Vor
teil für tragbare Computer mit einer begrenzten Anzahl von
Anschluss-Ports. Entsprechend der Verwendung in dieser An
meldung umfasst ein tragbarer Computer ohne darauf be
schränkt zu sein, Laptopcomputern, Notebookcomputer und an
dere Typen von kompakten tragbaren Computergeräten. Fig.
6A ist eine Seitenansicht eines kompakten Notebookcompu
ters, während Fig. 6B eine Profilansicht von einem kompak
ten Notebookcomputer ist. Wie dies in den Fig. 6A und 6B
dargestellt ist, weist der Computer 600 ein Gehäuse 610
auf. Innerhalb des Gehäuses 610 befindet sich eine kompakte
elektronische Computer-CPU 620. Ein Display 640 ist an dem
Computer 600 in einer herkömmlichen Muschelschalenanordnung
befestigt. Der Computer 600 weist typischerweise zumindest
einen universellen seriellen Busanschluss auf (in den
Fig. 6A und 6B nicht dargestellt), der entlang einer Rück-
oder Seitenoberfläche 630 des Gehäuses 610 angeordnet ist.
Eine Einschränkung der Größe des Computers 600 besteht in
der physikalischen Größe und dem physikalischen Gewicht der
Anschlüsse, die dazu erforderlich sind, den Computer mit
Peripheriegeräten zu verbinden. Allgemein ausgedrückt ist
es erwünscht, dazu in der Lage zu sein, einen Computer mit
vielen verschiedenen Typen von Peripheriegeräten zu verbin
den, wie beispielsweise Druckern, Scannern, Mäusen, Disket
tenlaufwerken etc. Während die Größe von Personalcomputern
weiterhin kleiner wird, hat die physikalische Größe der An
schlüsse, die erforderlich sind, um eine Signalverbindung
mit Peripheriegeräten herzustellen, jedoch nicht abgenom
men.
Fig. 7 ist eine Rückansicht von der hinteren Oberfläche
des Computergehäuses (entsprechend einer Drauf
sicht der Oberfläche 630 von Fig. 6A) eines herkömmlichen
tragbaren Kompakt- beziehungsweise All-In-One-Computers
700. Der Computer 700 ist ein Kompaktcomputer in dem Sinn,
dass er alle üblicherweise erwünschten Anschluss-Ports auf
weist. Diese umfassen einen Tastatur-Port 710, einen Maus-
Fort 715, einen Audio-Port 720, einen Modem-Port 725, einen
Infrarot-(IrDA-)Port 730, einen Monitor-Port 735, zwei
USB-Ports 740, einen parallelen Port 745, einen seriellen
Port 750, einen gesetzlich geschützten externen Erweite
rungs- beziehungsweise Expanderanschluss 755 und einen LAN-
Port 760. Die entsprechende Fläche von verschiedenen An
schluss-Ports ist in Fig. 7 gezeigt. Wie dies in Fig. 7
zu erkennen ist, ist ein beachtlicher Flächenanteil für
diese Anschluss-Ports erforderlich. Weiterhin vergrößern
die Anschluss-Ports und zugeordnete interne mechanische und
elektrische Komponenten das Gesamtvolumen und das Gesamtge
wicht des Computers 700 deutlich.
Externe Port-Replikatoren sind eine Möglichkeit,
um die Anzahl von wirksamen mit einem Computer verbundenen
Ports zu erhöhen. Fig. 8 zeigt einen herkömmlichen kompak
ten tragbaren Computer 800, der mit einem herkömmlichen ge
setzlich geschützten I/O-Expander 880 verbunden ist. Wie
dies in Fig. 8 zu erkennen ist, befinden sich nun einige
der Peripheriegerät-Anschluss-Ports, wie beispielsweise der
Tastatur-Port 715, der Maus-Port 710 und der parallele Port
745 nun in der Expandereinheit 880, die die Funktion von
einigen oder allen Ports eines tragbaren Kompaktcomputers
nachbildet. Bei dieser herkömmlichen Anordnung ist jedoch
immer noch Raum für den gesetzlich geschützten Anschluss-
Fort 755 für den externen Expander erforderlich.
Fig. 9 zeigt die hintere Oberfläche 630 von ei
ner Ausführungsform eines Kompaktcomputers 600 gemäß der
vorliegenden Erfindung, der von den Erfindern entwickelt
wurde, um mit einem Compound-Hub 530 ähnlich dem in Fig. 5
gezeigten verwendet zu werden. Ein einziger USB-Port 605
wird dazu verwendet, Signale mit dem externen Hub 530 aus
zutauschen. Die meisten der großflächigen Peripheriegerät-
Anschluss-Ports eines herkömmlichen Kompaktcomputers sind
nun an dem Hub 530 angeordnet und über den USB-Port mit dem
Computer verbunden. Zusätzlich wird der Anschluss-Port 755
für den externen Expander bei dem Computersystem 900 ver
mieden. Durch einen Vergleich der Fig. 7, 8 und 9 ist zu
erkennen, dass der Computer 600 des Computersystems 900 ei
nen verkleinerten in Anschlüssen gewidmeten Bereich der
hinteren Oberfläche 630 benötigt. Darüber hinaus wird das
zugehörige interne Volumen und Gewicht der in dem Computer
600 angeordneten Anschlüsse ebenfalls verringert, was eine
Verringerung des Gesamtvolumens und des Gesamtgewichts des
Computers 600 erlaubt. Folglich kann der Computer 600 in
der Größe verringert werden und alle Kompakt- beziehungs
weise All-In-One-Funktionen durchführen. Es ist ebenfalls
zu beachten, dass die Gesamtanzahl von Ports, insbesondere
von USB-Ports, im Vergleich zu dem Computer 700 vergrößert
ist. Folglich verringert das erfindungsgemäße Computersys
tem 900 gemäß Fig. 9 die Größe und das Gewicht des Compu
ters 600, während es ermöglicht, dass eine größere Anzahl
von Peripheriegeräten an den Computer 600 angeschlossen
wird. Das in Fig. 9 dargestellte Computersystem 900 ist
insbesondere für kompakte Notebookcomputer nützlich, bei
denen es erwünscht ist, die Höhe h und die Breite w eines
Computers 600 zu verringern, wie dies in Fig. 9 dargestellt
ist. Das Computersystem 900 könnte jedoch auch für
andere kompakte elektronische Computersysteme verallgemei
nert werden, bei denen eine elektronische Computereinheit
über einen seriellen Busanschluss 605 mit einem Compound-
Hub 530 verbunden ist.
Gemäß der Darstellung von Fig. 9 ist zu erken
nen, dass bei einer bevorzugten Ausführungsform des Systems
900 drei USB-Downstream-Ports und sechs Peripheriegerät-
Ports an dem Compound-Hub 530 angeordnet sind. Die sechs
Peripheriegerät-Ports arbeiten als eingebettete USB-Geräte.
Folglich arbeiten alle der neun Ports als im Betrieb ver
bindbare (hot-pluggable) USB-Ports, das heißt, der Computer
600 überwacht den Zustand von allen neun Ports und konfigu
riert das Computersystem 900 immer dann dynamisch wieder,
wenn ein Gerät an einen der Ports angeschlossen oder ent
fernt wird. Folglich besteht bei dem Computersystem 900 die
Tendenz, dass die Häufigkeit von während dem Betrieb durch
geführten Verbindungsvorgängen deutlich größer ist, als bei
einem herkömmlichen tragbaren Computer 700. Dies vergrößert
das Risiko eines Systemfehlers, wenn ein Benutzer nicht
wartet, während das System jedes mal wieder-konfiguriert
wird, wenn ein Gerät eingesteckt oder entfernt wird.
Bei der Entwicklung des Computersystems 900 ent
deckten die Erfinder, dass die Häufigkeit von USB-
Busabstürzen im Vergleich zu einem herkömmlichen Computer
700 zunimmt. Die Erfinder sind der Auffassung, dass eine
Erklärung dafür ist, dass eine komplexere Bustopologie er
zeugt wird. Die Erfinder sind der Auffassung, dass eine an
dere Erklärung ist, dass herkömmliche O/S-Software und
Treiber gegenüber Fehlern bei der Wieder-Konfiguration
nicht so robust sind, wie allgemein angenommen. Eine noch
weitere Erklärung ist, dass die vergrößerte Anzahl von
wirksamen USB-Ports des Computersystems 900 dazu neigt, die
Häufigkeit von im Betrieb durchgeführten Anschlussvorgängen
zu vergrößern, wodurch die Wahrscheinlichkeit vergrößert
wird, dass ein Benutzer nicht einen ausreichend langen
Zeitabschnitt wartet, damit sich das System 900 selbst kon
figurieren kann, bevor ein USB-Gerät entfernt und ein ande
res USB-Gerät hinzugefügt wird.
Herkömmliche Betriebssystems sehen keine direkte
Benachrichtigung des Benutzers darüber vor, was in dem in
ternen Betriebssystem während des Wieder-
Konfigurationsprozesses passiert. Folglich weiß der Benut
zer nicht genau, wann das Betriebssystem den Konfigurati
onsprozess abgeschlossen hat. Um die Häufigkeit von USB-
Busabstürzen zu verringern, haben die Erfinder eine Vor
richtung und ein Verfahren entwickelt, um eine direkte Be
nachrichtigung des Benutzers über den Status des Konfigura
tionsprozesses in dem System 900 vorzusehen.
Fig. 10 zeigt ein Blockschaltbild des erfin
dungsgemäßen Benachrichtigungssystems 1000. Eine Computer
einheit 1010 weist ein darauf befindliches Betriebssystem
1020 auf. Der Computer 1010 weist ein Display 1040 und ei
nen Downstream-USB-Anschluss 1050 auf, die an dem Gehäuse
1060 befestigt sind. Der Computer 1010 weist vorzugsweise
auch einen Lautsprecher 1035 auf, um eine Audioausgabe vor
zusehen. Der Computer 1060 kann irgendein Computertyp sein,
vorzugsweise ist er jedoch ein kompakter Personalcomputer,
beispielsweise ein Notebookcomputer. Ein Standard-USB-Kabel
1055 verbindet den USB-Anschluss 1050 mit anderen Geräten,
vorzugsweise über einen Hub 1070. Der Hub 1070 kann irgend
ein Typ von USB-Hub sein, vorzugsweise ist er jedoch ein
Compound-USB-Hub. Der Hub 1070 weist vorzugsweise zumindest
ein eingebettetes Gerät 1075 oder zumindest einen eingebet
teten Anschluss 1080 auf, um seine Funktionalität zu erwei
tern. Der Hub 1070 umfasst vorzugsweise auch zumindest ei
nen Downstream-USB-Port 1090.
Wie dies in Fig. 10 dargestellt ist, befindet
sich ein Softwareprogramm, das eine Konfigurationsbenach
richtigungseinheit 1030 ist, auf dem Computer 1010. Wie un
ten ausführlicher beschrieben, sieht die Konfigurationsbe
nachrichtigungseinheit 1030 eine Benachrichtigung des Be
nutzers, vorzugsweise über das Display 1040 und den Laut
sprecher 1035, darüber vor, wann der Konfigurationsprozess
abgeschlossen ist, so dass es sicher ist, Geräte an den
Computer 1010 über den Hub 1070 anzuschließen oder zu ent
fernen.
Die Funktion und der Betrieb der Konfigurations
benachrichtigungseinheit 1030 ist in den Fig. 11 bis 15
dargestellt. Fig. 11A ist ein Blockschaltbild von einem
herkömmlichen Betriebssystem 1100. Das Betriebssystem er
fasst eingehende Ereignisse, die eine Aktion erfordern und
überträgt interne Nachrichten über diese Ereignisse, um die
Aktivitäten der Systemressourcen zu koordinieren. Das Be
triebssystem umfasst Subroutinen, um interne Nachrichten zu
erzeugen, die andere Komponenten alarmieren, dass ein Er
eignis erfasst wurde und dass der Konfigurationsprozess ab
geschlossen ist. Als ein Beispiel kann ein eingehendes Er
eignis eine Tastatureingabe sein. Für Peripheriegeräte, die
durch serielle Busanschlüsse mit einem Computer verbunden
sind, erfasst das Betriebssystem Veränderungen in der Bus
topologie immer dann, wenn ein Gerät angeschlossen oder von
dem Computer entfernt wird. Wie dies in Fig. 11A dargestellt
ist, umfasst ein Betriebssystem Subroutinen, die ein
eingehendes Ereignis 1110 in eine entsprechende Nachricht
1120 umwandeln, bevor es sie über einen Verteiler 1130 an
andere Anwendungen oder Komponenten verteilt, wie bei
spielsweise die Anwendungssoftware 1140 und Gerätetreiber.
Entsprechend der Darstellung von Fig. 11B, verursachen
Vorgänge wie beispielsweise ein Maus-Klicken, eine Tasta
turbetätigung und ein Ein-/Ausschalten des Systems bei dem
Betriebssystem mit graphischer Benutzerschnittstelle
(graphical user interface = GUI) des Windows®-O/S. dass das
Betriebssystem Nachricht(en) erzeugt, unter Verwendung der
Information des Gerätetreibers. Die Nachrichten, die somit
erzeugt werden, werden dann an alle Anwendungsprogramme ge
sendet, die auf dem Betriebsystem laufen. Alle laufenden
Anwendungsprogramme empfangen somit die Nachricht(en), die
sie über eine Veränderung des Hardwarestatus informieren.
Jede Anwendung bearbeitet dann die Nachricht, wenn die
Nachricht für die Anwendung anwendbar ist oder anders mit
der Anwendung in Verbindung steht. Fig. 11B zeigt einige
der Nachrichten, die speziell dem Windows®-O/S zugeordnet
sind. Die zur Erzeugung dieser internen Nachrichten verwen
dete O/S-Software ist dem Fachmann gut bekannt.
Unter erneuter Bezugnahme auf Fig. 11A enthält
jede Nachricht, für Peripheriegeräte, Informationen über
das erkannte Gerät. Wenn eine der Komponenten, beispiels
weise die Anwendungssoftware oder die Gerätetreiber, dazu
in der Lage ist, das Ereignis zu handhaben, dann kann die
Komponente das Ereignis auffangen und es bearbeiten. Es ist
zu beachten, dass die durch den Verteiler 1130 verteilten
Nachrichten 1120 bei einem herkömmlichen Betriebssystem nur
für die Koordination der internen Ressourcen des Computers
verwendet werden. Der Computerbenutzer hat keine direkte
Kenntnis von den internen Nachrichten, die von dem Vertei
ler 1130 zu der Anwendung 1140 übertragen werden.
Die Erfinder haben erkannt, dass diese internen
Nachrichten 1120, die durch das Betriebssystem erzeugt wer
den, von einer Konfigurationsbenachrichtigungseinheit 1030
verwendet werden können, um eine Ausgabe an den Benutzer zu
erzeugen, die genau angibt, wann sich das System selbst
wieder-konfiguriert hat, das heißt eine direkte Benachrich
tigung vorzusehen, wann genau es sicher ist, einen seriel
len Busanschluss an den Computer anzuschließen oder zu ent
fernen.
Fig. 12 ist ein Blockschaltbild der Konfigurati
onsbenachrichtigungseinheit 1030. Die Funktion der Konfigu
rationsbenachrichtigungseinheit 1030 besteht darin, eine
Ausgabe vorzusehen, die einen Benutzer in Echtzeit vom Sta
tus des Konfigurationsprozesses benachrichtigt. Bei einer
bevorzugten Ausführungsform umfasst die Konfigurationsbe
nachrichtigungseinheit 1030 einen Nachrichtenhandhaber 1005
der mit einer Hinweiseinheit 1004 verbunden ist. Der Nach
richtenhandhaber 1005 umfasst als Sub-Einheiten eine Nach
richtenanalyseeinheit 1002 und eine Zustandsbestimmungsein
heit 1003. Die Nachrichtenanalyseeinheit 1002 analysiert
die Informationen von einer Nachricht, um festzustellen,
wenn das Ereignis mit dem Einstecken oder dem Ausstecken
einer Vorrichtung zusammenhängt. Wenn ein Ereignis mit ei
nem Einstecken oder einem Ausstecken eines Gerätes zusam
menhängt, stellt die Zustandsbestimmungseinheit 1003 den
Konfigurationszustand (beispielsweise Konfigurationsprozess
ausgelöst, Konfiguration läuft oder Konfiguration ist abge
schlossen) fest. Die Hinweiseinheit 1004 führt vorzugsweise
die Funktion einer Hinweiseinheit aus, das heißt, sie er
zeugt eine visuelle Anzeige, die für den Benutzer eine An
zeige vorsieht, um den Benutzer vom Status des Konfigurati
onsprozesses und insbesondere darüber zu benachrichtigen,
ob es sicher ist, ein Plug-and-Play-Gerät zu entfernen oder
hinzuzufügen. Allgemeiner kann die Hinweiseinheit 1004 je
doch irgendeine Art von Ausgabe erzeugen, die den Benutzer
über den Konfigurationsstatus benachrichtigt, beispielswei
se eine Audioausgabe.
Der Nachrichtenhandhaber 1005 akzeptiert Nach
richten, die mit eingehenden Ereignissen zusammenhängen.
Für ein Windows®-Betriebssystem akzeptiert der Nachrichten
handhaber 1005 Nachrichten vorzugsweise über einen Win
dows®-Nachrichten-Hook-Mechanismus und -DLL-Funtionalität.
Der Begriff "Hook" ist ein üblicher Fachbegriff. Die Hook-
Funktion wird jedoch manchmal alternativ durch die Ausdrü
cke Überwachen, Abfangen oder Ereignisbearbeitung beschrie
ben. Obwohl das Windows®-Betriebssystem ein übliches Be
triebssystem mit einem Nachrichten-Hook-Mechanismus ist,
ist klar, dass viele moderne Multi-Tasking-Betriebssysteme
eine ähnliche interne Funktionalität aufweisen, um Nach
richten und Interprozesskommunikationen zu handhaben. Folg
lich ist die Vorrichtung und das Verfahren gemäß der vor
liegenden Erfindung nicht auf das Windows®-Betriebssystem
beschränkt, sondern sie können auch bei anderen Betriebs
systemen implementiert werden. Darüber hinaus kann der
Nachrichtenhandhaber 1005 bei anderen Betriebssystemen un
ter Verwendung einer leistungsfähigen höheren Programmier
sprache wie C, Pascal oder auch einer plattformspezifischen
Sprache implementiert werden.
Der Nachrichtenhandhaber 1005 fragt gehookte
Nachrichten für zusätzliche Informationen ab, um festzu
stellen, wenn sich ein Geräteknoten verändert hat, und er
stellt fest, wenn das Geräte ein USB-Gerät ist. Wenn das
Gerät ein USB-Gerät ist, sendet der Nachrichtenhandhaber
ein Signal zu der Hinweiseinheit 1004, das die Hinweisein
heit 1004 anweist, eine geeignete Ausgabe zu erzeugen, um
den Benutzer zu benachrichtigen, wann es sicher ist, ein
neues Gerät zu entfernen oder hinzuzufügen.
Fig. 13 ist ein Flussdiagramm, das ein bevorzug
tes Verfahren zum Betrieb der Konfigurationsbenachrichti
gungseinheit 1030 zeigt. Es zu beachten, dass die Hinweis
einheit 1004 bei einer bevorzugten Ausführungsform eine
Ausgabe 1305 vorsieht, die darauf hinweist, dass es sicher
ist, ein Gerät zu entfernen oder hinzuzufügen, wenn das
System sich in einem gleichbleibenden Konfigurationszustand
befindet. Somit entspricht die Ausgabe 1305 einer bevorzug
ten Ausführungsform, bei der der Benutzer, vor dem Hinzufü
gen oder Entfernen eines Gerätes, alarmiert wird, dass es
sicher ist, ein neues Plug-and-Play-Gerät zu entfernen oder
hinzuzufügen, das heißt, das Computersystem befindet sich
in einem stabilen, konfigurierten Zustand. Die Ausgabe 1305
wird von der Konfigurationsbenachrichtigungseinheit 1030
vorzugsweise automatisch nach einem vorgegebenen Zeitab
schnitt zu dem sich das System selbst konfiguriert hat er
zeugt.
Wie dies im Block 1310 angegeben ist, wird ein
Benutzerereignis immer dann erzeugt, wenn der Benutzer ein
Peripheriegerät an den Computer anschließt oder entfernt.
Wie dies im Block 1312 angegeben ist, erkennt das Betriebs
system derartige Ereignisse automatisch. Nachdem ein Ereig
nis erkannt wurde, sendet das Betriebssystem automatisch
eine interne Erkennungsnachricht an alle Anwendungen (das
heißt, alle aktiven Betriebssystemprozesse, Komponenten und
Softwareanwendungen, entsprechend der Betriebsweise von
herkömmlichen Betriebssystemen), wie dies im Block 1314
dargestellt ist. Diese Nachricht umfasst typischerweise In
formationen über den Gerätetyp und die Knotenposition. Der
Nachrichtenhandhaber 1005 hookt Ereignisnachrichten, wie
dies im Block 1316 dargestellt ist. Wie dies im Block 1318
gezeigt ist, erkennt die Nachrichtenanalyseeinheit 1002,
wenn die Nachricht einem Plug-and-Play-Gerät entspricht.
Wenn die Nachricht von einem USB-Plug-and-Play-Gerät
stammt, dann wählt die Zustandsbestimmungseinheit 1003 eine
geeignete Konfigurationszustandsnachricht, die die Hinweis
einheit 1004 anzeigen sollte (zum Beispiel "Konfiguration
läuft").
Wie dies durch den gestrichelten Pfeil 1320 dar
gestellt ist, sieht der Nachrichtenhandhaber 1005 für Nach
richten, die einem USB-Plug-and-Play-Gerät entsprechen, für
das es erforderlich ist, den Benutzer über den Konfigurati
onsstatus zu benachrichtigen, ein geeignetes Signal für die
Hinweiseinheit 1004 vor, wodurch die Hinweiseinheit 1004
eine Ausgabe erzeugt, die darauf hinweist, dass die Konfi
guration läuft, wie dies durch den Block 1322 dargestellt
ist. Es ist zu beachten, dass der Benutzer somit unmittel
bar gewarnt wird, dass der Wieder-Konfigurationsprozess
läuft. Die Ausgabe 1322 wird vorzugsweise innerhalb eines
kurzen Zeitabschnitts (das heißt einem kleinen Bruchteil
einer Sekunde, abhängig von der Geschwindigkeit des Compu
ters) vorgesehen, so dass der Benutzer die erforderliche
Zeit minimieren kann, auf den Abschluss des Konfigurations
prozesses zu warten. Ein bevorzugtes Verfahren besteht darin,
einen visuellen Hinweis auf dem Display 1040 des Compu
ters 1010 anzuzeigen. Zusätzlich kann ein Audiosignal über
den Lautsprecher 1035 ausgegeben werden.
Ein herkömmliches Betriebssystem verteilt automa
tisch eine interne Nachricht, wenn der Konfigurationspro
zess abgeschlossen ist, wie dies im Block 1324 angegeben
ist. Der Nachrichtenhandhaber 1005 hookt diese Abschluss
nachricht, erkennt über die Nachrichtenanalyseeinheit 1002,
dass sie von einem Plug-and-Play-Gerät stammt und dass die
Konfiguration abgeschlossen ist, unter Verwendung der Zu
standsbestimmungseinheit 1003. Wie dies im Block 1328 ange
geben ist, sendet der Nachrichtenhandhaber 1005 dann einen
Befehl zur Hinweiseinheit 1004, den Benutzer darauf hinzu
weisen, dass die Konfiguration abgeschlossen ist, das
heißt, dass das System bereit ist, wie dies im Block 1332
angegeben ist. Wie dies durch den gestrichelten Pfeil 1330
angegeben ist, wird auch dieser Schritt vorzugsweise
schnell durchgeführt (das heißt in einem kleinen Bruchteil
einer Sekunde), so dass der Benutzer unmittelbar die Be
nachrichtigung empfängt, dass das System bereit ist, fast
unmittelbar nachdem das Betriebssystem seine Konfiguration-
Abgeschlossen-Nachricht an die internen Anwendungen sendet.
Bei einer bevorzugten Ausführungsform, wie dies durch den
Block 1334 gezeigt ist, zeigt die Hinweiseinheit 1004 dann
eine Nachricht an, die darauf hinweist, dass es sicher ist,
neue Geräte zu entfernen oder hinzuzufügen.
Fig. 14 ist ein Blockschaltbild, dass die Ausga
ben von einer bevorzugten Ausführungsform der Hinweisein
heit 1004 zeigt. Wie dies in Fig. 14 dargestellt ist, er
zeugt die Hinweiseinheit 1004 bei einer bevorzugten Ausfüh
rungsform drei Ausgaben: eine Bereitanzeige, eine Konfiguration-Läuft-Anzeige
und eine Sicher-Zu-Entfernen-Anzeige.
Eine bevorzugte Bildschirmanzeigeimplementierung ist in
Fig. 15 gezeigt. Fig. 15(a) zeigt eine bevorzugte Bild
schirmanzeigeimplementierung von einem USB-Icon, das darauf
hinweist, dass es sicher ist, ein USB-Gerät zu entfernen
oder hinzuzufügen. Fig. 15(b) zeigt eine bevorzugte Bild
schirmanzeigeimplementierung von einem animierten Icon, das
eine Nachricht anzeigt, dass die Konfiguration läuft. Fig.
15(c) zeigt eine bevorzugte Bildschirmanzeigeimplementie
rung von einem animierten Icon, das darauf hinweist, dass
das System bereit ist. Jedes der Icons in 15(a), 15(b) und
15(c) weist vorzugsweise einen unterschiedlichen Farbcode
auf und ist auf der Bildschirm-"Ablage" angeordnet.
Obwohl die vorliegende Erfindung ausführlich im
Hinblick auf einen kompakten Personalcomputer mit einer
USB-Schnittstelle beschrieben wurde, ist klar, dass die er
findungsgemäße Konfigurationsstatusbenachrichtigungsvor
richtung und das erfindungsgemäße Konfigurationsstatusbe
nachrichtigungsverfahren vorteilhaft bei einer Vielzahl von
anderen elektronischen Computern verwendet werden kann,
beispielsweise herkömmlichen tragbaren Computern 600 oder
700. Weiterhin ist klar, dass die vorliegende Erfindung mit
einer Vielzahl von seriellen Busschnittstellen verwirklicht
werden kann. Obwohl die USB-Schnittstelle eine serielle In
dustriestandardbusschnittstelle ist, kann das Verfahren und
die Vorrichtung gemäß der vorliegenden Erfindung auf jede
serielle Busschnittstelle angewendet werden, bei der das
Betriebssystem Veränderungen in der Systemtopologie erfasst
und einen Nummerierungsprozess durchführt, um geeignete
Treiber als einen Teil eines Wieder-Konfigurationsprozesses
zu laden. Beispielsweise der serielle IEEE 1394 Bus ist ein
anderer serieller Bus, für den das Verfahren und die Vor
richtung gemäß der vorliegenden Erfindung verwendet werden
können.
Es ist weiterhin klar, dass eine Vielzahl von
kompakten elektronischen Geräten neben tragbaren Computern
das elektronische Äquivalent eines tragbaren Personalcompu
ters sind. Es gibt einen allgemeinen Schub in der Elektro
nik hinsichtlich während des Betriebs verbindbaren (Hot-
Pluggable) seriellen Signalbusanschlüssen, zu einer Viel
zahl von kompakten elektronischen Vorrichtung gemacht zu
werden. Folglich wird angenommen, dass das Verfahren und
die Vorrichtung gemäß der vorliegenden Erfindung auf eine
Vielzahl von analoge elektronische Systeme anwendbar ist.
Obwohl eine bevorzugte Ausführungsform der vor
liegenden Erfindung und deren Modifikationen hier ausführ
lich beschrieben wurden, ist klar, dass diese Erfindung
nicht auf diese genauen Ausführungsformen und Modifikatio
nen beschränkt ist und das andere Modifikationen und Ab
wandlungen durch den Fachmann durchgeführt werden können,
ohne den Grundgedanken und den Schutzbereich der Erfindung
zu verlassen, der durch die zugehörigen Ansprüche definiert
wird.
Claims (13)
1. Plug-and-Play-Computersystem, aufweisend:
- a) einen Computer mit einer visuellen Anzeige und zumindest einem äußeren seriellen Bus-Port zum Anschließen von zumindest einem Peripheriegerät an den Computer;
- b) ein auf dem Computer befindliches Betriebssys tem, das dazu programmiert ist, das Computersystem dyna misch zu konfigurieren, wobei das Betriebssystem eine erste Subroutine zum Erzeugen einer ersten internen Nachricht, die darauf hinweist, dass das Betriebssystem eine Verände rung der Anzahl von an den Computer angeschlossenen Geräten erfasst, und eine zweite Subroutine aufweist, um eine zwei te interne Nachricht zu erzeugen, die darauf hinweist, dass das Betriebssystem einen Konfigurationsprozess abschließt;
- c) ein Konfigurationsbenachrichtigungsprogramm, das sich auf dem Computer befindet, um die ersten und zwei ten Nachrichten zu empfangen und eine visuelle Anzeige zu erzeugen, um den Benutzer unverzüglich zu benachrichtigen, wenn es unsicher ist, ein Plug-and-Play-Gerät an den Compu ter anzuschließen oder zu entfernen.
2. System nach Anspruch 1, bei dem das Konfigura
tionsbenachrichtigungsprogramm aufweist:
einen Nachrichtenhandhaber, der sich auf dem Com puter befindet, wobei der Nachrichtenhandhaber die ersten und zweiten Nachrichten hookt, wobei der Nachrichtenhandha ber eine Nachrichtenanalyseeinheit und eine Zustandsbestim mungseinheit umfasst, die angeordnet sind, um ein erstes Ausgangssignal vorzusehen, wenn der Konfigurationsprozess läuft und ein zweites Ausgangssignal vorzusehen, wenn der Konfigurationsprozess abgeschlossen ist; und
eine Hinweiseinheit, die sich auf dem Computer befindet und mit dem Ausgang des Nachrichtenhandhabers ver bunden ist, wobei die Hinweiseinheit eine visuelle Anzeige erzeugt, die den Benutzer benachrichtigt, wenn es unsicher ist, ein Plug-and-Play-Gerät an den Computer anzuschließen oder zu entfernen.
einen Nachrichtenhandhaber, der sich auf dem Com puter befindet, wobei der Nachrichtenhandhaber die ersten und zweiten Nachrichten hookt, wobei der Nachrichtenhandha ber eine Nachrichtenanalyseeinheit und eine Zustandsbestim mungseinheit umfasst, die angeordnet sind, um ein erstes Ausgangssignal vorzusehen, wenn der Konfigurationsprozess läuft und ein zweites Ausgangssignal vorzusehen, wenn der Konfigurationsprozess abgeschlossen ist; und
eine Hinweiseinheit, die sich auf dem Computer befindet und mit dem Ausgang des Nachrichtenhandhabers ver bunden ist, wobei die Hinweiseinheit eine visuelle Anzeige erzeugt, die den Benutzer benachrichtigt, wenn es unsicher ist, ein Plug-and-Play-Gerät an den Computer anzuschließen oder zu entfernen.
3. System nach Anspruch 2, bei dem die Hinweis
einheit eine erste Anzeige, die darauf hinweist, dass es
sicher ist, ein Gerät zu entfernen oder hinzuzufügen, eine
zweite Anzeige, die der Benachrichtigung entspricht, dass
der Konfigurationsprozess läuft, und eine dritte Anzeige
erzeugt, die der Benachrichtigung entspricht, dass der Kon
figurationsprozess abgeschlossen ist.
4. System nach Anspruch 2, bei dem das System ei
ne universelle serielle Busschnittstelle verwendet und bei
dem der serielle Bus-Port ein universeller serieller Bus-
Port ist.
5. System nach Anspruch 4, das weiterhin einen
Compound-Hub aufweist, und bei dem der Compound-Hub an dem
Port über ein universelles serielles Buskabel angeschlossen
ist.
6. System nach Anspruch 4, bei dem der Computer
einen Lautsprecher umfasst und die Hinweiseinheit ein Au
diosignal erzeugt, das auf den Status des Konfigurations
prozesses hinweist.
7. Computersystem zur Verbesserung der Zuverlässigkeit
von Plug-and-Play-Peripheriegeräten für die univer
selle serielle Bus-(USB-)Schnittstelle, aufweisend:
- a) einen Computer mit zumindest einem USB- Downstream-Port;
- b) einen Compound-Hub, der einen Upstream-USB- Anschluss aufweist, der über ein USB-Kabel an den Port des Computers angeschlossen ist, wobei der Hub zumindest einen Downstream-USB-Anschluss-Port und zumindest einen Nicht- USB-Peripheriegerät-Port aufweist;
- c) ein Betriebssystem mit USB- Schnittstellenfähigkeit, das sich auf dem Computer befin det, wobei das Betriebssystem eine erste Subroutine zum Er zeugen einer ersten Nachricht, die darauf hinweist, dass das Betriebssystem eine Veränderung der Bustopologie er fasst, und eine zweite Subroutine erzeugt, um eine zweite Nachricht zu erzeugen, die darauf hinweist, dass das Be triebssystem einen Konfigurationsprozess für die Bustopolo gie abschließt;
- d) einen Nachrichtenhandhaber, der sich auf dem Computer befindet, um die ersten und zweiten Nachrichten zu hooken, wobei der Nachrichtenhandhaber eine Nachrichtenana lyseeinheit und eine Zustandsbestimmungseinheit aufweist, die angeordnet sind, um ein erstes Ausgangssignal vorzuse hen, wenn der Konfigurationsprozess läuft, und ein zweites Ausgangssignal vorzusehen, wenn der Konfigurationsprozess abgeschlossen ist; und
- e) eine Hinweiseinheit, die sich auf dem Computer befindet und mit dem Ausgang des Nachrichtenhandhabers ver bunden ist, wobei die Hinweiseinheit eine visuelle Anzeige erzeugt, die den Benutzer benachrichtigt, wenn es unsicher ist, ein Plug-and-Play-Gerät zu entfernen oder hinzuzufügen.
8. System nach Anspruch 7, bei dem die Hinweis
einheit eine erste Anzeige, die darauf hinweist, dass es
sicher ist, ein Gerät zu entfernen oder hinzuzufügen, eine
zweite Anzeige, die der Benachrichtigung entspricht, dass
die Konfiguration läuft, und eine dritte Anzeige erzeugt,
die der Benachrichtigung entspricht, dass der Konfigurati
onsprozess abgeschlossen ist.
9. System nach Anspruch 8, bei dem der Compound-
Hub eine Vielzahl von Peripheriegerät-Ports aufweist, um
die Funktion von zumindest einem Peripheriegerät-Port zu
replizieren, der nicht an dem Computer angeordnet ist, wo
durch die Gesamtanzahl von an dem Gehäuse angeordneten An
schlüssen verringert wird.
10. System nach Anspruch 9, bei dem der Compound-
Hub die Funktion von einem Maus-Port, einem seriellen Port,
einem Drucker-Port und einem Tastatur-Port repliziert, wo
bei der Computer diese Peripheriegerät-Ports nicht benö
tigt.
11. Verfahren zum Vorsehen einer Benachrichtigung
über den Status eines Konfigurationsprozesses eines Be
triebssystems eines Computers, der mit Peripheriegeräten
verbunden ist, mit den folgenden Schritten:
- a) Erfassen einer Ereignisnachricht, die immer dann durch das Betriebssystem erzeugt wird, wenn die Anzahl der an den Computer angeschlossenen Peripheriegeräte sich ändert;
- b) Feststellen, wenn die Erfassungsnachricht ei ner Veränderung der Anzahl oder des Typs der Peripheriege räte entspricht, die erfordert, dass der Benutzer benach richtigt wird;
- c) Benachrichtigen des Benutzers, dass ein Kon figurationsprozess läuft;
- d) Erfassen einer Abschlussnachricht, die durch das Betriebssystem erzeugt wird, wenn der Konfigurations prozess abgeschlossen ist;
- e) Feststellen, wenn die Abschlussnachricht ei ner Veränderung der Anzahl oder des Typs der Peripheriege räte entspricht, die erfordert, dass der Benutzer benach richtigt wird, dass der Konfigurationsprozess abgeschlossen ist;
- f) Benachrichtigen des Benutzers, dass der Kon figurationsprozess abgeschlossen ist; und
- g) Benachrichtigen des Benutzers, dass es sicher ist, die Anzahl oder den Typ von an den Computer ange schlossenen Peripheriegeräten zu verändern.
12. Verfahren zum Benachrichtigen eines Computer
benutzers über den Status eines Wieder-
Konfigurationsprozesses, der durch das Anschließen oder
Entfernen eines Peripheriegerätes an einen Computer über
einen universellen seriellen Busanschluss (USB) ausgelöst
wird, mit den folgenden Schritten:
- a) Vorsehen eines Betriebssystems, das den Com puter jedes Mal neu konfiguriert, wenn sich einen Verände rung der Anzahl oder des Typs der Peripherie-USB-Geräte än dert, wobei das Betriebssystem immer dann eine Erfassungs nachricht erzeugt, wenn sich die Anzahl von an den Computer angeschlossenen Peripheriegeräten derart ändert, dass der Konfigurationsprozess ausgelöst wird, und eine Benachrich tigungsnachricht, wenn der Konfigurationsprozess abge schlossen ist;
- b) Hooken der Erfassungsnachricht;
- c) Feststellen, wenn die Erfassungsnachricht ei ner Veränderung der Anzahl oder des Typs der Peripheriege räte entspricht, die erfordert, dass ein Benutzer benach richtigt wird;
- d) Benachrichtigen des Benutzers, dass ein Kon figurationsprozess läuft;
- e) Hooken der Abschlussnachricht:
- f) Feststellen, wenn die Abschlussnachricht ei ner Veränderung der Anzahl oder des Typs der Peripheriege räte entspricht, die erfordert, dass der Benutzer benach richtigt wird, dass der Konfigurationsprozess abgeschlossen ist;
- g) Benachrichtigen des Benutzers, dass der Kon figurationsprozess abgeschlossen ist; und
- h) Benachrichtigen des Benutzers, dass es sicher ist, die Anzahl oder den Typ von an dem Computer ange schlossenen Peripheriegeräten zu verändern.
13. Verfahren zu Verringerung der Häufigkeit von
Abstürzen eines universellen seriellen Busses in einem Com
putersystem, das aus einem über ein USB-Kabel an einen Com
pound-Hub angeschlossenen Computer besteht, mit den folgen
den Schritten:
- a) Vorsehen einer Konfigurationsbenachrichti gungseinheit, die einen Nachrichtenhandhaber und eine Hin weiseinheit aufweist, wobei die Konfigurationsbenachrichtigungseinheit interne Nachrichten überwacht, die durch ein Betriebssystem erzeugt werden und mit einem Konfigurations prozess zusammenhängen, wobei die Konfigurationsbenachrich tigungseinheit eine Computeranzeigeausgabe vorsieht, die darauf hinweist, wenn ein Konfigurationsprozess für ein USB-Gerät läuft;
- b) Verändern der Anzahl von an den Hub ange schlossenen Peripheriegeräten; und
- c) Warten bis die Konfigurationsbenachrichti gungseinheit darauf hinweist, dass die Konfiguration abge schlossen ist, bevor die Anzahl von an den Hub angeschlos senen Geräten verändert wird.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/467,569 US6934774B1 (en) | 1999-12-20 | 1999-12-20 | Method and system for reliable device configuration in a computer system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10061991A1 true DE10061991A1 (de) | 2001-06-28 |
Family
ID=23856247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10061991A Withdrawn DE10061991A1 (de) | 1999-12-20 | 2000-12-13 | Verfahren und System zur zuverlässigen Gerätekonfiguration in einem Computersystem |
Country Status (3)
Country | Link |
---|---|
US (1) | US6934774B1 (de) |
JP (1) | JP2001222502A (de) |
DE (1) | DE10061991A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004062967A1 (de) * | 2004-12-28 | 2006-07-06 | Röllgen, Bernd | Verfahren zum Konfigurieren von Geräten in einem Computernetzwerk durch ein Computerprogramm |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7127678B2 (en) * | 2000-12-21 | 2006-10-24 | Microsoft Corporation | System and method to specify device specific user interface information in the firmware of a USB device |
US7050923B2 (en) * | 2001-08-15 | 2006-05-23 | National Instruments Corporation | Network-based system for configuring a measurement system using configuration information generated based on a user specification |
JP3707410B2 (ja) | 2001-09-17 | 2005-10-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータ装置、拡張デバイスの管理方法、コンピュータプログラム |
US7167372B2 (en) * | 2003-08-26 | 2007-01-23 | Belkin Corporation | Universal serial bus hub and method of manufacturing same |
JP3578153B2 (ja) | 2002-05-31 | 2004-10-20 | ブラザー工業株式会社 | 情報処理装置、プログラム、記録媒体、及びインストール状況表示方法 |
US7203774B1 (en) * | 2003-05-29 | 2007-04-10 | Sun Microsystems, Inc. | Bus specific device enumeration system and method |
JP4506186B2 (ja) * | 2004-02-06 | 2010-07-21 | 富士ゼロックス株式会社 | 決済装置及びプログラム |
WO2007077583A1 (en) | 2005-12-30 | 2007-07-12 | Telecom Italia S.P.A. | Method and system for managing an internet connection and informing a user about connectivity |
US8473664B2 (en) * | 2006-12-11 | 2013-06-25 | Intel Corporation | Safe removal of external device from computing device |
US8495494B2 (en) * | 2007-04-12 | 2013-07-23 | Nuance Communications, Inc. | Method and system for mapping a virtual human machine interface for a mobile device |
US8589955B2 (en) * | 2008-02-12 | 2013-11-19 | Nuance Communications, Inc. | System and method for building applications, such as customized applications for mobile devices |
US20100070660A1 (en) * | 2008-09-15 | 2010-03-18 | David Karl Serisky | Detecting access of video teleconferencing endpoint hardware device serial port |
US20100073160A1 (en) * | 2008-09-25 | 2010-03-25 | Microsoft Corporation | Alerting users using a multiple state status icon |
WO2010114523A1 (en) * | 2009-03-31 | 2010-10-07 | Hewlett-Packard Development Company, L.P. | Bios usb write prevent |
JP5328511B2 (ja) * | 2009-06-24 | 2013-10-30 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法、及びプログラム |
US20110185090A1 (en) * | 2010-01-25 | 2011-07-28 | Marat Kushnir | Apparatus for Translating and Expanding Inputs for a Point Of Sale Device |
US8566934B2 (en) | 2011-01-21 | 2013-10-22 | Gigavation, Inc. | Apparatus and method for enhancing security of data on a host computing device and a peripheral device |
US8869273B2 (en) | 2011-01-21 | 2014-10-21 | Gigavation, Inc. | Apparatus and method for enhancing security of data on a host computing device and a peripheral device |
CN102999449A (zh) * | 2011-09-19 | 2013-03-27 | 艾欧互联有限公司 | 具有连接识别功能的端口扩充器及其识别方法 |
CN105373499B (zh) * | 2014-08-29 | 2018-12-21 | 昆山纬绩资通有限公司 | 移除外接设备的方法及计算机系统与非瞬态可读介质 |
US20160154473A1 (en) * | 2014-11-28 | 2016-06-02 | Kabushiki Kaisha Toshiba | Electronic apparatus and method |
US9753673B1 (en) | 2015-12-29 | 2017-09-05 | Western Digital Technologies, Inc. | Bus-powered data storage device with warning alarm triggered by improper removal of power from host compute device |
CN109947482B (zh) * | 2017-12-21 | 2022-07-29 | 深圳Tcl新技术有限公司 | 一种usb设备的加载方法、存储介质及智能电视 |
US10361511B1 (en) | 2018-06-27 | 2019-07-23 | Western Digital Technologies, Inc. | Removal delay feature for removably connected devices |
JP2020122805A (ja) * | 2020-05-22 | 2020-08-13 | 日置電機株式会社 | 加算平均ユニットおよび測定装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5386360A (en) * | 1989-05-09 | 1995-01-31 | Ansan Industries Ltd. | Peripheral data acquisition, monitor, and adaptive control system via personal computer |
US5548782A (en) * | 1993-05-07 | 1996-08-20 | National Semiconductor Corporation | Apparatus for preventing transferring of data with peripheral device for period of time in response to connection or disconnection of the device with the apparatus |
US5787019A (en) * | 1996-05-10 | 1998-07-28 | Apple Computer, Inc. | System and method for handling dynamic changes in device states |
US5953010A (en) * | 1997-08-01 | 1999-09-14 | Sun Microsystems, Inc. | User-friendly iconic message display indicating progress and status of loading and running system program in electronic digital computer |
US5958020A (en) * | 1997-10-29 | 1999-09-28 | Vlsi Technology, Inc. | Real time event determination in a universal serial bus system |
US6473811B1 (en) * | 1998-03-13 | 2002-10-29 | Canon Kabushiki Kaisha | Method and apparatus for displaying a connection status of a device based on connection information |
US6466981B1 (en) * | 1998-06-30 | 2002-10-15 | Microsoft Corporation | Method using an assigned dynamic IP address and automatically restoring the static IP address |
US6389029B1 (en) * | 1998-11-10 | 2002-05-14 | Nortel Networks Limited | Local area network incorporating universal serial bus protocol |
US6286066B1 (en) * | 1998-12-15 | 2001-09-04 | Dell U.S.A., L.P. | Hot-plug interface for detecting adapter card insertion and removal |
US6389560B1 (en) * | 1999-01-19 | 2002-05-14 | Sun Microsystems, Inc. | Universal serial bus interpreter |
-
1999
- 1999-12-20 US US09/467,569 patent/US6934774B1/en not_active Expired - Fee Related
-
2000
- 2000-12-13 DE DE10061991A patent/DE10061991A1/de not_active Withdrawn
- 2000-12-19 JP JP2000384611A patent/JP2001222502A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004062967A1 (de) * | 2004-12-28 | 2006-07-06 | Röllgen, Bernd | Verfahren zum Konfigurieren von Geräten in einem Computernetzwerk durch ein Computerprogramm |
Also Published As
Publication number | Publication date |
---|---|
US6934774B1 (en) | 2005-08-23 |
JP2001222502A (ja) | 2001-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10061991A1 (de) | Verfahren und System zur zuverlässigen Gerätekonfiguration in einem Computersystem | |
US8001302B2 (en) | Redirecting input and output for multiple computers | |
JP3418128B2 (ja) | Usbシステム用のemsエンハンスメント回路 | |
US5581712A (en) | Method and apparatus for managing live insertion of CPU and I/O boards into a computer system | |
DE69730916T2 (de) | Rechnersystem mit Ankopplungs-Entfernungsmöglichkeiten ohne Stillmodus oder Haltmodus | |
JP4156663B2 (ja) | ネットワーク内でプログラムを監視し、制御する方法および装置 | |
US7555676B2 (en) | Systems and methods for providing remotely accessible in-system emulation and/or debugging | |
US5852743A (en) | Method and apparatus for connecting a plug-and-play peripheral device to a computer | |
DE19737214A1 (de) | Verfahren zum Betreiben eines Computersystems | |
DE102010000124A1 (de) | Hybride Computersysteme | |
US20050276092A1 (en) | Virtual mass storage device for server management information | |
DE10234991A1 (de) | Hostcontrollerdiagnose für einen seriellen Bus | |
DE19808988B4 (de) | Target-Eingabe/Ausgabesystem zum Koppeln eines auf Hardwarelogik basierenden Emulators an ein Target-System | |
DE19604251C2 (de) | Emulationsvorrichtung für Microcomputer, Verfahren zur Erfassung einer Vielzahl von Statusdaten und Fehlerbeseitigungssystem | |
DE102018101028B3 (de) | Mikrocontrollersystem mit schaltungsinternem Debugger | |
DE4434528C2 (de) | Verfahren zum Bereitstellen von Kartendienstefunktionen sowie Computersystem zum Ausführen eines solchen Verfahrens | |
EP0990973A1 (de) | Vefahren und Vorrichtung zum Erleichtern vom Einbringen und der Entfernung von Modulen in einem Rechnersystem | |
DE102006045193A1 (de) | Hot-Pluggable Video-Anzeige-Karte und Computersystem davon | |
WO1999046667A1 (en) | Computer expansion system | |
DE102007047597A1 (de) | Transparente Unterstützung von mehreren Busschnittstellen eines Gerätes | |
US7681156B2 (en) | Transmission circuit simulator and transmission circuit simulation program storage medium | |
DE69907966T2 (de) | Verfahren und gerät zur ausschaltung eines graphischen gerätes wenn ein aufwertungsgerät eingebaut ist | |
DE19962723A1 (de) | Verfahren und Vorrichtung zum Erkennen von Handshaking-Protokollfehlern auf einem asynchronen Datenbus | |
DE10359684B4 (de) | Anordnung und Verfahren zur Fernabschaltung einer Rechnereinheit | |
DE102017120182A1 (de) | Zuordnen von Datenbussen zu Management-Bus-Verbindungen für Peripheriegeräte |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8139 | Disposal/non-payment of the annual fee |