omd-Gerätedatei
Zweck
Bietet Zugriff auf den Einheitentreiber für optische Einheiten mit Schreib-/Lesezugriff.
Beschreibung
Die Gerätedatei Omd bietet Block-und Zeichenzugriff (unformatierter Zugriff) auf Platten im optischen Laufwerk mit Schreib-/Lesezugriff.
Das Präfix R eines Gerätedateinamens bedeutet, dass auf das Laufwerk als Roheinheit und nicht als Blockeinheit zugegriffen wird. Die Ausführung von unformatierter Ein-/Ausgabe mit einer optischen Platte erfordert, dass alle Datenübertragungen in Vielfachen der logischen Blocklänge der optischen Platte erfolgen. Außerdem müssen alle Lseek -Subroutinen, die für den Treiber für optische Einheiten mit Schreib-/Lesezugriff ausgeführt werden, den Dateioffsetzeiger auf einen Wert setzen, der ein Vielfaches der angegebenen logischen Blockgröße ist.
Der scdisk-SCSI-Einheitentreiber enthält weitere Informationen zu Implementierungsspezifikationen.
Optischer Einheitentreiber mit Lese-/Schreibberechtigung
Bei optischen Platten mit Schreib-/Lesezugriff, die in optischen Laufwerken mit Schreib-/Lesezugriff verwendet werden, handelt es sich um Datenträger, die Speicher für große Datenmengen bereitstellen. Der Blockzugriff auf optische Platten wird über die Gerätedateien /dev/omd0, /dev/omd1, ... /dev/omdnerreicht. Zeichenzugriff wird über die Gerätedateien /dev/romd0, /dev/romd1, ... /dev/romdnbereitgestellt.
Wenn eine optische Platte mit Schreib-/Lesezugriff aus dem Laufwerk für ein angehängtes optisches Dateisystem mit Schreib-/Lesezugriff ausgegeben wird, kann nicht mehr auf die Dateien auf der optischen Platte zugegriffen werden. Bevor Sie erneut versuchen, auf diese Dateien zuzugreifen, führen Sie die folgenden Schritte für ein Dateisystem aus, das von der optischen Platte mit Schreib-/Lesezugriff angehängt wurde:
- Stoppen Sie Prozesse, die Dateien im Dateisystem geöffnet haben.
- Versetzen Sie Prozesse, die über aktuelle Verzeichnisse im Dateisystem verfügen.
- Hängen Sie das Dateisystem ab.
- Hängen Sie das Dateisystem nach dem erneuten Einsetzen des Datenträgers erneut an.
Wenn diese Aktionen nicht funktionieren, führen Sie einen erzwungenen Unmount des Dateisystems durch und hängen Sie dann das Dateisystem erneut an.
Einheitenabhängige Subroutinen
Die meisten optischen Operationen zum Lesen/Schreiben werden mit den Subroutinen Öffnen, Lesen, Schreibenund Schließen implementiert. Für einige Zwecke ist jedoch die Verwendung der (erweiterten) Subroutine OpenX erforderlich.
Die openx-Subroutine
Die Subroutine OpenX wird unterstützt, um zusätzliche Funktionen für die Öffnen -Sequenz bereitzustellen. Für die Ausführung ist die entsprechende Berechtigung erforderlich. Wenn versucht wird, die Subroutine openx ohne die erforderliche Berechtigung auszuführen, gibt die Subroutine den Wert zurück -1 und setzt die globale Variable errno auf den Wert EPERM.
ioctl-Subroutine
Die Operation IOCINFO der Subroutine ioctl gibt die devinfo -Struktur zurück, die in der Datei /usr/include/sys/devinfo.h definiert ist. Die Operation IOCINFO ist die einzige Operation, die für alle Einheitentreiber definiert ist, die die Subroutine ioctl verwenden. Andere ioctl -Operationen sind für den Typ des Einheitentreibers spezifisch. Für die Operation IOCINFO ist kein Diagnosemodus erforderlich.
Fehlerbedingungen
Mögliche Fehlernummer -Werte für ioctl-, Öffnen-, Lesen-und Schreiben -Subroutinen bei Verwendung der Sonderdatei Omd sind:
| Element | Beschreibung |
|---|---|
| EACCES | Gibt einen der folgenden Umstände an:
|
| EBUSY | Gibt einen der folgenden Umstände an:
|
| EFAULT | Zeigt eine unzulässige Benutzeradresse an. |
| EFORMAT | Gibt an, dass die Zieleinheit unformatierte Datenträger oder Datenträger in einem inkompatiblen Format hat. |
| EINVAL | Gibt einen der folgenden Umstände an:
|
| EIO | Gibt einen der folgenden Umstände an:
|
| EMEDIEN | Gibt einen der folgenden Umstände an:
|
| EMDATEI | Zeigt an, dass eine Öffnen -Operation für einen Adapter versucht wurde, der bereits über die maximal zulässige Anzahl geöffneter Einheiten verfügt. |
| ENODEW | Gibt einen der folgenden Umstände an:
|
| ENOTREADY (BEREIT) | Gibt an, dass sich keine optische Platte mit Schreib-/Lesezugriff im Laufwerk befindet. |
| ENXIO | Gibt einen der folgenden Umstände an:
|
| EPERM | Gibt an, dass die versuchte Subroutine die entsprechende Berechtigung erfordert. |
| ESTALE | Zeigt an, dass eine schreibgeschützte optische Platte ausgegeben wurde (ohne zuerst vom Benutzer geschlossen zu werden) und dann entweder erneut eingesetzt oder durch eine zweite Platte ersetzt wurde. |
| EZEITDOUT | Zeigt an, dass eine E/A-Operation den angegebenen Zeitgeberwert überschritten hat. |
| EWRPROTECT | Gibt einen der folgenden Umstände an:
|
Dateien
| Element | Beschreibung |
|---|---|
| /dev/romd0, /dev/romd1,..., /d ev/romdn | Bietet Zeichenzugriff auf den Einheitentreiber für optische Einheiten mit Schreib-/Lesezugriff. |
| /dev/omd0, /dev/omd1,..., /d ev/omdn | Bietet Blockzugriff auf den Einheitentreiber für optische Einheiten mit Schreib-/Lesezugriff. |