Sometimes you get a zombie process because the parent is killed before the child, and the child has no parent to tell it has finished. At least in older hp-ux&oracle, I don't recall seeing it recently. There also could be some driver problem. Also, sometimes ps is a few seconds out of date, an eternity in process time. I see some briefly defunct processes coming from some hp utility, so grepping the ppid always shows something defunct, which can be confusing if you don't notice the changing pid.