omd 특수 파일
용도
읽기/쓰기 광학 장치 드라이버에 대한 액세스를 제공합니다.
설명
omd 특수 파일은 읽기/쓰기 광 드라이브의 디스크에 대한 블록 및 문자 (원시) 액세스를 제공합니다.
특수 파일 이름의 r 접두어는 드라이브가 블록 디바이스가 아닌 원시 디바이스로 액세스됨을 의미합니다. 광 디스크를 사용하여 원시 I/O를 수행하려면 모든 데이터 전송이 광 디스크 논리 블록 길이의 배수가 되어야 합니다. 또한 원시 읽기/쓰기 광학 장치 드라이버에 대해 작성된 모든 lseek 서브루틴은 파일 오프셋 포인터를 지정된 논리 블록 크기의 배수인 값으로 설정해야 합니다.
scdisk SCSI 디바이스 드라이버는 구현 특성에 대한 자세한 정보를 제공합니다.
읽기/쓰기 광 장치 드라이버
읽기/쓰기 광 드라이브에서 사용되는 읽기/쓰기 광 디스크는 대량의 데이터에 대한 스토리지를 제공하는 매체입니다. 광 디스크에 대한 블록 액세스는 특수 파일 /dev/omd0, /dev/omd1, ... /dev/omdn을 통해 수행됩니다. 문자 액세스는 특수 파일 /dev/romd0, /dev/romd1, ... /dev/romdn을 통해 제공됩니다.
마운트된 읽기/쓰기 광 파일 시스템의 드라이브에서 읽기/쓰기 광 디스크를 꺼내면 광 디스크의 파일에 더 이상 액세스할 수 없습니다. 이러한 파일에 다시 액세스하기 전에 읽기/쓰기 광 디스크에서 마운트된 파일 시스템에 대해 다음 단계를 수행하십시오.
- 파일 시스템에서 파일이 열려 있는 프로세스를 중지합니다.
- 파일 시스템에 현재 디렉토리가 있는 프로세스를 이동합니다.
- 파일 시스템을 마운트 해제하십시오.
- 매체를 다시 삽입한 후 파일 시스템을 다시 마운트하십시오.
이러한 조치가 작동하지 않으면 파일 시스템의 강제 마운트 해제를 수행한 후 파일 시스템을 다시 마운트하십시오.
디바이스 종속 서브루틴
대부분의 읽기/쓰기 광학 조작은 open, read, write및 close 서브루틴을 사용하여 구현됩니다. 그러나 일부의 경우에는 openx (확장) 서브루틴을 사용해야 합니다.
openx 서브루틴
openx 서브루틴은 open 시퀀스에 추가 함수를 제공하기 위해 지원됩니다. 실행하려면 적절한 권한이 필요합니다. 적절한 권한 없이 openx 서브루틴을 실행하려는 시도가 발생하면, 해당 서브루틴은 값을 -1 반환하고 errno 전역 변수를 EPERM 값으로 설정합니다.
ioctl 서브루틴
ioctl 서브루틴 IOCINFO 조작은 /usr/include/sys/devinfo.h 파일에 정의된 devinfo 구조를 리턴합니다. IOCINFO 조작은 ioctl 서브루틴을 사용하는 모든 장치 드라이버에 대해 정의된 유일한 조작입니다. 기타 ioctl 조작은 장치 드라이버의 유형에 특정합니다. IOCINFO 조작에는 진단 모드가 필요하지 않습니다.
오류 조건
omd 특수 파일을 사용할 때 ioctl, open, read및 write 서브루틴에 대해 가능한 errno 값은 다음과 같습니다.
| 항목 | 설명 |
|---|---|
| EACCES | 다음 상황 중 하나를 표시합니다.
|
| EBUSY | 다음 상황 중 하나를 표시합니다.
|
| EFAULT | 잘못된 사용자 주소를 표시합니다. |
| eformat | 대상 장치에 포맷되지 않은 매체 또는 호환되지 않는 형식의 매체가 있음을 표시합니다. |
| EINVAL | 다음 상황 중 하나를 표시합니다.
|
| EIO | 다음 상황 중 하나를 표시합니다.
|
| 이미디어 | 다음 상황 중 하나를 표시합니다.
|
| EMFILE | 이미 허용 가능한 최대 수의 열린 장치가 있는 어댑터에 대해 열기 조작이 시도되었음을 표시합니다. |
| ENODEV | 다음 상황 중 하나를 표시합니다.
|
| ENOTREADY | 드라이브에 읽기/쓰기 광 디스크가 없음을 표시합니다. |
| 엔시오 | 다음 상황 중 하나를 표시합니다.
|
| EPERM | 시도된 서브루틴에 적절한 권한이 필요함을 표시합니다. |
| ESTALE (ESTALE) | 읽기 전용 광 디스크가 방출된 후 (사용자가 먼저 닫지 않고) 다시 삽입되거나 두 번째 디스크로 대체되었음을 표시합니다. |
| 시간이 다 됐어 | I/O 조작이 지정된 타이머 값을 초과했음을 표시합니다. |
| 보호 | 다음 상황 중 하나를 표시합니다.
|
파일
| 항목 | 설명 |
|---|---|
| /dev/romd0, /dev/romd1,..., /d ev/romdn | 읽기/쓰기 광학 장치 드라이버에 대한 문자 액세스를 제공합니다. |
| /dev/omd0, /dev/omd1,..., /d ev/omdn | 읽기/쓰기 광학 장치 드라이버에 대한 블록 액세스를 제공합니다. |