• Fillicia@sh.itjust.works
    link
    fedilink
    arrow-up
    41
    ·
    4 months ago

    To be fair, even in Linux it’s really hard to kill a zombie process. You have to tell the parent to own up to their kid, and then kill the parent.

    • palordrolap@fedia.io
      link
      fedilink
      arrow-up
      12
      arrow-down
      1
      ·
      4 months ago

      You can try asking a process to round up its dead children, but unlike the quit signals, the number varies by platform. For most Linux users it’s -17, but using the text version -CHLD is probably a better choice (unless you’re on a really old system that absolutely has to have a number, in which case check the local documentation.)

      If it’s a well-behaved process, that can do away with the need to kill it. In other cases, there might be some kind of restart mechanism built in that can be called instead - assuming sending it a SIGCHLD doesn’t trigger that behaviour anyway.

      Case in point, the Cinnamon DE has at least a couple of ways to restart it, and at least one of those gets rid of its zombie child processes. It’s fairly rare that I need to do that, and I haven’t tried sending it a -17. I might do at some point.