Solaris 動的トレースガイド

copyin()

void *copyin(uintptr_t addr, size_t size)

copyin() は、指定されたユーザーアドレス addr から DTrace スクラッチバッファーに、指定されたサイズ size バイトをコピーし、このバッファーのアドレスを返します。ユーザーアドレスは、現在のスレッドに関連付けられたプロセスの空間に含まれるアドレスであると見なされます。最終的なバッファーポインタは、必ず 8 バイトのバイト列を持つことになります。指定されたアドレスは、現在のプロセス内のフォルトインページに対応している必要があります。アドレスがフォルトインページに対応していない場合や、使用できるスクラッチ空間が不足している場合は、NULL が返され、エラーが生成されます。copyin のエラーが発生する可能性を減らすテクニックについては、第 33 章ユーザープロセスのトレースを参照してください。