Paperlined.org
codehack
document updated 20 years ago, on Jun 9, 2006

Source Files

ctags - generate an index of the objects found in a source file cscope - browse source code, search, find definitions, calls to a function, etc... gcc -E - Print the output of the preprocessor ld --cref - Print a cross-reference table (function x gets called by function y and z, ...)

Binaries

ldd - list dynamic dependencies of executable files or shared objects nm/dump - print an object's internal and/or external symbol table elf file format documentation

Runtime

debuggers: gdb ddd profilers: prof gprof tprof (uses trace) system call tracers: truss (via procfs) [Solaris,FreeBSD] ktrace [BSD] strace, [Linux] ktruss, [NetBSD] trace [AIX] system/user call interceptors: LD_PRELOAD PLT, sys_call_table[] Linux Kernel Hooker user function call tracers: Visible Workings page, brian marick, CMU truss -u a.out -u ld:: -u :: ... gcore - get core images of running processes proc tools (solaris) - get information on a process while it's running pflags - ... pcred - ... pmap - print address space map of a process pldd - print dynamic libraries linked in to a process psig - list signal actions of a process pstack - print the stack trace pfiles - print open files pwdx - print working directories pstop/prun - stop/start a process pwait - wait for the specified processes to terminate ptree - print a process tree... print the ppid, the pppid, ppppid, etc... ptime - similar to time(1) command fuser - show which processes have a specific file/directory/device open