|
|
Subscribe / Log in / New account

Signals is the WORST part of Unix.

Signals is the WORST part of Unix.

Posted Nov 16, 2010 21:08 UTC (Tue) by Cyberax (✭ supporter ✭, #52523)
Parent article: Ghosts of Unix past, part 3: Unfixable designs

Signals are way too complicated, introduce a lot of corner cases. And for no real gain - it's not possible to use signals reliably (in part because signal numbers are shared) beyond simple SIGHUP signaling.

Windows DPC shows us that signals _can_ be done right.


to post comments

Signals is the WORST part of Unix.

Posted Nov 19, 2010 14:57 UTC (Fri) by Yorick (guest, #19241) [Link] (1 responses)

Windows DPC shows us that signals _can_ be done right.

I'm not very familiar with Windows, but isn't DPC a pure kernel-mode concept rather than something available in userspace? Windows does not appear to believe in pre-empting running userspace threads by user code - an approach that clearly solves some problems but mainly by taking options away from the programmer. This is not necessarily a bad thing, of course.

Of course, since Unix signals are used for so many very different purposes, they cannot and should not be replaced by a single new mechanism.

Signals is the WORST part of Unix.

Posted Nov 19, 2010 17:06 UTC (Fri) by Cyberax (✭ supporter ✭, #52523) [Link]

It's possible to drop from DPC to userlevel (in effect, replacing the currently executed code). In fact, signals are trivial to implement using DPC.

>Of course, since Unix signals are used for so many very different purposes, they cannot and should not be replaced by a single new mechanism.

Unix signals are MISused for many purposes. They are broken and should be deprecated.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds