Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

IRC servers were indeed written using select(2), because interaction between the clients is the whole point of IRC; that gets a great deal more difficult if you spawn off a separate process for each client! I think ICB/FNet predates IRC slightly and was also written using select(2). But IRC wasn't written until 1988, at which point select(2) and inetd were already about ten years old, and things like (most) FTP servers continued to run one process per concurrent client throughout the 1990s. (Walnut Creek CDROM wrote their own high-performance event-driven FTP server, IIRC.) Typically on the machine where you were running the IRC server you would also be running about a dozen or two other servers from inetd, all written with the one-process-per-client model.

If there was a time when all network servers were written using select(2) or similar event-driven APIs, it wasn't 1988 or later.



I think the previous poster was just exaggerating... "All" network servers is a pretty broad category. They were never all written using select.


They were never mostly written using select, either.


you are correct. I'm not the original poster though.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: