Vor kurzem habe ich mit jemandem über strace gesprochen, und er hat gefragt, was passieren würde, wenn Sie einen laufenden Prozess so belasten würden, wie er einen Netzwerk-Socket oder ähnliches erstellt. Könnte dies dazu führen, dass das Programm auf unerwartete Weise abstürzt?
Nach dem, was ich über ptrace gelesen habe, den von strace verwendeten Systemaufruf, sollte es nicht in der Lage sein, so etwas zu verursachen, wenn Sie nur einen Thread debuggen. Der Prozess wird jedes Mal gestoppt, wenn ein Systemaufruf aufgerufen wird. Er sollte jedoch später fortgesetzt werden und nicht klüger sein. Signale werden in die Warteschlange gestellt, während sie nicht ausgeführt werden. Daher gehe ich davon aus, dass bei syscalls / sockets / listen etwas Ähnliches passiert.
Kann ptrace, das im Zusammenhang mit strace verwendet wird, seltsame Prozessabstürze verursachen?