-
Datenkompression
ist der Prozeß des Übersetzens
eines gegebenen Datenbetrags in eine kleinere Darstellung, so daß sie auf
einem Medium unter Verwendung eines minimalen Speicherungsraums gespeichert
werden kann. Zwei breite Kategorien der Datenkompression sind verlustlose
Kompression und verlustbehaftete Kompression. Zahlreiche Kompressions-Typen
oder -Algorithmen können
verwendet werden, um entweder eine verlustlose oder verlustbehaftete
Kompression zu erreichen. Eine verlustlose Kompression umfaßt das Verdichten
von Daten auf eine Weise, derart, daß sie später in ihrer vollen Form extrahiert
werden können,
ohne einen Informationsverlust. Unter Verwendung eines verlustlosen
Kompressionsverfahrens können
die Originaldaten exakt aus den komprimierten Daten rekonstruiert werden.
Solche Verfahren werden allgemein verwendet, um „diskrete" Daten zu komprimieren, wie z. B. Text,
vom Computer erzeugte Daten und verschiedene Typen von Bild- und
Video-Informationen. Eine verlustbehaftete Kompression umfaßt allgemein
einen größeren Grad
an Kompression, Daten, die auf diese Weise komprimiert wurden, können jedoch nicht
in ihrer exakten Originalform wiedergewonnen werden.
-
Ein
Kompressionsverhältnis
ist allgemein das Maß des
Ausmaßes
zu dem ein Satz von Daten komprimiert wird. Ein unkomprimiertes
Bild z. B., das aus einem 100 × 100
Array aus Pixeln aufgebaut ist, kann für eine Speicherung ein Byte
pro Pixel erfordern oder insgesamt 10.000 Bytes. Wenn eine komprimierte
Version nur 2500 Byte erfordert, ist das Kompressionsverhältnis 4:1,
da der Originaldatensatz viermal größer war als die komprimierte
Version. Das Erreichen eines hohen Kompressionsverhältnisses
ist häufig
erwünscht, wenn
der Speicherungsraum eingeschränkt
ist, da mehr Daten auf einem Medium mit einem gegebenen Betrag von
Speicherungsraum gespeichert werden können.
-
Es
existieren viele unterschiedliche Typen von Datenkompressionsverfahren.
Ein üblicher
Kompressionslösungsansatz
umfaßt
das Ersetzen einer häufig
wiederholten Zeichenfolge aus mehreren Zeichen durch eine kürzere Darstellung,
möglicherweise ein
einzelnes Zeichen. Nach der Erweiterung von verlustlos komprimierten
Daten kann die kurze Darstellung durch die Originaldarstellung ersetzt
werden, ohne einen Datenverlust. Ein spezifisches Beispiel eines
solchen „Verzeichnis-basierten" Kompressionsalgorithmus
ist der Huffman-Code, bei dem häufig verwendeten
Elementen eine kürzere
Darstellung zugewiesen wird als weniger häufig verwendeten Elementen.
Dieses Verfahren wird häufig
für eine
Kompression von Textdokumenten verwendet. Run Length Encoding (RLE
= Lauflängencodierung)
besteht aus dem Prozeß des
Suchens nach wiederholten Abläufen
eines einzelnen Symbols in einem Eingangsstrom und dem Ersetzen
derselben durch eine einzelne Instanz des Symbols und eine numerisch ablaufende
Zählung
(z. B. Ersetzen eine Zeichenfolge aus Daten „AAAAA" durch die kürzere Darstellung „5A"). Zahlreiche andere
Kompressionstypen zum Komprimieren von Daten existieren.
-
Mit
der ansteigenden Beliebtheit von tragbaren elektronischen Vorrichtungen,
die digitale Kameras, MP3-Player, persönliche digitale Assistenten (PDAs)
und andere Handhalte-Computer
(kollektiv genannt „Hosts") umfaßt, ist
der Bedarf zum Speichern und Komprimieren von Daten auf effiziente Weise
angestiegen. Zusätzlich
zu üblichen
eingebauten Speichern zeichnen solche Vorrichtungen häufig Daten
in Speicherungsmedien auf oder lesen Daten aus denselben, die Miniaturspeicherungskarten
oder Laufwerke umfassen. Allgemein wird eine voreingestellter Kompressionspegel
ausgewählt,
bevor Bilder mit einer Digitalkamera gemacht werden. Wenn ein Bild
gemacht wird, wird das Bild allgemein auf einer entfernbaren Speicherungsvorrichtung
gespeichert, wie z. B. einer Flash-Speicherkarte oder einem anderen
einfügbaren
Medium. Im allgemeinen speichern die meisten digitalen Kameras Bilder
in einem Dateiformat der Joint Photographic Experts Group (JPEG
oder JPG), einem verlustbehafteten Speicherungsverfahren. Wenn ein
Hochqualitätsbild
erwünscht
ist, kann ein Pegel mit hoher Wiedergabetreue ausgewählt werden,
so daß weniger
Kompression stattfindet, und wenig Informationen verworfen werden,
wenn die Daten in den Speicher geschrieben werden. Alternativ, wenn
ein Bild niedrigerer Qualität ausreicht,
ermöglicht
das Auswählen
eines niedrigeren Pegels von Wiedergabetreue oder Auflösung einen
höheren
Kompressionspegel, wodurch ermöglicht
wird, daß die
Daten nach dem Speichern in eine kleinere Datei komprimiert werden.
Durch Verwerfen von Daten, die Bildstrukturen betreffen, für die das Auge
unempfindlich ist, besteht wenig visuell wahrnehmbarer Informationsverlust
und das Bild kann im wesentlichen rekonstruiert werden, wie es in
der Kamera aufgezeichnet wurde. Eine Bildkompression wird üblicherweise
durch die Hostvorrichtung gehandhabt, in diesem Fall die Kamera,
da das Bild in den Speicher geschrieben wird.
-
Moderne
PDAs und Handhaltecomputer werden häufig verwendet, um viele Typen
von Daten zu speichern und zu transportieren, die durch Personalcomputeranwendungen
erzeugt werden, einschließlich
Tabellenkalkulationen, Textverarbeitungsdateien, Bilder, Zeichendateien
und Musikdateien. Da Handhaltecomputer und andere tragbare Hostvorrichtungen
dazu neigen, einen eingeschränkten Speicherungsraum
im Vergleich zu einem Personalcomputer aufzuweisen, ist es häufig vorteilhaft,
Daten auf der Hostvorrichtung zu komprimieren, um einen zusätzlichen
Speicherungsraum zu ermöglichen. In
Anbetracht, daß viele
Dateitypen häufig
Informationen enthalten, die nicht quantitativ geändert oder verworfen
werden sollten, ist häufig
eine verlustlose Kompression in diesen Fällen erwünscht. Allgemein können Datendateien
auf einem Personalcomputer vorkomprimiert und dann in das entfernbare
Speicherungsmedium geschrieben werden. Es wäre jedoch vorteilhaft, in der
Lage zu sein, Daten auf dem entfernbaren Speicherungsmedium selbst
zu komprimieren, ob während
des Speicherns, auf Befehl des Benutzers oder automatisch, wenn
das Speicherungsmedium erfaßt,
daß es
wenig Speicherungsraum aufweist.
-
Üblicherweise
werden Kompressionsaktivitäten
durch die Hostvorrichtung verwaltet. Eine herkömmliche entfernbare Speicherungsvorrichtung,
die mit mehreren Hostvorrichtungen verwendet wird, würde erfordern,
daß jedes
Hostbetriebssystem (OS; OS = Operating System) den Kompressions-
oder Verschlüsselungs-Typ
versteht, der durch ein anderes OS oder ein Hostsoftwarepaket ausgeführt wird, was
den Bereich von Hosttypen einschränkt, durch die die komprimierten
Daten gelesen werden können.
Ferner können
Kompressions-Fähigkeiten
und -Einstellungen von Host zu Host variieren, wodurch es für eine Hostvorrichtung
sogar noch schwieriger gemacht wird, Daten zu expandieren, die durch
einen anderen Host komprimiert wurden. Zusätzlich dazu, wenn die Hostvorrichtung
für die
Kompression verantwortlich ist, kann das Verwalten von Kompressionsaktivitäten einen
Multitasking-Host überbelasten, wodurch
Rechenleistung zu kritischen Zeiten verbraucht wird, häufig während einer
Periode der Spitzenverwendung. Um die vorangehend erwähnten Problempunkte
zu adressieren, ist es daher erwünscht,
Datenkompressionsaktivitäten
innerhalb der entfernbaren Speicherungsvorrichtung selbst zu verwalten,
und nicht innerhalb der Hostvorrichtung.
-
Es
ist die Aufgabe der vorliegenden Erfindung, eine entfernbare Speicherungsvorrichtung,
ein System, ein Verfahren zum Übertragen
von Daten und eine entfernbare Datenspeicherungseinrichtung mit
verbesserten Charakteristika zu schaffen.
-
Diese
Aufgabe wird durch eine entfernbare Speicherungsvorrichtung gemäß Anspruch
1, ein System gemäß Anspruch
21, ein Verfahren zum Übertragen
von Daten gemäß Anspruch
26 und eine entfernbare Datenspeicherungseinrichtung gemäß Anspruch
32 gelöst.
-
Ein
Verfahren und ein verwandtes System zum Verwalten von Datenkompressionsaktivitäten innerhalb
einer entfernbaren Speicherungsvorrichtung, die durch eine Hostvorrichtung
aufgenommen werden kann. Die Speicherungsvorrichtung kann eine Speicherkarte,
eine magnetische Miniaturfestplatte oder eine andere Speicherungsvorrichtung
sein, die alternativ mit einer Hostvorrichtung zusammengepaßt und aus
derselben entfernt werden kann. Entsprechend kann ein exemplarisches
Ausführungsbeispiel
der entfernbaren Speicherungsvorrichtung ein Speicherungsmedium
und einen Prozessor umfassen, die konfiguriert sind, um empfangene
Daten in komprimierte Daten zur Speicherung auf dem Speicherungsmedium
umzuwandeln.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Zeichnungen näher
erläutert.
Es zeigen:
-
1 eine exemplarische Hostvorrichtung und
eine entfernbare Speicherungsvorrichtung;
-
2 eine exemplarische Hostvorrichtung und
eine entfernbare Speicherungsvorrichtung mit Datenkompressionsfähigkeiten;
-
3 ein exemplarisches Computersystem, mit
dem eine entfernbare Speicherungsvorrichtung verwendet werden kann;
-
4 ein Flußdiagramm
von automatischen Kompressionsoperationen;
-
5 ein Flußdiagramm
von Auf-Befehl-Kompressionsoperationen; und
-
6 ein Flußdiagramm
von Reihenkompressionsoperationen.
-
SCHREIBWEISE
UND NOMENKLATUR
-
Bestimmte
Ausdrücke
werden in der nachfolgenden Beschreibung und in den Ansprüchen verwendet,
um Bezug auf bestimmte Systemkomponenten zu nehmen. Wie ein Fachmann
auf dem Gebiet erkennen wird, können
Unternehmen auf eine Komponente durch unterschiedliche Namen Bezug
nehmen. Dieses Dokument soll nicht zwischen Komponenten unterscheiden,
die sich in ihrem Namen aber nicht ihrer Funktion unterscheiden.
In der nachfolgenden Erörterung
und in den Ansprüchen
werden die Ausdrücke „umfassen" und „aufweisen" in einer nicht einschränkenden
Weise verwendet und sollten somit derart interpretiert werden, daß sie „einschließlich aber
nicht ausschließlich" bedeuten. Ferner
soll der Ausdruck „koppeln" oder „koppelt" entweder eine indirekte
oder eine direkte elektrische Verbindung bezeichnen. Wenn somit
eine erste Vorrichtung mit einer zweiten Vorrichtung gekoppelt wird,
kann diese Verbindung durch eine direkte elektrische Verbindung
oder durch eine indirekte elektrische Verbindung über andere
Vorrichtungen und Verbindungen erfolgen. Die Ausdrücke „Hostvorrichtung" oder einfacher „Host" werden hierin austauschbar
verwendet, um eine elektronische Vorrichtung zu bezeichnen (z. B.
einen Personalcomputer, PDA, digitale Kamera, MP3-Player), die in
der Lage ist, ein entfernbares Datenspeicherungsmedium aufzunehmen.
Der Ausdruck „entfernbares
Speicherungsmedium" wird
hierin verwendet, um ein kompaktes Speicherungsmedium zu bezeichnen
(z. B. Flash-Speicher, optisches, magnetisches oder anderes Speicherungsmedium), das
entfernbar schnittstellenmäßig mit
einer Hostvorrichtung zur Datenspeicherung verbunden werden kann.
-
Die
nachfolgende Erörterung
bezieht sich auf verschiedene Ausführungsbeispiele der Erfindung.
Obwohl eines oder meh rere dieser Ausführungsbeispiele bevorzugt sein
können,
sollten die offenbarten Ausführungsbeispiele
nicht derart interpretiert oder anderweitig verwendet werden, daß sie den Schutzbereich
der Offenbarung einschließlich
der Ansprüche
einschränken.
Zusätzlich
dazu wird ein Fachmann auf dem Gebiet erkennen, daß die nachfolgende
Beschreibung eine breite Anwendung aufweist und die Erörterung
eines Ausführungsbeispiels ausschließlich als
exemplarisch für
dieses Ausführungsbeispiel
vorgesehen ist und nicht zu verstehen geben soll, daß der Schutzbereich
der Offenbarung, einschließlich
der Ansprüche,
auf dieses Ausführungsbeispiel
beschränkt
ist. Gemäß der vorliegenden
Erfindung wird ein Verfahren und eine Vorrichtung zum Verwalten
einer Datenkompression durch eine entfernbare Speicherungsvorrichtung
offenbart.
-
Bezug
nehmend nun auf 1 ist
eine exemplarische Darstellung eines Datenspeicherungssystems gezeigt,
das eine Hostvorrichtung 10 und eine entfernbare Speicherungsvorrichtung 30 umfaßt. Obwohl
sie als ein Personalcomputer dargestellt ist, wird darauf hingewiesen,
daß die
Hostvorrichtung 10 alternativ ein PDA, eine digitale Kamera, ein
MP3-Player oder ein anderer Typ einer elektronischen Hostvorrichtung
sein kann, die in der Lage ist, eine entfernbare Speicherungsvorrichtung
aufzunehmen. Es wird ferner darauf hingewiesen, daß während sie
als eine Festkörperspeicherkarte
dargestellt ist, die entfernbare Speicherungsvorrichtung 30 alternativ
eine magnetische Miniaturfestplatte oder eine andere Speicherungsvorrichtung
sein kann, die alternativ mit einer Hostvorrichtung zusammengepaßt oder
aus derselben entfernt werden kann. Das Komprimieren von Daten auf
der entfernbaren Speicherungsvorrichtung 30 kann z. B.
entweder durch ein Betriebssystem (OS = Operating System) 12 der Hostvorrichtung 10 verwaltet
werden oder durch eine Datenkompressionssoftwareanwendung 14,
die auf dem Host läuft.
Die entfernbare Speicherungsvorrichtung 30 ist allgemein
mit dem Host 10 an einer Datenübertragungsschnittstelle 16 zusammengepaßt, die
ein Kartenschlitz sein kann.
-
Kompressions-Einstellungen
und -Präferenzen
können
durch Wechselwirkung mit einer Eingabeschnittstelle 18 verwaltet
werden, die eine Computertastatur, ein PDA-Berührungsbildschirm, eine Kameraknopfschaltfläche oder
eine andere Schnittstelle an der Hostvorrichtung sein kann, die
in der Lage ist, Befehle auszugeben. Es kann optional eine graphische
Anzeige 20 an dem Hostgerät vorliegen, zum Betrachten
von Einstellungen und Präferenzen,
wie z. B. ein Monitorbildschirm oder eine LCD-Anzeige. In dem Fall
eines PDA-Berührungsbildschirms
können
die Eingabeschnittstelle 18 und die graphische Anzeige 20 dieselbe
Komponente sein. Eine herkömmliche
entfernbare Speicherungsvorrichtung 30 kann einen Speicher 32 und
einen Prozessor 34 umfassen. Aktuelle Speicherungsvorrichtungsprozessoren 34 haben
vielleicht nicht die Fähigkeit,
eine Kompression zu verwalten, was dann der Hostvorrichtung 10 überlassen
wird.
-
Bezug
nehmend nun auf 2 ist
ein Datenspeicherungssystem gemäß darstellenden
Ausführungsbeispielen
gezeigt, einschließlich
einer Hostvorrichtung 10 und einer entfernbaren Speicherungsvorrichtung 50.
Obwohl sie als ein Personalcomputer und eine Speicherkarte dargestellt
ist, wird darauf hingewiesen, daß die Hostvorrichtung 10 bzw.
die entfernbare Speicherungsvorrichtung 50 viele unterschiedliche
Formen annehmen können,
wie vorangehend beschrieben wurde. Die entfernbare Speicherungsvorrichtung 50 paßt im allgemeinen
mit dem Host 10 an einer Datenübertragungsschnittstelle 16 zusammen.
-
Kompressions-Einstellungen
und -Präferenzen
werden verwaltet durch eine Wechselwirkung mit einer Eingabeschnittstelle 18,
die eine Computertastatur, ein Berührungsbildschirm, eine Kameradruckknopfschaltfläche oder
eine andere Schnittstelle an der Hostvorrichtung sein kann, die
in der Lage ist, Befehle auszugeben. Es kann optional eine graphische Anzeige 20 an
dem Hostgerät
vorliegen, zum Betrachten von Einstellungen und Präferenzen,
wie z. B. ein Monitorbild schirm oder eine LCD-Anzeige. In dem Fall
eines PDA-Berührungsbildschirms
können die
Eingabeschnittstelle 18 und die graphische Anzeige 20 dieselbe
Komponente sein.
-
Eine
entfernbare Speicherungsvorrichtung 50 umfaßt einen
Speicher 52 und einen Prozessor 54, die bei bestimmten
Ausführungsbeispielen
dieselbe Komponente sein können.
Der Speicherungsvorrichtungsprozessor 54 verwaltet Kompressionsaktivitäten innerhalb
der Speicherungsvorrichtung 50, einschließlich dem
Auslösen
einer automatischen Kompression nach Bedarf, dem Komprimieren von gespeicherten
Daten auf Befehl und dem Initiieren einer Kompressionsreihe, wenn
Daten in den Speicher 52 geschrieben werden. Die Kompression
kann durch den Prozessor 54 ausführt werden und kann alternativ
durch eine dedizierte Kompressionsmaschine ausgeführt werden.
Da eine Kompression innerhalb der Vorrichtung 50 gehandhabt
wird, kann die Vorrichtung 50 zwischen Hosts übertragen
werden, ohne Bedenken im Hinblick auf Kompressionskompatibilitätsfragen.
-
Gegenwärtig liefern
Datenkompressionssoftwarepakete auf einer Hostvorrichtung ihre eigenen graphischen
Benutzerschnittstellen zur Anzeige auf einem Monitor, einer LCD
oder einem Berührungsbildschirm
einer Hostvorrichtung. Es wird darauf hingewiesen, daß einige
Hostvorrichtungen speziell mit Hardware (wie z. B. Druckknöpfen) entworfen
sein können,
zum Ändern
von Einstellungen und Initiieren einer Kompression an einer spezifischen
entfernbaren Speicherungsvorrichtung, so daß eine graphische Benutzerschnittstelle
in diesen Fällen
unnötig sein
kann.
-
Speicherungsvorrichtungen
können
auf der Hostvorrichtung basieren, um eine graphische Benutzerschnittstelle
zum Auswählen
von Präferenzen und
Optionen bereitzustellen, und entsprechend können Mittel zum Bereitstellen
einer Anzeige auf dem Host zum Agieren mit der Speicherungsvorrichtung vorteilhaft
sein. Aus diesem Grund kann die Speicherungsvorrichtung 50 optional
einen Benutzerschnittstellenerzeu ger 56 umfassen, der in
der Form von einem oder mehreren Softwaretreibern zum Hochladen
auf eine Hostvorrichtung 10 vorliegen kann. Dieser Benutzerschnittstellenerzeuger 56 würde ermöglichen,
daß auf
eine graphische Benutzerschnittstelle über einen breiten Bereich von
Hosttypen zugegriffen wird, die allgemein auf einer graphischen
Anzeige 20 angezeigt sind, für eine Wechselwirkung mit den
Einstellungen und Präferenzen
der entfernbaren Speicherungsvorrichtung 50. Alternativ
kann der Benutzerschnittstellenerzeuger 56 auf die Hostvorrichtung 10 geladen
werden, durch Übertragung
von einer alternativen Speicherungsmedienquelle, wie z. B. einer CD-ROM
oder einer Diskette, oder er kann von einer entfernten Position
heruntergeladen werden, wie z. B. einer Site eines Internetdatei-Übertragungsprotokolls
(FTP; FTP = file transfer protocol).
-
Ferner
können
bestimmte Ausführungsbeispiele
ermöglichen,
daß Benutzer-Einstellungen
und -Präferenzen
lokal innerhalb der entfernbaren Speicherungsvorrichtung bleiben,
so daß die
Speicherungsvorrichtung von Host zu Host bewegt werden kann, ohne
einen Bedarf zum Zurücksetzen
der Kompressionspräferenzen.
Das Bewegen von Kompressionsaktivitäten zu der entfernbaren Speicherungsvorrichtung 50 ermöglicht,
daß Prozessor-intensive Kompressions-
und Erweiterungs-Aktivitäten durch den
Speicherungsvorrichtungsprozessor 54 gehandhabt werden,
was die Rechenlast auf eine potentiell belastete Hostvorrichtung 10 etwas
verringert. Der Prozessor 54 kann diese Aktivitäten planen,
daß sie während „Schlaf"-Perioden niedriger
Verwendung stattfinden und nicht während Spitzenverwendungsperioden,
wenn Leistungsanforderungen am höchsten
sind.
-
Der
Prozessor 54 kann optional ein intelligenter Prozessor
sein, der in der Lage ist, mehr als einen Kompressionstyp zu unterstützen, wie
z. B. eine verlustbehaftete Bildkompression, einen Wahrscheinlichkeits-basierten
Textzeichenaustausch und viele andere Kompressionsalgorithmen, die
existieren. Ein intelligenter Prozessor gemäß einem exem plarischen Ausführungsbeispiel
der vorliegenden Erfindung kann ferner in der Lage sein, auf intelligente Weise
optimal zu bestimmen, welcher Typ eines Kompressionsalgorithmus
benötigt
wird, wenn demselben ein bestimmter Datentyp vorgelegt wird, wie
z. B. eine Bilddatei über
eine Textdatei. Zusätzlich
dazu kann der Prozessor in der Lage sein, den optimalen Kompressionspegel
für den
ausgewählten
Kompressionsalgorithmustyp zu bestimmen, derart, daß Daten,
die gemäß einem
verlustlosen Algorithmus komprimiert werden sollen, auf eine minimal
mögliche Größe komprimiert
werden, ohne einen Datenverlust, oder daß Daten, die gemäß einer
verlustbehafteten Kompression komprimiert werden, weiterhin eine
annehmbare Darstellung der empfangenen Originaldaten beibehalten.
-
Die
entfernbare Speicherungsvorrichtung kann es einem Benutzer ferner
ermöglichen,
Kompressionsparameter für
bestimmte Algorithmen kundenspezifisch einzustellen. Bei einem Beispiel
kann eine Datenkompression gemäß einem
Algorithmus ausgeführt
werden, der „Fenster" von Datenzeichenfolgen
abtastet. Je größer dieses
Abtastgrößenfenster,
desto genauer wird eine Darstellung der nicht komprimierten Daten
allgemein gebildet. Ferner kann es eine Speicherungsvorrichtung
gemäß einem
exemplarischen Ausführungsbeispiel
der vorliegenden Erfindung einem Benutzer ermöglichen, diese Fenstergröße anzupassen,
wodurch das Kompressionsverhältnis
gesteuert wird. Da andere Kompressionsalgorithmen anderen Lösungsansätzen zum
Abtasten und Darstellen der Originaldaten für eine Kompression folgen,
können
andere Einrichtungen zum kundenspezifischen Herstellen des Kompressionsverhältnisses
oder anderer Kompressionsparameter durch eine entfernbare Speicherungsvorrichtung
verwendet werden.
-
Speichervorrichtungen
können
mit digitalen Vorrichtungen für
eine Informations-Speicherung und -Wiedergewinnung gekoppelt sein. 3 zeigt ein Computersystem,
ein Beispiel davon, wo eine entfernbare Speicherungsvorrichtung
verwen det werden kann. Das Computersystem aus 3 umfaßt eine zentrale Verarbeitungseinheit
(CPU = central processing unit) 70, die durch eine Brücke 72 mit
einem Systemspeicher 74 und einer Anzeige 76 gekoppelt
ist. Die CPU 70 ist ferner durch die Brücke 72 mit einem Erweiterungsbus 78 gekoppelt.
Ferner sind mit dem Erweiterungsbus 78 eine Speicherungsvorrichtung 80 und
eine Eingabe-/Ausgabe-Schnittstelle 82 gekoppelt. Eine Tastatur 84 kann mit
dem Computer über
die Eingabe-/Ausgabe-Schnittstelle 82 gekoppelt sein.
-
Die
CPU 70 kann gemäß einer
Software arbeiten, die in dem Speicher 74 und/oder der
Speicherungsvorrichtung 80 gespeichert ist. Unter der Anleitung
der Software kann die CPU 70 Befehle von einem Benutzer über die
Tastatur 84 oder von einer alternativen Eingabevorrichtung
akzeptieren und kann gewünschte
Informationen an die Bedienperson über die Anzeige 76 oder
eine alternative Ausgabevorrichtung anzeigen. Die CPU 70 kann
die Operationen von anderen Systemkomponenten steuern, um Daten
wiederzugewinnen, zu übertragen
und zu speichern.
-
Die
Brücke 72 koordiniert
den Datenfluß zwischen
Komponenten. Die Brücke 72 kann
zweckgebundene, Hochbandbreiten-, Punkt-zu-Punkt-Busse für die CPU 70,
den Speicher 74 und die Anzeige 76 liefern.
-
Der
Speicher 74 kann Software und Daten für einen schnellen Zugriff speichern.
Der Speicher 74 kann integrierte Speichermodule umfassen,
wobei eines oder mehrere derselben flüchtig sein können.
-
Die
Anzeige 76 kann Daten zur Verwendung durch eine Bedienperson
liefern und ist allgemein analog zu der graphischen Anzeige 20 in 2. Die Anzeige 76 kann
ferner Graphiken liefern und kann fortschrittliche Graphikverarbeitungsfähigkeiten
umfassen.
-
Der
Erweiterungsbus 78 kann Kommunikationen zwischen der Brücke 72 und
mehreren anderen Computerkomponenten unterstützen. Der Bus 78 kann
mit den entfernbaren modularen Komponenten gekoppelt sein und/oder
mit Komponenten, die auf einer Schaltungsplatine mit der Brücke 72 integriert sind
(z. B. Audiokarten, Netzwerkschnittstellen, Datenakquisitionsmodule,
Modems etc.).
-
Die
Speicherungsvorrichtung 80 kann eine Software und Daten
für eine
Langzeitbewahrung speichern. Die Speicherungsvorrichtung 80 kann tragbar
sein oder kann ein entfernbares Medium akzeptieren oder kann eine
installierte Komponente sein oder kann eine integrierte Komponente
auf der Schaltungsplatine sein. Die Speicherungsvorrichtung 80 kann
eine entfernbare Speichervorrichtung sein, wie z. B. eine Speicherkarte.
Alternativ kann die Speicherungsvorrichtung 80 ein nicht-flüchtiger
integrierter Speicher, eine Magnetmediumspeicherungsvorrichtung,
eine Optisches-Medium-Speicherungsvorrichtung oder eine andere Form
einer Langzeitinformationsspeicherung in entfernbarer Form sein
und kann entsprechend analog zu der entfernbaren Speicherungsvorrichtung 50 sein.
-
Die
Eingabe-/Ausgabe-Schnittstelle 82 kann Kommunikationen
mit Ursprungskomponenten und Vorrichtungen unterstützen, die
keine Hochbandbreitenverbindung erfordern. Die Eingabe-/Ausgabe-Schnittstelle 82 kann
ferner einen Echtzeittakt umfassen und kann Kommunikationen mit
Abtastketten zum Testen des Systems auf niedriger Ebene umfassen.
-
Die
Tastatur 84 kann Daten zu der Schnittstelle 82 ansprechend
auf eine Bedienpersonbetätigung
liefern und ist allgemein analog zu der Eingabeschnittstelle 18 in 2. Andere Eingabevorrichtungen
(z. B. Zeigevorrichtungen, Knöpfe,
Sensoren etc.) können
ferner mit der Eingabe-/Ausgabe-Schnittstelle 82 gekoppelt
sein, um Daten ansprechend auf eine Bedienpersonbetätigung zu
liefern. Ausgabevorrichtungen (z. B. parallele Tore, serielle Tore,
Drucker, Laut sprecher, Lampen etc.) können ebenfalls mit der Eingabe-/Ausgabe-Schnittstelle 82 gekoppelt
sein, um Informationen zu der Bedienperson zu kommunizieren.
-
Ein
Adapter 86 kann mit dem Erweiterungsbus 78 gekoppelt
sein, um den Erweiterungsbus mit entfernbaren Speichervorrichtungen
zu koppeln, wie z. B. Speicherkarten, und ist im allgemeinen analog zu
der Datenübertragungsschnittstelle 16 in 2. Alternativ kann der Adapter 86 auf
eine Weise vorliegen, um mit einer tragbaren digitalen Vorrichtung
gekoppelt zu sein, für
eine Informationsübertragung zwischen
dem Computersystem und der tragbaren digitalen Vorrichtung.
-
Zusätzlich zu
dem oben beschrieben Computersystem können viele andere Allzweck-
und kundenspezifische digitale Vorrichtungen und Systeme vorteilhaft
für eine
Informationsübertragung
zwischen denselben und Speicherungsvorrichtungen konfiguriert sein,
wie z. B. Speicherkarten.
-
Eine
Datenkompression kann auf verschiedene Weisen durch die darstellenden
Ausführungsbeispiele
ausgelöst
werden. Eine entfernbare Speicherungsvorrichtung gemäß den darstellenden
Ausführungsbeispielen
kann die Fähigkeit
haben, eine Kompression automatisch auszuführen, nach dem Erfassen, daß die Speicherungsvorrichtung
nur wenig Speicherungsraum verfügbar
hat. Dieses Merkmal wäre
in einem Fall vorteilhaft, in dem ein Benutzer einen Datenbetrag
aufzeichnen muß,
der die verbleibende Speicherungsfähigkeit der entfernbaren Speicherungsvorrichtung
annähernd
erreicht oder überschreitet
und nicht in der Lage ist, die Speicherungsvorrichtung zu leeren
oder zu ersetzen. Ein vorbestimmter Datenpegel kann derart ausgewählt werden,
daß wenn
der Betrag der gespeicherten Daten sich diesem Pegel annähert, wenn
er eingestellt ist, um eine automatische Kompression auszuführen, die entfernbare
Speicherungsvorrichtung die Daten auf einen voreingestellten Kompressionspegel
verdichtet.
-
Bezug
nehmend nun auf 4 ist
ein Flußdiagramm
von Operationen, die eine automatische Datenkompression darstellen,
gezeigt. Bei einem darstellenden Ausführungsbeispiel würde diese
automatische Kompressionsaktivität „während des
Betriebs" während einer
Periode niedriger Verwendung stattfinden, zu der der Prozessor der
entfernbaren Speicherungsvorrichtung nicht mit dem Speichern von
Daten oder anderen Aufgaben belastet ist. Der Prozessor kann eine
Periode niedriger Verwendung oder „Schlafperiode" identifizieren,
durch periodisches Auslösen
einer Verwendungsprüfung,
wie bei Block 100. Ein Prozessor kann vorprogrammiert sein, um
eine Niedrigverwendungsperiode z. B. als ein spezifisches Zeitintervall
zu identifizieren, seit die Daten zuletzt gespeichert wurden. Diese
Niedrigverwendungsperiode kann optional eine Benutzer-definierte
Einstellung sein, wie z. B. ein Zeitintervall, das durch den Benutzer
ausgewählt
wird. Alternativ kann die Periode niedriger Verwendung als eine
Instanz definiert sein, zu der ein vorbestimmter Prozentsatz der
Rechenressourcen verfügbar
ist. Dieses Verfahren ermöglicht
einem Benutzer das effiziente Komprimieren von Daten unter Verwendung
der Kompressions- und Datenschreib-Fähigkeiten
der entfernbaren Speicherungsvorrichtung, wodurch Verarbeitungsbelastung
für eine
Hostvorrichtung reduziert wird, die in Verwendung ist.
-
Wenn
die Prozessorverwendung auf geeignete Weise niedrig genug ist, um
die Kompression zu ermöglichen,
würde der
Prozessor auf Kompressionspräferenzen
zugreifen, wie bei Block 102, um zu bestimmen, ob eine
automatische Kompressionspräferenz
aktiviert ist, und würde
ferner den Pegel und/oder den Typ der Kompression prüfen, der
ausgeführt
werden soll. Wenn bestimmt wird, daß eine automatische Kompression
aktiviert ist (bei Block 104), werden die Daten durch die
entfernbare Speicherungsvorrichtung komprimiert, wie bei Block 106. Optional
kann ein Benutzer in der Lage sein, eine Schwelle für eine automatische
Kompression zu definieren, wie z. B. Initiieren einer Kompression,
wenn ein spezifischer Prozentsatz eines Speicherungsraums ver wendet
wird oder wenn bestimmte Dateigrößen oder
eine bestimmte Anzahl von Dateien gespeichert wurden.
-
Bei
einem anderen Verfahren zum Initiieren einer Kompression kann eine
Datenkompression ebenfalls auf Befehl des Benutzers ausgeführt werden.
Bezug nehmend nun auf 5 ist
ein Flußdiagramm
einer Auf-Befehl-Kompression gezeigt. Bei Block 110 wird
auf Kompressionspräferenzen
zugegriffen, um den Pegel und/oder den Typ der Kompression zu prüfen, die
durchgeführt
werden soll. Wenn die Daten gemäß den Präferenzen
komprimiert werden können,
die eingestellt sind (bei Block 112), dann wird die Kompression
durch die entfernbare Speicherungsvorrichtung ausgeführt, wie
bei Block 114.
-
Bezug
nehmend nun auf 6 ist
ein Flußdiagramm
der Datenkompressionsoperationen gezeigt, die während des Speicherns für eine „Speicher"- oder Reihen-Kompression
ausgeführt
werden. Wenn die Daten empfangen werden, wird auf Kompressionspräferenzen
zugegriffen, um den Pegel und/oder den Typ der Kompression zu prüfen, die durchgeführt werden
soll (bei Block 120). Wenn eine Kompression ermöglicht wird,
wie bei Block 122, dann werden Daten in die entfernbare
Speicherungsvorrichtung in einer komprimierten Form geschrieben,
wie bei Block 126. Entsprechend finden während einer
Reihenkompression, wie bei Block 126, Daten-Kompression und -Speicherung
gleichzeitig statt. Wenn Einstellungen bestimmt haben, daß keine Kompression
ausgeführt
werden soll, dann werden Daten in die Speicherungsvorrichtung ohne
Kompression geschrieben, wie bei Block 124. Optional kann
ein Benutzer in der Lage sein, Parameter zu definieren, um eine
selektive Reihenkompression bzw. Inline-Kompression freizugeben, wie z. B. das
Komprimieren von Dateien, die größer sind,
als eine spezifizierte Größe.
-
Zusätzlich dazu
kann eine entfernbare Speicherungsvorrichtung mit Reihenkompressionsfähigkeiten
optional in der Lage sein, Daten in Reihe zu erweitern, wodurch
die gespeicherten Daten für
einen sofortigen Zugriff auf der Hostvorrich tung dekomprimiert werden.
Wenn diese Option für
Daten aktiviert ist, würde
das Wiedergewinnen der Daten zur Verwendung auf der Hostvorrichtung
die Daten automatisch erweitern. In dem Fall von verlustbehafteten
Daten könnten
die Daten in Reihe auf ihre maximale potentielle Größe erweitert
werden, oder in dem Fall einer verlustlosen Kompression auf ihre
Originalgröße. Ein
Vorauslese-„Puffer" kann während der
Reihenerweiterung verwendet werden, um einen schnelleren Zugriff
auf die Daten zu aktivieren.
-
Es
wird darauf hingewiesen, daß eine
entfernbare Speicherungsvorrichtung, die zum Verwalten von Kompressionsaktivitäten gemäß darstellenden
Ausführungsbeispielen
in der Lage ist, eines oder mehrere der oben erwähnten Kompressionsverfahren
verwenden kann und in Betriebsreihenfolge variieren kann, ohne von
dem Wesen der Erfindung abzuweichen. Zusätzlich dazu, da Kompressions-Präferenzen
und andere -Einstellungen durch die entfernbare Speicherungsvorrichtung
verwaltet werden, wird eine größere Vielfalt
bei der Verwendung der Speicherungsvorrichtung zwischen verschiedenen
Hosts erreicht, wodurch der Bedarf zum Erweitern der Daten vor dem
Schalten zwischen Hosts vermieden wird. Es wird ferner darauf hingewiesen,
daß eine
Datenkompression gemäß den darstellenden
Ausführungsbeispielen
durch den Prozessor der entfernbaren Speicherungsvorrichtung durchgeführt werden
kann, oder alternativ durch eine andere Kompressionsmaschine innerhalb
der entfernbaren Speicherungsvorrichtung, ohne von dem Wesen der
Erfindung abzuweichen.
-
Der
optionale Benutzerschnittstellenerzeuger kann die Leichtigkeit verbessern,
mit der ein Benutzer mit der entfernbaren Speicherungsvorrichtung in
Wechselwirkung tritt. Wenn Schaltflächen oder andere Eingabemechanismen,
die auf der Hostvorrichtung vorliegen, Zugriff auf und Modifikation
von Kompressionseinstellungen nicht ausreichend unterstützen können, kann
ein Benutzerschnittstellentreiber zu der Hostvorrichtung übertragen
werden. Verschiedene Verfahren zum Weglassen dieses Benutzerschnittstellenerzeugers
an der Hostvorrichtung sind möglich,
abhängig
von den Fähigkeiten
des Hosts (z. B. Internetzugriff zum Herunterladen, CD-ROM-Laufwerk zum Empfangen
einer CD-Platte, direktes Hochladen von der Speicherungsvorrichtung).
Zahlreiche Variationen und Modifikationen werden für Fachleute
auf dem Gebiet offensichtlich, sobald die obige Offenbarung vollständig verstanden
wird.