-
HINTERGRUND
-
Ein tragbarer Computer (z.B. Laptop, Tablet usw.) kann seinen Destop-Arbeitsbereich über einen oder mehrere externe Bildschirme erweitern. Obwohl ein erweiterter Desktop einem einzigen Applikationsfenster ermöglicht über mehrere Bildschirme angezeigt zu werden, verwenden Nutzer typischerweise jeden Bildschirm als einen individuellen Arbeitsplatz, an dem sie Fenster, Programm-Icons und andere Programmgegenstände innerhalb des erweiterten Desktop auseinander ziehen und gestalten können. Wenn externe Bildschirme jedoch von dem Computer getrennt werden, kehrt der Desktop zu dem internen Anzeigestandard des Computers zurück und alle Fenster, Icons usw. werden bewegt, so dass sie für den Nutzer auf der einzelnen internen Anzeige sichtbar bleiben. Eine Bewegung aller geöffneten Fenster, Icons und dergleichen auf einer einzelnen internen Anzeige überfüllt oft die interne Anzeige, die oftmals eine kleinere Laptop- oder Tablet-Anzeige ist. Gegenwärtige Ansätze stellen mehrere Desktopmerkmale zur Verfügung und einige stellen virtuell austauschbare Arbeitsbereiche zum Gestalten der Fenster und Icons bereit. In diesen Ansätzen gibt es jedoch keine Verbindung zwischen logischen Desktops und physikalischen Anzeigegeräten und die Gestaltung der Fenster und Icons bezieht sich nicht auf die verfügbaren physikalischen Anzeigen.
-
ZUSAMMENFASSUNG
-
Ein Ansatz wird zur Verfügung gestellt, um virtuelle Anzeigen auf physikalischen Anzeigen, auf die von einem Informationshandhabungssystem aus zugegriffen werden kann, abzubilden. Wenn sich die Anzahl der zugehörigen physikalischen Anzeigen ändert, erfasst der Ansatz die Änderung und bildet die virtuellen Anzeigen auf der geänderten Anzahl von physikalischen Anzeigen erneut ab.
-
Das Vorhergehende ist eine Zusammenfassung und enthält somit notwendigerweise Vereinfachungen, Verallgemeinerungen und Weglassungen von Details; konsequenterweise wird für den Fachmann der Technik ersichtlich, dass die Zusammenfassung nur darstellend ist und nicht beabsichtigt ist, in irgendeiner Weise begrenzend zu sein. Andere Aspekte, erfinderische Merkmale und Vorteile werden aus der nicht-begrenzenden detaillierten Beschreibung, die unten dargestellt wird, deutlich.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Diese Offenbarung kann besser durch Bezugnahme auf die begleitenden Zeichnungen verstanden werden, wobei:
-
1 ein Blockdiagramm eines Datenverarbeitungssystems ist, in dem die Verfahren, die hierin beschrieben werden, ausgeführt werden können;
-
2 eine Vergrößerung der Umgebung des in 1 gezeigten Informationshandhabungssystems darstellt, um zu illustrieren, dass die Verfahren, die hierin beschrieben werden, auf einer breiten Vielfalt von Informationshandhabungssystemen ausgeführt werden können, welche in einer Netzwerkumgebung arbeiten;
-
3 ein Diagramm ist, das Änderungen der Anzahl der physikalischen Anzeigen zeigt, die einem Informationshandhabungssystem angegliedert sind, und das sich ergebende Abbilden der virtuellen Anzeigen auf den verfügbaren physikalischen Anzeigen;
-
4 ein Flussdiagramm ist, das Schritte zeigt, die durch einen Installationsprozess getätigt werden;
-
5 ein Flussdiagramm ist, das Schritte zeigt, die durch einen Prozess getätigt werden, der erweiterte Desktop-Arbeitsplätze auf verfügbaren physikalischen Anzeigen virtualisiert;
-
6 ein Flussdiagramm ist, das Schritte zeigt, die durch einen virtuellen Anzeigemanager getätigt werden, der virtuelle Anzeigen auf verfügbaren physikalischen Anzeigen basierend auf Nutzerpräferenzen abbildet; und
-
7 ein Flussdiagramm ist, das Schritte zeigt, die durch einen Prozess getätigt werden, der Anzeigen umlagert, um vom Nutzer bevorzugte virtuelle Anzeigen auf der verfügbaren physikalischen Anzeige darzustellen.
-
Detaillierte Beschreibung
-
Die Terminologie, die hierin verwendet wird, dient nur dem Zweck des Beschreibens besonderer Ausführungsformen und beabsichtigt nicht, die Erfindung zu begrenzen. Wie hierin verwendet, beabsichtigen die Singularformen "ein", "eine" und "der, die, das" auch die Vielzahl der Pluralformen einzuschließen, außer es wird im Kontext klar anders angezeigt. Es ist ferner verständlich, dass die Ausdrücke "umfassen" und/oder "umfassend," wenn sie in dieser Spezifikation verwendet werden, die Anwesenheit von dargestellten Merkmalen, vollständigen Ganzen, Schritten, Operationen, Elementen und/oder Komponenten spezifizieren, aber nicht die Anwesenheit oder den Zusatz von einem oder mehreren anderen Merkmalen, vollständigen Ganzen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen davon ausschließen.
-
Die entsprechenden Strukturen, Materialien, Aktionen und Äquivalente von allen Mitteln oder Schritten plus Funktionselementen in den Ansprüchen unten beabsichtigen jede Struktur, jedes Material oder jede Aktion zum Durchführen der Funktion in Kombination mit anderen beanspruchten Elementen, wie speziell beansprucht, einzuschließen. Die detaillierte Beschreibung wurde zum Zweck der Darstellung präsentiert, sie ist aber nicht beabsichtigt erschöpfend oder begrenzend für die Erfindung in der offenbarten Form zu sein. Viele Modifikationen und Variationen sind für den Fachmann der Technik, ohne von dem Rahmen und dem Geist der Erfindung abzuweichen, naheliegend. Die Ausführungsform wurde ausgewählt und beschrieben, um die Prinzipien der Erfindung und die praktische Anwendung am besten zu erklären und um andere mit normalem technischen Verständnis in die Lage zu versetzen, die Erfindung für verschiedene Ausführungsformen mit verschiedenen Modifikationen zu verstehen, wie sie für die betrachtete besondere Verwendung geeignet ist.
-
Wie für den Fachmann der Technik ersichtlich, können Aspekte als System, Verfahren oder Computerprogrammprodukt ausgeführt sein. Demgemäß können Aspekte die Form einer vollständigen Hardwareausführung, einer vollständigen Softwareausführung (einschließlich Firmware, residenter Software, Mikrocode usw.) oder einer Ausführungsform annehmen, die Software- und Hardwareaspekte kombiniert, auf die zusammen hierin generell als eine “Schaltung”, ein “Modul” oder ein “System” Bezug genommen wird. Weiterhin können Aspekte der vorliegenden Offenbarung die Form von Computerprogrammprodukten einnehmen, die in einem oder mehreren computerlesbaren Medien verkörpert sind, welche darin verkörperte computerlesbare Programmcodes aufweisen.
-
Es können irgendwelche Kombinationen von einem oder mehreren computerlesbaren Speichermedien verwendet werden. Ein computerlesbares Speichermedium kann zum Beispiel ein elektronisches, magnetisches, optisches, elektromagnetisches, infrarotes oder halbleitendes System, Vorrichtung oder Gerät oder irgendeine geeignete Kombination des Vorhergehenden sein, ist aber nicht darauf beschränkt. Speziellere Beispiele (eine nicht erschöpfende Liste) des computerlesbaren Speichermediums würde die folgenden einschließen: eine elektrische Verbindung, die einen oder mehrere Drähte aufweist, eine tragbare Computerdiskette, eine Festplatte, einen Direktzugriffsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren, programmierbaren Festwertspeicher (EPROM oder Flash-Speicher), eine optische Faser, einen tragbaren Kompaktdisk-Festwertspeicher (CD-ROM), ein optisches Speichergerät, ein magnetisches Speichergerät oder irgendeine geeignete Kombination der Vorhergehenden. In dem Kontext von diesem Dokument kann ein computerlesbares Speichermedium irgendein materielles Medium sein, das ein Programm zum Gebrauch durch ein oder in Verbindung mit einem Instruktionsausführungs-System, einer Vorrichtung oder einem Gerät enthalten oder speichern kann. Wie hierin verwendet umfasst ein computerlesbares Speichermedium kein flüchtiges Signal.
-
Einen Computerprogrammcode zum Ausführen von Operationen für Aspekte der vorliegenden Offenbarung kann in irgendeiner Kombination von einer oder mehreren Programmiersprachen geschrieben werden, einschließlich einer objektorientierten Programmsprache wie Java, Smalltalk, C++ oder dergleichen und konventionell durchführbaren Programmiersprachen wie die "C"-Programmiersprache oder ähnliche Programmiersprachen. Der Programmcode kann vollständig auf einem Computer des Nutzers, teilweise auf einem Computer des Nutzers, als allein stehendes Softwarepaket, teilweise auf dem Computer des Nutzers und teilweise auf einem entfernten Computer, oder vollständig auf dem entfernten Server ausgeführt werden. In dem letzteren Szenarium kann der entfernte Computer mit dem Computer des Nutzers über irgendeine Art von Netzwerk verbunden sein, einschließlich einem lokalen Netzwerk (LAN) oder einem Fernbereichsnetzwerk (WAN), oder die kann Verbindung durch einen externen Computer (z.B. durch das Internet unter Verwendung eines Internet-Service-Providers) ausgeführt werden.
-
Aspekte der vorliegenden Offenbarung werden unten mit Bezug auf Flussdiagrammdarstellungen und/oder Blockdiagrammen von Verfahren, Vorrichtung(en), (Systemen) und Computerprogrammprodukten beschrieben. Es ist verständlich, dass jeder Block der Flussdiagrammdarstellungen und/oder Blockdiagramme und Kombinationen der Blöcke in den Flussdiagrammdarstellungen und/oder Blockdiagrammen durch Computerprogramminstruktionen ausgeführt sein kann. Diese Computerprogramminstruktionen können durch einen Prozessor eines Computers für allgemeine Zwecke, Computers für spezielle Zwecke oder anderer programmierbarer Datenverarbeitungsvorrichtungen bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Instruktionen, welche über den Prozessor des Computers oder anderer programmierbarer Datenverarbeitungsvorrichtungen ausgeführt werden, Mittel zum Ausführen der Funktionen/Aktionen, die in den Flussdiagrammen und/oder Blockdiagrammen eines Blockes oder der Blöcke spezifiziert sind, erzeugen.
-
Diese Computerprogramminstruktionen können auch in einem computerlesbaren Speichermedium gespeichert werden, das einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Geräte anleiten kann, um Funktionen in einer bestimmten Weise auszuführen, so dass die Instruktionen, die in dem computerlesbaren Speichermedium gespeichert sind, einen Gegenstand der Herstellung produzieren, der Instruktionen einschließt, welche die Funktionen/Aktionen, die in den Flussdiagrammen und/oder Blockdiagrammen, eines Blocks oder Blöcken spezifiziert sind, ausführen.
-
Die Computerprogramminstruktionen können auch auf einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder andere Geräte geladen werden, um zu veranlassen, dass eine Serie von operativen Schritten auf dem Computer, anderen programmierbaren Vorrichtungen oder anderen Geräten ausgeführt wird, um einen computerausgeführten Prozess zu erzeugen, so dass die Instruktionen, welche auf dem Computer oder anderen programmierbaren Vorrichtungen ausgeführt werden, Prozesse für das Ausführen der Funktionen/Aktionen, die in dem Flussdiagramm und/oder Blockdiagramm, Block oder Blöcken spezifiziert werden, bereitstellen.
-
Die folgende detaillierte Beschreibung wird allgemein der Zusammenfassung folgen, wie sie oben ausgeführt ist, und ferner die Definitionen der verschiedenen Aspekte und Ausführungsformen, falls notwendig, erklären und erweitern. An diesem Punkt wird die detaillierte Beschreibung als erstes in 1 eine Computerumgebung dargestellt, die geeignet ist, um Software- und/oder Hardwaretechniken, die mit der Offenbarung assoziiert sind, auszuführen. Eine Netzwerkumgebung wird in 2 als eine Erweiterung der Basiscomputerumgebung dargestellt, um zu betonen, dass moderne Computertechniken über ein Vielzahl diskreter Geräte ausgeführt werden können.
-
1 stellt ein Informationshandhabungssystem 100 dar, welches ein vereinfachtes Beispiel eines Computersystems ist, das in der Lage ist, die Computeroperationen, die hierin beschrieben werden durchzuführen. Das Informationshandhabungssystem 100 umfasst einen oder mehrere Prozessoren 110, die mit einem Prozessorschnittstellen-Bus 112 gekoppelt sind. Der Prozessorschnittstellen-Bus 112 verbindet die Prozessoren 110 mit einer Northbridge 115, welche auch als Speichersteuerknoten (MCH) bekannt ist. Die Northbridge 115 verbindet den Systemspeicher 120 und stellt Mittel für den(die) Prozessor(en) 110 zum Zugriff auf den Systemspeicher bereit. Ein grafisches Steuergerät 125 ist auch mit der Northbridge 115 verbunden. In einer Ausführungsform verbindet ein PCI-Express-Bus 118 die Northbridge 115 mit dem grafischen Steuergerät 125. Das grafische Steuergerät 125 ist mit einem Anzeigegerät 130 wie einem Computermonitor verbunden.
-
Die Northbridge 115 und die Southbridge 135 sind unter Verwenden des Busses 119 miteinander verbunden. In einer Ausführungsform ist der Bus ein Direct Media Interface (DMI) Bus, der Daten bei hoher Geschwindigkeit in jede Richtung zwischen der Northbridge 115 und der Southbridge 135 transferiert. In einer anderen Ausführungsform verbindet ein Peripheral Component-Interconnect-(PCI)Bus die Northbridge und die Southbridge. Die Southbridge 135, die auch als der Ein-/Ausgabe Steuerknoten (ICH,) bekannt ist, ist ein Chip, der allgemein Fähigkeiten ausführt, die bei niedrigeren Geschwindigkeiten arbeiten als die Geschwindigkeiten, die durch die Northbridge bereitgestellt werden. Die Southbridge 135 stellt typischerweise verschiedene Busse bereit, die zum Verbinden verschiedener Komponenten verwendet werden. Diese Busse umfassen zum Beispiel PCI und PCI-Express-Busse, einen ISA-Bus, einen Systemmanagement-Bus (SMBus oder SMB) und/oder einen Niedrigpinanzahl-(LPC)Bus. Der LPC-Bus verbindet oft niedrige Bandbreitengeräte, wie ein Boot-ROM 196 und “Legacy” I/O-Geräte (unter Verwenden eines “Super I/O” Chips). Die "Legacy" I/O Geräte (198) können zum Beispiel serielle und parallele Ports, Tastaturen, Mäuse und/oder ein Floppydisk-Steuergerät einschließen. Der LPC-Bus verbindet auch die Southbridge 135 mit einem Trusted Platform Module (TPM) 195. Andere Komponenten, die oft in der Southbridge 135 enthalten sind, umfassen ein direktes Speicherzugriffsteuergerät (DMA), einen Programmable Interrupt Controller (PIC) und ein Speichergerätesteuergerät, welche die Southbridge 135 mit dem nicht-flüchtigen Speichergerät 185, wie einem Festplattenlaufwerk, unter Verwendung eines Busses 184 verbindet.
-
Express-Card 155 ist ein Schlitz, der schnell einsteckbare Geräte mit dem Informationshandhabungssystem verbindet. Express-Card 155 unterstützt sowohl die PCI-Express- als auch die USB-Verbindbarkeit, wenn diese mit der Southbridge 135 unter Verwenden sowohl des Universal Serial Bus (USB) als auch des PCI-Express-Busses, verbunden werden. Die Southbridge 135 umfasst das USB-Steuergerät 140, das eine USB-Verbindbarkeit mit Geräten bereitstellt, die mit dem USB verbunden sind. Diese Geräte schließen eine Webcam (Kamera) 150, einen Infrarot-(IR)Empfänger 148, eine Tastatur und ein Trackpad 144 und ein Bluetooth-Gerät 146 ein, welche ein drahtloses Privatbereichsnetzwerk (PANs) bereitstellen. Das USB-Steuergerät 140 stellt auch eine USB-Verbindbarkeit mit anderen über USB verbunden Geräten 142 zur Verfügung, wie eine Maus, ein entfernbares nicht-flüchtiges Speichergerät 145, Modems, Netzwerkkarten, ISDN-Verbinder, Fax, Drucker, USB-Knoten und viele andere Arten von USB-verbundenen Geräten. Während entfernbare nicht-flüchtige Speichergeräte 145 als ein USB-verbundenes Gerät gezeigt werden, könnten entfernbare nicht-flüchtige Speichergeräte 145 unter Verwenden einer unterschiedlichen Schnittstelle, wie einer Firewire-Schnittstelle und so weiter, verbunden werden.
-
Ein drahtloses lokales Netzwerk-(LAN)Gerät 175 verbindet die Southbridge 135 über den PCI oder PCI-Express-Bus 172. Das LAN-Gerät 175 führt typischerweise eine der IEEE 802.11 Standards der Funkmodulationstechniken aus, die alle das gleiche Protokoll verwenden, um zwischen dem Informationshandhabungssystem 100 und einem anderen Computer-System oder Gerät drahtlos zu kommunizieren. Ein optisches Speichergerät 190 verbindet die Southbridge 135 unter Verwenden eines seriellen ATA-(SATA-)Bus 188. Der serielle ATA-Adapter und die Geräte kommunizieren über eine serielle Hochgeschwindigkeitsverbindung. Der serielle ATA-Bus verbindet auch die Southbridge 135 mit anderen Formen der Speichergeräte, wie Festplattenlaufwerken. Eine Audioschaltung 160, wie eine Soundkarte, verbindet die Southbridge 135 über den Bus 158. Eine Audioschaltung 160 stellt auch Funktionalitäten wie eine Audioeineingabeleitung (audio line-in) und einen optischen digitalen Audioport 162, einen optischen digitalen Ausgang und eine Kopfhörerbuchse 164, interne Lautsprecher 166 und ein internes Mikrofon 168 bereit. Ein Ethernet-Steuergerät 170 verbindet die Southbridge 135 unter Verwenden eines Busses, wie dem PCI- oder PCI-Express-Bus. Das Ethernet-Steuergerät 170 verbindet das Informationshandhabungssystem 100 mit einem Computernetzwerk, wie einem lokalen Netzwerk (LAN), dem Internet und anderen öffentlichen und privaten Computernetzwerken.
-
Während 1 ein einziges Informationshandhabungssystem zeigt, kann ein Informationshandhabungssystem viele Formen annehmen. Zum Beispiel kann ein Informationshandhabungssystem die Form eines Desktops, eines Servers, eines tragbaren Computers, eines Laptops oder andere Formfaktoren von Computern oder Datenverarbeitungssystemen annehmen. Zusätzlich kann ein Informationshandhabungssystem andere Formfaktoren wie einen persönlichen digitalen Assistenten (PDA), ein Spielegerät, eine ATM-Maschine, ein tragbares Telefongerät, ein Kommunikationsgerät oder andere Geräte, die einen Prozessor und einen Speicher aufweisen, annehmen.
-
Das in 1 gezeigte Trusted Platform Modul (TPM 195), dass hierin beschrieben ist, um Sicherheitsfunktionen bereitzustellen, ist nur ein Beispiel eines Hardware-Sicherheitsmoduls (HSM). Deshalb umfasst das TPM, das hierin beschrieben und beansprucht wird, jede Art von HSM, einschließlich aber nicht begrenzt auf Hardware-Sicherheitsgeräte, die dem Sicherheits-Computergruppen-(TCG)Standard entsprechen und als “Trusted Platform Module (TPM) Specification Version 1.2” bezeichnet werden. Das TPM ist ein Hardware-Sicherheitshilfssystem, das in irgendeiner Anzahl von Informationshandhabungssystemen eingebaut sein kann, wie solchen, die in 2 dargestellt sind.
-
2 stellt eine Vergrößerung der Umgebung des Informationshandhabungssystems, das in 1 gezeigt wird, bereit, um darzustellen, dass die Verfahren, die hierin beschrieben werden, auf einer breiten Vielfalt von Informationshandhabungssystemen, die in einer Netzwerkumgebung betrieben werden, ausgeführt werden können. Arten von Informationshandhabungssystemen reichen von kleinen handgehaltenen Geräten, wie einem handgehaltenen Computer/Mobiltelefon 210, bis hin zu Großrechnersystemen, wie einem Großrechnercomputer 270. Beispiele handgehaltener Computer 210 schließen persönliche digitale Assistenten (PDAs), persönliche Entertainmentgeräte, wie MP3-Players, tragbare Fernsehgeräte und Kompaktdisk-Wiedergabegeräte ein. Andere Beispiele von Informationshandhabungssystemen umfassen Stift- oder Tablet-Computer 220, Laptop- oder Notebook-Computer 230, Workstation 240, persönliches Computersystem 250 und Server 260. Andere Arten von Informationshandhabungssystemen, die nicht individuell in 2 gezeigt sind, werden durch das Informationshandhabungssystem 280 dargestellt. Wie gezeigt, können verschiedene Informationshandhabungssysteme über Netzwerke unter Verwenden eines Computernetzwerks 200 zusammenarbeiten. Arten von Computernetzwerken, die verwendet werden können, um die verschiedenen Informationshandhabungssysteme zusammenzuschließen, umfassen lokale Netzwerke (LANs), drahtlose lokale Netzwerke (WLANs), das Internet, das herkömmliche öffentlich Telefonnetz (PSTN), andere drahtlose Netzwerke und irgendeine andere Netzwerktopologie, die verwendet werden kann, um die Informationshandhabungssysteme untereinander zu verbinden. Viele der Informationshandhabungssysteme umfassen nicht-flüchtige Datenspeicher, wie feste Laufwerke und/oder nicht-flüchtige Speicher. Einige der Informationshandhabungssysteme, die in 2 gezeigt werden, zeigen separate nicht-flüchtige Datenspeicher (der Server 260 verwendet einen nicht-flüchtigen Datenspeicher 265, der Großrechner 270 verwendet einen nicht-flüchtigen Datenspeicher 275 und das Informationshandhabungssystem 280 verwendet einen nicht-flüchtigen Datenspeicher 285). Der nicht-flüchtige Datenspeicher kann eine Komponente sein, die extern zu den verschiedenen Informationshandhabungssystemen ist oder kann intern in einem der Informationshandhabungssysteme vorhanden sein. Zusätzlich kann ein entfernbares nicht-flüchtiges Speichergerät 145 auf zwei oder mehr Informationshandhabungssysteme unter Verwenden verschiedener Techniken verteilt sein, wie ein Verbinden des entfernbaren nicht-flüchtigen Speichergerätes 145 mit einem USB-Port oder einem anderen Verbinder der Informationshandhabungssysteme.
-
3 ist ein Diagramm, das Änderungen der Anzahl der physikalischen Anzeigen zeigt, die einem Informationshandhabungssystem angegliedert sind, und das sich ergebende Abbilden der virtuellen Anzeigen auf den verfügbaren physikalischen Anzeigen. In dem gezeigten Beispiel wird ein Laptop-Computersystem eines Nutzers mit verschiedenen physikalischen Anzeigen verwendet, die in verschiedenen Umgebungen verfügbar sind. Die Arbeitsanzeige-Konfiguration 310 zeigt die Arbeitsplatzumgebung des Nutzers, in welcher der Nutzer eine Laptop-Anzeige 300, eine 20 Zoll externe Anzeige 320 und eine 27 Zoll externe Anzeige mit Laptop-Anzeige 300 hat, welche in dem Laptop-Computersystem des Nutzers enthalten ist, und der Laptop-Computer über Standardanzeigeschnittstellen (z.B. HDMI, SDI, DisplayPort, VGA usw.) auf die externen Anzeigen zugegreifen kann. Basierend auf der Nutzerpräferenz werden bei drei zugreifbaren Anzeigen, wenn sie innerhalb der Arbeitsplatzumgebung 310 sind, wie bei einer Online-Meeting-Konfiguration, eine Laptop-Anzeige 300 verwendet, um den Kalender des Nutzers anzuzeigen, eine 20" Anzeige 320 verwendet, um eine Präsentations-Applikation anzuzeigen, und eine 27" Anzeige 330 verwendet, um eine Webbrowser-Sitzung anzuzeigen. Während der Einfachheit halber eine einzige Applikation, wie auf einer individuellen physikalischen Anzeige angezeigt dargestellt, wird, kann eine Konfiguration getätigt werden, um mehrere Applikationen als Teil einer virtuellen Anzeige anzuzeigen, welche auf einer physikalischen Anzeige abgebildet werden. Zum Beispiel kann die Konfiguration eingesetzt werden, um den Webbrowser und eine Textverarbeitungin einer virtuellen Anzeige anzuzeigen, welche auf der 27" Anzeige 330 abgebildet wird.
-
Die Umgebung 340 zeigt eine mobile Computerumgebung, als wenn der Nutzer die 20" Anzeige 320 und die 27" Anzeige 330 trennt und den Laptop mitnimmt, wie auf dem Weg zu einem Kaffeehaus, einem Flugplatz oder dergleichen. Hier hat der Nutzer konfiguriert, dass die Kalender-Applikation fortgesetzt auf der Laptop-Anzeige angezeigt wird, welche nun die einzige verfügbare Anzeige für das Laptop-Computersystem ist. Die vorhergehend auf externen Anzeigen 320 und 330 angezeigten Sitzungen wurden nun virtualisiert, wie durch die virtualisierte 20" externe Anzeige 350 und die virtualisierte 27" externe Anzeige 360 gezeigt. Die virtualisierten Anzeigen werden als Container für die Darstellungs-Applikation und die Webbrowser-Applikation verwendet. Falls der Nutzer wünscht, die virtualisierten Anzeigen auf der Anzeige des Laptops zu sehen, wie in 7 gezeigt, kann der Nutzer die Anzeigen umlagern, um im Wesentlichen eine der virtuellen Anzeigen auf der Laptop-Anzeige anzuzeigen und zur gleichen Zeit die Kalender-Applikation zu virtualisieren. In dieser Weise kann der Nutzer von einer virtuellen Anzeige zu einer anderen Anzeige unter Verwendung der einzigen Anzeige, die durch das Laptop-Computersystem bereitgestellt wird, umschalten. Wenn virtuelle Anzeigen erneut auf verschiedenen physikalischen Anzeigen abgebildet werden, können die Anzeigeeigenschaften wie Bildseitenverhältnisse, basierend auf der Größe und anderen Attributen der physikalischen Anzeige in Bezug auf die Attribute der virtuellen Anzeige, geändert werden. Wenn der Nutzer zum Beispiel die Webbrowser-Sitzung von der 27" virtuellen Anzeige 380 auf eine kleinere Laptop-Anzeige umlagert (z.B. 20" virtuelle Anzeige usw.), können die Größe der Webbrowser-Sitzung und Bildseitenverhältnisse, die auf der Laptop-Anzeige verwendet werden, geändert werden, um den Webbrowser in einer für den Nutzer besser geeigneten verwendbaren Form anzuzeigen.
-
Die Umgebung 370 zeigt eine andere Konfiguration, wie eine Home-Konfiguration, die durch den Nutzer verwendet wird. Der Nutzer hat hier einen externen Monitor, eine 24" Anzeige 380. Diese physikalische Anzeige wird für die virtuelle Anzeige, in der die Präsentations-Applikation enthalten ist, abgebildet. Da diese Konfiguration nur zwei Anzeigen, anstelle von drei, aufweist, verbleibt die dritte virtuelle Anzeige (die den Webbrowser enthält) virtualisiert in der virtualisierten 27" externen Anzeige 360. Wieder kann der Nutzer die Anzeigen umlagern, um eine virtuelle Anzeige 360 entweder auf der Laptop-Anzeige 300 oder auf der 24" Anzeige 380, unter Verwenden des Prozesses, der in 7 gezeigt wird, abzubilden. Ein nutzerdefiniertes Minimum-Bildseitenverhältnis wird verwendet, um die virtuelle Anzeige (des Webbrowsers) auf einem der physikalischen Anzeigen zu zeigen. Wenn auf die 24" physikalische Anzeige umgelagert wird, kann eine kleine Änderung zum Virtualisieren des Webbrowsers nötig werden, da die 24" Anzeige nur geringfügig kleiner als die 27" virtuelle Anzeige ist, welche den Webbrowser enthält. Falls der Webbrowser jedoch auf die Laptop-Anzeige umgelagert wird, kann das Minimum-Bildseitenverhältnis erreicht werden und muss die virtuelle Anzeige skaliert werden oder muss horizontale/vertikale Scroll-Balken umfassen, um das gesamte Fenster auf der kleineren Laptop-Anzeige anzuzeigen.
-
4 ist ein Flussdiagramm, das Schritte zeigt, die durch einen Installationsprozess getätigt werden. 4 beginnt bei 400 und zeigt die Schritte, die durch einen Prozess getätigt werden, der eine Installationsroutine, welche Nutzerpräferenzen vom Nutzer sammelt, ausführt. Beim Schritt 410 fordert der Prozess den Nutzer auf, Instruktionen zu handhaben, wenn von einer virtuellen Anzeige zu einer physikalischen Anzeige geschaltet wird. Der Prozess bestimmt, ob der Nutzer ein Skalieren der virtuellen Anzeige auf die physikalische Anzeige falls nötig unter Verwenden eines unterschiedlichen Bildseitenverhältnisses, wünscht (Entscheidung 420). Falls der Nutzer wünscht, die virtuelle Anzeige auf die physikalische Anzeige falls nötig unter Verwendung eines unterschiedlichen Bildseitenverhältnisses zu skalieren, dann verzweigt sich die Entscheidung 420 zu dem 'Ja' Zweig, um die Schritte 430 bis 450 durchzuführen. Falls der Nutzer andererseits nicht wünscht, die virtuelle Anzeige auf die physikalische Anzeige falls nötig unter Verwenden eines unterschiedlichen Bildseitenverhältnisses zu skalieren, dann verzweigt sich die Entscheidung 420 zu dem 'Nein' Zweig, woraufhin beim Schritt 460 der Prozess die Nutzerpräferenz zum Aufrechterhalten des gleichen Bildseitenverhältnisses einstellt, wenn von einer virtuellen Anzeige auf die physikalische Anzeige geschaltet wird. Die Schritte 430 bis 450 werden durchgeführt, wenn der Nutzer wünscht, die virtuelle Anzeige auf die physikalische Anzeige falls nötig unter Verwenden eines unterschiedlichen Bildseitenverhältnisses, zu skalieren. Beim Schritt 430 fordert der Prozess den Nutzer auf, ein Minimum-Bildseitenverhältnis für die Verwendung mit einer physikalischen Anzeige bereitzustellen. Beim Schritt 440 stellt der Prozess die Präferenz des Nutzers ein, um das Bildseitenverhältnis anzupassen, so dass das Bildseitenverhältnis immer größer als das oder gleich dem Minimum-Verhältnis, das für den Nutzer angezeigt wird, ist. Beim Schritt 450 empfängt der Prozess andere virtuelle Anzeigepräferenzen wie bevorzugte Applikationen, um verfügbare physikalische Anzeigen usw. anzuzeigen. Beim Schritt 470 sichert der Prozess die virtuellen Anzeigepräferenzen des Nutzers im Datenspeicher 480. Die Installationsverarbeitung, die in 4 ausgeführt wird, endet danach bei 490.
-
5 ist ein Flussdiagramm, das Schritte zeigt, die durch einen Prozess getätigt werden, der erweiterte Desktop-Arbeitsplätze für verfügbare physikalische Anzeigen virtualisiert. Beim Schritt 500 führt der Prozess eine Routine aus, die erweiterte Desktop-Arbeitsplätze für die verfügbaren physikalischen Anzeigen durch virtualisierte Anzeigen virtualisiert. Beim vordefinierten Prozess 510 führt der Prozess die Anzeige virtueller Anzeigen auf verfügbaren physikalischen Anzeige-Routinen durch (siehe 6 und entsprechenden Text für die Verarbeitungsdetails). Beim Schritt 520 verwendet der Nutzer das System mit der Anzahl der angegliederten physikalischen Anzeigen, bis eine Änderung der Anzahl der physikalischen Anzeigen, die für das System verfügbar sind, erfasst wird.
-
Der Prozess bestimmt, ob virtuelle/physikalische Anzeigen umzulagern sind (Entscheidung 525), wenn eine Anfrage vom Nutzer, Anzeigen umzulagern empfangen wird, so dass eine gegenwärtig nicht sichtbare virtuelle Anzeige auf einer verfügbaren physikalischen Anzeige gezeigt werden kann und die Applikationen, die gegenwärtig auf der physikalischen Anzeige gezeigt werden, auf eine virtuelle (nicht sichtbare) Anzeige ausgelagert werden. Falls ein Umlagern von virtuellen/physikalischen Anzeigen gefordert wird, dann verzweigt sich die Entscheidung 525 zu dem 'Ja' Zweig, woraufhin ein vordefinierter Prozess 530 die Überlagerungsanzeigen-Routine ausführt (siehe 7 und entsprechenden Text für Details). Die Verarbeitung wird dann zum Schritt 520 zurückgekoppelt, bei dem der Nutzer fortsetzt, das System mit den virtuellen/physikalischen Anzeigen, die nun umgeschaltet sind, zu verwenden.
-
Wenn ein Umlagern von virtuellen/physikalischen Anzeigen andererseits nicht gefordert wurde, dann verzweigt sich die Entscheidung 525 zu einer weiteren Auswertung zum 'Nein' Zweig. Der Prozess bestimmt, ob eine physikalische Anzeige zu dem System hinzugefügt wurde, wenn eine externe Anzeige mit dem Computersystem unter Verwenden eines Kabels (Entscheidung 540) verbunden wird. Wenn eine physikalische Anzeige zu dem System hinzugefügt wurde, dann verzweigt sich die Entscheidung 540 zu dem 'Ja' Zweig, woraufhin beim Schritt 550 der Prozess die Einstellungen für die physikalische Anzeige abruft, welche zu dem System hinzugefügt wurde (z.B. Größe, verfügbare Bildseitenverhältnisse, usw.). Ein Verarbeiten koppelt dann zurück zu dem vordefinierten Prozess 510, der die virtuellen Anzeigen auf den verfügbaren physikalischen Anzeigen anzeigt, nachdem die zusätzliche physikalische Anzeige hinzugefügt wurde.
-
Falls andererseits eine physikalische Anzeige nicht zu dem System hinzugefügt wurde, dann verzweigt sich die Entscheidung 540 zu einer weiteren Auswertung zum 'Nein' Zweig. Der Prozess bestimmt, ob eine physikalische Anzeige geschlossen wurde (Entscheidung 560). Wenn eine physikalische Anzeige geschlossen ist, dann verzweigt sich die Entscheidung 560 zu dem 'Ja' Zweig, um die Schritte 570 bis 575 auszuführen. Beim Schritt 570 schließt der Prozess alle gegenwärtigen Applikationen, die auf der physikalischen Anzeige gezeigt werden. Beim Schritt 575 löscht der Prozess die physikalische Anzeige-Konfiguration und die entsprechende virtuelle Anzeige-Konfiguration von den abbildenden Tabellen. Die Verarbeitung wird dann zu dem vordefinierten Prozess 510 zurückgekoppelt, welcher die virtuellen Anzeigen auf den verfügbaren physikalischen Anzeigen anzeigt, nachdem eine der physikalischen Anzeige geschlossen wurde.
-
Falls andererseits eine physikalische Anzeige nicht geschlossen wurde, dann verzweigt sich die Entscheidung 560 zur weiteren Auswertung zum 'Nein' Zweig. Der Prozess bestimmt, ob eine physikalische Anzeige von dem System abgetrennt wurde, zum Beispiel wenn ein Kabel zu einer externen Anzeige von einem Port des Computersystems entfernt wurde (Entscheidung 580). Wenn eine physikalische Anzeige von dem System getrennt wurde, dann verzweigt sich die Entscheidung 580 zum 'Ja' Zweig, woraufhin beim Schritt 590 der Prozess die physikalischen Anzeigeeinstellungen der Anzeige, die getrennt wurde, in einer virtuellen Anzeige-Konfiguration speichert. Das Verarbeiten wird dann zu dem vordefinierten Prozess 510 zurückgekoppelt, welcher die virtuellen Anzeigen auf den verfügbaren physikalischen Anzeigen anzeigt, nachdem die zusätzliche physikalische Anzeige hinzugefügt wurde.
-
Wenn eine physikalische Anzeige andererseits nicht von dem System getrennt wurde, dann verzweigt sich die Entscheidung 580 zu dem 'Nein' Zweig, woraufhin beim Schritt 595 der Prozess irgendwelche anderen Anzeigeanfragen ausführt, wie eine Anfrage von dem Nutzer, um die Nutzerpräferenzen zu konfigurieren (wie in 4 gezeigt usw.).
-
6 ist ein Flussdiagramm, das Schritte zeigt, die durch einen virtuellen Anzeigemanager getätigt werden, der die virtuellen Anzeigen auf den verfügbaren physikalischen Anzeigen basierend auf Nutzerpräferenzen abbildet. 6 beginnt bei 600 und zeigt die Schritte, die durch den Prozess getätigt werden, der die virtuelle Anzeigemanagerroutine ausführt, welche die virtuellen Anzeigen auf den verfügbaren physikalischen Anzeigen anzeigt.
-
Beim Schritt 610 ruft der Prozess Nutzerpräferenzen von einem Konfigurationsdatenspeicher 480 ab. Beim Schritt 620 wählt der Prozess die erste virtuelle Anzeige basierend auf den abgerufenen Nutzerpräferenzen aus. Beim Schritt 620 werden die virtuellen Anzeigedaten von dem Speicherbereich 625 mit den virtuellen Anzeigedaten, einschließlich der Größe der virtuellen Anzeige, dem Bildseitenverhältnis der virtuellen Anzeige und der bzw. den Applikation(en) und anderen grafischen Nutzerschnittstellen (GUIs), die in der virtuellen Anzeige angezeigt werden, zusammen mit dem Positionieren von derartigen Applikationen und GUIs in der virtuellen Anzeige, abgerufen. Beim Schritt 630 wählt der Prozess die erste physikalische Anzeige basierend auf Nutzerpräferenzen aus. Beim Schritt 630 werden die physikalischen Anzeigedaten von dem Speicherbereich 640 mit den physikalischen Anzeigedaten, einschließlich der Größe der physikalischen Anzeige, der Verfügbarkeit und dem gegenwärtigen Bildseitenverhältnis der physikalischen Anzeige und den Applikationen und GUIs, die auf der physikalischen Anzeige angezeigt werden, abgerufen.
-
Beim Schritt 650 stellt der Prozess das Bildseitenverhältnis der ausgewählten physikalischen Anzeige wie benötigt ein, basierend auf der virtuellen Anzeige und den Nutzerpräferenzen in Bezug auf ein Minimum-Bildseitenverhältnis, das vom Nutzer gewünscht wird. Beim Schritt 660 bildet der Prozess die ausgewählte virtuelle Anzeige auf der ausgewählten physikalischen Anzeige ab. Beim Schritt 660 werden die abgebildeten Daten im Speicherbereich 670 gespeichert.
-
Der Prozess bestimmt, ob es mehrere virtuelle Anzeigen zu verarbeiten gibt (Entscheidung 675). Falls es mehrere virtuelle Anzeigen gibt, dann verzweigt sich die Entscheidung 675 zu dem 'Ja' Zweig und die Verarbeitung wird fortgesetzt. Falls es andererseits keine virtuellen Anzeigen zu verarbeiten gibt, dann verzweigt sich die Entscheidung 675 zu dem 'Nein' Zweig und die Verarbeitung kehrt bei 680 zurück zu der Aufrufroutine (siehe 5).
-
Als nächstes stellt der Prozess fest, ob es mehrere physikalische Anzeigen gibt, die verwendet werden können, um virtuelle Anzeigen anzuzeigen (Entscheidung 690). Falls es mehrere physikalische Anzeigen gibt, die verwendet werden können, um virtuelle Anzeigen anzuzeigen, dann verzweigt sich die Entscheidung 690 zu dem 'Ja' Zweig, welcher zurückgekoppelt wird, um die nächsten physikalischen und virtuellen Anzeigen, wie oben beschrieben, auszuwählen. Dieses Rückkoppeln wird fortgesetzt, bis es keine physikalischen Anzeigen mehr gibt, welche zur Anzeige virtueller Anzeigen verwendet werden können, an welchem Punkt die Entscheidung 690 sich zu dem 'Nein' Zweig verzweigt und die Verarbeitung kehrt bei 695 zurück zu der Aufrufroutine (siehe 5).
-
7 ist ein Flussdiagramm, das Schritte zeigt, die durch einen Prozess getätigt werden, der Anzeigen umlagert, um vom Nutzer bevorzugte virtuelle Anzeigen auf der verfügbaren physikalischen Anzeige darzustellen. 7 beginnt bei 700 und zeigt die Schritte, die durch einen Prozess getätigt werden, der virtuelle/physikalische Anzeigen umlagert.
-
Beim Schritt 710 wählt der Prozess die erste virtuelle Anzeige aus einem virtuellen Anzeigespeicherbereich 625 aus. Beim Schritt 720 ruft der Prozess die physikalischen Abbildungsdaten der ausgewählten virtuellen Anzeige aus dem Speicherbereich 670 ab. Man beachte, dass einige virtuelle Anzeigen gegenwärtig nicht auf einer physikalischen Anzeige abgebildet sein können. In dem gezeigten Beispiel ist die virtuelle Anzeige, die eine "E-Mail" handhabt, gegenwärtig nicht auf einer physikalischen Anzeige abgebildet. Beim Schritt 730 zeigt der Prozess die gegenwärtige Abbildungszuordnung der ausgewählten virtuellen Anzeige in dem Anzeigeabbildungsfenster 740.
-
Der Prozess bestimmt, ob es mehrere virtuelle Anzeigen zum Verarbeiten gibt (Entscheidung 750). Falls es mehrere virtuelle Anzeigen zum Verarbeiten gibt, dann verzweigt sich die Entscheidung 750 zu dem 'Ja' Zweig, welcher zum Auswählen und Verarbeiten zu der nächsten virtuellen Anzeige zurückkoppelt und eine Eingabe für die virtuelle Anzeige in dem Anzeigefenster 740 anzeigt. Dieses Rückkoppeln wird fortgesetzt, bis es keine virtuellen Anzeigen zum Verarbeiten gibt, an welchem Punkt die Entscheidung 750 sich zu dem 'Nein' Zweig für eine weitere Verarbeitung verzweigt.
-
Beim Schritt 760 empfängt der Prozess Änderungen für die Abbildungszuordnungen von dem Nutzer. In dem gezeigten Beispiel hat der Nutzer nicht länger ausgewählt die "Webbrowser" virtuelle Anzeige auf einer physikalischen Anzeige abzubilden und hat stattdessen die virtuelle "E-Mail" Anzeige auf der physikalischen Anzeige abgebildet, die verwendet wurde, um den Webbrowser anzuzeigen. Beim Schritt 780 bildet der Prozess die ausgewählten virtuellen Anzeigen auf den ausgewählten physikalischen Anzeigen ab. Dieses Abbilden wird in Änderungen zum Abbilden eines Speicherbereichs 670 reflektiert. Beim Schritt 790 zeigt der Prozess die virtuellen Anzeigen auf den zugeordneten physikalischen Anzeigen unter Verwenden der physikalischen Anzeigeattribute (Bildseitenverhältnisse usw.), die von dem Speicherbereich 640 empfangen werden. Das Verarbeiten in 7 kehrt danach bei 795 zurück zu der Aufrufroutine (siehe 5).
-
Während besondere Ausführungsformen gezeigt und beschrieben wurden, ist es für den Fachmann der Technik naheliegend, dass basierend auf den hierin vorhandenen Lehren, Änderungen und Modifikationen ausgeführt werden können, ohne von dieser Offenbarung und ihren breiteren Aspekten abzuweichen. Deshalb umfassen die anhängenden Ansprüche innerhalb ihres Rahmens alle derartigen Änderungen und Modifikationen, soweit sie innerhalb des wahren Geistes und des Schutzrahmens dieser Offenbarung liegen. Weiterhin ist es verständlich, dass die Erfindung einzig und allein durch die anhängenden Ansprüche definiert wird. Es ist für den Fachmann der Technik verständlich das, wenn eine spezifische Anzahl eines eingeführten Anspruchelements beabsichtigt ist, dass eine derartige Absicht ausdrücklich in den Ansprüchen vorgetragen wird und in Abwesenheit einer derartigen Aufzählung keine derartige Begrenzung vorhanden ist. Als nicht-begrenzendes Beispiel, als Hilfe zum Verständnis enthalten die nachfolgenden Ansprüche den Gebrauch der Einleitungsausdrücke “wenigstens ein” und “eines oder mehrere”, um Anspruchselemente einzuführen. Der Gebrauch von derartigen Ausdrücken sollte jedoch nicht konstruiert sein, um zu beinhalten, dass die Einführung eines Anspruchselements durch die unbestimmten Artikel “ein” oder “eine” irgendeinen bestimmten Anspruch, der ein derartiges einführendes Anspruchselement enthält, gegenüber anderen, die nur ein derartiges Element enthalten, abzugrenzen, selbst wenn der gleiche Anspruch den einführenden Ausdruck “ein oder mehrere” oder “wenigstens einen” und unbestimmte Artikel wie “ein” oder “eine” einschließt; das Gleiche gilt für den Gebrauch von bestimmten Artikeln in den Ansprüchen.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-
- IEEE 802.11 Standards [0024]