2016-08-13 9 views
1

Minix 시스템에 대한 시스템 호출을 작성하려고합니다. 위치를 찾고 해당 위치에있는 파일에 쓰려면 시스템 호출이 필요합니다.PM 또는 VFS 서버에서 파일 쓰기 (Minix)

그러나 pm 서버 내부에서 lseek 또는 write 또는 fseek, fwrite를 호출 할 수 없습니다. 이러한 함수가있는 라이브러리를 포함하면 컴파일러가 함수를 인식하지 못하는 것 같아요. 정의되지 않았기 때문에 컴파일 할 때 충돌이 발생합니다.

내 생각에 시간이 갈수록 VFS 서버가 컴파일되고 stdio unistd가 아직 컴파일되지 않았기 때문에 오류가 발생하지만 그 경우에는 파일을 찾거나 쓰려면 어떻게해야합니까?

실마리가 있습니까?

미리 감사드립니다.

답변

0

당신은 com.h의 새로운 PM_ 상수를 생성하고 처리해야합니다 (예 : do_seek와) 서버/VFS가/main.c에 및 서버/오후/*. C 코드

에 sendrec (VFS_PROC_NR, & m)을 사용

sendrec에 대한 메시지는 수신 VFS 코드 (see seek.c 또는 open.c 또는 servers/vfs 내부 참조)에 따라 설정해야합니다.

+0

더 자세히 설명해 주시겠습니까? 더 자세한 예제가 있습니까? – John