DE112006000688T5 - Explizite Überlagerungsintegrationsregeln - Google Patents

Explizite Überlagerungsintegrationsregeln Download PDF

Info

Publication number
DE112006000688T5
DE112006000688T5 DE112006000688T DE112006000688T DE112006000688T5 DE 112006000688 T5 DE112006000688 T5 DE 112006000688T5 DE 112006000688 T DE112006000688 T DE 112006000688T DE 112006000688 T DE112006000688 T DE 112006000688T DE 112006000688 T5 DE112006000688 T5 DE 112006000688T5
Authority
DE
Germany
Prior art keywords
file
overlay
system structure
file system
explicit
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
Application number
DE112006000688T
Other languages
English (en)
Inventor
Jeffrey de Sunnyvale Vries
Ann Los Altos Hills Hubbell
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.)
Stream Theory Inc Irvine
Stream Theory Inc
Original Assignee
Stream Theory Inc Irvine
Stream Theory Inc
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 Stream Theory Inc Irvine, Stream Theory Inc filed Critical Stream Theory Inc Irvine
Publication of DE112006000688T5 publication Critical patent/DE112006000688T5/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Verfahren, umfassend:
Bereitstellen einer Überlagerung für eine Dateisystemstruktur;
Bereitstellen einer expliziten Überlagerungsintegrationsregel;
Leiten eines Dateizugriffs auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu entweder der Dateisystemstruktur oder der Überlagerung in Abhängigkeit von der expliziten Überlagerungsintegrationsregel.

