tail head cat sleep
QR code linking to this page

Man page  — DEVICE_PROBE

명칭

DEVICE_PROBE – 디바이스의 존재의 프로브

내용

서식

#include <sys/param.h>
#include <sys/bus.h>

int
DEVICE_PROBE(device_t dev);

해설

이 디바이스 메소드는 디바이스가 있는지 어떤지를 알기 위해서(때문에) 프로브 해야 합니다. 디바이스가 존재하면 0 을, 디바이스가 발견되지 않으면 ENXIO (을)를 돌려주어야 합니다. 프로브의 사이에 그 외의 에러(메모리 할당의 실패등)가 일어났을 경우는, 적절한 에러 코드가 돌려주어져야 합니다. 1 개의 디바이스에 1 개 이상의 드라이버가 들어맞는 것 같은 경우를 위해서(때문에), 우선 순위를 돌려줄 수가 있습니다. 이 경우, 성공의 값은 0 이하의 값으로, 가장 큰 값이 가장 적절한 것을 의미합니다. 실패의 값은 정의 값으로 표현되어 통상의 Unix 에러 코드가 목적에 따라 사용되어야 합니다.

드라이버가 0 보다 작은 성공치를 돌려주는 경우, 드라이버는 그 디바이스에 아탓치 되는 것이 같은 드라이버이라고 상정 해서는 안됩니다. 특히, softc 구조체에 격납된 모든 값이 아탓치메솟드로 이용 가능하다라고 상정 해서는 안됩니다 해, 또, 아탓치메솟드가 불렸을 경우, 프로브의 사이에 할당할 수 있던 모든 리소스는 해방해 재할인 맞히고 하지 않으면 안됩니다. 성공치 0 을 돌려주는 경우에는, 드라이버는 그 드라이버가 아탓치 되면(자) 상정할 수가 있습니다.

버스를 실장하는 디바이스는, 버스에 접속된 디바이스의 존재를 프로브 해 그것들을 아이 디바이스로서 추가하기 위해서, 이 메소드를 사용해야 합니다. 이 메소드가 bus_generic_attach(9) 의 사용과 결합하고 있으면, 아이 디바이스는 자동적으로 프로브 되어 아탓치 되겠지요.

반환값

0 이하의 값은 성공을 나타내, 0 보다 큰 값은 에러(errno)를 나타냅니다. 0 이하의 값때, 0 은 최고의 우선 순위를 나타내, 그 이상의 프로브는 행하지 않습니다. 0 미만의 값은, 낮은 값 정도, 낮은 우선 순위를 나타냅니다. 예를 들어,-100 는 -50 보다 낮은 우선 순위를 나타냅니다.

관련 항목

device(9), DEVICE_ATTACH(9), DEVICE_DETACH(9), DEVICE_IDENTIFY(9), DEVICE_PROBE(9), DEVICE_SHUTDOWN(9)

저자

이 메뉴얼 페이지는 Doug Rabson 하지만 썼습니다.

DEVICE_PROBE (9) June 16, 1998

tail head cat sleep
QR code linking to this page


Ben Bullock이 유닉스 매뉴얼 페이지에서 서비스에 대한 의견을 주시기 바랍니다. Privacy policy.

The wonderful thing about standards is that there are so many of them to choose from.
— Grace Murray Hopper