usym
指定したアドレスのシンボルを出力します。 ufuncの別名です。
_usymaddr usym(uintptr_t)
usym関数は、指定されたアドレスのシンボルを出力します。これはuaddrの動作に似ていますが、16進オフセットはありません。 usym関数はufuncの別名です。
例8-64 usymを使用してアドレスのシンボルを取得する方法
この例では、usym関数を使用して、dateコマンドの実行時に、各openatシステム・コールのシンボルを戻す方法を示します。 この節は、プロセスIDがターゲット・プロセスと一致するかどうかを確認することを前提としています。 組込みのucaller変数は、プローブの起動時にスレッドの場所へのポインタを取得するために使用されます。 sudo dtrace -n syscall::openat:entry'/pid == $target/{usym(ucaller);}' -c 'date'次のような出力が生成されます:
CPU ID FUNCTION:NAME
2 147861 openat:entry libc.so.6`_nl_find_locale
Mon 20 Feb 18:12:58 GMT 2023
2 147861 openat:entry 0x0