DE4434528C2 - Verfahren zum Bereitstellen von Kartendienstefunktionen sowie Computersystem zum Ausführen eines solchen Verfahrens - Google Patents
Verfahren zum Bereitstellen von Kartendienstefunktionen sowie Computersystem zum Ausführen eines solchen VerfahrensInfo
- Publication number
- DE4434528C2 DE4434528C2 DE4434528A DE4434528A DE4434528C2 DE 4434528 C2 DE4434528 C2 DE 4434528C2 DE 4434528 A DE4434528 A DE 4434528A DE 4434528 A DE4434528 A DE 4434528A DE 4434528 C2 DE4434528 C2 DE 4434528C2
- Authority
- DE
- Germany
- Prior art keywords
- card
- services
- map
- computer system
- pcmcia
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Description
Die Erfindung betrifft ein Verfahren zum Bereitstellen von
Kartendienstefunktionen sowie ein Computersystem zum Ausführen
eines solchen Verfahrens.
Personalcomputer von der Größe eines Laptops oder eines No
tebooks wurden zunehmend populärer. Ein Problem bei vielen Per
sonalcomputern dieser Größe ist, daß es schwierig ist, Periphe
riegeräte zu einem solchen System hinzuzufügen, da es üblicher
weise keine internen Erweiterungssteckplätze gibt. Peripherie
geräte können mit externen Ports am Laptop- oder Notebook-Per
sonalcomputer verbunden werden; jedoch hängen die externen Pe
ripheriegeräte außen an dem tragbaren Computersystem, wodurch
das System nicht mehr tragbar wird.
Um eine geeignete Schnittstelle für kleine Peripheriegeräte
zur Verfügung zu stellen, entwarf ein Konsortium der Computer
industrie eine Spezifikation, die eine Standardschnittstelle
für Computerperipheriegeräte in Kreditkartengröße definiert.
Das Konsortium der Computerindustrie ist bekannt als die Perso
nal Computer Memory Card Industry Association (PCMCIA), und die
standardisierten Peripheriegeräte in Kreditkartengröße sind be
kannt als PCMCIA-Karten. Die erste Version der PMCIA-Spezifika
tion (PCMCIA 1.0) schuf eine Schnittstelle, die eine Speicher
kartenerweiterung ebenso wie einige einfache Peripheriegeräte,
wie beispielsweise Modems in Kartengröße, handhaben konnte. Die
zweite Version der PCMCIA-Spezifikation (PCMCIA 2.0) ist eine
vollständige Busspezifikation, die die gebräuchlichsten Arten
der Computerperipheriegeräte, wie beispielsweise Festplatten
laufwerke und LAN-Schnittstellen, handhaben kann. (Siehe: "PC
Card Standard", Release 2.0, September 1991, Personal Computer
Memory Card International Association.)
Der PCMCIA-Standard ist so definiert, daß es möglich ist,
bei laufendem Grundsystem Karten einzustecken und zu entfernen,
ohne die Karten oder das Grundsystem zu zerstören. Dieses Merk
mal eines im Betrieb möglichen Einsetzens/Entfernens ist ein
einzigartiges Merkmal der PCMCIA-Computerhardware. Darüber hin
aus werden Konfigurationsinformationen in einem Speicher auf
der PCMCIA-Karte selbst gehalten, um dem System zu gestatten,
sich an die Karte anzupassen, wenn diese in das Computersystem
eingesteckt wird. Der PCMCIA-Standard definiert eine physische
Größe und Form von PCMCIA-Karten. Der PCMCIA-Standard definiert
außerdem Leistungs- und Spannungspegel und Steckverbinder-
Ausgangspins. Karten, die mit diesem PCMCIA-Standard über
einstimmen, können in kompatible Systeme eingesteckt werden,
ohne dabei Gefahr zu laufen, daß die Steckverbinder nicht pas
sen oder daß Spannungsdifferenzen die Hardware zerstören. Der
Standard definiert außerdem den Bereich von Konfigurationsin
formationen, welche auf den Karten gehalten werden können, und
zeigt an, wie Software diese Informationen lesen kann.
Die PCMCIA-Hardware enthält den Steckplatz, in welchen die
Karte eingesteckt wird, einen Steckverbinder zum Übermitteln
der Stromversorgung und der Informationen zwischen der Karte
und dem Computer und eine integrierte Steckplatzadapterschal
tung, welche den Computermikroprozessor mit den Steckplätzen
koppelt. Der Steckplatzadapter enthält Hardware zum Erzeugen
von Mikroprozessor-Interrupts, wenn ein Ereignis der Änderung
der Kartenhardware auftritt, wie beispielsweise ein Einstecken
oder ein Entfernen der Karte oder ein Leerwerden der Kartenbat
terie. Eine Abbildungshardware gestattet ein Abbilden des Spei
chers, der Ein/Ausgaben und der Interrupts der Karte auf geeig
nete Plätze innerhalb des Gesamtcomputersystems. Beispielsweise
kann, wenn die Karte Speicher enthält, der Speicher so abgebil
det werden, daß er an einem beliebigen Ort in dem Adreßraum des
Computers unterhalb 16 Megabyte erscheint. In ähnlicher Weise
kann, wenn die Karte eine Interrupt-Anforderung erzeugen kann,
die Interrupt-Anforderung auf eine Anzahl von System-IRQ-Lei
tungen weitergeleitet werden.
Der aktuelle PCMCIA-Standard definiert zwei Schichten
(Layer) der Software, die ein Computersystem verwenden kann, um
auf PCMCIA-Karten zuzugreifen und diese zu verwalten. Die bei
den Software-Schichten werden Steckplatzdienste-Schicht und
Kartendienste-Schicht genannt. Im Betrieb greifen Anwendungen,
welche PCMCIA-Karten zu nutzen wünschen, auf die PCMCIA-Karten
zu, indem sie aus der Kartendienste-Schicht zur Verfügung ge
stellte Funktionen nutzen. Anwendungen, welche die Kartendien
ste-Funktionen verwenden, sind als Kartendienste-"Klienten" be
kannt. Ein Kartendienste-Klient meldet sich bei den Kartendien
sten an, indem er eine Kartendienst-Klient-Registrierungsfunk
tion aufruft und einige Klienteninformationen und die Adresse
einer Klienten-Rückrufroutine zur Verfügung stellt. Kartendien
ste führen die Rückrufroutine aus, wenn ein sich auf eine PCM-
CIA-Karte beziehendes Ereignis auftritt.
Wenn beispielsweise ein Hardware-Ereignis von einem PCMCIA-
Kartensteckplatz auftritt, führt die Rückrufroutine des Klien
ten dem Ereignis zugeordnete Verarbeitungen aus. Die Ereignisse
schließen Hardware-Ereignisse, wie beispielsweise ein Karten-
Einfügen/Entfernen oder eine schwache Batterie, und Software-
Ereignisse, wie beispielsweise die Anforderung einer exklusiven
Benutzung einer Karte durch einen Klienten, ein. Beim Einfügen
einer Karte kann ein registrierter Klient die Rückrufroutine
verwenden, um die Karte zum Bestimmen des Kartentyps ab
zufragen. Wenn die Karte den korrekten Typ hat, würde er dann
mit dem Konfigurieren der Karte fortfahren. Der auf der Karte
befindliche Speicher, das Ein/Ausgabesystem und die Interrupts
müssen so eingerichtet werden, daß sie mit dem System, in wel
ches die Karte eingesetzt worden ist, übereinstimmen. Karten
dienste-Funktionen gestatten es dem Klienten, die Karten durch
Programmieren der Hardware-Register der Karte und des PCMCIA-
Adapters zu konfigurieren.
Die Steckplatzdienste- und Kartendienste-Schichten sind so
aufgebaut, daß ein einziges System mehrere verschiedene Instan
zen der Steckplatzdienste (jede Instanz der Steckplatzdienste
dient einem oder mehreren PCMCIA-Adaptern), aber nur eine ein
zige Instanz der Kartendienste haben kann. Die Klienten der
Kartendienste-Schicht sehen eine Anzahl von verfügbaren PCMCIA-
Steckplätzen, aber nicht eine Anzahl von PCMCIA-Adaptern, von
denen jeder einen oder mehrere Steckplätze hat. Diese Abstrak
tion und die Unterstützung der Konfigurationsverwaltung sind
die primären Gründe für die Kartendienste-Softwareschicht.
Aus der Offenlegungsschrift DE 42 44 266 A1 ist ein Verfah
ren zum dynamischen Konfigurieren von Gerätetreibern für eine
entnehmbare Computerressource, wie z. B. eine PCMCIA-Karte, be
kannt.
Bei einem IBM-kompatiblen Personalcomputer, der eine Real-
Modus-DOS-Umgebung abarbeitet, ist die Steckplatzdienste-Soft
wareschicht des PCMCIA-Standards üblicherweise unter Verwendung
eines ROM, eines Gerätetreibers oder eines speicherresidenten
Programms (TSR-Programm) implementiert. Die meisten Implemen
tierungen der Steckplatzdienste-Schicht erfordern nur ungefähr
3 K Speicher, was eine relativ kleine Speichermenge darstellt.
In einer Real-Modus-DOS-Umgebung ist die Kartendienste-
Softwareschicht unter Verwendung eines Gerätetreibers und eines
TSR-Programms implementiert, das geladen wird, nachdem DOS ge
laden wurde. Da die Kartendienste-Softwareschicht, wie sie von
der PCMCIA-Spezifikation definiert ist, eine große Anzahl von
Funktionen zur Verfügung stellen muß, erfordert die Kartendien
ste-Softwareschicht üblicherweise mehr als 40 K Speicher. Diese
für die Kartendienste verwendete relativ große Speichermenge
kann ein Problem bei speichermäßig beschränkten DOS-basierten
Computersystemen darstellen.
Die Microsoft-Windows-Betriebsumgebung ersetzt in großem
Umfang die ältere Nur-DOS-Umgebung in Personalcomputern. Die
Microsoft-Windows-Umgebung stellt eine attraktive graphische
Benutzeroberfläche (GUI - Graphical User Interface) zur Verfü
gung, welche eine leichtere Benutzung von Anwendungsprogrammen
erlaubt. Die Microsoft-Windows-Betriebsumgebung unterstützt
DOS-Anwendungen über die Verwendung von virtuellen DOS-Maschi
nen.
Die Microsoft-Windows-Betriebsumgebung zieht Nutzen aus dem
erweiterten Speicher, der in Computern auf der Basis von 386er-
oder späteren Mikroprozessoren verfügbar ist. Um den Speicher
des Computersystems effektiver nutzen zu können, wurden Imple
mentierungen des geschützten Modus von Kartendiensten, die in
der Windows-Betriebsumgebung arbeiten, vorgeschlagen. (Siehe
"Architecture for Implementing PCMCIA Card Services Under the
Windows Operating System in Enhanced Mode", US-Patent Nr.
5,696,970 vom 9. Dezember 1997.)
Jedoch können bei einer Implementierung von Kartendiensten
für den geschützten Modus Kompatibilitätsprobleme mit einigen
Real-Modus-Klienten der Kartendienste auftreten. Insbesondere
können einige Real-Modus-Klienten der Kartendienste einen Zu
griff auf Kartendienste-Funktionen während der Anfangsladepro
zedur des Computersystems erfordern. Da die Implementierung von
Kartendiensten für den geschützten Modus nicht verfügbar ist,
bis die Microsoft-Windows-Betriebsumgebung geladen ist, sind
die Real-Modus-Klienten, die Kartendienste während des An
fangsladens des Computersystems erfordern, nicht in der Lage,
auf die Kartendienste-Funktionen zuzugreifen, die sie benöti
gen.
Folglich ist es eine Aufgabe der vorliegenden Erfindung,
eine Unterstützung für eine Kartendienste-Implementierung für
einen geschützten Modus zur Verfügung zu stellen, der einen Zu
griff auf Kartendienste-Funktionen während des Anfangsladepro
zesses des Computersystems gestattet.
Diese Aufgabe wird erfindungsgemäß durch ein Verfahren nach
dem Anspruch 1 bzw. ein Computersystem gemäß dem Anspruch 11
gelöst. Dabei wird ein Kartendienste-Kompatibilitätstreiber
verwendet. Der Kartendienste-Kompatibilitätstreiber ist ein Ge
rätetreiber oder ein speicherresidentes Programm (TSR-Pro
gramm), der bzw. das kurz nach Beginn der Anfangsladeprozedur
des Computersystems geladen wird. Der Kartendienste-Kompatibi
litätstreiber simuliert eine vollständige Implementierung von
Kartendiensten, indem er selbst dann, wenn Karten installiert
sind, nur die Funktionen unterstützt, die legal sind, wenn
keine Karten in dem System installiert sind. Später wird eine
vollständige Implementierung von Kartendiensten für den ge
schützten Modus in das System geladen. Der Kartendienste-Kompa
tibilitätstreiber überträgt dann sämtliche Zustandsinformatio
nen, die er während der Anfangsladeprozedur des Computersystems
gesammelt hat, zu der vollständigen Implementierung von Karten
diensten für den geschützten Modus. Nach dem Empfangen dieser
Informationen übernimmt die vollständige Geschützter-Modus-Im
plementierung der Kartendienste die Steuerung und bedient sämt
liche zukünftigen Kartendienste-Anforderungen. Die vollständige
Implementierung von Kartendiensten für den geschützten Modus
informiert darüber hinaus die registrierten Kartendienste-Kli
enten über irgendwelche in das System eingefügte Karten, indem
sie Karteneinfügungs-Rückrufe ausführt.
Vorteilhafte Weiterbildungen der Erfindung sind in den Un
teransprüchen gekennzeichnet.
Im folgenden wird die Erfindung anhand von in der Zeichnung
dargestellten Ausführungsbeispielen näher beschrieben. In der
Zeichnung zeigt:
Fig. 1 eine Blockdarstellung der durch die PCMCIA-Spe
zifikation definierten Kartendienste- und Steck
platzdienste-Software-Schichten, wie sie in ei
nem Computersystem verwendet werden;
Fig. 2 ein typisches Speicherabbild einer Real-Modus-
DOS-Maschine, nachdem DOS, ein Steckplatzdien
ste-Gerätetreiber, ein Kartendienste-Geräte
treiber, andere Gerätetreiber und speicherresi
dente Programme (TSR) geladen worden sind;
Fig. 3a eine Blockdarstellung der Programminteraktionen
in einem Computersystem, das während der An
fangsladestufe des Computers einen Kartendien
ste-Kompatibilitätstreiber verwendet;
Fig. 3b eine Blockdarstellung der Programminteraktionen
in dem Computersystem gem. Fig. 3a, wenn eine
Kartendienste-Implementierung für den geschütz
ten Modus geladen worden ist und der Kartendien
ste-Kompatibilitätstreiber seine Datenbasis auf
die Kartendienste-Implementierung für den ge
schützten Modus überträgt;
Fig. 3c eine Blockdarstellung der Programminteraktionen
in dem Computersystem gem. Fig. 3b, wenn die
Kartendienste-Implementierung des geschützten
Modus die Steuerung von dem Kartendienste-Kompa
tibilitätstreiber übernommen hat.
Fig. 4 ein Ablaufdiagramm der bei der Erfindung erfor
derlichen Schritte; und
Fig. 5 ein Speicherabbild des Real-Modus-Speicherbe
reichs, nachdem DOS, ein Steckplatzdienste-Ge
rätetreiber, der Kartendienste-Kompatibilitäts
treiber, andere Gerätetreiber und speicherresi
dente Programme (TSR-Programme) geladen worden
sind.
In der folgenden detaillierten Beschreibung wird häufig auf
Display-Abbildungen, Algorithmen und symbolische Darstellungen
von Operationen an Datenbits innerhalb eines Computerspeichers
Bezug genommen. Diese algorithmischen Beschreibungen und Dar
stellungen sind die Mittel, denen sich ein Fachmann auf dem Ge
biet der Datenverarbeitung bedient, um am effektivsten die In
halte seiner Arbeit anderen Fachleuten zu übermitteln.
Ein Algorithmus wird im folgenden und grundsätzlich ver
standen als eine in sich logische Folge von Schritten, die zu
einem gewünschten Ergebnis führen. Diese Schritte sind solche,
die physikalische Manipulationen an physikalischen Größen er
fordern. Üblicherweise, aber nicht notwendigerweise, nehmen
diese Größen die Form elektrischer oder magnetischer Signale
an, die gespeichert, übertragen, kombiniert, verglichen, aus
gewählt, modifiziert und auf andere Weise manipuliert werden
können. Es erscheint von Zeit zu Zeit zweckdienlich, prinzi
piell aus Gründen des allgemeinen Gebrauchs, diese Signale als
Bits, Werte, Elemente, Symbole, Zeichen, Abbildungen, Terme,
Nummern oder dergleichen zu bezeichnen. Dabei ist jedoch zu be
achten, daß all diese und ähnliche Begriffe den geeigneten phy
sikalischen Größen zuzuordnen sind und mehr oder weniger als
geeignete Kennzeichnungen dieser Größen anzusehen sind.
In dem vorliegenden Fall sind die Operationen Maschinenope
rationen, die in Verbindung mit einem menschlichen Bediener
ausgeführt werden. Geeignete Maschinen zum Ausführen dieser
Operationen der Erfindung sind beispielsweise digitale Mehr
zweckrechner oder andere ähnliche Geräte. Auf jeden Fall sollte
der Unterschied zwischen den Verfahrensoperationen zum Betrei
ben eines Computers und dem Verfahren der Berechnung selbst be
achtet werden. Die vorliegende Erfindung bezieht sich auf die
Verfahrensschritte zum Betreiben eines Computers und zum Verar
beiten elektrischer oder anderer physikalischer Signale, um
andere gewünschte physikalische Signale zu erzeugen.
Es wird eine Implementierung von PCMCIA-Kartendiensten of
fenbart, die einen Zugriff auf Kartendienste-Funktionen während
des Anfangsladeprozesses des Computersystems zur Verfügung
stellt. In der folgenden Beschreibung wird zum Zwecke der Er
läuterung eine spezielle Nomenklatur ausgeführt, um ein besse
res Verständnis der vorliegenden Erfindung zu erreichen. Für
den Fachmann ist es jedoch klar, daß diese speziellen Details
nicht erforderlich sind, um die Erfindung zu praktizieren. An
anderen Stellen werden gut bekannte Schaltungen und Einrichtun
gen in Blockdiagrammform gezeigt, um das Verständnis der Erfin
dung nicht unnötig zu erschweren.
Der aktuelle PCMCIA-Standard definiert zwei Schichten der
Software, die ein Computersystem verwendet, um auf PCMCIA-Kar
ten zuzugreifen und diese zu verwalten: die Steckplatzdienste-
Schicht und die Kartendienste-Schicht. Fig. 1 veranschaulicht,
in welchem Verhältnis die Steckplatzdienste- und die Karten
dienste-Software-Schichten zueinander stehen und wie diese bei
den Schichten auf die PCMCIA-Karten zugreifen.
Eine Steckplatzdienste-Schicht wird für jeden einzelnen
PCMCIA-Steckplatzadapter in dem System implementiert. Jede
Steckplatzdienste-Implementierung stellt einen Satz von Routi
nen zur Verfügung, die zum Konfigurieren und Steuern des ent
sprechenden PCMCIA-Steckplatzes verwendet werden. Im folgenden
wird auf Fig. 1 Bezug genommen, in der verschiedene Implemen
tierungen der Steckplatzdienste (21 und 23) für jeden speziel
len PCMCIA-Steckplatzadapter (25 bzw. 27) in dem System gezeigt
sind. Die Steckplatzdienste-Schicht ist so aufgebaut, daß sie
im ROM implementiert werden kann und Teil des System-BIOS sein
kann. Die Funktionen in der Steckplatzdienste-Software-Schicht
werden von der Kartendienste-Schicht (31) mit Hilfe eines Soft
ware-Interrupt-Mechanismus aufgerufen. Speziell wird das Soft
ware-Interrupt INT 1A verwendet, um auf Steckplatzdienste-Funk
tionen zuzugreifen. Die Steckplatzdienste-Schicht ist unabhän
gig von dem auf dem Computersystem laufenden Betriebssystem.
(Siehe "PCMCIA Socket Services Interface Specification", Relea
se 2.00, September 1992, Personal Computer Memory Card Interna
tional Association.)
Die Kartendienste-Software-Schicht ist so gestaltet, daß
sie an der Oberfläche einer oder mehrerer Instanzen der Steck
platzdienste abläuft. Die Kartendienste-Software-Schicht stellt
einen Satz von Funktionen zur Verfügung, den Kartendienste-Kli
enten verwenden, um auf PCMCIA-Karten zuzugreifen und diese zu
konfigurieren. Es wird wieder auf Fig. 1 Bezug genommen. Die
Kartendienste-Software-Schicht 31 ist über jeder Implementie
rung von Steckplatzdiensten angeordnet und ruft die Routinen
von jeder Steckplatzdienste-Implementierung auf, um hardware
spezifische Funktionen auszuführen. Die Kartendienste-Software-
Schicht (31) ist vom Betriebssystem abhängig und wird üblicher
weise während des Startens des Betriebssystems geladen. Real-
Modus-Kartendienste-Klienten rufen Kartendienste-Funktionen mit
Hilfe eines Software-Interrupt-Mechanismus auf. Speziell wird
das Software-Interrupt INT 1A unter Setzen des Registersatzes
AH auf dem hexadezimalen Wert AF verwendet, um Kartendienste
aufzurufen. Andere Arten von Kartendienste-Klienten können auf
Kartendienste mit Hilfe anderer Schnittstellen zugreifen. Die
Kartendienste-Schicht 31 ist so gestaltet, daß sie die ver
schiedenen PCMCIA-Steckplatzadapter für die Kartendienste-Kli
enten (33 und 35) unsichtbar macht, so daß die Kartendienste-
Klienten (33 und 35) stets eine gleichmäßige Schnittstelle zu
den PCMCIA-Karten haben. (Siehe "PC Card Services Interface
Specification", Release 2.00, September 1992, Personal Computer
Memory Card International Association.)
Fig. 2 veranschaulicht ein typisches Speicherabbild eines
Real-Modus-DOS-Computersystems, bei dem Real-Modus-Kartendien
ste- und -Steckplatzdienste-Schichten geladen sind. Bei dem in
Fig. 2 veranschaulichten DOS-Computersystem sind die Karten
dienste- und Steckplatzdienste-Software-Schichten als speicher
residente Programme (TSR-Programme - Terminate and Stay Resi
dent) oder Gerätetreiber implementiert. Die Steckplatzdienste-
Schicht 25 und die Kartendienste-Schicht 31 benutzen kostbaren
Speicher unterhalb der 640 K-Grenze. Da die Steckplatzdienste-
Schicht 25 nur ungefähr 3 K des Speichers verwendet, reduziert
sie nicht signifikant die für DOS-Anwendungen in dem Anwen
dungsbereich 41 verfügbare Speichermenge. Jedoch erfordert die
Real-Modus-Kartendienste-Schicht 31 ungefähr 40 K des Spei
chers, so daß sie signifikant die für DOS-Anwendungsprogramme
in dem DOS-Anwendungsbereich 41 verfügbare Menge des Real-Mo
dus-Speichers senkt. Folglich ist es wünschenswert, Karten
dienste in einer anderen Weise zu implementieren, so daß Kar
tendienste nicht sehr viel teuren Speicher unterhalb der DOS-
640 K-Grenze erfordern.
Um IBM-kompatible Personalcomputer leichter benutzbar zu
machen, benötigt der Markt für IBM-kompatible PC ein Betriebs
system mit einer graphischen Benutzeroberfläche (GUI). Um die
Forderung nach einer graphischen Benutzeroberfläche für IBM-
kompatible Personalcomputer zu erfüllen, erschuf Microsoft die
Windows-Betriebsumgebung. Die Microsoft-Windows-Betriebsumge
bung bleibt abwärts-kompatibel mit dem existierenden Microsoft-
DOS-Betriebssystems, das auf IBM-kompatiblen PC verwendet wird.
Das im erweiterten Modus laufende Microsoft-Windows verwendet
den geschützten Modus der Intel-Mikroprozessoren 386 oder
höher. Durch Benutzung des geschützten Modus ist Microsoft
Windows in der Lage, erweiterten Speicher zu nutzen.
Es wurden Implementierungen von Kartendiensten für den ge
schützten Modus vorgeschlagen, die in der Microsoft-Windows-Be
triebsumgebung laufen. Die Implementierungen von Kartendiensten
für den geschützten Modus versetzen die Kartendienste-Schicht
hinauf in die erweiterten Bereiche des Speichers, so daß kein
Real-Modus-Speicher verwendet wird. (Siehe "An Architecture for
Implementing PCMCIA Card Services Under the Windows Operating
System in Enhanced Mode", US-Patent-Nr. 5696970.)
Somit wird die Größe des für die US-Anwen
dungen verfügbaren DOS-Anwendungsbereichs überhaupt nicht von
der Kartendienste-Schicht verringert.
Jedoch haben die Implementierungen von Kartendiensten für
den geschützten Modus ein Kompatibilitätsproblem in Bezug auf
einige Programme, die im Real-Modus arbeiten. Da insbesondere
eine Implementierung von Kartendiensten für den geschützten Mo
dus, die in der Microsoft-Windows-Betriebsumgebung läuft, nicht
geladen werden kann, bis die Microsoft-Windows-Betriebsumgebung
geladen ist, arbeiten Real-Modus-Anwendungen, Gerätetreiber
oder speicherresidente Programme, die Kartendienste während des
Anfangsladeprozesses des Computersystems erfordern, nicht ord
nungsgemäß. Solche Programme erwarten es, eine bereits geladene
Real-Modus-Implementierung von Kartendiensten vorzufinden, so
daß sie sich als Kartendienste-Klienten anmelden und Informa
tionen über die Steckplätze während des Anfangsladeprozesses
des Computersystems erlangen können.
Die Erfindung löst das Kompatibilitätsproblem von Real-Mo
dus-Programmen, die Kartendienste während des Anfangsladens des
Computersystems erfordern, durch Einführung des Konzepts eines
Kartendienste-Kompatibilitätstreibers. Der Kartendienste-Kompa
tibilitätstreiber ist ein von DOS ladbarer Gerätetreiber, der
als eine vorübergehende Kartendienste-Schicht agiert, bis die
vollständige Kartendienste-Implementierung für den geschützten
Modus geladen ist.
Der Kartendienste-Kompatibilitätstreiber simuliert eine Um
gebung, in welcher sich keine Karten in irgendwelchen Steck
plätzen befinden. Der Kartendienste-Kompatibilitätstreiber si
muliert diese Umgebung, obwohl Karten in den Steckplätzen vor
handen sein können. Indem er so handelt, als ob keine Karten
vorhanden sind, kann der Kartendienste-Kompatibilitätstreiber
einen NO-CARD-Rückgabecode für die große Mehrheit der Karten
dienste-Funktionen zurückgeben. Folglich muß der Kartendienste-
Kompatibilitätstreiber nur einen kleinen Teil der Kartendien
ste-Funktionen vollständig implementieren, die legal sind, wenn
keine Karten in dem Computersystem vorhanden sind.
Schließlich lädt der Computer die vollständige Implementie
rung der Kartendienste für den geschützten Modus. Nachdem der
Computer die vollständige Kartendienste-Implementierung für den
geschützten Modus geladen hat, fordert die vollständige Karten
dienste-Implementierung für den geschützten Modus von dem Kar
tendienste-Kompatibilitätstreiber sämtliche Informationen an,
die der Kartendienste-Kompatibilitätstreiber während des An
fangsladeprozesses des Computersystems erlangt hat. Nachdem
diese Informationen weitergeleitet worden sind, werden alle
nachfolgenden Anforderungen nach Kartendienste-Funktionen an
die vollständige Kartendienste-Implementierung für den ge
schützten Modus weitergelenkt.
Fig. 3a veranschaulicht, wie die Programmeinheiten während
des Anfangsladens des Computersystems, bevor die Windows-Be
triebsumgebung geladen worden ist, miteinander in Wechselwir
kung treten. Wie in Fig. 3a veranschaulicht, werden sämtliche
Anforderungen nach Kartendienste-Funktionen von einem Karten
dienste-Kompatibilitätstreiber 50 behandelt. Die Real-Modus-An
wendungsprogramme, Gerätetreiber und speicherresidenten Pro
gramme (TSRs) können als Kartendienste-Klienten registriert
werden. Die Programme können sich außerdem den Status beschaf
fen und einige der Physikalisch-zu-logisch-Abbildungen ausfüh
ren. Jedoch empfangen die Kartendienste-Klienten zu diesem
Zeitpunkt keinerlei Karteneinfüge-Rückrufe.
Fig. 3b veranschaulicht, wie die Programmeinheiten während
des Anfangsladens des Computersystems miteinander in Wechsel
wirkung treten, nachdem die Windows-Betriebsumgebung und die
vollständige Kartendienste-Implementierung 51 für den geschütz
ten Modus geladen worden sind. Nachdem der Computer die voll
ständige Kartendienste-Implementierung für den geschützten Mo
dus geladen hat, fordert die vollständige Kartendienste-Imple
mentierung 51 für den geschützten Modus den Kartendienste-Kom
patibilitätstreiber 50 auf, ihr sämtliche Informationen zur
Verfügung zu stellen, die der Kartendienste-Kompatibilitäts
treiber 50 während des Anfangsladens des Computersystems gesam
melt hat. Diese Informationen enthalten: die Steckplatzdienste-
Datenstruktur; eine Liste der registrierten Kartendienste-Kli
enten (einschließlich Handles, Rückruf-Eintrittspunkten, Klien
tendaten, globalen Ereignismasken); eine Liste der registrier
ten Lösch-Warteschlangen (erase queues); eine Liste der regi
strierten Zeitgeber (mit der Zeitdauer, die auf dem jeweiligen
Zeitgeber verbleibt) und die verfügbaren Ressourcen (sofern für
die Betriebsumgebung geeignet). Es ist zu beachten, daß der
Kartendienste-Kompatibilitätstreiber 50 und die vollständige
Kartendienste-Implementierung 51 für den geschützten Modus phy
sikalische/logische Steckplatz- und Fenster-Abbildungen in der
gleichen Weise ausführen müssen, damit die Informations-Über
tragung transparent ist. Nach dem Erlangen der Informationen
übernimmt die vollständige Kartendienste-Implementierung 51 für
den geschützten Modus den INT 1A-Eintrittspunkt von dem Karten
dienste-Kompatibilitätstreiber 50 und nimmt die Rolle des Kar
tendienste-Lieferers für sämtliche Kartendienste-Klienten ein.
Die Kartendienste-Implementierung 51 für den geschützten Modus
informiert dann die registrierten Kartendienste-Klienten dar
über, ob irgendwelche Karten in dem System vorhanden sind, in
dem sie Karteneinfüge-Rückrufe für sämtliche in dem System
vorhandenen Karten ausführt.
Schließlich veranschaulicht Fig. 3c, wie die Programmein
heiten in Wechselwirkung treten, nachdem das Anfangsladen des
Computersystems abgeschlossen ist. Der Kartendienste-Kompatibi
litätstreiber 50 wird nicht länger für Kartendienste-Aufrufe
verwendet. Da jedoch ein Klient ReturnSSEntry (Gib Steckplatz
dienste-Eintrittspunkte zurück) aufgerufen haben kann, muß der
Kartendienste-Kompatibilitätstreiber 50 die Unterstützung für
den Steckplatzdienste-Eintrittspunkt, der dem Kartendienste-
Klienten zur Verfügung gestellt wurde, fortsetzen. Wenn der
Steckplatzdienste-Eintrittspunkt von einem Kartendienste-Kli
enten aufgerufen wird, wird die Steuerung an den Steckplatz
dienste-Eintrittspunkt der Kartendienste-Implementierung 51 für
den geschützten Modus weitergeleitet.
Fig. 4 veranschaulicht die Schritte des erfindungsgemäßen
Verfahrens. Zuerst wird im Schritt 101 die Anfangsladeprozedur
des Computersystems initiiert. Der Computer führt die normale
Anfangsladeprozedur aus, wie sie durch das in dem Computer vor
handene ROM-BIOS vorgegeben wird. Während der Anfangsladeproze
dur führt der Computer Kommandos einer Datei CONFIG.SYS aus.
Die Datei CONFIG.SYS veranlaßt ein Laden des Kartendienste-Kom
patibilitätstreibers in den Speicher, wie es im Schritt 103
ausgedrückt ist.
Der Computer fährt damit fort, die anderen speicherresiden
ten Programme (TSRs) und Gerätetreiber während des Anfangslade
prozesses zu laden, wie es in Schritt 105 festgelegt ist. So
bald jeweils ein neues speicherresidentes Programm oder ein Ge
rätetreiber sich selbst initialisiert, kann er versuchen, sich
bei den Kartendiensten anzumelden. Der Kartendienste-Kompatibi
litätstreiber bearbeitet die Registrierungsanforderung so, wie
es eine normale Kartendienste-Implementierung tun würde. Der
Kartendienste-Kompatibilitätstreiber informiert jedoch selbst
dann, wenn Karten installiert sind, jeden sich anmeldenden Kar
tendienste-Klienten, daß keine Karten in dem System installiert
sind. Am Schritt 107 lädt das Computersystem die Windows-Be
triebsumgebung ein. Im gegenwärtigen Ausführungsbeispiel lädt
der Computer Microsoft Windows 3.1. Jedoch kann auch irgendeine
aktuelle oder zukünftige Implementierung von Windows für den
geschützten Modus geladen werden. Am Schritt 109 lädt der Com
puter eine vollständige Implementierung von Kartendiensten für
den geschützten Modus. Die Kartendienste-Implementierung für
den geschützten Modus wird in den erweiterten Speicherbereich
geladen, so daß sie nicht die für Real-Modus-DOS-Programme ver
fügbare Speichermenge reduziert.
Nachdem die vollständige Implementierung von Kartendiensten
für den geschützten Modus geladen worden ist, leitet der Kar
tendienste-Kompatibilitätstreiber sämtliche Zustandsinformatio
nen, die er gesammelt hat, an die gerade geladene Implementie
rung von Kartendiensten für den geschützten Modus im Schritt
111 weiter. Die übertragenen Zustandsinformationen enthalten:
- 1. Die Steckplatzdienste-Datenstruktur.
- 2. Die Liste der Klienten, die bei den Kartendiensten angemeldet worden sind.
- 3. Eine Liste der registrierten Lösch-Warteschlangen (erase queues).
- 4. Eine Liste der registrierten Zeitgeber. (Die auf jedem Zeitgeber verbleibende Zeitmenge wird zur Verfügung gestellt.)
- 5. Verfügbare Ressourcen (wenn für die Betriebsumgebung geeignet).
Am Schritt 113 überträgt das System die Kontrolle über das
INT 1A-Software-Interrupt auf die Kartendienste-Implementierung
für den geschützten Modus. Indem die Kontrolle über das INT 1A-
Software-Interrupt auf die Kartendienste-Implementierung für
den geschützten Modus übertragen wird, werden alle zukünftigen
Anforderungen nach Kartendienste-Funktionen an die Kartendien
ste-Implementierung für den geschützten Modus weitergeleitet.
Somit wird der Kartendienste-Kompatibilitätstreiber von seinen
Pflichten entbunden.
Am Schritt 115 überprüft die Kartendienste-Implementierung
für den geschützten Modus die Steckplätze, um zu sehen, ob ir
gendwelche Karten vorhanden sind. Wenn keine Karten vorhanden
sind, dann ist die Kartendienste-Initialisierungsprozedur been
det.
Wenn jedoch eine oder mehrere Karten in dem System vorhan
den sind, könnte es erforderlich sein, daß die Kartendienste-
Implementierung für den geschützten Modus einige der regi
strierten Klienten von Kartendiensten informieren muß. Die Kar
tendienste-Implementierung für den geschützten Modus überprüft
zuerst die Liste der registrierten Klienten, um die Klienten
herauszufinden, die über Karteneinfügungen informiert werden
möchten. Die Kartendienste-Implementierung für den geschützten
Modus führt dann "Rückrufe" zu diesen Klienten aus, um die
Klienten zu informieren, daß eine Karte eingesetzt worden ist,
was im Schritt 117 festgelegt ist. Nachdem sämtliche regi
strierten Klienten, die über Karteneinfügungen informiert zu
werden wünschen, über sämtliche in dem System vorhandenen Kar
ten informiert worden sind, ist die Kartendienste-Initialisie
rungsprozedur beendet.
Fig. 5 veranschaulicht, wie der Real-Modus-Speicherbereich
erscheint, nachdem der erfindungsgemäße Kartendienste-Kompati
bilitätstreiber 50 verwendet worden ist. Da der Kartendienste-
Kompatibilitätstreiber 50 sehr klein (kleiner als 5 K) ist,
verbraucht er nicht sehr viel Real-Modus-Speicher. Somit ver
ringert der Kartendienste-Kompatibilitätstreiber 50 die Größe
des DOS-Anwendungsbereichs 41 nicht wesentlich.
Der Kartendienste-Kompatibilitätstreiber wird als eine Kom
bination von DOS-ladbaren Gerätetreibern oder TSRs implemen
tiert. Obwohl der Kartendienste-Kompatibilitätstreiber sämtli
che Kartendienste-Anforderungen handhaben muß, kann der Karten
dienste-Kompatibilitätstreiber bei den meisten der Funktionen
entweder NO CARD (keine Karte) oder BAD HANDLE (schlechte Hand
habung) zurückgeben. Die untenstehende Liste beschreibt, welche
Aktion für die jeweiligen Kartendienste-Funktionen vorgenommen
werden muß.
AddSocketServices - Die Funktion AddSocketServices (Füge
Steckplatzdienste hinzu) ist vollständig von dem Kartendienste-
Kompatibilitätstreiber implementiert. Somit können neue Steck
platzdienste-Behandlungsroutinen während des Anfangsladeprozes
ses hinzugefügt werden.
AdjustResourceInfo - Die Funktion AdjustResourceInfo
(Stelle Ressourceninformationen ein) führt normalerweise Ein
stellungen an der internen Datenbasis der Kartendienste von Sy
stemressourcen aus, die zur Verwendung durch Klienten zugewie
sen werden können. Wenn die Betriebsumgebung die externe Defi
nition der Ressourcenverfügbarkeit gestattet, bewahrt der Kar
tendienste-Kompatibilitätstreiber die von einem
AdjustResourceInfo-Funktionsaufruf zur Verfügung gestellten In
formationen auf. Der Kartendienste-Kompatibilitätstreiber lei
tet schließlich diese Informationen an die Kartendienste-Imple
mentierung für den geschützten Modus zu dessen Verwendung wei
ter. Wenn die Betriebsumgebung nicht die externe Definition von
Ressourcen gestattet, gibt der Kartendienste-Kompatibili
tätstreiber IN USE (IN BENUTZUNG) zurück.
CheckEraseQueue - Die Funktion CheckEraseQueue (Überprüfe
Lösch-Warteschlange) ist vollständig von dem Kartendienste-
Kompatibilitätstreiber implementiert. Der Kartendienste-Kompa
tibilitätstreiber antwortet auf Löschanforderungen durch Setzen
von Warteschlangeneinträgen auf MEDIA_MISSING.
CloseMemory - Der Kartendienste-Kompatibilitätstreiber gibt
BAD HANDLE auf irgendwelche CloseMemory-Anforderungen
(Schließe-Speicher-Anforderungen) zurück, da noch keine Spei
cherbehandlungen existieren.
CopyMemory - Der Kartendienste-Kompatibilitätstreiber gibt
BAD HANDLE auf irgendwelche CopyMemory-Anforderungen (Kopiere-
Speicher-Anforderungen) zurück, da noch keine Speicherbehand
lungen existieren.
DeregisterClient - Die Funktion DeregisterClient (Melde
Klienten ab) ist vollständig von dem Kartendienste-Kompatibili
tätstreiber implementiert, um es Kartendienste-Klienten zu ge
statten, sich abzumelden.
DeregisterEraseQueue - Der Kartendienste-Kompatibilitäts
treiber implementiert vollständig die Funktion DeregisterErase-
Queue (Melde Lösch-Warteschlange ab), um Kartendienste-Klienten
zu gestatten, eine Lösch-Warteschlange abzumelden, die sie zu
vor angemeldet hatten.
GetCardServicesInfo - Der Kartendienste-Kompatibilitäts
treiber implementiert vollständig die Funktion
GetCardServicesInfo (Hole-Kartendienste-Informationen), um die
Anzahl der installierten logischen Steckplätze und Informatio
nen über die Kartendienste-Implementierung zurückzugeben.
GetClientInfo - Der Kartendienste-Kompatibilitätstreiber
implementiert vollständig die Funktion GetClientInfo (Hole Kli
enteninformationen), um Informationen über einen registrierten
Klienten zurückzugeben.
GetConfigurationInfo - Der Kartendienste-Kompatibilitäts
treiber antwortet auf eine GetConfigurationInfo-Anforderung
(Hole-Konfigurationsinformationen-Anforderungen), indem er NO
CARD zurückgibt, selbst wenn eine Karte in dem System vorhanden
sein sollte.
GetEventMask - Der Kartendienste-Kompatibilitätstreiber im
plementiert vollständig GetEventMask-Anforderungen (Hole-Ereig
nismaske-Anforderungen) für globale Masken. Wenn jedoch ein
Klient Informationen über einen speziellen Steckplatz anfor
dert, antwortet der Kartendienste-Kompatibilitätstreiber, indem
er NO CARD zurückgibt, selbst wenn eine Karte in dem System
vorhanden sein sollte.
GetFirstClient - Der Kartendienste-Kompatibilitätstreiber
implementiert vollständig GetFirstClient-Anforderungen (Hole-
ersten-Klienten-Anforderungen) für nicht steckplatzspezifische
Informationen. Wenn jedoch ein Klient eine GetFirstClient-An
forderung nach Informationen über einen speziellen Steckplatz
ausführt, antwortet der Kartendienste-Kompatibilitätstreiber,
indem er NO CARD zurückgibt, selbst wenn eine Karte in dem
Steckplatz vorhanden sein sollte.
GetFirstPartition - Der Kartendienste-Kompatibilitätstrei
ber antwortet auf GetFirstPartition-Anforderungen (Hole-erste-
Partition-Anforderungen), indem er NO CARD zurückgibt, selbst
wenn eine Karte in dem System vorhanden sein sollte.
GetFirstRegion - Der Kartendienste-Kompatibilitätstreiber
antwortet auf GetFirstRegion-Anforderungen (Hole-erste-Region-
Anforderungen), indem er NO CARD zurückgibt, selbst wenn eine
Karte in dem System vorhanden sein sollte.
GetFirstTuple - Der Kartendienste-Kompatibilitätstreiber
antwortet auf GetFirstTuple-Anforderungen (Hole-erstes-Tupel-
Anforderungen), indem er NO CARD zurückgibt, selbst wenn eine
Karte in dem System vorhanden sein sollte.
GetNextClient - Der Kartendienste-Kompatibilitätstreiber
implementiert vollständig GetNextClient-Anforderungen (Hole-
nächsten-Klienten-Anforderungen) für nicht steckplatzspezifi
sche Informationen. Wenn jedoch ein Klient eine GetNextClient-
Anforderung nach Informationen über einen speziellen Steckplatz
ausführt, antwortet der Kartendienste-Kompatibilitätstreiber,
indem er NO CARD zurückgibt, selbst wenn eine Karte in dem
Steckplatz vorhanden sein sollte.
GetNextPartition - Der Kartendienste-Kompatibilitätstreiber
antwortet auf GetNextPartition-Anforderungen (Hole-nächste-Par
tition-Anforderungen), indem er NO CARD zurückgibt, selbst wenn
eine Karte in dem Steckplatz vorhanden sein sollte.
GetNextRegion - Der Kartendienste-Kompatibilitätstreiber
antwortet auf GetNextRegion-Anforderungen (Hole-nächste-Region-
Anforderungen), indem er NO CARD zurückgibt, selbst wenn eine
Karte in dem Steckplatz vorhanden sein sollte.
GetNextTuple - Der Kartendienste-Kompatibilitätstreiber
antwortet auf GetNextTuple-Anforderungen (Hole-nächstes-Tupel-
Anforderungen), indem er NO CARD zurückgibt, selbst wenn eine
Karte in dem Steckplatz vorhanden sein sollte.
GetStatus - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf GetStatus-Anforderungen (Hole-Status-Anforderungen),
indem er den aktuellen Steckplatz-Status zur Verfügung stellt,
wobei dieser aussagt, daß keine Karte vorhanden ist, selbst
wenn eine Karte vorhanden sein sollte.
GetTupleData - Der Kartendienste-Kompatibilitätstreiber
antwortet auf GetTupleData-Anforderungen (Hole-Tupel-Daten-An
forderungen), indem er NO CARD zurückgibt, selbst wenn eine
Karte in dem Steckplatz vorhanden sein sollte.
MapLogSocket - Der Kartendienste-Kompatibilitätstreiber im
plementiert vollständig die Funktion MapLogSocket (Bilde logi
schen Steckplatz ab).
MapLogWindow - Der Kartendienste-Kompatibilitätstreiber im
plementiert vollständig die Funktion MapLogWindow (Bilde logi
sches Fenster ab).
MapMemPage - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf MapMemPage-Anforderungen (Bilde Speicherseite ab),
indem er NO CARD zurückgibt, selbst wenn eine Karte in dem
Steckplatz vorhanden sein sollte.
MapPhySocket - Der Kartendienste-Kompatibilitätstreiber im
plementiert vollständig die Funktion MapPhySocket (Bilde physi
kalischen Steckplatz ab).
MapPhyWindow - Der Kartendienste-Kompatibilitätstreiber im
plementiert vollständig die Funktion MapPhyWindow (Bilde physi
kalisches Fenster ab).
ModifyConfiguration - Der Kartendienste-Kompatibilitäts
treiber antwortet auf ModifyConfiguration-Anforderungen
(Modifiziere-Konfiguration-Anforderungen), indem er NO CARD zu
rückgibt, selbst wenn eine Karte in dem Steckplatz vorhanden
sein sollte.
ModifyWindow - Der Kartendienste-Kompatibilitätstreiber
antwortet auf ModifyWindow-Anforderungen (Modifiziere-Fenster-
Anforderungen), indem er NO CARD zurückgibt, selbst wenn eine
Karte in dem Steckplatz vorhanden sein sollte.
OpenMemory - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf OpenMemory-Anforderungen (Öffne-Speicher-Anforderun
gen), indem er NO CARD zurückgibt, selbst wenn eine Karte in
dem Steckplatz vorhanden sein sollte.
ReadMemory - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf ReadMemory-Anforderungen (Lese-Speicher-Anforderun
gen), indem er NO CARD zurückgibt, selbst wenn eine Karte in
dem Steckplatz vorhanden sein sollte.
RegisterClient - Der Kartendienste-Kompatibilitätstreiber
implementiert vollständig die Funktion RegisterClient
(Registriere Klienten), so daß Gerätetreiber, TSRs und Anwen
dungsprogramme sich bei Kartendiensten anmelden können.
RegisterEraseQueue - Der Kartendienste-Kompatibilitätstrei
ber implementiert vollständig die Funktion RegisterEraseQueue
(Melde Lösch-Warteschlange an), so daß Kartendienste-Klienten
Lösch-Warteschlangen bei den Kartendiensten anmelden können.
RegisterMTD - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf RegisterMTD-Anforderungen (Registriere MTD), indem
er NO CARD zurückgibt, selbst wenn eine Karte in dem Steckplatz
vorhanden sein sollte.
RegisterTimer - Der Kartendienste-Kompatibilitätstreiber
implementiert vollständig die Funktion RegisterTimer
(Registriere Zeitgeber), so daß Kartendienste-Klienten Zeitge
ber innerhalb der Kartendienste registrieren können, um Kar
tendienste zu schaffen, die den Klienten zurückrufen.
ReleaseConfiguration - Der Kartendienste-Kompatibilitäts
treiber implementiert die Funktion ReleaseConfiguration (Gib
Konfiguration frei), indem sie BAD HANDLE zurückgibt, da keine
Karte konfiguriert sein kann. Es kann keine Karte konfiguriert
sein, da die Funktion RequestConfiguration (Fordere Konfigura
tion an) nicht durch den Kartendienste-Kompatibilitätstreiber
implementiert ist.
ReleaseExclusive - Der Kartendienste-Kompatibilitätstreiber
implementiert die Funktion ReleaseExclusive (Gib exklusiv
frei), indem sie BAD HANDLE zurückgibt, da kein exklusiver Zu
riff auf eine Karte gewährt sein kann. Es kann kein exklusiver
Zugriff auf eine Karte gewährt sein, da die Funktion Re
questExclusive (Fordere exklusiv an) nicht durch den Karten
dienste-Kompatibilitätstreiber implementiert ist.
ReleaseIO - Der Kartendienste-Kompatibilitätstreiber imple
mentiert die Funktion ReleaseIO (Gib I/O frei), indem er BAD
HANDLE zurückgibt, da keine vorangehende RequestIO (Fordere I/O
an) ausgeführt werden konnte.
ReleaseIRQ - Der Kartendienste-Kompatibilitätstreiber im
plementiert die Funktion ReleaseIRQ (Gib IRQ frei), indem er
BAD HANDLE zurückgibt, da keine vorangehende RequestIRQ
(Fordere IRQ an) ausgeführt werden konnte.
ReleaseSocketMask - Der Kartendienste-Kompatibilitätstrei
ber implementiert die Funktion ReleaseSocketMask (Gib Steck
platzmaske frei), indem er BAD HANDLE zurückgibt, da keine vor
hergehende RequestSocketMask ausgeführt werden konnte.
ReleaseWindow - Der Kartendienste-Kompatibilitätstreiber
implementiert ReleaseWindow (Gib Fenster frei), indem er BAD
HANDLE zurückgibt, da keine vorhergehende RequestWindow ausge
führt werden konnte.
ReplaceSocketServices - Der Kartendienste-Kompatibilitäts
treiber implementiert vollständig die Funktion
ReplaceSocketServices (Ersetze Steckplatzdienste), so daß neue
re Steckplatzdienste-Implementierungen eine ältere Steckplatz
dienste-Implementierung ersetzen können.
RequestConfiguration - Der Kartendienste-Kompatibilitäts
treiber antwortet auf RequestConfiguration-Anforderungen
(Fordere Konfiguration an), indem er NO CARD zurückgibt, selbst
wenn eine Karte in dem Steckplatz vorhanden sein sollte.
RequestExclusive - Der Kartendienste-Kompatibilitätstreiber
antwortet auf RequestExclusive-Anforderungen (Fordere-exklusiv-
an-Anforderungen), indem er NO CARD zurückgibt, selbst wenn ei
ne Karte in dem Steckplatz vorhanden sein sollte.
RequestIO - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf RequestIO-Anforderungen (Fordere-I/O-an-Anforderun
gen), indem er NO CARD zurückgibt, selbst wenn eine Karte in
dem Steckplatz vorhanden sein sollte.
RequestIRQ - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf RequestIRQ-Anforderungen (Fordere-IRQ-an-Anforderun
gen), indem er NO CARD zurückgibt, selbst wenn eine Karte in
dem Steckplatz vorhanden sein sollte.
RequestSocketMask - Der Kartendienste-Kompatibilitätstrei
ber antwortet auf RequestSocketMask-Anforderungen (Fordere
Steckplatzmaske an), indem er NO CARD zurückgibt, selbst wenn
eine Karte in dem Steckplatz vorhanden sein sollte.
RequestWindow - Der Kartendienste-Kompatibilitätstreiber
antwortet auf RequestWindow-Anforderungen (Fordere-Fenster-an-
Anforderungen), indem er NO CARD zurückgibt, selbst wenn eine
Karte in dem Steckplatz vorhanden sein sollte.
ResetCard - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf ResetCard-Anforderungen (Setze-Karte-zurück-Anforde
rungen), indem er NO CARD zurückgibt, selbst wenn eine Karte in
dem Steckplatz vorhanden sein sollte.
ReturnSSEntry - Der Kartendienste-Kompatibilitätstreiber
implementiert vollständig die Funktion ReturnSSEntry (Gib
Steckplatzdienste-Eintrittspunkt zurück), so daß ein Eintritts
punkt in einen Steckplatzdienst zurückgegeben wird. Die Steck
platzdienste-Eintrittspunkt-Rückgabe zu dem Kartendienste-Kli
enten muß fortgesetzt unterstützt werden, selbst wenn der Kar
tendienste-Kompatibilitätstreiber die Kartendienste-Verantwort
lichkeit auf die vollständige Kartendienste-Implementierung für
den geschützten Modus übergeben hat.
SetEventMask - Der Kartendienste-Kompatibilitätstreiber im
plementiert die Funktion SetEventMask (Setze Ereignismaske), um
Kartendienste-Klienten zu gestatten, globale Masken zu setzen.
Wenn jedoch ein Kartendienste-Klient versucht, eine Ereignis
maske für einen speziellen Steckplatz zu setzen, antwortet die
Funktion SetEventMask mit NO CARD.
SetRegion - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf SetRegion-Anforderungen (Setze-Region-Anforderun
gen), indem er NO CARD zurückgibt, selbst wenn eine Karte in
dem Steckplatz vorhanden sein sollte.
ValidateCIS - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf ValidateCIS-Anforderungen (Mache-CIS-gültig-Anforde
rungen), indem er NO CARD zurückgibt, selbst wenn eine Karte in
dem Steckplatz vorhanden sein sollte.
VendorSpecific - Der Kartendienste-Kompatibilitätstreiber
antwortet auf VendorSpecific-Anforderungen (Anwenderspezifische
Anforderungen), indem er BAD FUNCTION zurückgibt.
WriteMemory - Der Kartendienste-Kompatibilitätstreiber ant
wortet auf WriteMemory-Anforderungen (Schreibe-Speicher-Anfor
derungen), indem er NO CARD zurückgibt, selbst wenn eine Karte
in dem Steckplatz vorhanden sein sollte.
Claims (11)
1. Verfahren zum Bereitstellen von Kartendienstefunktionen
für wenigstens einen Kartendienste-Klienten während eines An
fangsladeprozesses in einem in einem Real-Modus und in einem
geschützten Modus betreibbaren Computersystem mit einem PCMCIA-
Adapter, wobei
das Computersystem in den Real-Modus versetzt wird;
ein Kartendienste-Kompatibilitätstreiber in das Computersy stem geladen wird (Fig. 4; 103);
eine Real-Modus-Kartendienste-Umgebung mit Hilfe des Kar tendienste-Kompatibilitätstreibers simuliert wird, indem nur solche Kartendienstefunktionen unterstützt werden, die zugelas sen (legal) sind, wenn keine PCMCIA-Karten in dem PCMCIA-Adap ter installiert sind, wobei keine PCMCIA-Karten in dem PCMCIA- Adapter installiert sind und wobei der Kartendienste-Kompati bilitätstreiber Zustandsinformationen sammelt;
das Computersystem in den geschützten Modus versetzt wird;
eine Kartendienste-Implementierung für den geschützten Mo dus in das Computersystem geladen wird (Fig. 4; 109);
die Zustandsinformationen von dem Kartendienste-Kompatibi litätstreiber zu der Kartendienste-Implementierung für den ge schützten Modus übertragen werden (Fig. 4; 111); und
die Kontrolle über Kartendienstefunktionsanforderungen auf die Kartendienste-Implementierung für den geschützten Modus derart übertragen wird (Fig. 4; 113), daß die Kartendienste- Implementierung für den geschützten Modus Kartendienstefunk tionsanforderungen bedient.
das Computersystem in den Real-Modus versetzt wird;
ein Kartendienste-Kompatibilitätstreiber in das Computersy stem geladen wird (Fig. 4; 103);
eine Real-Modus-Kartendienste-Umgebung mit Hilfe des Kar tendienste-Kompatibilitätstreibers simuliert wird, indem nur solche Kartendienstefunktionen unterstützt werden, die zugelas sen (legal) sind, wenn keine PCMCIA-Karten in dem PCMCIA-Adap ter installiert sind, wobei keine PCMCIA-Karten in dem PCMCIA- Adapter installiert sind und wobei der Kartendienste-Kompati bilitätstreiber Zustandsinformationen sammelt;
das Computersystem in den geschützten Modus versetzt wird;
eine Kartendienste-Implementierung für den geschützten Mo dus in das Computersystem geladen wird (Fig. 4; 109);
die Zustandsinformationen von dem Kartendienste-Kompatibi litätstreiber zu der Kartendienste-Implementierung für den ge schützten Modus übertragen werden (Fig. 4; 111); und
die Kontrolle über Kartendienstefunktionsanforderungen auf die Kartendienste-Implementierung für den geschützten Modus derart übertragen wird (Fig. 4; 113), daß die Kartendienste- Implementierung für den geschützten Modus Kartendienstefunk tionsanforderungen bedient.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
der wenigstens eine Kartendienste-Klient über irgendwelche in
dem Computersystem installierte PCMCIA-Karten informiert werden
(Fig. 4; 117).
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß
beim Informieren des wenigstens einen Kartendienste-Klienten
über irgendwelche in dem Computersystem installierte PCMCIA-
Karten eine Karteneinfüge-Rückruf-Routine in jedem der Karten
dienste-Klienten aufgerufen wird, die jeden der Kartendienste-
Klienten über ein Einfügen von PCMCIA-Karten informiert.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch ge
kennzeichnet, daß die Kartendienste-Implementierung für den ge
schützten Modus in einer Windows-Betriebsumgebung betrieben
wird.
5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß
die Kartendienste-Implementierung für den geschützten Modus ei
nen virtuellen Windows-Gerätetreiber aufweist.
6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch ge
kennzeichnet, daß beim Simulieren einer Real-Modus-Kartendien
ste-Umgebung ein oder, mehrere Kartendienste-Klienten regi
striert werden.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß
die Zustandsinformationen eine Liste der Kartendienste-Klienten
enthalten.
8. Verfahren nach Anspruch 6 oder 7, dadurch gekennzeich
net, daß die Zustandsinformationen eine Steckplatzdienste-Da
tenstruktur enthalten.
9. Verfahren nach einem der Ansprüche 6 bis 8, dadurch ge
kennzeichnet, daß die Zustandsinformationen eine Liste von re
gistrierten Lösch-Warteschlangen enthalten.
10. Verfahren nach einem der Ansprüche 6 bis 9, dadurch ge
kennzeichnet, daß die Zustandsinformationen eine Liste regi
strierter Zeitgeber und eine auf jedem der registrierten Zeit
geber verbleibende Zeitdauer enthalten.
11. Computersystem zum Ausführen eines Verfahrens nach ei
nem der Ansprüche 1 bis 10 während eines Anfangsladeprozesses
entsprechend einem Programm,
wobei
das Computersystem einen PCMCIA-Adapter und eine Einrich tung zum Erfassen des Vorhandenseins einer PCMCIA-Karte in dem PCMCIA-Adapter aufweist; und
das Programm einen Kartendienste-Kompatibilitätstreiber (50) aufweist, der während des Anfangsladeprozesses in einen Speicher des Computersystems geladen wird.
das Computersystem einen PCMCIA-Adapter und eine Einrich tung zum Erfassen des Vorhandenseins einer PCMCIA-Karte in dem PCMCIA-Adapter aufweist; und
das Programm einen Kartendienste-Kompatibilitätstreiber (50) aufweist, der während des Anfangsladeprozesses in einen Speicher des Computersystems geladen wird.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/128,462 US5537597A (en) | 1993-09-27 | 1993-09-27 | Method and apparatus for supporting real mode card services clients with a protected mode card services implementation |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4434528A1 DE4434528A1 (de) | 1995-04-20 |
DE4434528C2 true DE4434528C2 (de) | 1999-11-25 |
Family
ID=22435492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4434528A Expired - Fee Related DE4434528C2 (de) | 1993-09-27 | 1994-09-27 | Verfahren zum Bereitstellen von Kartendienstefunktionen sowie Computersystem zum Ausführen eines solchen Verfahrens |
Country Status (4)
Country | Link |
---|---|
US (1) | US5537597A (de) |
DE (1) | DE4434528C2 (de) |
GB (1) | GB2282249B (de) |
SG (1) | SG49676A1 (de) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5781798A (en) * | 1993-12-30 | 1998-07-14 | International Business Machines Corporation | Method and apparatus for providing hot swapping capability in a computer system with static peripheral driver software |
US5784615A (en) * | 1994-12-13 | 1998-07-21 | Microsoft Corporation | Computer system messaging architecture |
US5636357A (en) * | 1994-12-21 | 1997-06-03 | Eurotronics Company | Memory card and method for operation in a plurality of systems having incompatible object code format requirements |
US5710941A (en) * | 1995-02-28 | 1998-01-20 | Microsoft Corporation | System for substituting protected mode hard disk driver for real mode driver by trapping test transfers to verify matching geometric translation |
WO1996038784A1 (en) * | 1995-06-02 | 1996-12-05 | Systemsoft Corporation | Digital data processing method and apparatus for peripheral device control |
US5938742A (en) * | 1995-08-18 | 1999-08-17 | General Magic, Inc. | Method for configuring an intelligent low power serial bus |
US5652832A (en) * | 1995-11-13 | 1997-07-29 | Systemsoft Corporation | Method and apparatus for diagnosis and correction of peripheral device allocation faults |
US5828899A (en) * | 1996-01-04 | 1998-10-27 | Compaq Computer Corporation | System for peripheral devices recursively generating unique addresses based on the number of devices connected dependent upon the relative position to the port |
US5845114A (en) * | 1997-01-08 | 1998-12-01 | Telxon Corporation | PC card initialization for microprocessor based devices |
DE19708755A1 (de) | 1997-03-04 | 1998-09-17 | Michael Tasler | Flexible Schnittstelle |
US6925513B1 (en) * | 1999-05-04 | 2005-08-02 | Apple Computer, Inc. | USB device notification |
FI991167A (fi) | 1999-05-24 | 2000-11-25 | Nokia Mobile Phones Ltd | Menetelmä käyttöliittymäohjelmiston lataamiseksi |
US20020188938A1 (en) * | 2001-06-11 | 2002-12-12 | Dong Mimi Chu | System and method for providing application software for a peripheral device |
FI20060636A (fi) * | 2006-06-30 | 2007-12-31 | Metso Paper Inc | Pinnoitettu tela |
US8726364B2 (en) * | 2008-06-30 | 2014-05-13 | Intel Corporation | Authentication and access protection of computer boot modules in run-time environments |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4244266A1 (de) * | 1991-12-27 | 1993-07-01 | Intel Corp |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4928237A (en) * | 1987-03-27 | 1990-05-22 | International Business Machines Corp. | Computer system having mode independent addressing |
US4926322A (en) * | 1987-08-03 | 1990-05-15 | Compag Computer Corporation | Software emulation of bank-switched memory using a virtual DOS monitor and paged memory management |
US5255379A (en) * | 1990-12-28 | 1993-10-19 | Sun Microsystems, Inc. | Method for automatically transitioning from V86 mode to protected mode in a computer system using an Intel 80386 or 80486 processor |
US5237669A (en) * | 1991-07-15 | 1993-08-17 | Quarterdeck Office Systems, Inc. | Memory management method |
US5291585A (en) * | 1991-07-29 | 1994-03-01 | Dell Usa, L.P. | Computer system having system feature extension software containing a self-describing feature table for accessing I/O devices according to machine-independent format |
-
1993
- 1993-09-27 US US08/128,462 patent/US5537597A/en not_active Expired - Lifetime
-
1994
- 1994-07-04 GB GB9413404A patent/GB2282249B/en not_active Expired - Fee Related
- 1994-07-04 SG SG1996003856A patent/SG49676A1/en unknown
- 1994-09-27 DE DE4434528A patent/DE4434528C2/de not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4244266A1 (de) * | 1991-12-27 | 1993-07-01 | Intel Corp |
Also Published As
Publication number | Publication date |
---|---|
GB2282249A (en) | 1995-03-29 |
US5537597A (en) | 1996-07-16 |
SG49676A1 (en) | 1998-06-15 |
GB9413404D0 (en) | 1994-08-24 |
DE4434528A1 (de) | 1995-04-20 |
GB2282249B (en) | 1997-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4434528C2 (de) | Verfahren zum Bereitstellen von Kartendienstefunktionen sowie Computersystem zum Ausführen eines solchen Verfahrens | |
DE60006217T2 (de) | Techniken zum gewähren des zugriffs durch eine kontextsperre in einem gerät mit kleinem platzbedarf unter verwendung von einem eingangspunktobjekt | |
DE4244266C2 (de) | Verfahren und Schaltungseinrichtung zum dynamischen Konfigurieren von Gerätetreibern für Computersystem-Betriebsmittel | |
DE69330533T2 (de) | Systemkonfigurationsänderung in einem Rechnersystem | |
DE69630126T2 (de) | Historische zustandinformation verwendendes entscheidungsprotokoll für zugriff auf ein geteiltes speichergebiet | |
DE60108851T2 (de) | Mehrkanal, mehrdienstfehlerbeseitigung in pipeline-cpu-architektur | |
DE69223799T2 (de) | Einstellung der systemkonfiguration in einem datenverarbeitungssystem | |
DE69228413T2 (de) | Fernladung eines Betriebssystems über ein Netzwerk | |
DE69330691T2 (de) | Dynamisch konfigurierbares Kernsystem | |
DE602004012106T2 (de) | Multikanal-DMA mit gemeinsamem FIFO-Puffer | |
DE3851049T2 (de) | Ein Sicherheitswegmechanismus für ein Betriebssystem. | |
DE10397004B4 (de) | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems | |
DE69230306T2 (de) | Fern-Urladessystem und Verfahren zum Urladen eines Computersystems | |
DE69835879T2 (de) | Multifunktionschipkarte mit delegierungsmerkmal | |
DE10085374B4 (de) | Systemmanagementspeicher für die Systemmanagement-Interrupt-Behandler wird in die Speichersteuereinrichtung integriert, unabhängig vom BIOS und Betriebssystem | |
DE69024753T2 (de) | Tragbarer, Ressourcen teilender Datei-Server, der gemeinsame Routines benutzt | |
DE69803852T2 (de) | Dos-anwenderprogrammünterstützungen für ein modem ohne steuerung | |
DE60002687T2 (de) | Techniken zum gewähren des zugriffs durch eine kontextsperre in einem gerät mit kleinem platzbedarf unter verwendung von laufzeitumgebungsprivilegien | |
DE602004012563T2 (de) | Mehrfädiges DMA | |
DE102004057756B4 (de) | USB-Steuerungseinrichtung mit OTG-Steuerungseinheit | |
DE10296798T5 (de) | SMM-Lader und -Ausführungsmechanismus für Komponentensoftware für mehrere Architekturen | |
DE19605093A1 (de) | Verfahren und Vorrichtung zur parallelen Client/Server-Kommunikation | |
DE10296594T5 (de) | Verfahren und Einrichtung zum Bereitstellen eines Funkmoduls für ein Computersystem | |
DE112012005209T5 (de) | Brückenfunktion zwischen Virtual Machine Monitor und Bare-Metal-Bootvorgang | |
DE19919137A1 (de) | Grenzsignal-Thread |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20130403 |