File tree Expand file tree Collapse file tree 2 files changed +6
-6
lines changed Expand file tree Collapse file tree 2 files changed +6
-6
lines changed Original file line number Diff line number Diff line change 13061306redefining existing functions if we need to call the original function in our
13071307redefined one. The library with a modified function is loaded first, possibly
13081308using \texttt {LD\_ PRELOAD }, and the address of the original function can be
1309- found using
1309+ found using:
13101310ifdef([[[NOSPELLCHECK]]], [[[
1311- \texttt {dlsym(RTLD\_ NEXT, \emph {fn\_ name }) }.
1311+ ~~ \texttt {dlsym(RTLD\_ NEXT, \emph {fn\_ name }) }.
13121312]]])
13131313Example: \example {dyn-lib/rtld\_ next.c}.
13141314\item All these functions are part of the dynamic linker that each dynamically
Original file line number Diff line number Diff line change 3737\item Historically, signals were provided as a mechanism to forcefully terminate
3838processes. That is why the function for sending signals is called
3939\funnm {kill}.
40- \item A nice example of an asynchronous event is while on Linux you send
41- a \texttt { SIGUSR1 } to the \texttt {dd } command to print I/O statistics to
42- standard error output. Start \texttt {dd } first, then send a couple of
43- \texttt { USR1 } signals its way, like this:
40+ \item A nice example of an asynchronous event is to send a \texttt { SIGUSR1 } to
41+ the \texttt {dd } command on Linux to print its progress to standard error output.
42+ Start \texttt {dd } first, then send a couple of \texttt { USR1 } signals its way,
43+ like this:
4444
4545\begin {verbatim }
4646$ kill -USR1 $(pgrep -f "dd if=/dev/zero of=/dev/null")
You can’t perform that action at this time.
0 commit comments