omd File speciale
Finalità
Fornisce accesso al driver del dispositivo ottico di lettura / scrittura.
Descrizione
Il file speciale omd fornisce l'accesso a blocchi e carattere (raw) ai dischi nell'unità ottica di lettura / scrittura.
Il prefisso r su un nome di file speciale significa che all'unità si accede come dispositivo raw piuttosto che un dispositivo di blocco. L'esecuzione di raw I/O con un disco ottico richiede che tutti i trasferimenti dati siano in multipli della lunghezza del blocco logico del disco ottico. Inoltre, tutte le subroutine lseek che vengono effettuate al driver del dispositivo ottico di lettura / scrittura devono impostare il puntatore di offset del file su un valore che è un multiplo della dimensione del blocco logico specificato.
Lo scdisk SCSI Device Driver fornisce maggiori informazioni sulle specifiche di implementazione.
Driver di unità ottica di lettura / scrittura
I dischi ottici di lettura / scrittura, utilizzati nelle unità ottiche di lettura / scrittura, sono supporti che forniscono memoria per grandi quantità di dati. L'accesso di blocco ai dischi ottici si ottiene attraverso i file speciali /dev/omd0, /dev/omd1, ... /dev/omdn. L'accesso ai caratteri viene fornito tramite i file speciali, /dev/romd0, /dev/romd1, ... /dev/romdn.
Quando un disco ottico di lettura / scrittura viene espulso dall'unità per un sistema di file ottico di lettura / scrittura montato, non è più possibile accedere ai file presenti sul disco ottico. Prima di tentare nuovamente di accedere a questi file, effettuare le seguenti operazioni per un file system montato dal disco ottico di lettura / scrittura:
- Stop ai processi che hanno file aperti sul file system.
- Spostare i processi che hanno le directory correnti sul file system.
- Smontare il file system.
- Rimonta il file system dopo aver reinserto i supporti.
Se queste azioni non funzionano, eseguire un smontaggio forzato del file system; quindi, rimontare il file system.
Periferiche - Subroutine Dipendenti
La maggior parte delle operazioni ottiche di lettura / scrittura sono implementate utilizzando le subroutine aperto, leggi, scriveree chiudi . Tuttavia, per alcuni scopi, è necessario utilizzare la sottoroutine openx (estesa).
La sottoroutine openx
La sottoroutine openx è supportata per fornire funzioni aggiuntive alla sequenza aperto . L'autorizzazione appropriata è necessaria per l'esecuzione. Se si tenta di eseguire la subroutine openx senza l'autorizzazione appropriata, la subroutine restituisce un valore di -1 e imposta la variabile globale errno su un valore di EPERM.
La sottoroutine ioctl
L'operazione IOCINFO della sottoroutine ioctl restituisce la struttura devinfo definita nel file /usr/include/sys/devinfo.h . L'operazione IOCINFO è l'unica operazione definita per tutti i driver di periferica che utilizzano la sottoroutine ioctl . Altre operazioni ioctl sono specifiche per il tipo di driver di dispositivi. La modalità diagnostica non è richiesta per l'operazione IOCINFO .
Condizioni di errore
I possibili errno valori per le sottoroutine ioctl, aperto, leggie scrivere quando si utilizza il file speciale omd includono:
| Elemento | Descrizione |
|---|---|
| EACCES | Indica una delle seguenti circostanze:
|
| EBUSY | Indica una delle seguenti circostanze:
|
| EFAULT | Indica un indirizzo utente illegale. |
| EFORMAT | Indica che il dispositivo di destinazione ha supporti o supporti non formattati in un formato incompatibile. |
| EINVAL | Indica una delle seguenti circostanze:
|
| EIO | Indica una delle seguenti circostanze:
|
| EMEDIA | Indica una delle seguenti circostanze:
|
| EMFILE | Indica un'operazione aperto è stata tentata per un adattatore che ha già il numero massimo consentito di dispositivi aperti. |
| ENODEV | Indica una delle seguenti circostanze:
|
| ENOTREADY | Indica che nessun disco ottico di lettura / scrittura è nell'unità. |
| ENXIO | Indica una delle seguenti circostanze:
|
| EPERM | Indica la subroutine tentata richiede un'autorizzazione appropriata. |
| ESTALE | Indica un disco ottico di sola lettura è stato espulso (senza prima essere chiuso dall'utente) e poi reinserito o sostituito con un secondo disco. |
| ETIMEDOUT | Indica un'operazione I/O ha superato il valore del timer indicato. |
| EWRPROTECT | Indica una delle seguenti circostanze:
|
File
| Elemento | Descrizione |
|---|---|
| /dev/romd0, /dev/romd1,..., /d ev/romdn | Fornisce accesso di carattere al driver del dispositivo ottico di lettura / scrittura. |
| /dev/omd0, /dev/omd1,..., /d ev/omdn | Fornisce l'accesso di blocco al driver del dispositivo ottico di lettura / scrittura. |