Description

  • HINTERGRUND
  • Bestehende Dateisysteme mit Dateien und Verzeichnissen können Überlagerungen aufweisen. Überlagerungen können in Streaming-Software-Anwendungen (Stream = Datenstrom) verwendet werden, bei denen das System durch einen "Trick" dazu gebracht wird, anzunehmen, dass die gestreamte Software tatsächlich auf dem Dateisystem existiert, während sie tatsächlich "virtuell" in der Überlagerung existiert. Eine Beschreibung von Streaming-Software wird mit Bezug auf das US-Patent 6.453.334 , eingereicht am 16. Juni 1998, bereitgestellt.
  • In Fällen, bei denen die Verzeichnisse der Überlagerung und des Dateisystems nicht überlappen, hat das System keine Schwierigkeiten, zu bestimmen, auf welches Verzeichnis zuzugreifen oder welche Datei zu verwenden ist. Das System greift einfach auf ein Verzeichnis oder eine Datei im Dateisystem oder in der Überlagerung zu, in Abhängigkeit davon, wo sich das Verzeichnis oder die Datei befindet. Wenn auf ein Verzeichnis oder eine Datei in der Überlagerung zugegriffen wird, kann die Datei oder das System sich in einem lokalen Zwischenspeicher befinden, oder muss heruntergeladen werden, bevor der Zugriff möglich ist. In gewisser Hinsicht ist der Zugriff auf die Datei oder das Verzeichnis der Überlagerung ähnlich dem Zugriff auf die Datei oder das Verzeichnis des Dateisystems.
  • In Fällen, bei denen die Überlagerung und das Dateisystem überlappen, greifen die Systeme jedoch einfach auf das Verzeichnis oder die Datei in der Überlagerung zu. Der Zugriff findet nicht durch irgendeinen expliziten Regelmechanismus statt. Vielmehr wird die Überlagerung einfach als eine Schicht über dem Dateisystem behan delt, durch die das System greift, um auf Dateien zuzugreifen. Wenn somit das System durch die Überlagerung greift und auf die Datei oder das Verzeichnis stößt, die es wünscht, während es sich in der Überlagerung befindet, dann behandelt das System das Verzeichnis oder die Datei, die es gefunden hat, als das gewünschte Verzeichnis oder die gewünschte Datei.
  • ÜBERBLICK
  • Die folgenden Ausführungsformen und Aspekte der Erfindung werden in Verbindung mit Systemen, Werkzeugen und Verfahren beschrieben und erläutert, die als beispielhaft und erläuternd, jedoch nicht als den Umfang einschränkend aufzufassen sind. In verschiedenen Ausführungsformen wurden eines oder mehrere der obenbeschriebenen Probleme reduziert oder eliminiert, während andere Ausführungsformen auf andere Verbesserungen zielen.
  • Eine Technik zum Steuern des Zugriffs auf Dateien oder Verzeichnisse in einem System, das eine Überlagerung enthält, verwendet explizite Überlagerungsintegrationsregeln. Ein Beispiel eines Verfahrens gemäß der Technik kann das Bereitstellen einer Überlagerung für eine Dateisystemstruktur, das Bereitstellen einer expliziten Überlagerungsintegrationsregel und das Leiten eines Dateizugriffs auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu entweder der Dateisystemstruktur oder der Überlagerung in Abhängigkeit von der expliziten Überlagerungsintegrationsregel enthalten. Der Überlagerung kann ein Streaming-Software-Programm zugeordnet sein, oder auch nicht. Eine Datei oder ein Verzeichnis in der Überlagerung kann identisch mit einer Datei oder einem Verzeichnis in der Dateisystemstruktur mit dem gleichen Namen sein, oder verschieden von diesen.
  • Ein weiteres Beispiel eines Verfahrens gemäß der Technik kann das Empfangen einer Zugriffsanfrage für eine Datei, das Heranziehen expliziter Überlagerungsintegrationsregeln, das Zugreifen auf die Datei in einer Überlagerung, wenn eine explizite Überlagerungsintegrationsregel anzeigt, das die Überlagerung Vorrang gegenüber einer Dateisystemstruktur hat, das Zugreifen auf die Datei in der Dateisystemstruktur, wenn die explizite Überlagerungsintegrationsregel anzeigt, dass die Dateisystemstruktur Vorrang gegenüber der Überlagerung hat, und das Zugreifen auf die Datei entsprechend den Dateieigenschaften, wenn die Überlagerungsintegrationsregel anzeigt, dass die Überlagerung und die Dateisystemstruktur gleiche Rangordnung haben, enthalten.
  • Ein System gemäß der Technik kann ein Mittel enthalten zum Bereitstellen einer Überlagerung für eine Dateisystemstruktur, ein Mittel zum Bereitstellen einer expliziten Überlagerungsintegrationsregel sowie ein Mittel zum Leiten eines Dateizugriffs auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu entweder der Dateisystemstruktur oder der Überlagerung in Abhängigkeit von der expliziten Überlagerungsintegrationsregel. Das vorgeschlagene System kann neben anderen Vorteilen eine bessere Kontrolle über den Zugriff auf Dateien und Verzeichnisse im Dateisystem und in der Überlagerung bieten. Diese und andere Vorteile der vorliegenden Erfindung werden für Fachleute beim Lesen der folgenden Beschreibungen und dem Studium der verschiedenen Figuren der Zeichnungen offensichtlich.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt eine Konzeptansicht von Verzeichnissen und einen expliziten Regelsatz.
  • 2 zeigt eine Konzeptansicht von Dateien und einen expliziten Regelsatz.
  • 3 zeigt ein Flussdiagramm eines Beispiels eines Verfahrens zur Anwendung von expliziten Überlagerungsintegrationsregeln.
  • 4 zeigt ein Flussdiagramm eines Beispiels eines Verfahrens für einen Dateizugriff.
  • 5 zeigt ein Flussdiagramm eines Beispiels eines Verfahrens zum Erlangen einer expliziten Überlagerungsintegrationsregel.
  • 6 zeigt ein Flussdiagramm eines Beispiels eines Verfahrens zur Anwendung expliziter Überlagerungsintegrationsregeln bei einem Streaming-Client.
  • 7 zeigt ein vernetztes System für die Verwendung in einer Ausführungsform.
  • 8 zeigt ein Computersystem für die Verwendung im System von 7.
  • GENAUE BESCHREIBUNG
  • 1 zeigt eine Konzeptansicht 100 von Verzeichnissen und einem expliziten Regelsatz gemäß einer Ausführungsform. Die Ansicht 100 enthält ein Dateisystemverzeichnis 102, ein Überlagerungsverzeichnis 104, eine Überlappung 106 und einen expliziten Regelsatz 108. Der explizite Regelsatz 108 kann eine explizite Regel enthalten, dass das Überlagerungsverzeichnis 104 Vorrang gegenüber dem Dateisystemverzeichnis 102 hat. Wenn in diesem Fall ein Verzeichnis sowohl im Dateisystemverzeichnis 102 als auch im Überlagerungsverzeichnis 104 in der Überlappung 106 vorhanden ist, dann erzwingt die explizite Regel den Zugriff auf ein Verzeichnis aus dem Überlagerungsverzeichnis 104. Es ist zu beachten, dass ein System ohne den expliziten Regelsatz 108 eine ähnliche Wirkung aufweisen kann, jedoch nicht auf expliziten Regeln beruht. Mit anderen Worten, Überlagerungsverzeichnisse des Standes der Technik, die den Verzeichnissen im Dateisystem entsprechen, würden effektiv das Dateisystemverzeichnis überdecken und verbergen.
  • Eine weitere explizite Regel gemäß einem Aspekt der Ausführungsform enthält das Vergeben von Vorrang für das Dateisystem gegenüber der Überlagerung. Der Zweck einer solchen Regel kann sein, beispielsweise, jedoch nicht einschränkend, lokalen Bibliotheken Vorrang zu geben, so dass weniger zu streamen ist.
  • Eine weitere explizite Regel gemäß einem Aspekt der Erfindung enthält das Vereinigen des Überlagerungsverzeichnisses und des Dateisystemverzeichnisses. Diese Regel kann Ausnahmen und Vorrangregeln auf der Grundlage der Verzeichnisse selbst enthalten. Es kann z. B. wünschenswert sein, auf Dateisystemverzeichnisse zuzugreifen, denen der Adobe-Reader zugeordnet ist, statt auf die Überlagerungsverzeichnisse. In diesem Beispiel müssen die Adobe-Reader-Verzeichnisse nicht gestreamt werden, wenn die Verzeichnisse lokal existieren. Auf diese Weise kann die explizite Regel sicherstellen, dass auf die lokalen Adobe-Reader-Verzeichnisse zugegriffen wird, statt sie herunterzuladen.
  • 2 zeigt eine Konzeptansicht 200 von Dateien und eines expliziten Regelsatzes gemäß einer Ausführungsform. In der Ansicht 200 enthält das Dateisystem Dateien 202, Überlagerungsdateien 204, eine Überlappung 206 und einen expliziten Regelsatz 208. Regeln für Dateien sind in gewisser Weise analog zu denjenigen für Verzeichnisse. Dateien können jedoch mehr Eigenschaften aufweisen, aus denen Regeln zu entwickeln sind. Explizite Regeln für Dateien können beispielsweise, jedoch nicht einschränkend, das Vergeben von Vorrang für das Dateisystem oder die Überlagerung in Abhängigkeit vom aktuellsten Dateidatum oder von der aktuellsten Version einer Datei enthalten. Die Anzahl möglicher Regeln, die für Dateien hergeleitet werden können, ist so vielfältig wie die Dateien selbst. Einige der offensichtlicheren Regeln würden sich auf Dateieinzelheiten beziehen, wie z. B. die Dateigröße, den Autor, den Dateityp und dergleichen.
  • 3 zeigt ein Flussdiagramm 300 eines Beispiels eines Verfahrens zur Anwendung expliziter Überlagerungsintegrationsregeln. Das Flussdiagramm 300 beginnt bei Block 302, bei dem eine Überlagerung für eine Dateisystemstruktur bereitgestellt wird. Der Überlagerung kann eine Streaming-Software-Prozedur zugeordnet sein. Alternativ kann der Überlagerung für Streaming-Medien, die eine Überlagerung verwenden, eine Streaming-Medienprozedur zugeordnet sein.
  • Im Beispiel der 3 fährt das Flussdiagramm 300 mit Block 304 fort, bei dem eine explizite Überlagerungsintegrationsregel bereitgestellt wird. Die explizite Überlagerungsintegrationsregel kann im Speicher gespeichert sein und von einem Benutzer oder einem automatisierten Programm aktualisiert oder verändert werden.
  • Im Beispiel der 3 endet das Flussdiagramm 300 bei Block 306, bei dem ein Dateizugriff für einen Dateinamen, der sich in der Dateisystemstruktur und in der Überlagerung befindet, zu entweder der Dateisystemstruktur oder der Überlagerung in Abhängigkeit von der Regel geleitet wird. Wenn die explizite Überlagerungsintegrationsregel anzeigt, dass die Dateisystemstruktur Vorrang hat, dann wird der Dateizugriff auf eine Datei in der Dateisystemstruktur durchgeführt. Wenn die explizite Überlagerungsintegrationsregel anzeigt, dass die Überlagerung Vorrang hat, dann wird der Dateizugriff auf eine in der Überlagerung befindliche Datei durchgeführt. Wenn die explizite Überlagerungsintegrationsregel anzeigt, dass das Dateisystem und die Überlagerung vereinigt sind, dann sollte die Regel eine bestimmte Logik bereitstellen, um zu entscheiden, ob auf die Datei in der Dateisystemstruktur oder die Datei in der Überlagerung zuzugreifen ist, wie z. B., jedoch nicht einschränkend, die Versionsnummer der Datei.
  • 4 zeigt ein Flussdiagramm 400 eines Beispiels eines Verfahrens für den Dateizugriff. Zu Erläuterungszwecken endet das Flussdiagramm 400 nach dem Zugriff auf die Datei. Das Flussdiagramm 400 beginnt bei Block 402, bei dem eine Zugriffsanfrage für eine Datei empfangen wird.
  • Im Beispiel der 4 fährt das Flussdiagramm 400 beim Entscheidungspunkt 404 fort, bei dem bestimmt wird, ob sich die Datei in einer Überlagerung und in der Dateisystemstruktur befindet. Eine Datei kann in einer Überlagerung vorhanden sein, wenn die Datei Teil eines gestreamten Programms ist.
  • Wenn sich die Datei nicht sowohl in der Überlagerung als auch in der Dateisystemstruktur befindet (404 – nein), fährt das Flussdiagramm 400 bei Block 406 fort, bei dem auf die Datei in der Überlagerung oder in der Dateisystemstruktur zugegriffen wird, wie jeweils angemessen. Wenn sich z. B. die Datei in der Überlagerung befindet, dann wird auf die Datei in der Überlagerung zugegriffen, während jedoch dann, wenn sich die Datei in der Dateisystemstruktur befindet, auf die Datei in der Dateisystemstruktur zugegriffen wird. Anschließend endet das Flussdiagramm 300.
  • Wenn sich andererseits die Datei sowohl in der Überlagerung als auch in der Dateisystemstruktur befindet (404 – ja), dann fährt das Flussdiagramm 400 bei Block 408 fort, bei dem die expliziten Überlagerungsintegrationsregeln herangezogen werden. Das Flussdiagramm 400 fährt anschließend mit Block 410 fort, bei dem auf die Datei in der Überlagerung oder in der Dateisystemstruktur zugegriffen wird, wie durch eine explizite Überlagerungsintegrationsregel angegeben ist. Wenn z. B. die explizite Überlagerungsintegrationsregel anzeigt, dass die Überlagerung Vorrang hat, wird auf die Datei in der Überlagerung zugegriffen. Nach dem Block 410 endet das Flussdiagramm 400.
  • 5 zeigt ein Flussdiagramm 500 eines Beispiels eines Verfahrens zum Erlangen einer expliziten Überlagerungsintegrationsregel. Das Flussdiagramm 500 beginnt bei Block 502, bei dem ein Benutzer aufgefordert wird, ein Überlagerungsintegrationsverhalten bereitzustellen. Der Benutzer kann z. B. die Option zum Ankreuzen einer Option erhalten, die beispielsweise, jedoch nicht einschränkend, erlaubt, Dateien von einer gestreamten Anwendung in ein lokales Verzeichnis einzubinden.
  • In einer Ausführungsform fährt das Flussdiagramm 500 bei Block 504 fort, bei dem die explizite Überlagerungsintegrationsregel vom Benutzer empfangen wird. Wenn der Benutzer z. B. die Option ankreuzt, kann das System anschließend die Dateien und/oder Verzeichnisse der Überlagerung in die Dateisystemstruktur einbinden. Wenn die Option nicht angekreuzt wird, kann das System anschließend der Überlagerung Vorrang geben.
  • In einer Ausführungsform fährt das Flussdiagramm 500 bei Block 506 fort, bei dem ein Dateizugriff entsprechend der expliziten Überlagerungsintegrationsregel beantwortet wird. Anschließend endet das Flussdiagramm 500.
  • 6 zeigt ein Flussdiagramm 600 eines Beispiels eines Verfahrens zur Anwendung expliziter Überlagerungsintegrationsregeln auf einen Streaming-Client. Das Flussdiagramm 600 beginnt bei Block 602 mit dem Initiieren eines Streaming-Programms von einem Streaming-Server zu einem Client.
  • In Beispiel der 6 fährt das Flussdiagramm 600 bei Block 604 fort, bei dem eine Überlagerung dem Client zur Verfügung gestellt wird.
  • Im Beispiel der 6 fährt das Flussdiagramm 600 mit Block 606 fort, bei dem ein Zugriff auf eine Datei versucht wird, die sich in der Überlagerung beim Client befindet.
  • Im Beispiel der 6 fährt das Flussdiagramm 600 mit dem Entscheidungspunkt 608 fort, bei dem bestimmt wird, ob die Datei auch in der Dateisystemstruktur des Client vorhanden ist.
  • Wenn im Beispiel der 6 die Datei auch in der Dateisystemstruktur des Client vorhanden ist (608 – ja), dann wird im Block 610 entsprechend einer expliziten Überlagerungsintegrationsregel bestimmt, ob auf die in der Überlagerung vorhan dene Datei oder auf die in der Dateisystemstruktur vorhandene Datei zugegriffen wird, wobei das Flussdiagramm 600 endet.
  • Wenn im Beispiel der 6 die Datei nicht auch in der Dateisystemstruktur des Client vorhanden ist (608 – nein), dann wird bei Block 612 auf die Datei in der Überlagerung zugegriffen, wobei das Flussdiagramm 600 endet.
  • Die folgende Beschreibung der 7 und 8 beabsichtigt, einen Überblick über die Computer-Hardware und andere Betriebskomponenten zu geben, die für die Durchführung der Verfahren der hier beschriebenen Erfindung geeignet sind, soll jedoch die anwendbaren Umgebungen nicht einschränken. In ähnlicher Weise können die Computer-Hardware und andere Betriebskomponenten als Teil der hier beschriebenen Vorrichtungen der Erfindung geeignet sein. Die Erfindung kann mit anderen Computersystemkonfigurationen verwirklicht werden, einschließlich tragbarer Geräte, Multiprozessorsystemen, Verbraucherelektronik auf Mikroprozessorbasis oder programmierbarer Verbraucherelektronik, Netzwerk-PCs, Minicomputer, Großrechner und dergleichen. Die Erfindung kann ferner in verteilten Rechnerumgebungen verwirklicht werden, bei denen Aufgaben von entfernten Verarbeitungsvorrichtungen ausgeführt werden, die über ein Kommunikationsnetz verbunden sind.
  • 7 zeigt ein vernetztes System 700, das mehrere Computersysteme enthält, die über ein Netzwerk 702, wie z. B. das Internet, miteinander verbunden sind. Der Ausdruck "Internet", wie er hier verwendet wird, bezieht sich auf ein Netz von Netzwerken, die bestimmte Protokolle verwenden, wie z. B. das TCP/IP-Protokoll und mögliche andere Protokolle, wie z. B. das Hypertextübertragungsprotokoll (HTTP) für Hypertextauszeichnungssprache-(HTML)-Dokumente, die das World Wide Web (das Netz) bilden. Die physikalischen Verbindungen des Internets und die Protokolle und Kommunikationsprozeduren des Internets sind Fachleuten wohlbekannt.
  • Der Netz-Server 704 ist typischerweise wenigstens ein Computersystem, das als ein Server-Computersystem arbeitet und so konfiguriert ist, dass es mit den Protokollen des World Wide Web arbeitet und mit dem Internet gekoppelt ist. Das Netz-Serversystem 704 kann ein herkömmliches Server-Computersystem sein. Optional kann der Netz-Server 704 Teil eines ISP sein, der Zugang zu dem Internet für Client-Systeme zur Verfügung stellt. Der Netz-Server 704 ist mit dem Server-Computersystem 706 gekoppelt gezeigt, welches selbst mit dem Netzinhalt 708 gekoppelt ist, der als eine Form einer Mediendatenbank betrachtet werden kann. Obwohl in 7 zwei Computersysteme 704 und 706 gezeigt sind, können das Netz-Serversystem 704 und das Server-Computersystem 706 ein Computersystem sein, das unterschiedliche Software-Komponenten aufweist, die die Netz-Serverfunktionalität und die Serverfunktionalität des Server-Computersystems 706 bereitstellen, wie im Folgenden genauer beschrieben wird.
  • Der Zugang zum Netzwerk 702 wird typischerweise von Internet-Dienstanbietern (ISPs) bereitgestellt, wie z. B. den ISPs 710 und 716. Die Benutzer an Client-Systemen, wie z. B. den Client-Computersystemen 712, 718, 722 und 726, erhalten Zugang zum Internet über die ISPs 710 und 716. Der Zugang zum Internet erlaubt den Benutzern der Client-Computersysteme, Informationen auszutauschen, elektronische Post (E-Mail) zu empfangen und zu senden, und Dokumente zu betrachten, wie z. B. Dokumente, die im HTML-Format erstellt wurden. Diese Dokumente werden häufig von Netz-Servern bereitgestellt, wie z. B. dem Netz-Server 704, die als "am" Internet hängend bezeichnet werden. Diese Netz-Server werden häufig von den ISPs, wie z. B. dem ISP 710, bereitgestellt, obwohl ein Computersystem eingerichtet und mit dem Internet verbunden werden kann, ohne dass dieses System auch ein ISP ist.
  • Client-Computersysteme 712, 718, 722 und 726 können jeweils mit der geeigneten Netz-Browser-Software HTML-Seiten betrachten, die vom Netz-Server 704 bereitgestellt werden. Der ISP 710 bietet Internet-Zugang für das Client-Computersystem 712 über eine Modem-Schnittstelle 714, die als Teil des Client-Computersystems 712 betrachtet werden kann. Das Client-Computersystem kann ein persönliches Computersystem, ein Netzwerk-Computer, ein Netz-TV-System, oder ein anderes Computersystem sein. Während 7 die Modem-Schnittstelle 714 allgemein als "Modem" zeigt, kann die Schnittstelle ein analoger Modem, ein ISDN-Modem, ein Kabelmodem, eine Satellitenübertragungsschnittstelle (z. B. "Direkt-PC") oder eine andere Schnittstelle zum Verbinden eines Computersystems mit anderen Computersystemen sein.
  • Ähnlich dem ISP 714 stellt der ISP 716 einen Internetzugang für Client-Systeme 718, 722 und 726 zur Verfügung, obwohl, wie in 7 gezeigt ist, die Verbindungen für diese drei Computersysteme nicht gleich sind. Das Client-Computersystem 718 ist über eine Modem-Schnittstelle 720 angeschlossen, während die Client-Computersysteme 722 und 726 Teil eines LAN 730 sind.
  • Die Client-Computersysteme 722 und 726 sind über Netzwerkschnittstellen 724 und 728 mit dem LAN 730 gekoppelt, die Ethernet-Netzwerk- oder andere Netzwerkschnittstellen sein können. Das LAN 730 ist ebenfalls mit einem Netzübergangscomputersystem 732 gekoppelt, das ein Zugangsschutzsystem und andere internet-bezogene Dienste für das Lokalbereichsnetzwerk zur Verfügung stellen kann. Dieses Netzübergangscomputersystem 732 ist mit dem ISP 716 gekoppelt, um den Client-Computersystemen 722 und 726 Internetzugang zur Verfügung zu stellen. Das Netzübergangscomputersystem 732 kann ein herkömmliches Server-Computersystem sein.
  • Alternativ kann ein Server-Computersystem 734 direkt mit dem LAN 730 über eine Netzwerkschnittstelle 736 gekoppelt sein, um Dateien 738 und andere Dienste den Clients 722 und 726 zur Verfügung zu stellen, ohne die Notwendigkeit, über das Netzübergangssystem 732 mit dem Internet zu verbinden.
  • 8 zeigt ein Computersystem 740 zur Verwendung im System 700 (7). Das Computersystem 740 kann ein herkömmliches Computersystem sein, das als Client-Computersystem oder Server-Computersystem oder als Netz-Serversystem verwendet werden kann. Ein solches Computersystem kann verwendet werden, um viele der Funktionen eines Internet-Dienstanbieters, wie z. B. des ISP 710 (7), auszuführen.
  • Im Beispiel der 8 enthält das Computersystem 740 einen Computer 742, E/A-Vorrichtungen 744 und eine Anzeigevorrichtung 746. Der Computer 742 enthält einen Prozessor 748, eine Kommunikationsschnittstelle 750, einen Speicher 752, eine Anzeigesteuervorrichtung 754, einen nichtflüchtigen Speicher 756 und eine E/A-Steuervorrichtung 758. Das Computersystem 740 kann mit den E/A-Vorrichtungen 744 und der Anzeigevorrichtung 746 gekoppelt sein oder diese enthalten.
  • Der Computer 742 kommuniziert mit externen Systemen über die Kommunikationsschnittstelle 750, die einen Modem oder eine Netzwerkschnittstelle enthalten kann. Es wird angenommen, dass die Kommunikationsschnittstelle 750 als Teil des Computersystems 740 oder als Teil des Computers 742 betrachtet werden kann. Die Kommunikationsschnittstelle kann ein analoger Modem, ein ISDN-Modem, ein Kabelmodem, eine Token-Ring-Schnittstelle, eine Satellitenübertragungsschnittstelle (z. B. "Direkt-PC") oder eine andere Schnittstelle zum Koppeln eines Computersystems mit anderen Computersystemen sein.
  • Der Prozessor 748 kann z. B. ein herkömmlicher Mikroprozessor sein, wie z. B. ein Intel-Pentium-Mikroprozessor, oder ein Motorola-Power-PC-Mikroprozessor. Der Speicher 752 ist mit dem Prozessor 748 mittels eines Busses 760 verbunden. Der Speicher 752 kann ein dynamischer Schreib/Lese-Speicher (DRAM) sein, und kann ferner einen statischen RAM (SRAM) enthalten. Der Bus 760 verbindet den Prozessor 748 mit dem Speicher 752, und ferner mit dem nichtflüchtigen Speicher 756, der Anzeigesteuervorrichtung 754 und der E/A-Steuervorrichtung 758.
  • Die E/A-Vorrichtungen 744 können eine Tastatur, Plattenlaufwerke, Drucker, einen Scanner und andere Eingabe- und Ausgabevorrichtungen enthalten, einschließlich einer Maus oder einer Zeigevorrichtung. Die Anzeigesteuervorrichtung 754 kann in herkömmlicher Weise eine Anzeige auf der Anzeigevorrichtung 746 steuern, welche z. B. eine Katodenstrahlröhre (CRT) oder eine Flüssigkristallanzeige (LCD) sein kann. Die Anzeigesteuervorrichtung 754 und die E/A-Steuervorrichtung 758 können mit herkömmlichen wohlbekannten Techniken implementiert sein.
  • Der nichtflüchtige Speicher 756 ist häufig eine magnetische Festplatte, eine optische Platte oder eine andere Form eines Speichers für große Datenmengen. Einige dieser Daten werden häufig mittels eines direkten Speicherzugriffsprozesses in den Speicher 752 während der Ausführung von Software im Computer 742 geschrieben. Ein Fachmann wird sofort erkennen, dass die Ausdrücke "maschinenlesbares Medium" oder "computerlesbares Medium" jeglichen Typ von Speichervorrichtung umfassen, auf den vom Prozess 748 zugegriffen werden kann, und auch eine Trägerwelle umfasst, die ein Datensignal codiert.
  • Objekte, Verfahren, Inline-Zwischenspeicher, Zwischenspeicherzustände und andere objektorientierte Komponenten können im nichtflüchtigen Speicher 756 gespeichert sein, oder während der Ausführung z. B. eines objektorientierten Software-Programms in den Speicher 752 geschrieben werden. Auf diese Weise können die z. B. in den 13 und 6 gezeigten Komponenten im Computersystem 740 verwirklicht werden.
  • Das Computersystem 740 ist ein Beispiel für viele mögliche Computersysteme, die unterschiedliche Architekturen aufweisen können. Zum Beispiel weisen persönliche Computer, die auf einem Intel-Mikroprozessor basieren, häufig mehrere Busse auf, von denen einer ein E/A-Bus für die Peripheriegeräte sein kann, und einer direkt den Prozessor 748 und den Speicher 752 verbindet (häufig als Speicherbus bezeichnet).
  • Die Busse sind über Brückenkomponenten miteinander verbunden, die irgendeine notwendige Übersetzung aufgrund unterschiedlicher Busprotokolle bewerkstelligen.
  • Netzwerkcomputer sind ein weiterer Typ von Computersystem, der mit der vorliegenden Erfindung verwendet werden kann. Netzwerkcomputer enthalten gewöhnlich keine Festplatte oder andere Massenspeichervorrichtung, wobei die ausführbaren Programme zur Ausführung durch den Prozessor 748 von einer Netzwerkverbindung in den Speicher 752 geladen werden. Ein Netz-TV-System, das im Stand der Technik bekannt ist, wird ebenfalls als ein Computersystem gemäß der vorliegenden Erfindung betrachtet, jedoch können ihm einige der in 8 gezeigten Merkmale fehlen, wie z. B. bestimmte Eingabe- oder Ausgabevorrichtungen. Ein typisches Computersystem enthält gewöhnlich wenigstens einen Prozessor, einen Speicher und einen Bus, der den Speicher mit dem Prozessor verbindet.
  • Außerdem wird das Computersystem 740 mittels Betriebssystem-Software gesteuert, welche ein Dateimanagementsystem enthält, wie z. B. ein Plattenbetriebssystem, welches Teil der Betriebssystem-Software ist. Ein Beispiel einer Betriebssystem-Software mit ihrer zugehörigen Dateimanagementsystem-Software ist die Familie der Betriebssysteme, die als Windows® von Microsoft Corporation, Redmond, Washington, bekannt ist, und deren zugehörige Dateimanagementsysteme. Ein weiteres Beispiel von Betriebssystem-Software mit ihrer zugehörigen Dateimanagementsystem-Software ist das Linux-Betriebssystem und dessen zugehöriges Dateimanagementsystem. Das Dateimanagementsystem ist typischerweise im nichtflüchtigen Speicher 756 gespeichert und veranlasst den Prozessor 748, verschiedene Vorgänge auszuführen, die vom Betriebssystem benötigt werden, um Daten einzugeben und auszugeben, und um Daten im Speicher zu speichern, einschließlich der Speicherung von Dateien auf dem nichtflüchtigen Speicher 756.
  • Einige Abschnitte der genauen Beschreibung sind im Hinblick auf Algorithmen und symbolische Darstellungen von Operationen mit Datenbits innerhalb eines Compu terspeichers dargestellt. Dies algorithmischen Beschreibungen und Darstellungen sind die Mittel, die von Fachleuten verwendet werden, um den Gegenstand ihrer Arbeit anderen Fachleuten effektiv zu vermitteln. Ein Algorithmus ist hier, und im Allgemeinen, als eine eigenkonsistente Folge von Operationen aufzufassen, die zu einem gewünschten Ergebnis führt. Die Operationen erfordern somit physikalische Manipulationen von physikalischen Größen. Gewöhnlich, obwohl nicht notwendig, nehmen diese Größen die Form elektrischer oder magnetischer Signale an, die gespeichert, übertragen, kombiniert, verglichen und andersartig manipuliert werden können. Es hat sich im Laufe der Zeit als günstig erwiesen, hauptsächlich aus Gründen der gemeinsamen Nutzung, diese Signale als Bits, Werte, Elemente, Symbole, Zeichen, Ausdrücke und Zahlen oder dergleichen zu bezeichnen.
  • Es sollte jedoch im Gedächtnis behalten werden, dass alle diese und ähnlichen Ausdrücke den entsprechenden physikalischen Größen zuzuordnen sind und lediglich bequeme Bezeichnungen sind, die auf diese Größen angewendet werden. Sofern nicht speziell erwähnt, wie ansonsten aus der folgenden Diskussion offensichtlich ist, wird angenommen, dass über die gesamte Beschreibung hinweg Diskussionen, die Ausdrücke wie z. B. "Verarbeitung" oder "Berechnung" oder "Bestimmung" oder "Anzeigen" oder dergleichen nutzen, sich auf die Maßnahmen und Prozesse eines Computersystems oder ähnlicher elektronischer Rechenvorrichtungen beziehen, die Daten, die als physikalische (elektronische) Größen innerhalb von Registern und Speichern des Computersystems repräsentiert sind, in andere Daten manipulieren und transformieren, die in ähnlicher Weise als physikalische Größen innerhalb von Speichern oder Registern oder einer anderen solchen Informationsspeichervorrichtung, Übertragungsvorrichtung oder Anzeigevorrichtung dargestellt sind.
  • Die vorliegende Erfindung bezieht sich in bestimmten Ausführungsformen ferner auf eine Vorrichtung zum Durchführung der Operationen in derselben. Diese Vorrichtung kann für die benötigten Zwecke speziell konstruiert sein, oder kann einen Universal computer umfassen, der mittels eines im Computer gespeicherten Computerprogramms selektiv aktiviert oder rekonfiguriert wird. Ein solches Computerprogramm kann in einem computerlesbaren Speichermedium gespeichert sein, wie z. B., jedoch nicht hierauf beschränkt, irgendeinem Typ von Platte, einschließlich Disketten, optischer Platten, CD-ROMs und magnetooptischer Platten, in Nur-Lese-Speichern (ROMs), Schreib/Lese-Speichern (RAMs), EPROMs, EEPROMs, magnetischen oder optischen Karten oder irgendeinem Typ von Medium, das zum Speichern elektronischer Anweisungen geeignet ist und jeweils mit einem Computersystembus gekoppelt ist.
  • Die Algorithmen und Anzeigen, die hier dargestellt sind, beziehen sich nicht inhärent auf irgendeinen bestimmten Computer oder eine andere Vorrichtung. Verschiedene Universalsysteme können mit Programmen gemäß den hier vorgestellten Lehren verwendet werden, oder es kann sich als günstig erweisen, eine spezialisiertere Vorrichtung zu konstruieren, um die Verfahren bestimmter Ausführungsformen auszuführen. Die erforderliche Struktur für eine Vielfalt dieser Systeme ergibt sich aus der folgenden Beschreibung. Außerdem ist die vorliegende Erfindung nicht mit Bezug auf irgendeine bestimmte Programmiersprache beschrieben worden, wobei verschiedene Ausführungsformen somit unter Verwendung einer Vielfalt von Programmiersprachen implementiert werden können.
  • Obwohl diese Erfindung hinsichtlich bestimmter Ausführungsformen beschrieben worden ist, ist für Fachleute klar, dass gewisse Modifikationen, Vertauschungen und Äquivalente derselben in den erfinderischen Umfang der vorliegenden Erfindung fallen. Die folgenden beigefügten Ansprüche sollen daher alle solchen Modifikationen, Vertauschungen und Äquivalente, die in den wahren Erfindungsgedanken und Umfang der vorliegenden Erfindung fallen, enthalten, wobei die Erfindung nur durch die Ansprüche begrenzt ist.
  • ZUSAMMENFASSUNG
  • Eine Technik zum Steuern des Zugriffs auf Dateien oder Verzeichnisse in einem System, das eine Überlagerung aufweist, umfasst die Verwendung expliziter Überlagerungsintegrationsregeln. Ein Beispiel eines Verfahrens gemäß der Technik kann das Bereitstellen einer Überlagerung für eine Dateisystemstruktur, das Bereitstellen einer expliziten Überlagerungsintegrationsregel und das Leiten eines Dateizugriffs auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu entweder der Dateisystemstruktur oder der Überlagerung in Abhängigkeit von der expliziten Überlagerungsintegrationsregel beinhalten. Die Überlagerung kann mit einem Streaming-Software-Programm verbunden sein, muss es aber nicht. Das vorgeschlagene System kann neben anderen Vorteilen eine bessere Kontrolle des Zugriffs auf Dateien und Verzeichnisse in dem Dateisystem/der Überlagerung bereitstellen.
  • 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 Patentliteratur
    • - US 6453334 [0001]

