In the old days, almost every signal ended the Unix program. Since the interaction between processes across channels is fundamental in Unix, it was SIGPIPEintended to terminate programs that did not handle write(2)/ errors read(2).
, . , . SIGPIPE .
:
cat myfile | grep find_something
cat , grep , SIGPIPE. , grep read, grep - .