|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Eugene B. Berdnikov 2:5020/400 08 Mar 2001 21:04:32 To : Zahar Kiselev Subject : Re: Microsoft предлагает запретить Linux!!! -------------------------------------------------------------------------------- Zahar Kiselev <Zahar.Kiselev@p1.f382.n5030.z2.fidonet.org> wrote: ZK> At 07 Mar 01 11:40:06, Alexander Zhuckov wrote to Zahar Kiselev: ZK> AZ>> Hасколько я знаю, протокол TCP не отслеживает разрыв канала -- AZ>> грубо говоря. Если кто-то пишет, то он обнаружит, рано или поздно, что AZ>> канал пропал и разорвет соединение. Слушающая же сторона может никогда не AZ>> обнаружить, что канал пропал -- если только в соответствующем select'e AZ>> не стоит какой-нибудь таймаут. ZK> В таком случае получается, что авторы _очень_ многих программ неправильно ZK> используют протокол TCP - так как не ставят таймаут на "слушающей" стороне. Это проблема не "правильности" использования tcp, а дизайна программы. Еще больше авторов, например, которые неудачный malloc(2) сразу считают фатальной ошибкой, безо всяких таймеров. Есть примеры "правильных" дизайнов. Hапример, ssh с конфигурируемым keepalive и procmail с конфигурируемыми таймаутами на malloc/fork/etc. Искусство состоит в том, чтобы ухитряться правильно пользоваться правильно написанными программами. :) ZK> Переписать все такие программы не реально, так может быть можно например ZK> посредством механизма LD_SO_PRELOAD подменить "просто select" на "select с ZK> таймаутом"? Будете подменять его, не спрашивая автора? Hу-ну, только потом не надо жаловаться на то, что программа после длительной спячки может оказаться в позе "зю", которая даже экспертов по камасутре поставит в тупик... :) -- Eugene Berdnikov --- ifmail v.2.15dev5 * Origin: Institute for High Energy Physics, Protvino, Russia (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/53530ba379d9.html, оценка из 5, голосов 10
|