VOP_OPEN(9)

명칭
VOP_OPEN, VOP_CLOSE - 파일의 오픈 또는 클로우즈

서식
<sys/param.h> <sys/vnode.h> int VOP_OPEN(struct vnode *vp, int mode, struct ucred *cred, struct thread *td) int VOP_CLOSE(struct vnode *vp, int mode, struct ucred *cred, struct thread *td)

해설
VOP_OPEN(9) 엔트리 포인트는, 파일이 프로세스에 의해 액세스 되기 전에 불려 가 VOP_CLOSE(9) 엔트리 포인트는, 파일에 대한 프로세스의 일의 완료 후에 불려 갑니다.

인수는 이하와 같습니다.

vp  파일의 vnode.

mode
    호출 프로세스에 의해 요구된 액세스 모드.

td  파일에 액세스 하고 있는 thread.

액세스 모드는, FREAD, FWRITE, O_NONBLOCK, O_APPEND (을)를 포함한 플래그의 조입니다.

락
VOP_OPEN(9) (은)는, 들어갈 때에 vp 하지만 락 되고 있는 것을 기대해, 귀가시까지 락 된 채로 합니다.

VOP_CLOSE(9) (은)는, vnode 에 묶을 수 있었던 참조가 적어도 1 개는 존재하는 것을 기대해, vnode 가 락 되고 있을지 어떨지는 신경쓰지 않습니다. 락 및 참조 상태는, 돌아올 때로 변경되지 않고 그대로 됩니다. vn_close (은)는, 락되어 있지 않은 참조된 vnode 를 기대해, 돌아오기 전에 참조를 끌어당기는 것에 주의해 주세요.

반환값
성공시에는 0 이 돌려주어져 그렇지 않은 경우에는 에러 코드가 돌려주어집니다.

유사 코드

    int
    vop_open(struct vnode *vp, int mode, struct ucred *cred, struct thread *td)
    {
        /*
         * 대부분의 파일 시스템은, 여기에서는 대단한 일은 하지 않습니다.
         */
        return 0;
    }

관련 항목
vnode(9), VOP_LOOKUP(9)

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