Claims (20)

  1. Verfahren, umfassend: Bereitstellen einer Überlagerung für eine Dateisystemstruktur; Bereitstellen einer expliziten Überlagerungsintegrationsregel; Leiten eines Dateizugriffs auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu entweder der Dateisystemstruktur oder der Überlagerung in Abhängigkeit von der expliziten Überlagerungsintegrationsregel.
  2. Verfahren nach Anspruch 1, wobei der Überlagerung ein Streaming-Software-Programm zugeordnet ist.
  3. Verfahren nach Anspruch 1, wobei das Bereitstellen einer Überlagerung für die Dateisystemstruktur enthält: Auffordern eines Benutzers, eine explizite Überlagerungsintegrationsregel einzugeben; und Empfangen der expliziten Überlagerungsintegrationsregel vom Benutzer.
  4. Verfahren nach Anspruch 1, wobei die Datei in der Überlagerung und die Datei in der Dateisystemstruktur identische Namen, jedoch unterschiedliche Dateieinzelheiten aufweisen.
  5. Verfahren nach Anspruch 1, wobei die Dateisystemstruktur ein Dateisystemverzeichnis enthält.
  6. Verfahren nach Anspruch 1, wobei die Dateisystemstruktur Dateisystemdateien enthält.
  7. Verfahren nach Anspruch 1, das ferner das Leiten eines Dateizugriffs auf eine Datei, die sich in der Dateisystemstruktur befindet, zur Dateisystemstruktur umfasst.
  8. Verfahren nach Anspruch 1, das ferner das Leiten eines Dateizugriffs auf eine Datei, die sich in der Überlagerung befindet, zur Überlagerung umfasst.
  9. Verfahren nach Anspruch 1, wobei die explizite Überlagerungsintegrationsregel anzeigt, dass ein Dateizugriff auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu der Überlagerung geleitet wird.
  10. Verfahren nach Anspruch 1, wobei die explizite Überlagerungsintegrationsregel anzeigt, dass ein Dateizugriff auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu der Dateisystemstruktur geleitet wird.
  11. Verfahren nach Anspruch 1, wobei die explizite Überlagerungsintegrationsregel anzeigt, dass ein Dateizugriff auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu der Dateisystemstruktur oder der Überlagerung geleitet wird, in Abhängigkeit von Eigenschaften der Verzeichnisse, in denen sich die Datei befindet.
  12. Verfahren nach Anspruch 1, wobei die explizite Überlagerungsintegrationsregel anzeigt, dass ein Dateizugriff auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu der Dateisystemstruktur oder der Überlagerung geleitet wird, in Abhängigkeit von Eigenschaften der Datei.
  13. Verfahren, umfassend: Empfangen einer Zugriffsanfrage für eine Datei; Heranziehen expliziter Überlagerungsintegrationsregeln; Zugreifen auf die Datei in einer Überlagerung, wenn eine explizite Überlagerungsintegrationsregel anzeigt, dass die Überlagerung Vorrang gegenüber einer Dateisystemstruktur hat; Zugreifen auf die Datei in der Dateisystemstruktur, wenn die explizite Überlagerungsintegrationsregel anzeigt, dass die Dateisystemstruktur Vorrang gegenüber der Überlagerung hat; Zugreifen auf die Datei entsprechend den Dateieigenschaften, wenn die Überlagerungsintegrationsregel anzeigt, dass die Überlagerung und die Dateisystemstruktur gleiche Rangordnung haben.
  14. Verfahren nach Anspruch 13, wobei der Überlagerung ein Streaming-Software-Programm zugeordnet ist.
  15. Verfahren nach Anspruch 13, wobei die Datei in der Überlagerung und die Datei in der Dateisystemstruktur identische Namen, jedoch unterschiedliche Dateieinzelheiten aufweisen.
  16. Verfahren nach Anspruch 13, das ferner das Bereitstellen der expliziten Überlagerungsintegrationsregel umfasst.
  17. Verfahren nach Anspruch 13, das ferner das Bereitstellen der Überlagerung umfasst.
  18. Verfahren nach Anspruch 13, das ferner das Bestimmen umfasst, ob die Datei sowohl in der Überlagerung als auch in der Dateisystemstruktur vorhanden ist.
  19. Verfahren nach Anspruch 13, ferner umfassend: Bestimmen, ob die Datei nur in der Überlagerung oder nur in der Dateisystemstruktur vorhanden ist; Zugreifen auf die Datei in der Überlagerung, wenn die Datei nur in der Überlagerung vorhanden ist; und Zugreifen auf die Datei in der Dateisystemstruktur, wenn die Datei nur in der Dateisystemstruktur vorhanden ist.
  20. System, umfassend: ein Mittel zum Bereitstellen einer Überlagerung für eine Dateisystemstruktur; ein Mittel zum Bereitstellen einer expliziten Überlagerungsintegrationsregel; und Mittel zum Leiten eines Dateizugriffs auf eine Datei, die sich in der Dateisystemstruktur und in der Überlagerung befindet, zu entweder der Dateisystemstruktur oder der Überlagerung in Abhängigkeit von der expliziten Überlagerungsintegrationsregel.
