bcopy
指定したスクラッチ・メモリー外部のコピー元アドレスからスクラッチ・メモリー内部のコピー先アドレスに、バイト数で指定サイズをコピーします。
void bcopy(void src, void dest, size_t size)
bcopy関数はsrcがポイントするメモリーから、destがポイントするメモリーへsizeバイトをコピーします。 ソース・メモリーはユーザー空間内に存在しないことと、宛先メモリーがDTraceスクラッチ・メモリー内に存在する必要があります。
例8-4 bcopyを使用してメモリーのロケーションから別のロケーションにデータをコピーする方法
この例ではbcopy関数を使用して、14文字を`linux_bannerポインタから14バイトのメモリーが割り当てられている別のメモリー・ポインタsにコピーします。 printf行は、ポインタsに格納されている値の文字列を出力します。 出力される文字列は`linux_bannerに格納されている最初の14文字と同じです。
BEGIN
{
s = (char *)alloca(14);
bcopy(`linux_banner, &s[0], 13);
printf("%s\n", stringof(s));
exit(0);
}