FreeBSD for AMD64中函數copyout()
的定義在哪裏?在FreeBSD中執行copyout()
(http://www.unix.com/man-page/FreeBSD/9/copyout/)
我能找到的唯一的地方是在sys/sys/systm.h
。
定義/聲明:
int copyout(const void * __restrict kaddr, void * __restrict udaddr,
size_t len) __nonnull(1) __nonnull(2);
它是一個聲明或定義嗎? __nonnull(1)
和__nonnull(2)
是什麼意思?
你知道哪裏是copyout的實際功能體()爲AMD64,FreeBSD的10.1?我知道它必須在一些文件中,但找不到它。 – WindChaser
它在'sys/amd64/amd64/support.S'中,請參閱這裏http://fxr.watson.org/fxr/source/amd64/amd64/support.S#L227 – nos
任何簡單的方法來攔截(記錄或更改複製的字節)函數'copyout()'?用匯編語言(%rdi,%rsi,%rdx)攔截它似乎很難。 – WindChaser