DE112006000688T 2005-03-23 2006-03-22 Explizite Überlagerungsintegrationsregeln Withdrawn DE112006000688T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US66482005P 2005-03-23 2005-03-23
US60/664,820 2005-03-23
US11/371,627 US20060218165A1 (en) 2005-03-23 2006-03-08 Explicit overlay integration rules
US11/371,627 2006-03-08
PCT/US2006/010637 WO2006102532A2 (en) 2005-03-23 2006-03-22 Explicit overlay integration rules

Publications (1)

Publication Number Publication Date
DE112006000688T5 true DE112006000688T5 (de) 2008-11-20

Family

ID=37036427

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112006000688T Withdrawn DE112006000688T5 (de) 2005-03-23 2006-03-22 Explizite Überlagerungsintegrationsregeln

Country Status (5)

Country Link
US (1) US20060218165A1 (de)
EP (1) EP1904919A2 (de)
JP (1) JP2009505167A (de)
DE (1) DE112006000688T5 (de)
WO (1) WO2006102532A2 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453334B1 (en) 1997-06-16 2002-09-17 Streamtheory, Inc. Method and apparatus to allow remotely located computer programs and/or data to be accessed on a local computer in a secure, time-limited manner, with persistent caching
US7062567B2 (en) 2000-11-06 2006-06-13 Endeavors Technology, Inc. Intelligent network streaming and execution system for conventionally coded applications
US8831995B2 (en) 2000-11-06 2014-09-09 Numecent Holdings, Inc. Optimized server for streamed applications
EP1825390A2 (de) 2004-11-13 2007-08-29 Stream Theory, Inc. Hybrides lokal-/fernstreaming
US8024523B2 (en) 2007-11-07 2011-09-20 Endeavors Technologies, Inc. Opportunistic block transmission with time constraints
EP1875364A2 (de) 2005-03-23 2008-01-09 Stream Theory, Inc. System und verfahren zur verfolgung von änderungen and dateien in streaming-anwendungen
US9405521B2 (en) * 2006-06-29 2016-08-02 Microsoft Technology Licensing, Llc Mapping of virtualized setup-free applications for a computing system
US8909799B2 (en) * 2006-07-13 2014-12-09 International Business Machines Corporation File system firewall
US8261345B2 (en) 2006-10-23 2012-09-04 Endeavors Technologies, Inc. Rule-based application access management
GB0712640D0 (en) * 2007-06-28 2007-08-08 Symbian Software Ltd Domputing device having a merged directory hierarchy from multiple filesystems
US8892738B2 (en) 2007-11-07 2014-11-18 Numecent Holdings, Inc. Deriving component statistics for a stream enabled application
US8776038B2 (en) 2008-08-07 2014-07-08 Code Systems Corporation Method and system for configuration of virtualized software applications
US8434093B2 (en) 2008-08-07 2013-04-30 Code Systems Corporation Method and system for virtualization of software applications
US8510352B2 (en) 2008-10-24 2013-08-13 Microsoft Corporation Virtualized boot block with discovery volume
US8417969B2 (en) * 2009-02-19 2013-04-09 Microsoft Corporation Storage volume protection supporting legacy systems
US8073886B2 (en) * 2009-02-20 2011-12-06 Microsoft Corporation Non-privileged access to data independent of filesystem implementation
US8954958B2 (en) 2010-01-11 2015-02-10 Code Systems Corporation Method of configuring a virtual application
US8959183B2 (en) 2010-01-27 2015-02-17 Code Systems Corporation System for downloading and executing a virtual application
US9104517B2 (en) 2010-01-27 2015-08-11 Code Systems Corporation System for downloading and executing a virtual application
US9229748B2 (en) 2010-01-29 2016-01-05 Code Systems Corporation Method and system for improving startup performance and interoperability of a virtual application
US8763009B2 (en) 2010-04-17 2014-06-24 Code Systems Corporation Method of hosting a first application in a second application
US9218359B2 (en) 2010-07-02 2015-12-22 Code Systems Corporation Method and system for profiling virtual application resource utilization patterns by executing virtualized application
US9021015B2 (en) 2010-10-18 2015-04-28 Code Systems Corporation Method and system for publishing virtual applications to a web server
US9209976B2 (en) 2010-10-29 2015-12-08 Code Systems Corporation Method and system for restricting execution of virtual applications to a managed process environment
US11301428B2 (en) * 2018-06-22 2022-04-12 Red Hat, Inc. Filesystem pass-through on lightweight virtual machine containers

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453334B1 (en) 1997-06-16 2002-09-17 Streamtheory, Inc. Method and apparatus to allow remotely located computer programs and/or data to be accessed on a local computer in a secure, time-limited manner, with persistent caching

