DE112009004568T5 - Unterteilung von usb-verbund oder -gesamtvorrichtungen in einerentfernten usb-umgebung - Google Patents

Unterteilung von usb-verbund oder -gesamtvorrichtungen in einerentfernten usb-umgebung Download PDF

Info

Publication number
DE112009004568T5
DE112009004568T5 DE112009004568T DE112009004568T DE112009004568T5 DE 112009004568 T5 DE112009004568 T5 DE 112009004568T5 DE 112009004568 T DE112009004568 T DE 112009004568T DE 112009004568 T DE112009004568 T DE 112009004568T DE 112009004568 T5 DE112009004568 T5 DE 112009004568T5
Authority
DE
Germany
Prior art keywords
usb
computer host
functions
computer
virtual
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.)
Ceased
Application number
DE112009004568T
Other languages
English (en)
Inventor
James M. King
Rick E. Aulino
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE112009004568T5 publication Critical patent/DE112009004568T5/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Transfer Systems (AREA)

Abstract

Es sind ein System und Verfahren zum Unterteilen von USB-Verbund- oder -Gesamtvorrichtungen in einer entfernten USB-Umgebung vorgesehen. Ein erster Computer-Host weist eine USB-Remote-Zugriff-Logik und eine USB-Vorrichtungsunterteilungslogik auf. Die USB-Remote-Zugriff-Logik ist dazu konfiguriert, zu bewirken, dass eine an den ersten Computer-Host angeschlossene USB-Vorrichtung für Ressourcen, die auf einem zweiten oder dritten Computer-Host ablaufen, zugänglich ist. Wenn eine USB-Verbund- oder -Gesamtvorrichtung mit dem ersten Computer-Host verbunden ist, präsentiert die USB-Vorrichtungsunter dem zweiten Computer-Host und eine zweite virtuelle USB-Vorrichtung dem dritten Computer-Host. Die erste und die zweite virtuelle USB-Vorrichtung enthalten jeweils verschiedene Teile aus einer Unterteilung des Satzes von USB-Funktionen, die in der zugrundeliegenden USB-Verbund- oder -Gesamtvorrichtung vorliegen.

Description

  • Gebiet der Erfindung
  • Diese Erfindung bezieht sich allgemein auf Techniken zum Bewirken, dass Universal-Serien-Bus-Peripheriegeräte („USB”-Peripheriegeräte), die an einen ersten Computer-Host angeschlossen sind, für Ressourcen zugänglich sind, die auf einem zweiten Computer-Host, der von dem ersten entfernt ist, ablaufen.
  • Hintergrund
  • Es gibt Protokolle, die einen Nutzer an einem lokalen Computer befähigen, über ein Computernetzwerk auf den Desktop eines entfernten Computers (z. B. eines zentralen Servers) zuzugreifen und denselben mit zu nutzen. Ein derartiges Protokoll ist das Remote Desktop Protocol („RDP”, Entferntes-Desktop-Protokoll), wie es von Microsoft Corporation bereitgestellt wird, das entfernte Anzeige- und Eingabefähigkeiten über Netzwerkverbindungen bereitstellt. Ein weiteres Protokoll, das in diesem Zusammenhang verwendet werden kann, ist das Remote Graphics Software protocol („RGS”-Protokoll, RGS = Entfernte-Graphik-Software) von der Firma Hewlett Packard. RGS ist dahin gehend entworfen, die Computer- und Graphikressourcen eines entfernten Computers zu nutzen, um an dem lokalen Computer einen interaktiven Fernzugriff zu liefern. Die Desktop-Graphikdaten des entfernten Computers werden über ein Netzwerk an den lokalen Computer gesendet, der die Desktop-Graphikdaten lokal in einem Fenster an dem lokalen Computer anzeigt. RGS erfasst Tastatur- und Mauseingaben eines Nutzers an dem lokalen Computer und sendet die Tastatur- und Mauseingaben an den entfernten Computer zur Verarbeitung durch das Betriebssystem des entfernten Computers und durch Anwendungen, die auf dem entfernten Computer ablaufen. RGS ermöglicht auch, dass Daten mancher Peripheriegeräte wie z. B. Speichervorrichtungen von dem lokalen Computer an den entfernten Computer kommuniziert werden.
  • Eine moderne Ergänzung für RDP-, RGS- oder ähnliche Systeme ist die Fähigkeit, zu bewirken, dass eine USB-Vorrichtung, die physisch an den lokalen Computer-Host angeschlossen ist, für Ressourcen zugänglich ist, die auf dem entfernten Computer-Host ablaufen. Letztere Anordnung wird hiernach als „entfernte USB-Umgebung” bezeichnet.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, das ein Verfahren zum Unterteilen (Partitionieren) von USB-Verbund- oder -Gesamtvorrichtungen in einer entfernten USB-Umgebung gemäß einem bevorzugten Ausführungsbeispiel der Erfindung veranschaulicht.
  • 2 ist ein Blockdiagramm, das die Computer-Hosts der 1 gemäß einem bevorzugten Ausführungsbeispiel der Erfindung ausführlicher veranschaulicht.
  • 3 ist ein Flussdiagramm, das ein Verfahren zum Unterteilen von USB-Verbund- oder -Gesamtvorrichtungen in einer entfernten USB-Umgebung gemäß einem bevorzugten Ausführungsbeispiel der Erfindung veranschaulicht.
  • 4 ist eine Tabelle, die einen beispielhaften Zustand veranschaulicht, der in der Lage ist, gemäß einem bevorzugten Ausführungsbeispiel der Erfindung anzugeben, welchen von mehreren Hosts die Funktionen von USB-Verbund- oder -Gesamtvorrichtungen präsentiert werden sollten.
  • 5 ist ein Blockdiagramm, das eine beispielhafte Unterteilung der USB-Funktionen, die in der Verbund- und der Gesamtvorrichtung der 1 enthalten sind, gemäß einem bevorzugten Ausführungsbeispiel der Erfindung veranschaulicht.
  • 6 ist ein Flussdiagramm, das ein Verfahren zum Einstellen des Zustands der 4 gemäß einem bevorzugten Ausführungsbeispiel der Erfindung veranschaulicht.
  • 7 ist ein Flussdiagramm, das ein Verfahren zum Einstellen des Zustands der 4 gemäß einem weiteren bevorzugten Ausführungsbeispiel der Erfindung veranschaulicht.
  • 8 ist ein Flussdiagramm, das ein Verfahren zum Einstellen des Zustands der 4 gemäß einem wieder anderen bevorzugten Ausführungsbeispiel der Erfindung veranschaulicht.
  • Ausführliche Beschreibung der bevorzugten Ausführungsbeispiele
  • 1 veranschaulicht ein System 100 zum Unterteilen von USB-Verbund- oder -Gesamtvorrichtungen in einer entfernten USB-Umgebung gemäß einem bevorzugten Ausführungsbeispiel der Erfindung. Es sind drei Computer-Hosts 102, 104, 106 abgebildet. Bei anderen Ausführungsbeispielen können mehr Computer-Hosts verwendet werden. Der Computer-Host 102 ist mit einer USB-Remote-Zugriff-Logik (USB-Fernzugriff-Logik) 108 ausgestattet, und die Computer-Hosts 104 und 106 sind mit einer USB-Remote-Zugriff-Logik 109 ausgestattet. Die USB-Remote-Zugriff-Logiken 108, 109 werden nachstehend in Bezug auf 2 ausführlicher beschrieben. Bei manchen Ausführungsbeispielen kann der Host 102 Zugriff auf eine Konfigurationsdatei 110 haben, beispielsweise eine Speichervorrichtung oder einen Speicher, die bzw. der sich lokal an dem Host 102 befindet oder dem Host 102 anderweitig anhand herkömmlicher Mittel zur Verfügung steht. Vorzugsweise sind die Hosts 102, 104, 106 in der Lage, über ein Netzwerk 114 miteinander zu kommunizieren. Das Netzwerk 114 kann eine beliebige herkömmliche Form aufweisen, beispielsweise ein TCP/IP-Netzwerk oder ein UDP/IP-Netzwerk. Mit Ausnahme des Vorhandenseins der USB-Remote-Zugriff-Logik 108/109 können die Hosts 102, 104, 106 die Form einer beliebigen herkömmlichen Rechenvorrichtung aufweisen, und die Hosts 102, 104, 106 müssen nicht identisch sein. Beispielsweise kann ein beliebiger bzw. können beliebige der oder alle drei Hosts die Form eines Desktop-Computers, eines Server-Computers, eines eingebetteten Computers oder einer tragbaren Rechenvorrichtung wie z. B. eines Laptop- oder in der Hand zu haltenden Computers aufweisen. Demgemäß ist jeder Host normalerweise mit zumindest einer Zentralverarbeitungseinheit zum Ausführen eines Codes und einem Speicher zum Speichern des Codes sowie verwandter Daten und sonstiger Informationen ausgestattet.
  • Der Host 102 kann mit einer USB-Host-Steuerung 116 ausgestattet sein, sodass er mit einer USB-Gesamtvorrichtung 118 und/oder einer USB-Verbundvorrichtung 120 verbunden sein kann. (Bei tatsächlichen Ausführungsbeispielen kann eine beliebige Anzahl, Art und Kombination von USB-Vorrichtungen mit dem Host 102 verbunden sein – sogar eine einzige Vorrichtung; die in der Zeichnung gezeigte Konfiguration dient lediglich Veranschaulichungszwecken.) Die USB-Gesamtvorrichtung 118 und die USB-Verbundvorrichtung 120 können herkömmlich sein. Jede enthält mehrere USB-Funktionen. Beispielsweise könnte die Gesamtvorrichtung 118 USB-Funktionen 122, 124 und 126 enthalten, und die Verbundvorrichtung könnte USB-Funktionen 128, 130 und 132 enthalten, wie gezeigt ist. Bei tatsächlichen Ausführungsbeispielen könnte jede der Gesamtvorrichtung 118 und der Verbundvorrichtung 120 weniger oder mehr USB-Funktionen als die gezeigten enthalten. Die in den Vorrichtungen enthaltenen USB-Funktionen können ein beliebiger herkömmlicher Typ sein. Beispiele typischer USB-Funktionen sind Tastaturen, Mäuse, Audiovorrichtungen, Videovorrichtungen, biometrische Vorrichtungen und dergleichen. Gemäß dem USB-Standard ist eine USB-Gesamtvorrichtung eine, die eine einzige Vorrichtungsadresse, jedoch zahlreiche Schnittstellendeskriptoren (Schnittstellenbeschreibungselemente) aufweist. Eine USB-Verbundvorrichtung dagegen weist mehrere Vorrichtungsadressen auf, die über eine interne Zentralstation (ein internes Hub), die (bzw. das) ebenfalls eine Adresse aufweist, zugänglich sind.
  • 2 veranschaulicht die Computer-Hosts 102, 104, 106 ausführlicher. Die USB-Remote-Zugriff-Logik 108 in dem Host 102 kann eine Virtuelles-Zwischenelement-Logik 200 und eine Sende-/Empfangslogik 202 enthalten. Überdies kann die Virtuelles-Zwischenelement-Logik 200 eine Vorrichtungsunterteilungslogik 204 enthalten. Desgleichen kann die USB-Remote-Zugriff-Logik 109 in den Hosts 104, 106 eine Virtuelles-Zwischenelement-Logik 206, eine Sende-/Empfangslogik 208 und bei manchen Ausführungsbeispielen eine Entscheidungsprotokolllogik 210 enthalten. Vorzugsweise ist jeder Host dahin gehend ausgestattet, anhand einer Einrichtung wie beispielsweise einer Netzwerkschnittstellenkarte („NIC” – network interface card) 212 eine Schnittstelle mit dem Netzwerk 114 zu bilden. Die Sende-/Empfangslogiken 202, 208 sind dazu konfiguriert, über das Netzwerk 114 Pakete zwischen sich zu kommunizieren. Die Pakete können Befehle und Daten darstellen, die zwischen einer Nutzerebenenanwendung 214 an dem Host 104 oder 106 und einer mit dem Host 102 verbundenen USB-Vorrichtung hin- und hergelangen. Pakete können auch Benachrichtigungs- und Konfigurationsbefehle und -daten darstellen, die zwischen Kernraumentitäten (z. B. einer Kern-Teilsysteme-/IO-Verwaltungseinrichtung 232 und/oder einem oberen USB-Vorrichtungsstapel 216) innerhalb der Hosts 104, 106 und einer mit dem Host 102 verbundenen USB-Vorrichtung bin- und hergelangen. (Weitere Informationen über eine beispielhafte Implementierung eines Sendens von USB-Vorrichtungsinformationen zwischen Hosts über ein Netzwerk findet der Leser in der U.S.-Patentanmeldung Seriennummer 11/343,791 mit dem Titel „Emulation of a Device Protocol”, die hiermit so in das vorliegende Dokument aufgenommen ist, als würde sie gänzlich hierin dargelegt.) Die Virtuelles-Zwischenelement-Logik 206 ist dazu konfiguriert, eine Schnittstelle zwischen der Sende/Empfangslogik 208 und zumindest einem teilweisen Vorrichtungstreiberstapel in dem Host 104/106 wie z. B. dem oberen USB-Vorrichtungsstapel 216 zu bilden. Die Virtuelles-Zwischenelement-Logik 200 ist dazu konfiguriert, eine Schnittstelle zwischen der Sende/Empfangslogik 202 und zumindest einem teilweisen Vorrichtungstreiberstapel in dem Host 102 wie z. B. dem unteren USB-Vorrichtungsstapel 218 zu bilden. Bei manchen Ausführungsbeispielen kann die Virtuelles-Zwischenelement-Logik 206 auch eine Schnittstelle mit einem unteren USB-Vorrichtungsstapel 220 bilden, der eine USB-Host-Steuerung 222 treibt. Bei manchen Ausführungsbeispielen kann die Virtuelles-Zwischenelement-Logik 200 auch eine Schnittstelle mit einem oberen USB-Vorrichtungsstapel 224 bilden, der über eine Kern-Teilsysteme-/IO-Verwaltungseinrichtung 228 und eine Anwendungsprogrammiererschnittstelle („API” – application programmer's interface) 230 eine Schnittstelle mit einer Anwendung 226 bildet. Der obere USB-Vorrichtungsstapel 216 würde normalerweise eine Schnittstelle mit einer Kern-Teilsysteme-/IO-Verwaltungseiririchtung 232 bilden, die wiederum über eine API 234 eine Schnittstelle mit der Anwendung 214 bilden kann.
  • Die Betriebsumgebung in den Hosts 102, 104, 106 muss nicht dieselbe sein. Beispielsweise kann einer der Hosts ein Windows-Betriebssystem von Microsoft, ein Unix- oder Linux-Betriebssystem oder eine andere Art von Betriebssystem verwenden. Mit dem Vokabular der Microsoft Windows Driver Foundation wäre ein Beispiel eines Objekts, das in dem oberen USB-Vorrichtungsstapel 216 vorliegen könnte, ein Funktionstreiberobjekt („FDO” – function driver object) sowie vielleicht ein oder mehrere USB-Filtertreiber. Ein Beispiel eines Objekts, das in dem unteren USB-Vorrichtungsstapel 218 vorliegen könnte, wäre ein Physische-Vorrichtung-Objekt („PDO” – physical device object) sowie vielleicht zusätzliche USB-Filtertreiber. Auf anderen Plattformen kann andere Terminologie verwendet werden, und andere Objekte können in den Stapeln vorliegen. Die Auswirkung der in 2 gezeigten Konfiguration ist die, dass an den Host 102 angeschlossene USB-Vorrichtungen über das Netzwerk 114 für Ressourcen, die auf den Hosts 104, 106 ablaufen, beispielsweise Kernraumentitäten und/oder Anwendungen wie beispielsweise die Anwendung 214, zugänglich gemacht werden können.
  • Im Folgenden wird nun in Bezug auf 35 bevorzugtes Verhalten für das System der 1 und 2 beschrieben. Insbesondere 3 beschreibt ein Verfahren 300 zum Unterteilen von oder USB-Verbund- oder -Gesamtvorrichtungen in einer entfernten USB-Umgebung, wie z. B. der der 1 und 2, gemäß einem bevorzugten Ausführungsbeispiel der Erfindung. Bei Schritt 302 kann in dem Host 102 ein Zustand 400 eingestellt werden, um eine Abbildung lokaler USB-Funktionen 122132 auf die entfernten Hosts 104, 106 zu liefern. Der Zweck des Zustands 400 besteht darin, anzugeben, welchem entfernten Host zumindest manche der USB-Funktionen 122132 präsentiert werden sollten, sodass die Form und der Inhalt des Zustands 400 von Ausführungsbeispiel zu Ausführungsbeispiel variieren können. Bei manchen Ausführungsbeispielen kann der Zustand 400 unter Verwendung von Einträgen, die speziell USB-Funktionen, die tatsächlich vorliegen, identifizieren, beispielsweise durch Vorrichtungsadressen und Schnittstellendeskriptoren, manche oder alle der Funktionen 122132 auf Hosts abbilden. Die Hosts können anhand beliebiger herkömmlicher Mittel, z. B. anhand der IP-Adresse, identifiziert werden. Bei anderen Ausführungsbeispielen kann der Zustand 400 stattdessen eine allgemeinere Abbildung auf Hosts anhand des USB-Funktionstyps liefern. Beispielsweise kann der Zustand 400 bei manchen Ausführungsbeispielen Vorgaben aufweisen, um dem Host 104 alle USB-Audiofunktionen (eine erste vorbestimmte Klasse von nach Kategorie identifizierten Funktionen) zu präsentieren und dem Host 106 alle biometrischen USB-Funktionen (eine zweite vorbestimmte Klasse von nach Kategorie identifizierten Funktionen) zu präsentieren. Nicht jede Funktion oder Klasse von Funktionen muss auf einen Host abgebildet sein. Bei dem in 4 veranschaulichten Zustand beispielsweise werden Videofunktionen auf keinen Host abgebildet. Die zuletzt genannte Technik kann dazu verwendet werden, zu verhindern, dass bestimmte USB-Funktionen, die in den Vorrichtungen 118, 120 existieren, einem jeglichem entfernten Host zur Verfügung gestellt werden. Auch können Klassen von USB-Funktionen in der Abbildung mehr als einen Typ umfassen. In dem Zustand 400 ist beispielsweise eine „andere” Klasse vorgesehen, sodass jegliche Art von Funktion, die nicht in die spezifisch aufgezählten Kategorien fallt, standardmäßig auf einen bestimmten Host (bei dem Beispiel auf den Host 104) abgebildet werden kann. Der Zustand 400 kann anhand beliebiger herkömmlicher Mittel an dem Host 102 gespeichert werden, beispielsweise in einem Speicher.
  • Bei manchen Ausführungsbeispielen kann die Reihenfolge der Schritte 302 und 304 umgekehrt werden. Bei Schritt 304 steckt ein Nutzer eine Multifunktions-USB-Vorrichtung wie z. B. die Vorrichtung 118 oder die Vorrichtung 120 in den Host 102 ein. Bei einem herkömmlichen Host würde dieser Vorgang eine Plug-and-Play-Funktionalität in den Kern-Teilsystemen des lokalen Hosts aufrufen, um einen geeigneten Treiber oder geeignete Treiber zum Handhaben der neu entdeckten Vorrichtung zu laden. Jedoch kommuniziert die USB-Remote-Zugriff-Logik 108 bei dem Host 102 stattdessen mit einer oder mehreren der USB-Remote-Zugriff-Logiken 109 bei dem Host 104 oder 106, um eine Plug-and-Play-Funktionalität in den Kern-Teilsystemen dieser Hosts aufzurufen. Die Folge ist, dass ein geeigneter Treiber oder geeignete Treiber in den Host 104 oder 106 statt in den Hast 102 geladen werden.
  • Insbesondere wird die Vorrichtungsunterteilungslogik 204 bei Schritt 306 aktiv, dies auf eine spezielle Art und Weise zu tun. Die Vorrichtungsunterteilungslogik 204 unterteilt nämlich den Satz von USB-Funktionen, die in der Verbund- oder Gesamtvorrichtung vorliegen, in zwei oder mehr ordnungsgemäße Teilsätze von Funktionen gemäß dem Zustand 400. Dabei erzeugt sie zumindest eine virtuelle USB-Vorrichtung, die zumindest einem Teil des unterteilten Satzes von USB-Funktionen entspricht. Jegliche geeignete Datenstrukturen können für den Zweck des internen Darstellens der virtuellen Vorrichtung oder des Übersetzens zwischen der virtuellen Vorrichtung und der verwandten physischen Vorrichtung, die tatsächlich die Funktionen enthält, die bei der virtuellen Vorrichtung präsentiert werden, verwendet werden.
  • 5 veranschaulicht ein Beispiel einer derartigen Unterteilung. Bei dem Beispiel der 5 wurden die USB-Funktionen 122 und 126 aus der physischen Gesamtvorrichtung 118 zu einer virtuellen USB-Vorrichtung 500 kombiniert, während die USB-Funktion 124 aus der physischen Gesamtvorrichtung 118 in eine weitere virtuelle USB-Vorrichtung 502 ausgelagert wurde. Desgleichen wurde die USB-Funktion 132 aus der physischen Verbundvorrichtung 120 in eine virtuelle USB-Vorrichtung 504 ausgelagert, während die USB-Funktionen 128, 130 in eine andere virtuelle USB-Vorrichtung 506 kombiniert wurden. Somit entsprechen die virtuellen Vorrichtungen 500, 502 jeweils verschiedenen Teilen einer Unterteilung (Partition) des Satzes von USB-Funktionen 122126. Desgleichen entsprechen die virtuellen Vorrichtungen 504, 506 jeweils verschiedenen Teilen einer Unterteilung (Partition) des Satzes von USB-Funktionen 128132.
  • Bei dem gezeigten Beispiel decken die in den virtuellen Vorrichtungen 500, 502 enthaltenen USB-Funktionen den Satz von USB-Funktionen 122126 ab, und die in den virtuellen Vorrichtungen 504, 506 enthaltenen USB-Funktionen decken den Satz von USB-Funktionen 128132 ab. Jedoch müssen bei alternativen Ausführungsbeispielen die in den virtuellen Vorrichtungen enthaltenen Funktionen nicht den gesamten Satz von in den zugrundeliegenden physischen Vorrichtungen enthaltenen Funktionen abdecken. (Beispielsweise könnte bei dem Beispiel des Zustands 400 jegliche Videofunktion, die in einer der Vorrichtungen 118 oder 120 vorliegt, unterdrückt werden, indem sie in keine der virtuellen Vorrichtungen aufgenommen wird).
  • Als Beispiel sei angenommen, dass die gerade eingesteckte Vorrichtung die Gesamtvorrichtung 118 sei. Bei Schritt 308 kann der Host 102 dann an den Host 104 eine Nachricht senden, die angibt, dass eine neue USB-Vorrichtung 500 eingesteckt wurde, und bei Schritt 312 kann er an den Host 106 eine Nachricht senden, die angibt, dass eine neue USB-Vorrichtung 502 eingesteckt wurde. Wäre die soeben eingesteckte Vorrichtung dagegen die Verbundvorrichtung 120, könnte der Hast 102 bei Schritt 308 an den Host 104 eine Nachricht senden, die angibt, dass eine neue USB-Vorrichtung 504 eingesteckt wurde, und er könnte bei Schritt 312 an den Host 106 eine Nachricht senden, die angibt, dass eine neue USB-Vorrichtung 506 eingesteckt wurde. Die Vorrichtungsunterteilungslogik 204 kann dies bewerkstelligen, indem sie ansprechend auf in dem Zustand 400 gespeicherte Informationen bestimmt, welchem entfernten Host jede der Funktionen präsentiert werden soll. Ab diesem Punkt kann die herkömmliche Plug-and-Play-Funktionalität bei den Hosts 104, 106 aufgerufen werden, um Treiber zu laden, die für jede der neu angekündigten Vorrichtungen 500506 geeignet sind.
  • Das System der Erfindung ist in der Lage, zu gewährleisten, dass jegliche der virtuellen Vorrichtungen 500506, die für einen entfernten Hast sichtbar gemacht wird, für einen anderen entfernten Host nicht sichtbar gemacht wird. Dies kann bei den Schritten 310 und 314 bewerkstelligt werden. Falls nicht gewünscht ist, dass der Host 106 in der Lage ist, die Vorrichtungen 500, 504 zu sehen, so werden bei den Schritten 310 und 314 die Ankündigungsnachrichten, die diesen Vorrichtungen entsprechen, einfach nicht an den Host 106 gesendet. Eine ähnliche Nachrichtenunterdrückung kann bei den Schritten 310, 314 gegenüber dem Host 104 bezüglich der Vorrichtungen 502, 506 implementiert werden.
  • Bezüglich des Einstellen des Zustandes 400 bei Schritt 302 kann eine Vielzahl von Techniken eingesetzt werden. Eine Technik, die eingesetzt werden kann, besteht darin, den Zustand 400, oder Daten, aus denen der Zustand 400 konstruiert werden kann, in einer Konfigurationsdatei 110 zu speichern. Dann kann der Zustand 400 eingestellt werden, indem die Konfigurationsdatei 110 dann, wenn die Remote-USB-Sitzung initialisiert wird, oder danach gelesen wird.
  • Eine weitere Technik, die verwendet werden kann, besteht darin, den Zustand 400 unter Verwendung der Entscheidungsprotokolllogik 210 einzustellen, für die ein bevorzugtes Verhalten durch das Verfahren 600 in 6 veranschaulicht ist. Im Einzelnen können die Hosts 104 und 106 (und etwaige andere entfernte Hosts, falls das System 100 mehr als zwei entfernte Hosts umfasst) bei Schritt 602 während der Zeit, in der die Remote-USB-Sitzung initialisiert wird, oder danach, über das Netzwerk 114 einander und/oder an den Host 102 Nachrichten senden, um zu bestimmen, welche(r) der entfernten Hosts welche der USB-Funktionen, die an dem Host 102 vorliegen (oder vorliegen könnten), handhaben wird. Die Entscheidung kann auf eine beliebige geeignete Weise vonstatten gehen. Beispielsweise kann jedem der Hosts eine eindeutige Priorität zugewiesen werden, sodass in dem Fall, dass beide Hosts einen Wunsch oder eine Fähigkeit, biometrische Funktionen zu handhaben, ankündigen, der Host mit der höheren Priorität dazu bestimmt wird, diese Funktion ausschließlich zu handhaben. Gewöhnliche Fachleute, die Zugang zu dieser Offenbarung haben, werden erkennen, dass verschiedene Verfahren zum Durchführen der Entscheidung ersonnen werden können und dass derartige Verfahren für die Arten verteilter Anwendungen, die implementiert werden, spezifisch sein können. (Beispielsweise könnte das soeben erwähnte Priorisierungsschema bei einer verteilten Anwendung angebracht sein, bei der Nutzer unter Verwendung eines einzelnen sicheren Servers 106 biometrisch authentifiziert werden sollen und, nachdem sie authentifiziert wurden, die Möglichkeit haben sollten, auf Audio- und Videoressourcen auf einem zweiten Server 104 zuzugreifen.) Nachdem die Entscheidung abgeschlossen ist, können dann Ergebnisse der Entscheidung zur Implementierung an den Host 102 kommuniziert werden. Beispielsweise kann der Host 104 bei Schritt 604 eine Nachricht an den Host 102 senden, um sich als derjenige Host zu registrieren, der einen Satz von USB-Funktionen handhaben wird; und bei Schritt 606 kann der Host 106 an den Host 102 eine Nachricht senden, um sich als derjenige Host zu registrieren, der einen anderen Satz von USB-Funktionen handhaben wird. Das Ergebnis der Nachrichten bei Schritt 604 und/oder Schritt 606 kann sein, dass der Zustand 400 entsprechend eingestellt wird.
  • Eine wieder andere Art und Weise, den Zustand 400 einzustellen, ist durch das Verfahren 700 in 7 veranschaulicht. Bei Schritt 702 wählt der Host 102 einen entfernten Host (beispielsweise entweder Host 104 oder 106) als einen Anbieter eines Satzes verfügbarer USB-Funktionen wie z. B. der Funktionen 122132 aus. Bei Schritt 704 sendet der Hast 102 an den ausgewählten entfernten Host eine Nachricht, in der er die verfügbaren USB-Funktionen zur Zuteilung anbietet. Bei Schritt 706 sendet der entfernte Host an den Host 102 eine Antwortnachricht, in der er einen Teilsatz dieser angebotenen USB-Funktionen auswählt. (Der gewählte Teilsatz kann leer sein, er kann der komplette angebotene Satz sein oder er kann ein nicht null betragender ordnungsgemäßer Teilsatz der Funktionen, die angeboten wurden, sein.) Bei Schritt 708 stellt der Host 102 den Zustand 400 dahin gehend ein, oder aktualisiert ihn dahin gehend, diese ausgewählten Funktionen dem ausgewählten entfernten Host zuzuteilen. Bei Schritt 710 beseitigt der Host 102 die zugeteilten USB-Funktionen aus dem Satz von USB-Funktionen, die zur Zuteilung an andere entfernte Hosts zur Verfügung stehen. Bei Schritt 712 kann sich der Prozess entweder wiederholen, oder er kann enden, je nachdem, ob noch USB-Funktionen für eine mögliche Zuteilung zu anderen entfernten Hosts verbleiben. Falls noch solche USB-Funktionen verbleiben, kann der Host 102 einen anderen Host auswählen und bei Schritt 702 fortfahren. Die entfernten Hosts können nach beliebigen geeigneten Kriterien ausgewählt werden, beispielsweise gemäß einer vorbestimmten oder entschiedenen Reihenfolge der entfernten Hosts. Die bei Verfahren 700 beschriebene Funktionalität kann bei der Vorrichtungsunterteilungslogik 204 und den Protokollentscheidungslogiken 210 implementiert werden.
  • Eine wieder andere Art und Weise, den Zustand 400 einzustellen, wird durch das Verfahren 800 in 8 veranschaulicht. Bei Schritt 802 präsentiert der Host 102 eine Nutzerschnittstelle 134 unter Verwendung einer beliebigen geeigneten Anzeigevorrichtung 136. Die Nutzerschnittstelle 134 ermöglicht es einem Nutzer, zu wählen, welche der verfügbaren USB-Funktionen 122132 auf welche der verfügbaren entfernten Hosts, beispielsweise Hosts 104, 106, abgebildet werden sollten. Bei Schritt 804 stellt der Host 102 ansprechend auf die durch die Nutzerschnittstelle 134 angegebenen Auswahlen des Nutzers den Zustand 400 dahin gehend ein, oder aktualisiert denselben dahin gehend, die verfügbaren USB-Funktionen entsprechend zuzuteilen. Die bei dem Verfahren 800 beschriebene Funktionalität kann bei der Vorrichtungsunterteilungslogik 204 implementiert werden. Andere Techniken zum Einstellen des Zustands 400 sind ebenfalls möglich.
  • Bei den meisten Ausführungsbeispielen wird erwartet, dass die virtuelle Vorrichtung 500 dem Host 104 als Gesamtvorrichtung, die zwei Funktionen aufweist, präsentiert werde, während die virtuelle Vorrichtung 506 dem Host 106 als Verbundvorrichtung, die zwei Funktionen aufweist, präsentiert werde. Jedoch sind bei einer geeigneten Umsetzungslogik andere Variationen möglich. Beispielsweise könnte die virtuelle Vorrichtung 500 als Verbundvorrichtung präsentiert werden, oder die virtuelle Vorrichtung 506 könnte als Gesamtvorrichtung präsentiert werden.
  • Man sollte beachten, dass die oben beschriebene Logik nicht in gesonderten Komponenten, wie sie veranschaulicht sind, implementiert werden muss. Beispielsweise kann bzw. können (ein(e)) beliebige(s) oder alle des virtuellen Zwischenelements 200, der Vorrichtungsunterteilungslogik 204 und der Sende-/Empfangslogik 202 mit äquivalentem Effekt einstückig oder separat implementiert werden. Und (ein(e)) beliebige(s) oder alle des virtuellen Zwischenelements 206, der Entscheidungsprotokolllogik 210 und der Sende/Empfangslogik 208 können mit aquivalentem Effekt einstückig oder separat implementiert werden. Bei derartigen Ausfführungsbeispielen sollten die Aktivitäten von und Verbindungen zwischen jeglichen gesonderten Komponenten, die in den Patentansprüchen, der schriftlichen Beschreibung und den Zeichnungen des vorliegenden Dokuments beschrieben sind, stattdessen der einstückig oder separat gebildeten und äquivalenten Logikkomponente zugeschrieben werden.
  • Komponenten der oben beschriebenen Logik können in Hardware, Software, Firmware oder einer beliebigen Kombination derselben implementiert sein. Beispielsweise kann ein Teil der oder die gesamte Logik die Form von Anweisungen aufweisen, die auf einem computerlesbaren Speichermedium gespeichert sind, das, wenn es durch einen Computer ausgeführt wird, bewirkt, dass der Computer die Logik durchführt. Ein derartiges computerlesbares Speichermedium kann eine beliebige herkömmliche Form aufweisen, die derzeit bekannt ist oder erst noch entwickelt wird, einschließlich beispielsweise optischer oder magnetischer Platten, Magnetbänder, statischer oder dynamischer Halbleiter-Direktzugriffsspeicher, Nur-Lese-Halbleiterspeicher, Flash-Speicher oder dergleichen.
  • In den angehängten Patentansprüchen sollen die Worte „aufweisen” und „aufweist” im offenen Sinn dahin gehend gelesen werden, dass sie Folgendes bedeuten: „einschließlich der folgenden Elemente, ohne dabei jedoch andere auszuschließen”.
  • Obwohl die Erfindung unter Bezugnahme auf bevorzugte Ausführungsbeispiele derselben ausführlich beschrieben wurde, wurden die beschriebenen Ausführungsbeispiele beispielhaft und nicht als Einschränkung präsentiert. Fachleuten, die Zugang zu dieser Spezifikation haben, wird einleuchten, dass verschiedene Änderungen bezüglich der Form und Einzelheiten der beschriebenen Ausführungsbeispiele vorgenommen werden können, ohne von der Wesensart und dem Schutzumfang der Erfindung, wie sie durch die angehängten Patentansprüche definiert sind, abzuweichen.

Claims (15)

  1. Ein System, das Folgendes aufweist: einen ersten Computer-Host, der eine USB-Remote-Zugriff-Logik und eine USB-Vorrichtungsunterteilungslogik aufweist, wobei: die USB-Remote-Zugriff-Logik dazu konfiguriert ist, zu bewirken, dass eine an den ersten Computer-Host angeschlossene USB-Vorrichtung über ein Netzwerk für Ressourcen zugänglich ist, die auf einem zweiten oder dritten Computer-Host ablaufen; und wenn eine oder USB-Verbund- oder -Gesamtvorrichtung, die einen Satz mehrerer USB-Funktionen enthält, mit dem ersten Computer-Host verbunden ist, die USB-Vorrichtungsunterteilungslogik dazu konfiguriert ist, dem zweiten Computer-Host eine erste virtuelle USB-Vorrichtung zu präsentieren und dem dritten Computer-Host eine zweite virtuelle USB-Vorrichtung zu präsentieren, wobei die erste und die zweite virtuelle USB-Vorrichtung jeweils verschiedene Teile einer Unterteilung des Satzes von USB-Funktionen enthalten.
  2. Das System gemäß Anspruch 1, bei dem: die erste und die zweite virtuelle USB-Vorrichtung Elemente einer Mehrzahl virtueller USB-Vorrichtungen sind, die durch die USB-Vorrichtungsunterteilungslogik zumindest dem zweiten und dem dritten Computer-Host präsentiert werden, wobei jedes Element der Mehrzahl verschiedene Teile der Unterteilung des Satzes von USB-Funktionen enthält; und die in der Mehrzahl enthaltenen Funktionen kollektiv den gesamten Satz abdecken.
  3. Das System gemäß Anspruch 1, bei dem: die erste und die zweite virtuelle USB-Vorrichtung Elemente einer Mehrzahl virtueller USB-Vorrichtungen sind, die durch die USB-Vorrichtungsunterteilungslogik zumindest dem zweiten und dem dritten Computer-Host präsentiert werden, wobei jedes Element der Mehrzahl verschiedene Teile der Unterteilung des Satzes von USB-Funktionen enthält; und die in der Mehrzahl enthaltenen Funktionen nicht kollektiv den gesamten Satz abdecken.
  4. Das System gemäß Anspruch 1, bei dem: die USB-Vorrichtungsunterteilungslogik derart konfiguriert ist, dass die erste virtuelle USB-Vorrichtung für den dritten Computer-Host nicht sichtbar gemacht wird und die zweite virtuelle USB-Vorrichtung für den zweiten Computer-Host nicht sichtbar gemacht wird.
  5. Das System gemäß Anspruch 1, das ferner Folgendes aufweist: Zustand in dem ersten Computer-Host, der angibt, welchem des zweiten und des dritten Computer-Hosts zumindest manche der mehreren USB-Funktionen präsentiert werden sollten.
  6. Das System gemäß Anspruch 5, das ferner Folgendes aufweist: eine Entscheidungsprotokolllogik in dem zweiten und dem dritten Computer-Host, die dazu konfiguriert ist, anhand einer Kommunikation zwischen zumindest dem zweiten und dem dritten Computer-Host zu bestimmen, welchem des zweiten und des dritten Computer-Hosts zumindest manche der mehreren USB-Funktionen präsentiert werden sollten, und den Zustand in dem ersten Computer-Host entsprechend einzustellen.
  7. Das System gemäß Anspruch 5, bei dem: der Zustand Vorgaben aufweist, alle USB-Funktionen, die in eine erste vorbestimmte Kategorie fallen, dem zweiten Computer-Host zu präsentieren, und alle USB-Funktionen, die in eine zweite vorbestimmte Kategorie fallen, dem dritten Computer-Host zu präsentieren.
  8. Das System gemäß Anspruch 5, bei dem: der Zustand Informationen entspricht, die aus einer Konfigurationsdatei gelesen werden, die für den ersten Computer-Host zugänglich ist.
  9. Das System gemäß Anspruch 5, bei dem: die USB-Vorrichtungsunterteilungslogik dazu konfiguriert ist, Elemente des Satzes von USB-Funktionen zumindest dem zweiten Computer-Host anzubieten und ansprechend auf eine durch den zweiten Computer-Host kommunizierte Auswahl bestimmte der Elemente dem zweiten Computer-Host zuzuteilen, und anschließend nicht-ausgewählte Elemente zumindest dem dritten Computer-Host anzubieten.
  10. Das System gemäß Anspruch 5, bei dem: die USB-Vorrichtungsunterteilungslogik dazu konfiguriert ist, zu bewirken, dass der erste Computer-Host eine Nutzerschnittstelle präsentiert, die es einem Nutzer ermöglicht, auszuwählen, welche Elemente des Satzes von USB-Funktionen welchem zumindest des ersten und des zweiten Computer-Hosts zur Verfügung gestellt werden sollen, und ansprechend auf Nutzerauswahlen, die über die Nutzerschnittstelle angegeben werden, den Zustand einzustellen.
  11. Ein Verfahren, das Folgendes aufweist: Anschließen, an einen ersten Computer-Host, einer USB-Verbund- oder -Gesamtvorrichtung, die einen Satz mehrerer USB-Funktionen enthält; und Bewirken, dass der erste Computer-Host einem zweiten Computer-Host eine erste virtuelle USB-Vorrichtung präsentiert und einem dritten Computer-Host eine zweite virtuelle USB-Vorrichtung präsentiert, wobei die erste und die zweite virtuelle USB-Vorrichtung jeweils verschiedene Teile einer Unterteilung des Satzes mehrerer USB-Funktionen enthalten.
  12. Das Verfahren gemäß Anspruch 11, das ferner Folgendes aufweist: Bewirken, dass die erste virtuelle USB-Vorrichtung für den dritten Computer-Host nicht sichtbar ist; und Bewirken, dass die zweite virtuelle USB-Vorrichtung für den zweiten Computer-Host nicht sichtbar ist.
  13. Das Verfahren gemäß Anspruch 11, das ferner Folgendes aufweist: Bestimmen, ansprechend auf einen auf dem ersten Computer-Host gespeicherten Zustand, welchem zumindest des zweiten und des dritten Computer-Hosts zumindest manche der mehreren USB-Funktionen präsentiert werden sollten.
  14. Das Verfahren gemäß Anspruch 13, das ferner ein Einstellen des Zustands an dem ersten Computer-Host aufweist, indem: Elemente des Satzes von USB-Funktionen zumindest dem zweiten Computer-Host angeboten werden und ansprechend auf eine durch den zweiten Computer-Host kommunizierte Auswahl bestimmte der Elemente dem zweiten Computer-Host zugeteilt werden; und nicht-ausgewählte Elemente zumindest dem dritten Computer-Host angeboten werden.
  15. Ein computerlesbares Speichermedium, das einen Programmcode enthält, der, wenn er durch einen ersten Computer-Host ausgeführt wird, bewirkt, dass der erste Computer-Host eine USB-Remote-Zugriff-Logik und eine USB-Vorrichtungsunterteilungslogik derart implementiert, dass: die USB-Remote-Zugriff-Logik dazu konfiguriert ist, zu bewirken, dass eine an den ersten Computer-Host angeschlossene USB-Vorrichtung über ein Netzwerk für Ressourcen zugänglich ist, die auf einem zweiten oder dritten Computer-Host ablaufen; und wenn eine oder USB-Verbund- oder -Gesamtvorrichtung, die einen Satz mehrerer USB-Funktionen enthält, mit dem ersten Computer-Host verbunden ist, die USB-Vorrichtungsunterteilungslogik dazu konfiguriert ist, dem zweiten Computer-Host eine erste virtuelle USB-Vorrichtung zu präsentieren und dem dritten Computer-Host eine zweite virtuelle USB-Vorrichtung zu präsentieren, wobei die erste und die zweite virtuelle USB-Vorrichtung jeweils verschiedene Teile einer Unterteilung des Satzes von USB-Funktionen enthalten.
DE112009004568T 2009-04-10 2009-04-10 Unterteilung von usb-verbund oder -gesamtvorrichtungen in einerentfernten usb-umgebung Ceased DE112009004568T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2009/040200 WO2010117369A1 (en) 2009-04-10 2009-04-10 Partitioning of compound or composite usb devices in a remote usb environment

Publications (1)

Publication Number Publication Date
DE112009004568T5 true DE112009004568T5 (de) 2012-09-20

Family

ID=42936466

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112009004568T Ceased DE112009004568T5 (de) 2009-04-10 2009-04-10 Unterteilung von usb-verbund oder -gesamtvorrichtungen in einerentfernten usb-umgebung

Country Status (4)

Country Link
CN (1) CN102388376B (de)
DE (1) DE112009004568T5 (de)
GB (1) GB2481153B (de)
WO (1) WO2010117369A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10284668B2 (en) * 2013-01-09 2019-05-07 Red Hat Israel, Ltd. Managing a logical client for an application
US9549019B2 (en) 2013-01-09 2017-01-17 Red Hat Israel, Ltd. Managing a logical client for a virtual machine
CN108089999B (zh) * 2017-11-29 2021-05-25 郑州云海信息技术有限公司 一种多功能usb设备注册方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000231458A (ja) * 1999-02-10 2000-08-22 Seiko Epson Corp 複合デバイス装置、複合デバイスシステム、複合デバイス制御方法および複合デバイス制御プログラムを記録した媒体
US7360235B2 (en) * 2002-10-04 2008-04-15 Scientific-Atlanta, Inc. Systems and methods for operating a peripheral record/playback device in a networked multimedia system
US20090024746A1 (en) * 2003-09-25 2009-01-22 Eric Welch Method and apparatus for host controller operations over a network
KR20070121452A (ko) * 2006-06-22 2007-12-27 삼성전자주식회사 무선 usb를 이용한 단일 디바이스와 다수의 호스트간의 접속 방법 및 시스템
TWI321731B (en) * 2006-09-18 2010-03-11 Quanta Comp Inc Device connection system and device connection method

Also Published As

Publication number Publication date
GB201115582D0 (en) 2011-10-26
WO2010117369A1 (en) 2010-10-14
GB2481153B (en) 2014-10-08
CN102388376A (zh) 2012-03-21
CN102388376B (zh) 2015-03-11
GB2481153A (en) 2011-12-14

Similar Documents

Publication Publication Date Title
DE68925474T2 (de) Verriegelungsrechnersysteme
DE112009004075T5 (de) Selektives kommunizieren von daten eines peripheriegeräts zumehreren sendenden computern
DE602004012075T2 (de) Verfahren und gerät zur fensterverwaltung
DE112012006665T5 (de) Wählbare Grafik-Controller zur Ausgabenanzeige
DE112011100094T5 (de) Verfahren und System zum Abstrahieren eines auf nichtfunktionalen Anforderungen beruhenden Einsatzes von virtuellen Maschinen
DE112012005209T5 (de) Brückenfunktion zwischen Virtual Machine Monitor und Bare-Metal-Bootvorgang
DE102018209205A1 (de) Datenspeicher mit intelligentem Speicher oder Ladeverfahren und -vorrichtung
DE112008001168T5 (de) System und Verfahren zum gemeinschaftlichen Verwenden eines Druckers
DE102010001985A1 (de) Vorrichtung zum Schalten des Betriebs einer virtuellen Maschine zwischen mehreren Computern, die der gleichen Computerplattform zugeordnet sind, und entsprechende Schaltverfahren
DE112020004651B4 (de) Multi-tenant-etl-ressourcenaufteilung
DE102013213047A1 (de) System, Verfahren und Computerprogrammprodukt zum Testen von Vorrichtungsparametern
DE102019102643A1 (de) Neuartige SSD-Architektur für eine FPGA-basierte Beschleunigung
DE102018209188A1 (de) Technologien zum Verwalten der Dienstgüte für Plattformverbindungen
DE112020003825T5 (de) Entsprechung zwischen externen Operationen und Containern sowie Mutationsereignissen
DE102020119205A1 (de) Speichervorrichtung, speichersystem und betriebsverfahren hierfür
DE112013006550T5 (de) Steuerungsgerät und Steuerungsverfahren
DE112009004568T5 (de) Unterteilung von usb-verbund oder -gesamtvorrichtungen in einerentfernten usb-umgebung
DE112018004415B4 (de) Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage
EP2000908A1 (de) Verfahren zur Datenübertragung zwischen Betriebssysteminstanzen auf einem Servercomputer und netzwerkfähigen Peripheriegeräten
DE102021122508A1 (de) Ausgleichen von grossrechner- und verteilten arbeitslasten auf der grundlage von leistung und kosten
DE60023429T2 (de) Geräteregistrierung in einem Netzwerk
DE112009004319T5 (de) Kommunizieren von Datenzugängen zwischen einem ersten und einem zweiten Computer, die über ein Netzwerk verbunden sind
DE112008001119B4 (de) Regeln für gemeinsam genutzte Einrichtungen einer an ein Netzwerk angeschlossenen Speichervorrichtung
DE102005008778B4 (de) System und Verfahren zum Verändern einer Buskonfiguration
DE112009004064T5 (de) Bereitstellen einer angabe einer veränderung an einernutzerschnittstellenvorrichtung über ein netzwerk zwischen computern

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0015000000

Ipc: G06F0013380000

R016 Response to examination communication
R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R006 Appeal filed
R008 Case pending at federal patent court
R003 Refusal decision now final
R011 All appeals rejected, refused or otherwise settled