Family Cites Families (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5109413A (en) * 1986-11-05 1992-04-28 International Business Machines Corporation Manipulating rights-to-execute in connection with a software copy protection mechanism
US4796220A (en) * 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
US5210850A (en) * 1990-06-15 1993-05-11 Compaq Computer Corporation Memory address space determination using programmable limit registers with single-ended comparators
US5293556A (en) * 1991-07-29 1994-03-08 Storage Technology Corporation Knowledge based field replaceable unit management
WO1993020511A1 (en) * 1992-03-31 1993-10-14 Aggregate Computing, Inc. An integrated remote execution system for a heterogenous computer network environment
US5771354A (en) * 1993-11-04 1998-06-23 Crawford; Christopher M. Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services
EP0728333A1 (de) * 1993-11-09 1996-08-28 Arcada Software System zur datensicherung/wiederherstellung für ein rechnernetzwerk
US5495411A (en) * 1993-12-22 1996-02-27 Ananda; Mohan Secure software rental system using continuous asynchronous password verification
US5715403A (en) * 1994-11-23 1998-02-03 Xerox Corporation System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar
US5724571A (en) * 1995-07-07 1998-03-03 Sun Microsystems, Inc. Method and apparatus for generating query responses in a computer-based document retrieval system
US5706440A (en) * 1995-08-23 1998-01-06 International Business Machines Corporation Method and system for determining hub topology of an ethernet LAN segment
US6047323A (en) * 1995-10-19 2000-04-04 Hewlett-Packard Company Creation and migration of distributed streams in clusters of networked computers
US5778395A (en) * 1995-10-23 1998-07-07 Stac, Inc. System for backing up files from disk volumes on multiple nodes of a computer network
US5933603A (en) * 1995-10-27 1999-08-03 Emc Corporation Video file server maintaining sliding windows of a video data set in random access memories of stream server computers for immediate video-on-demand service beginning at any specified location
US5764906A (en) * 1995-11-07 1998-06-09 Netword Llc Universal electronic resource denotation, request and delivery system
US5909545A (en) * 1996-01-19 1999-06-01 Tridia Corporation Method and system for on demand downloading of module to enable remote control of an application program over a network
JPH09231156A (ja) * 1996-02-28 1997-09-05 Nec Corp プログラム受信機能付遠隔実行装置
US5838910A (en) * 1996-03-14 1998-11-17 Domenikos; Steven D. Systems and methods for executing application programs from a memory device linked to a server at an internet site
US5764910A (en) * 1996-04-02 1998-06-09 National Semiconductor Corporation Method and apparatus for encoding and using network resource locators
US6018619A (en) * 1996-05-24 2000-01-25 Microsoft Corporation Method, system and apparatus for client-side usage tracking of information server systems
US5903892A (en) * 1996-05-24 1999-05-11 Magnifi, Inc. Indexing of media content on a network
US5943424A (en) * 1996-06-17 1999-08-24 Hewlett-Packard Company System, method and article of manufacture for processing a plurality of transactions from a single initiation point on a multichannel, extensible, flexible architecture
WO1997049039A1 (en) * 1996-06-21 1997-12-24 Bell Communications Research, Inc. Apparatus and methods for highly available directory services in the distributed computing environment
US6061738A (en) * 1997-06-27 2000-05-09 D&I Systems, Inc. Method and system for accessing information on a network using message aliasing functions having shadow callback functions
US6038610A (en) * 1996-07-17 2000-03-14 Microsoft Corporation Storage of sitemaps at server sites for holding information regarding content
US5881232A (en) * 1996-07-23 1999-03-09 International Business Machines Corporation Generic SQL query agent
US5878425A (en) * 1996-08-21 1999-03-02 International Business Machines Corp. Intuitive technique for visually creating resource files
US6601103B1 (en) * 1996-08-22 2003-07-29 Intel Corporation Method and apparatus for providing personalized supplemental programming
US6226665B1 (en) * 1996-09-19 2001-05-01 Microsoft Corporation Application execution environment for a small device with partial program loading by a resident operating system
US6085186A (en) * 1996-09-20 2000-07-04 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
US6028925A (en) * 1996-09-23 2000-02-22 Rockwell International Corp. Telephonic switching system, telephonic switch and method for servicing telephone calls using virtual memory spaces
US5911043A (en) * 1996-10-01 1999-06-08 Baker & Botts, L.L.P. System and method for computer-based rating of information retrieved from a computer network
US5923885A (en) * 1996-10-31 1999-07-13 Sun Microsystems, Inc. Acquisition and operation of remotely loaded software using applet modification of browser software
US6347398B1 (en) * 1996-12-12 2002-02-12 Microsoft Corporation Automatic software downloading from a computer network
US6099408A (en) * 1996-12-31 2000-08-08 Walker Digital, Llc Method and apparatus for securing electronic games
US5903721A (en) * 1997-03-13 1999-05-11 cha|Technologies Services, Inc. Method and system for secure online transaction processing
US5895454A (en) * 1997-04-17 1999-04-20 Harrington; Juliette Integrated interface for vendor/product oriented internet websites
US5892915A (en) * 1997-04-25 1999-04-06 Emc Corporation System having client sending edit commands to server during transmission of continuous media from one clip in play list for editing the play list
US5905990A (en) * 1997-06-23 1999-05-18 International Business Machines Corporation File system viewpath mechanism
CA2209549C (en) * 1997-07-02 2000-05-02 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for loading data into a database in a multiprocessor environment
US5905868A (en) * 1997-07-22 1999-05-18 Ncr Corporation Client/server distribution of performance monitoring data
US5933822A (en) * 1997-07-22 1999-08-03 Microsoft Corporation Apparatus and methods for an information retrieval system that employs natural language processing of search results to improve overall precision
US6101482A (en) * 1997-09-15 2000-08-08 International Business Machines Corporation Universal web shopping cart and method of on-line transaction processing
US6192408B1 (en) * 1997-09-26 2001-02-20 Emc Corporation Network file server sharing local caches of file access information in data processors assigned to respective file systems
US6085193A (en) * 1997-09-29 2000-07-04 International Business Machines Corporation Method and system for dynamically prefetching information via a server hierarchy
US6253234B1 (en) * 1997-10-17 2001-06-26 International Business Machines Corporation Shared web page caching at browsers for an intranet
US6026166A (en) * 1997-10-20 2000-02-15 Cryptoworx Corporation Digitally certifying a user identity and a computer system in combination
US6219693B1 (en) * 1997-11-04 2001-04-17 Adaptec, Inc. File array storage architecture having file system distributed across a data processing platform
US6094649A (en) * 1997-12-22 2000-07-25 Partnet, Inc. Keyword searches of structured databases
US6735631B1 (en) * 1998-02-10 2004-05-11 Sprint Communications Company, L.P. Method and system for networking redirecting
US6185608B1 (en) * 1998-06-12 2001-02-06 International Business Machines Corporation Caching dynamic web pages
US6587857B1 (en) * 1998-06-30 2003-07-01 Citicorp Development Center, Inc. System and method for warehousing and retrieving data
US6418555B2 (en) * 1998-07-21 2002-07-09 Intel Corporation Automatic upgrade of software
US6574618B2 (en) * 1998-07-22 2003-06-03 Appstream, Inc. Method and system for executing network streamed application
US20010044850A1 (en) * 1998-07-22 2001-11-22 Uri Raz Method and apparatus for determining the order of streaming modules
US6311221B1 (en) * 1998-07-22 2001-10-30 Appstream Inc. Streaming modules
US6697869B1 (en) * 1998-08-24 2004-02-24 Koninklijke Philips Electronics N.V. Emulation of streaming over the internet in a broadcast application
US6510462B2 (en) * 1998-09-01 2003-01-21 Nielsen Media Research, Inc. Collection of images in Web use reporting system
US6356946B1 (en) * 1998-09-02 2002-03-12 Sybase Inc. System and method for serializing Java objects in a tubular data stream
US6418554B1 (en) * 1998-09-21 2002-07-09 Microsoft Corporation Software implementation installer mechanism
US6370686B1 (en) * 1998-09-21 2002-04-09 Microsoft Corporation Method for categorizing and installing selected software components
US6763370B1 (en) * 1998-11-16 2004-07-13 Softricity, Inc. Method and apparatus for content protection in a secure content delivery system
US6374402B1 (en) * 1998-11-16 2002-04-16 Into Networks, Inc. Method and apparatus for installation abstraction in a secure content delivery system
US6510466B1 (en) * 1998-12-14 2003-01-21 International Business Machines Corporation Methods, systems and computer program products for centralized management of application programs on a network
US6584507B1 (en) * 1999-03-02 2003-06-24 Cisco Technology, Inc. Linking external applications to a network management system
US7370071B2 (en) * 2000-03-17 2008-05-06 Microsoft Corporation Method for serving third party software applications from servers to client computers
US6938096B1 (en) * 1999-04-12 2005-08-30 Softricity, Inc. Method and system for remote networking using port proxying by detecting if the designated port on a client computer is blocked, then encapsulating the communications in a different format and redirecting to an open port
US6510458B1 (en) * 1999-07-15 2003-01-21 International Business Machines Corporation Blocking saves to web browser cache based on content rating
US6687745B1 (en) * 1999-09-14 2004-02-03 Droplet, Inc System and method for delivering a graphical user interface of remote applications over a thin bandwidth connection
EP1107108A1 (de) * 1999-12-09 2001-06-13 Hewlett-Packard Company, A Delaware Corporation System und Verfahren zum Verwalten der Konfiguration von Datenverarbeitungsvorrichtungen in einem hierarchischen Netz
US6711619B1 (en) * 1999-12-15 2004-03-23 Hewlett-Packard Development Company, L.P. Method, system, and apparatus for distributing and using computer-based applications over a network
US6854009B1 (en) * 1999-12-22 2005-02-08 Tacit Networks, Inc. Networked computer system
US6757708B1 (en) * 2000-03-03 2004-06-29 International Business Machines Corporation Caching dynamic content
AU2001264989A1 (en) * 2000-05-25 2001-12-03 Exent Technologies, Inc. Disk caching
US7051315B2 (en) * 2000-09-26 2006-05-23 Appstream, Inc. Network streaming of multi-application program code
US6757894B2 (en) * 2000-09-26 2004-06-29 Appstream, Inc. Preprocessed applications suitable for network streaming applications and method for producing same
US6970939B2 (en) * 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
US6694510B1 (en) * 2000-11-03 2004-02-17 Hewlett-Packard Development Company, L.P. Collection driver for collecting system data using record based requests with tag lists and pausing all but one thread of a computer system
US6918113B2 (en) * 2000-11-06 2005-07-12 Endeavors Technology, Inc. Client installation and execution system for streamed applications
US7043524B2 (en) * 2000-11-06 2006-05-09 Omnishift Technologies, Inc. Network caching system for streamed applications
US6959320B2 (en) * 2000-11-06 2005-10-25 Endeavors Technology, Inc. Client-side performance optimization system for streamed applications
US20020087883A1 (en) * 2000-11-06 2002-07-04 Curt Wohlgemuth Anti-piracy system for remotely served computer applications
US7062567B2 (en) * 2000-11-06 2006-06-13 Endeavors Technology, Inc. Intelligent network streaming and execution system for conventionally coded applications
US20020083183A1 (en) * 2000-11-06 2002-06-27 Sanjay Pujare Conventionally coded application conversion system for streamed delivery and execution
US8831995B2 (en) * 2000-11-06 2014-09-09 Numecent Holdings, Inc. Optimized server for streamed applications
US20020078170A1 (en) * 2000-12-15 2002-06-20 International Business Machines Corporation Method and system for minimizing network bandwidth bottlenecks
US7028305B2 (en) * 2001-05-16 2006-04-11 Softricity, Inc. Operating system abstraction and protection layer
US7197516B1 (en) * 2002-07-22 2007-03-27 Veritas Operating Corporation Method and system for an overlay filesystem
US8671132B2 (en) * 2003-03-14 2014-03-11 International Business Machines Corporation System, method, and apparatus for policy-based data management
US7945648B2 (en) * 2003-10-27 2011-05-17 Hewlett-Packard Development Company, L.P. Methods and systems for dynamically configuring a network component to reroute media streams
US7533370B2 (en) * 2003-10-28 2009-05-12 Exent Technologies, Ltd. Security features in on-line and off-line delivery of applications
US20060048136A1 (en) * 2004-08-25 2006-03-02 Vries Jeff D Interception-based resource detection system
US7240162B2 (en) * 2004-10-22 2007-07-03 Stream Theory, Inc. System and method for predictive streaming
EP1825390A2 (de) * 2004-11-13 2007-08-29 Stream Theory, Inc. Hybrides lokal-/fernstreaming
US20060136389A1 (en) * 2004-12-22 2006-06-22 Cover Clay H System and method for invocation of streaming application
US7844442B2 (en) * 2005-08-16 2010-11-30 Exent Technologies, Ltd. System and method for providing a remote user interface for an application executing on a computing device
US7596540B2 (en) * 2005-12-01 2009-09-29 Exent Technologies, Ltd. System, method and computer program product for dynamically enhancing an application executing on a computing device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453334B1 (en) 1997-06-16 2002-09-17 Streamtheory, Inc. Method and apparatus to allow remotely located computer programs and/or data to be accessed on a local computer in a secure, time-limited manner, with persistent caching

Also Published As

Publication number Publication date
EP1904919A2 (de) 2008-04-02
JP2009505167A (ja) 2009-02-05
WO2006102532A3 (en) 2007-12-06
WO2006102532A2 (en) 2006-09-28
US20060218165A1 (en) 2006-09-28

Similar Documents

Publication Publication Date Title
DE112006000688T5 (de) Explizite Überlagerungsintegrationsregeln
DE69732605T2 (de) Dynamisches Cachespeicher-Vorladen über lose gekoppelte administrative Bereiche
DE69734048T2 (de) Erfassung und Betrieb von ferngeladener Software durch einen Applet-modifizierten Browser
DE112006000650B4 (de) Webbasiertes Verwaltungsverfahren und Vorrichtung zum Durchführen desselben
DE60014341T2 (de) Server, der die automatische einfügung von daten in elektronische formulare auf einem nutzer-computer ermöglicht
DE60015423T2 (de) Verfahren und Vorrichtung zur Objektwiedergabe in einem Netzwerk
DE112010004135B4 (de) Sicherung Asynchroner Client-Server-Transaktionen
DE112006001978B4 (de) Verifizierte Computerumgebung für persönliches Internetkommunikationsgerät
DE102013222384B4 (de) Sicherheits-Screening auf Kontextgrundlage für Zugriff auf Daten
DE10052313B4 (de) Verfahren und Vorrichtung zur Beschränkung des freien Verweisens (Hyperlinking) auf Webseiten der ursprünglichen Inhaltserzeuger (Content producers) durch Internet-Inhaltsverteiler (Content distributors)
DE10339511A1 (de) System und Verfahren zum dynamischen Sequenzialisieren eines erfordernisbasierten Arbeitsablaufs
DE10224743A1 (de) Verwendung von Auftragsetiketten, um einen Ressourcenzugriff zu sichern
DE112011101831T5 (de) Schutz vor websiteübergreifenden Scripting-Attacken
DE10135444A1 (de) Verfahren für die Neuausrichtung der Quelle eines in einem HTML-Dokument dargestellten Datenobjekts
DE10309620A1 (de) Dynamisches Expertenschnittstellensystem und Verfahren
DE112006002523T5 (de) Boot-Verhaltensoptimierung für Festplatte für ein persönliches Internet-Kommunikationsgerät
DE112020004651B4 (de) Multi-tenant-etl-ressourcenaufteilung
DE202017105834U1 (de) Verwaltung von Anwendungsaktualisierungen
DE60212304T2 (de) Verbesserungen zur Datenübertragung
DE10224744B4 (de) Verwendung eines Auftragsetikettdienstes, um Angebotsinformationen zu speichern
WO2010060985A2 (de) Verfahren, system und simulations- bzw. analysemodell zur datenverarbeitung
DE102012107809A1 (de) Browsen zwischen mobilen und nicht-mobilen Webseiten
DE10196978T5 (de) System und Verfahren zum Einfügen und Integrieren eines fließenden Videoinhaltes in ein digitales Medium
DE112007003476T5 (de) Anonymes Matching-System für den Pakethandel
DE112021004695T5 (de) Umgang mit zurückstellbaren netzwerkanforderungen

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee