Re: oftopic: (2) select() O_NONBLOCK: new URL

2001-06-07 Пенетрантность Daniel Ginsburg
On Mon, Jun 04, 2001 at 10:18:21AM -0400, Nick Orlov wrote:
 Есть отличная книжка, написанная РУССКИМ автором которая является весьма
 хорошим введением в программирование под *nix
 
 Андрей Робачевский, Операционная система Unix.
 
 Покупал на  в www.24x7.ru
 
 Сейчас у меня является настольной наряду со Страуструпом.
 

Нет, патриотизм я уважаю и ценю, но ...

Отличной я бы ее не назвал. Как введение она вполне подойдет, наряду,
например, с Теренсом Чаном, если не всему написаному верить. Но заваливать
стол этими книгами я бы не стал.

Когда доберусь до экземпляра, смогу запостить списочек промахов и
неточностей, если не поленюсь, и кого-нибудь это заинтересует.

-- 
dg



Re: oftopic: (2) select() O_NONBLOCK

2001-06-07 Пенетрантность Nick Orlov



Не, ну понятно, 
после нескольких лет ковыряния в Unix'ах книжки совсем ненужны, вполне 
хватает мановА как старт - она самое оно, а главное, она не грешит 
неточностями перевода,потому как его просто не было :))Ну и конечно 
это не та книга по которой нужно учить C/C++.А системные вызовы там освещены 
очень даже неплохо.Regards, Nick.- 
Original Message -From: "Daniel Ginsburg" [EMAIL PROTECTED]To: "Debian Russian" debian-russian@lists.debian.orgSent: Monday, June 04, 2001 10:33 AMSubject: Re: oftopic: (2) 
select() O_NONBLOCK: new URL


Re: oftopic: (2) select() O_NONBLOCK: new URL

2001-06-07 Пенетрантность Konstantin Sorokin
On Mon, Jun 04, 2001 at 10:18:21AM -0400, Nick Orlov wrote:
 Есть отличная книжка, написанная РУССКИМ автором которая является весьма
 хорошим введением в программирование под *nix
 
 Андрей Робачевский, Операционная система Unix.
 
 Покупал на  в www.24x7.ru
 
 Сейчас у меня является настольной наряду со Страуструпом.
 
 Regards,
 Nick.
 

У меня сложилось стойкое ощущение, что книжка Робачевского не
очень хороший пересказ Stevens'а. Сам я Stevens'а не читал, но
примеры в книжке Робачевского явно списаны оттуда (может с 
небольшими модификациями).

-- 
WBR, Konstantin V. Sorokin
GnuPG key fingerprint = 37A1 D039 0F07 774A BE34  428B 1E11 18BA 735B 7797
:wq


pgpka5SUMJO3i.pgp
Description: PGP signature


Re: Книжечки. Was: oftopic: (2) select( ) O_NONBLOCK

2001-06-07 Пенетрантность Konstantin Sorokin
On Sat, Jun 02, 2001 at 06:30:47PM +0400, Daniel Ginsburg wrote:
 On Sat, Jun 02, 2001 at 05:32:34PM +0400, Konstantin Sorokin wrote:
  А не могли бы Вы мне посоветовать что именно из Стивенса надо покупать
  прежде всего. Ведь он автор довольно большого количества книг, а все
  купить, понятно, я не могу. Не назовете, скажем, 3 его книги в порядке
  убывания важности (полезности etc).
  
 
 W. Richard Stevens, Advanced Programming in the Unix Environment pub.
 Addison Wesley 1992, ISBN 0-201-56317-7 -- настольная книга.
 
 W. Richard Stevens, Unix Network Programming (second edition) Volume 2:
 Interprocess Communications, pub. Prentice Hall 1998, ISBN 0-13-081081-9 --
 пользуюсь довольно часто.
 
 W. Richard Stevens, Unix Network Programming (second edition) Volume 1:
 Networking APIs: Sockets and XTI, pub. Prentice Hall 1998, ISBN
 0-13-490012-X -- пользуюсь от случая к случаю.
 
 Все сказаное -- исключительно мое мнение, никого ни к чему не обязывающее.
 
 Ходят слухи о планируемом переводе APUE. Не знаю насколько они достоверны. 
 

А этот Volkom случаем никуда не переехал с того места, что указан
в FAQ ru.books.computing? Я съездил по указанному там адресу,
а там похоже ремонт. Во всяком случае дверь никто не открыл ;-(.
Stevens был в Библио-Глобусе, но его уже давно раскупили, в
Доме Книги на Новом Арбате вообще похоже подобной литературой
не торгуют. Что делать? ;-(

-- 
WBR, Konstantin V. Sorokin
GnuPG key fingerprint = 37A1 D039 0F07 774A BE34  428B 1E11 18BA 735B 7797
:wq


pgpEI5opI1jWG.pgp
Description: PGP signature


Re: oftopic: (2) select() O_NONBLOCK

2001-06-07 Пенетрантность Daniel Ginsburg
On Mon, Jun 04, 2001 at 10:57:52AM -0400, Nick Orlov wrote:
 Не, ну понятно, после нескольких лет ковыряния в Unix'ах книжки совсем не
 нужны, вполне хватает манов
 

Неверно. Замечательных книжек количество необозримое. Вот недавно 
прочитал Jim Mauro and Richard McDougall Solaris Internals. Core kernel
architecture, очень много нового узнал. Если попадется на глаза, то не
пожалейте времени.

Я сильно сомневаюсь, что когда-нибудь у человека возникает такой момент,
что книжки совсем не нужны, вполне хватает манов. Если такое наступило,
то пора во гроб. :)

-- 
dg



Re: oftopic: (2) select() O_NONBLOCK: new URL

2001-06-07 Пенетрантность Nick Orlov
Есть отличная книжка, написанная РУССКИМ автором которая является весьма
хорошим введением в программирование под *nix

Андрей Робачевский, Операционная система Unix.

Покупал на  в www.24x7.ru

Сейчас у меня является настольной наряду со Страуструпом.

Regards,
Nick.




Re[2]: oftopic: (2) select() O_NONBLOCK: new URL

2001-06-07 Пенетрантность Дмитрий
Hello Daniel.

Ответ на письмо от 4 июня 2001 г. (18:33):

DG On Mon, Jun 04, 2001 at 10:18:21AM -0400, Nick Orlov wrote:
 Есть отличная книжка, написанная РУССКИМ автором которая является весьма
 хорошим введением в программирование под *nix
 
 Андрей Робачевский, Операционная система Unix.
 
 Покупал на  в www.24x7.ru
 
 Сейчас у меня является настольной наряду со Страуструпом.
 

DG Нет, патриотизм я уважаю и ценю, но ...

DG Отличной я бы ее не назвал. Как введение она вполне подойдет, наряду,
DG например, с Теренсом Чаном, если не всему написаному верить.

Интересно: а чему верить, чему нет? Хотя применишь - проверишь,
не применишь - забудешь.:)

DG  Но заваливать
DG стол этими книгами я бы не стал.

DG Когда доберусь до экземпляра, смогу запостить списочек промахов и
DG неточностей, если не поленюсь, и кого-нибудь это заинтересует.

О, да. Очень даже интересно было бы почитать о неточностях
Робачевского. Его книга для меня тоже в качестве настольной. Ввиду
того, что знания английского временно отсутствуют,:) Робачевский -
единственный выход.




Всего хорошего.
 Дмитрий. 05.06.2001




Re: oftopic: (2) select() O_NONBLOCK

2001-06-07 Пенетрантность Nick Orlov
Извиняюсь, я немного неправильно выразился.
Всегда нужно читать книги по методам программирования,
(Я вот сейчас например перечитываю по 2му разу Exceptional C++, автора к
сожалению смогу назвать только после обеда - книга дома)
но c некоторого момента книги с описаниями системных вызовов и архитектуры
Unix становятся не нужны - всегда лазишь за справочной информацией в маны
(+headres + sources если есть) и обычно этого хватает.

Regards,
Nick.

- Original Message -
From: Daniel Ginsburg [EMAIL PROTECTED]
To: Debian Russian debian-russian@lists.debian.org
Sent: Monday, June 04, 2001 11:40 AM
Subject: Re: oftopic: (2) select() O_NONBLOCK


 On Mon, Jun 04, 2001 at 10:57:52AM -0400, Nick Orlov wrote:
  Не, ну понятно, после нескольких лет ковыряния в Unix'ах книжки совсем
не
  нужны, вполне хватает манов
 

 Неверно. Замечательных книжек количество необозримое. Вот недавно
 прочитал Jim Mauro and Richard McDougall Solaris Internals. Core kernel
 architecture, очень много нового узнал. Если попадется на глаза, то не
 пожалейте времени.

 Я сильно сомневаюсь, что когда-нибудь у человека возникает такой момент,
 что книжки совсем не нужны, вполне хватает манов. Если такое наступило,
 то пора во гроб. :)

 --
 dg


 --
 To UNSUBSCRIBE, email to [EMAIL PROTECTED]
 with a subject of unsubscribe. Trouble? Contact
[EMAIL PROTECTED]





Re: Книжечки. Was: oftopic: (2) select( ) O_NONBLOCK

2001-06-07 Пенетрантность Konstantin Sorokin
On Mon, Jun 04, 2001 at 11:27:41PM +0400, Alexey Mahotkin wrote:
  KS == Konstantin Sorokin [EMAIL PROTECTED] writes:
 
 KS А этот Volkom случаем никуда не переехал с того места, что указан в FAQ
 KS ru.books.computing? Я съездил по указанному там адресу, а там похоже
 KS ремонт. Во всяком случае дверь никто не открыл ;-(.  
 
 Этот адрес? 
 
 Москва, 1-я Тверская-Ямская ул., дом 8 строение 2, вывеска Редакция
 Журнала Юность, 5 этаж, офис 5.  тел\факс (095)250-1214.
 
 Метро Маяковская, после эскалатора повернуть налево и подняться на
 поверхность, затем 300 метров по направлению к м. Белорусская.
 Вывеска у подъезда Журнал Юность.
 
 E-Mail: books(at)df.ru,
 http://www.volcom.df.ru
 
 
 Ответь, пожалуйста, если они больше там не сидят, то я обновлю F.A.Q. 
 
 --alexm

Позвонил -- все нормально. Они там же. Просто видимо по какому-то
стечению обстоятельств человек, который у них заведует открыванием
двери, отлучился именно в тот момент когда я пытался к ним попасть.

-- 
WBR, Konstantin V. Sorokin
GnuPG key fingerprint = 37A1 D039 0F07 774A BE34  428B 1E11 18BA 735B 7797
:wq


pgpjjd7l0Yvkf.pgp
Description: PGP signature


Re: oftopic: (2) select() O_NONBLOCK

2001-06-03 Пенетрантность Victor B. Wagner
On Sat, 2 Jun 2001, Konstantin Sorokin wrote:

 On Sat, Jun 02, 2001 at 04:40:53PM +0400, Daniel Ginsburg wrote:
  Stevens. APUE. Полная библиографическая ссылка в разных FAQ. В FAQ из
  comp.unix.programmer она точно есть.

 А можно как-нибудь Stevens'а в России купить? Или только из-за
 границы...

В БиблиоГлобусе сам лично видел. На английском естественно.
А еще есть Фольком-букс.



oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Pavel Orehov
Прошу прощения за дикий офтопик, но сильно надо, а в книжках и мане вопрос
совершенно не освещен и других _дружественных_ мест я не знаю...

вобщем писал модуль к ucd-snmnpd и обнаружил эфект:
Надо прочитать из FIFO (устройства) ASCIIz строку.
Поступаю просто (http://oniltz.da.ru/~opa/test.c)
$mkfifo file
..
fd=open(file,O_RDONLY);
FD_SET(fd,set);
if(select(,set,0,0,0)0)
  if(FD_ISSET(fd,set))
read(fd,buf+ofs,1);
if(buf[ofs]=='\n')printf(we got a line);
...

ладно... так все делают, но не охото на чтение _КАЖДОГО_БАЙТА_
(напоминаю: строка ASCIIz) ходить до селекта (кто видел основной цикл
ucd-snmpd согласится)

тут возникает вопрос: а сколько байтов есть в буфере? fstat.st_size==0

ладно пишу 
fd=open(file,O_RDONLY|O_NONBLOCK);
...
 for(;;){
   n=read(fd,buf+ofs,1);
   if(n=0)return;
   if(buf[ofs]=='\n')printf(we got a line);
   ofs++;
 } 

и тут случается чудо: после получения первого байта у select начинается
недержание: непрерывно срывается с моим fd, но read, разумеется,
честно возвращает 0.

Вопрос: как бороться с этой тварью, или
1. как узнать кол-во данных/места в буфере для чтения/записи
2. как ее успокоить
3. что почитать на эту тему и окрестности кроме текстов ядра
если сильно не хочется за каждым байтом ходить к селекту и еще сильнее не
хочится переходить на бинарный формат с фиксированным размером блока.
подпорки типа семафоров/msgq/сигналов еще больше не нравятся (это близко
к вопросу о M$vsUNIX)

4. вообще какая книжка по программированию Unix хорошая?

хоть какая отмазка: все это программируется под потатой и для работы на
потате



Re: oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Konstantin Sorokin
On Sat, Jun 02, 2001 at 06:35:42PM +0700, Pavel Orehov wrote:
 Поступаю просто (http://oniltz.da.ru/~opa/test.c)
  ^
Что-то я не могу достучаться... и не пингуется.

-- 
WBR, Konstantin V. Sorokin
GnuPG key fingerprint = 37A1 D039 0F07 774A BE34  428B 1E11 18BA 735B 7797
:wq


pgphoA2TKdi3l.pgp
Description: PGP signature


Re: oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Alexey Mahotkin
 PO == Pavel Orehov [EMAIL PROTECTED] writes:

PO FIFO (устройства) ASCIIz строку.  Поступаю просто
PO (http://oniltz.da.ru/~opa/test.c) $mkfifo file ..
PO fd=open(file,O_RDONLY); FD_SET(fd,set); if(select(,set,0,0,0)0)
PO if(FD_ISSET(fd,set)) read(fd,buf+ofs,1); if(buf[ofs]=='\n')printf(we
PO got a line); ...

PO ладно... так все делают, но не охото на чтение _КАЖДОГО_БАЙТА_
PO (напоминаю: строка ASCIIz) ходить до селекта (кто видел основной цикл
PO ucd-snmpd согласится)

Читай целый буфер, килобайта четыре.  read вернет, сколько на самом деле
прочитано... 

PO ладно пишу fd=open(file,O_RDONLY|O_NONBLOCK); ...  for(;;){
PO n=read(fd,buf+ofs,1); if(n=0)return; if(buf[ofs]=='\n')printf(we got
PO a line); ofs++; }

PO и тут случается чудо: после получения первого байта у select начинается
PO недержание: непрерывно срывается с моим fd, но read, разумеется, честно
PO возвращает 0.

А что вы хотели от O_NONBLOCK? :)  select() не блокируется ровно поэтому.
Решение см. выше. 

PO Вопрос: как бороться с этой тварью, или 1. как узнать кол-во
PO данных/места в буфере для чтения/записи 

Просто попробовать прочитать сколько-нибудь.  Оно само скажет, сколько
прочиталось.  

PO 3. что
PO почитать на эту тему и окрестности кроме текстов ядра если сильно не
PO хочется за каждым байтом ходить к селекту и еще сильнее не хочится
PO переходить на бинарный формат с фиксированным размером блока.  подпорки
PO типа семафоров/msgq/сигналов еще больше не нравятся (это близко к
PO вопросу о M$vsUNIX)

http://alexm.here.ru/manpages-ru/?  Там вроде бы все основные вопросы на
эту тему затронуты. 

PO 4. вообще какая книжка по программированию Unix хорошая?

Вопрос же совершенно тривиальный, там никакой книжки не нужно, нужно
просто прочитать всю группу манов и воспринять ее сущностно. 

PO хоть какая отмазка: все это программируется под потатой и для работы на
PO потате

Welcome to fido7.ru.unix? 

--alexm



Re: oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Daniel Ginsburg
On Sat, Jun 02, 2001 at 06:35:42PM +0700, Pavel Orehov wrote:
 Прошу прощения за дикий офтопик, но сильно надо, а в книжках и мане вопрос
 совершенно не освещен и других _дружественных_ мест я не знаю...

comp.unix.programmer место весьма достойное.

 
 вобщем писал модуль к ucd-snmnpd и обнаружил эфект:
 Надо прочитать из FIFO (устройства) ASCIIz строку.
 Поступаю просто (http://oniltz.da.ru/~opa/test.c)

Достучаться не могу, поэтому буду говорить про написанное.

 $mkfifo file
 ..
 fd=open(file,O_RDONLY);
 FD_SET(fd,set);
 if(select(,set,0,0,0)0)
   if(FD_ISSET(fd,set))
 read(fd,buf+ofs,1);

А кто результат read проверять будет? Да и чтение по байтику --
удовольствие дорогое. Очень.

  result = read (fd, buf+ofs, spaceleft);
  if (result == 0) { /* данные кончились, больше не будет */ }
  if (result  0) { /* случилось страшное */ }
  ofs += result; spaceleft -= result;

И неблокирующее чтение в этом случае уже и не нужно.

 if(buf[ofs]=='\n')printf(we got a line);
 ...
 
 ладно... так все делают, но не охото на чтение _КАЖДОГО_БАЙТА_
 (напоминаю: строка ASCIIz) ходить до селекта (кто видел основной цикл
 ucd-snmpd согласится)
 
 тут возникает вопрос: а сколько байтов есть в буфере? fstat.st_size==0
 

Лишний это вопрос. Сколько есть - все твои. :)

 ладно пишу 
 fd=open(file,O_RDONLY|O_NONBLOCK);
 ...
  for(;;){
n=read(fd,buf+ofs,1);
if(n=0)return;

Это бесчеловечный поступок. Нельзя неблокирующим чтением в цикле без
остановки ...

Опять же, кто на EWOULDBLOCK проверять будет? Не все то ошибка, что -1 из
read.

if(buf[ofs]=='\n')printf(we got a line);
ofs++;
  } 
 
 и тут случается чудо: после получения первого байта у select начинается
 недержание: непрерывно срывается с моим fd, но read, разумеется,
 честно возвращает 0.

Если select сказал, что из fd читать можно, а read вернул 0, то это
однозначно кончились данные и в этом fd уже ничего интересного не будет.

 
 Вопрос: как бороться с этой тварью, или
 1. как узнать кол-во данных/места в буфере для чтения/записи

Не надо.

 2. как ее успокоить

Аккуратно проверять, что вернул read.

 3. что почитать на эту тему и окрестности кроме текстов ядра

Stevens. APUE. Полная библиографическая ссылка в разных FAQ. В FAQ из
comp.unix.programmer она точно есть.

 если сильно не хочется за каждым байтом ходить к селекту и еще сильнее не
 хочится переходить на бинарный формат с фиксированным размером блока.
 подпорки типа семафоров/msgq/сигналов еще больше не нравятся (это близко
 к вопросу о M$vsUNIX)
 

Ужас какой. Не надо придумывать никаких сигналов. А уж тем более семафоров
и очередей, ибо на них тот же select не скажешь.

 4. вообще какая книжка по программированию Unix хорошая?
 

См. пункт 3.

 хоть какая отмазка: все это программируется под потатой и для работы на
 потате
 
 

:))

-- 
dg



Re: oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Daniel Ginsburg
On Sat, Jun 02, 2001 at 04:13:41PM +0400, Alexey Mahotkin wrote:
  PO == Pavel Orehov [EMAIL PROTECTED] writes:
 PO и тут случается чудо: после получения первого байта у select начинается
 PO недержание: непрерывно срывается с моим fd, но read, разумеется, честно
 PO возвращает 0.
 
 А что вы хотели от O_NONBLOCK? :)  select() не блокируется ровно поэтому.
 Решение см. выше. 
 

Да ну?
select'у все равно, O_NONBLOCK ли дескриптор.

 PO 3. что
 PO почитать на эту тему и окрестности кроме текстов ядра
 
 http://alexm.here.ru/manpages-ru/?  Там вроде бы все основные вопросы на
 эту тему затронуты. 
 

Manpages от линукса довольно слабенькие. А их переводы, на мой вкус, вообще
ЗЛО. Эта не та литература, которую переводить надо.

 PO хоть какая отмазка: все это программируется под потатой и для работы на
 PO потате
 
 Welcome to fido7.ru.unix? 
 

Лучше comp.unix.programmer :)

-- 
dg



Re: oftopic: (2) select() O_NONBLOCK: new URL

2001-06-02 Пенетрантность Pavel Orehov
  Поступаю просто (http://oniltz.da.ru/~opa/test.c)
 Достучаться не могу, поэтому буду говорить про написанное.
http://www.nsib.ru/~opa/test.c
http://land7.nsu.ru/~opa/test.c

и общий встречный вопрос: откуда (из какой строки мана) следует, что read
вернет столько сколько уже есть и чем это его поведение отличается от
случая O_NONBLOCK или я совсем тормоз? Вроде в блокирующем режиме он
обязан стоять, пока не прочитает _ВСЕ_ запрошенное?



Re: oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Konstantin Sorokin
On Sat, Jun 02, 2001 at 04:40:53PM +0400, Daniel Ginsburg wrote:
 Stevens. APUE. Полная библиографическая ссылка в разных FAQ. В FAQ из
 comp.unix.programmer она точно есть.

А можно как-нибудь Stevens'а в России купить? Или только из-за
границы...

-- 
WBR, Konstantin V. Sorokin
GnuPG key fingerprint = 37A1 D039 0F07 774A BE34  428B 1E11 18BA 735B 7797
:wq


pgpERPplXHJfR.pgp
Description: PGP signature


Re: oftopic: (2) select() O_NONBLOCK: new URL

2001-06-02 Пенетрантность Daniel Ginsburg
On Sat, Jun 02, 2001 at 07:58:23PM +0700, Pavel Orehov wrote:
   Поступаю просто (http://oniltz.da.ru/~opa/test.c)
  Достучаться не могу, поэтому буду говорить про написанное.
 http://www.nsib.ru/~opa/test.c
 http://land7.nsu.ru/~opa/test.c


Посмотрю через полчасика.

 и общий встречный вопрос: откуда (из какой строки мана) следует, что read
 вернет столько сколько уже есть и чем это его поведение отличается от
 случая O_NONBLOCK или я совсем тормоз? Вроде в блокирующем режиме он
 обязан стоять, пока не прочитает _ВСЕ_ запрошенное?
 
 

Нет. В блокирующем режиме read будет стоять, пока не прочтет хоть что-нибудь.

[17:05] [EMAIL PROTECTED]:~$ man 2 read

...

RETURN VALUE
   On success, the number of bytes  read  is  returned  (zero
   indicates  end of file), and the file position is advanced
   by this number.  It is not an  error  if  this  number  is
   smaller  than the number of bytes requested; this may hap
   pen for example because fewer bytes are actually available
   right  now (maybe because we were close to end-of-file, or
   because we are reading from a pipe, or from  a  terminal),
   or  because read() was interrupted by a signal.  On error,
   -1 is returned, and errno is set  appropriately.  In  this
   case  it is left unspecified whether the file position (if
   any) changes.

...

ERRORS

...

   EAGAIN Non-blocking I/O has been selected using O_NONBLOCK
  and no data was immediately available for  reading.


-- 
dg



Re: oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Daniel Ginsburg
On Sat, Jun 02, 2001 at 04:59:52PM +0400, Konstantin Sorokin wrote:
 On Sat, Jun 02, 2001 at 04:40:53PM +0400, Daniel Ginsburg wrote:
  Stevens. APUE. Полная библиографическая ссылка в разных FAQ. В FAQ из
  comp.unix.programmer она точно есть.
 
 А можно как-нибудь Stevens'а в России купить? Или только из-за
 границы...
 

В Фолькоме. Адрес был в FAQ из fido7.ru.books.computing.
Мне это обошлось в $80, но скажу от всего сердца: эта книга стоит этих
денег.

-- 
dg



Re: oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Konstantin Sorokin
On Sat, Jun 02, 2001 at 05:08:56PM +0400, Daniel Ginsburg wrote:
 On Sat, Jun 02, 2001 at 04:59:52PM +0400, Konstantin Sorokin wrote:
  On Sat, Jun 02, 2001 at 04:40:53PM +0400, Daniel Ginsburg wrote:
   Stevens. APUE. Полная библиографическая ссылка в разных FAQ. В FAQ из
   comp.unix.programmer она точно есть.
  
  А можно как-нибудь Stevens'а в России купить? Или только из-за
  границы...
  
 
 В Фолькоме. Адрес был в FAQ из fido7.ru.books.computing.
 Мне это обошлось в $80, но скажу от всего сердца: эта книга стоит этих
 денег.


А не могли бы Вы мне посоветовать что именно из Стивенса надо покупать
прежде всего. Ведь он автор довольно большого количества книг, а все
купить, понятно, я не могу. Не назовете, скажем, 3 его книги в порядке
убывания важности (полезности etc).

-- 
WBR, Konstantin V. Sorokin
GnuPG key fingerprint = 37A1 D039 0F07 774A BE34  428B 1E11 18BA 735B 7797
:wq


pgpGVcgNlO1nR.pgp
Description: PGP signature


Книжечки. Was: oftopic: (2) select( ) O_NONBLOCK

2001-06-02 Пенетрантность Daniel Ginsburg
On Sat, Jun 02, 2001 at 05:32:34PM +0400, Konstantin Sorokin wrote:
 А не могли бы Вы мне посоветовать что именно из Стивенса надо покупать
 прежде всего. Ведь он автор довольно большого количества книг, а все
 купить, понятно, я не могу. Не назовете, скажем, 3 его книги в порядке
 убывания важности (полезности etc).
 

W. Richard Stevens, Advanced Programming in the Unix Environment pub.
Addison Wesley 1992, ISBN 0-201-56317-7 -- настольная книга.

W. Richard Stevens, Unix Network Programming (second edition) Volume 2:
Interprocess Communications, pub. Prentice Hall 1998, ISBN 0-13-081081-9 --
пользуюсь довольно часто.

W. Richard Stevens, Unix Network Programming (second edition) Volume 1:
Networking APIs: Sockets and XTI, pub. Prentice Hall 1998, ISBN
0-13-490012-X -- пользуюсь от случая к случаю.

Все сказаное -- исключительно мое мнение, никого ни к чему не обязывающее.

Ходят слухи о планируемом переводе APUE. Не знаю насколько они достоверны. 

rant

Я же разочаровался в идее переводов технической литературы (про книжки a-la
Ёксель для отпетых олигофренов за полтора часа с перерывом на прием
аминазина я не говорю). Я так и не смог прочесть перевод Design Patterns,
хотя в оригинале книга эта замечательна и читается очень легко.

То же самое относится к переводам manpages из разделов 1. Никаких
достоинств, кроме недостатков.

Я наблюдал очень показательный случай в какой-то ньюсгруппе. Не помню точно
была ли это comp.unix.programmer или comp.os.linux.development.apps.

Один писатель клялся и божился, зуб давал и рубаху рвал, что kill(pid, 0)
всегда вернет -1 + EINVAL, ибо сигнала с номером 0 не существует. Вся
группа убеждала его в том что он неправ. Все оказалось до обидного просто:
человек начитался переводных manpages (французских в данном случае).

Уважаемые переводчики, каким цензурным словосочетанием вы переведете
выражение asynch signal safe? Любой перевод что я могу придумать, не только
не проясняет суть выражения, а напрочь отсекает всякую возможность его
разумного понимания. Или просто я такой косноязычный?

/rant

-- 
dg



Re: ëÎÉÖÅÞËÉ. Was: oftopic: (2) select() O_NONBLOCK

2001-06-02 Пенетрантность Alexey Mahotkin
 DG == Daniel Ginsburg [EMAIL PROTECTED] writes:

DG Я же разочаровался в идее переводов технической литературы 

DG То же самое относится к переводам manpages из разделов 1. Никаких
DG достоинств, кроме недостатков.

Ну, я окончательно смотивировал себя на занятие переводами (причем именно
второй секции в случае мануалов (что, впрочем, не спасло меня от полного
ламерства отн. O_NONBLOCK :))) тем, что вспомнил себя в промежутке
примерно от восьмого класса до примерно начала первого-второго курса.  В
общем, в тот момент я а) со страшной силой тянулся к чтению технической
документации на доступные темы; б) имел серьезные проблемы с доступностью и
способностью к усвоению англоязычной документации.  Соответственно, свою
деятельность рассматриваю как подарок виртуальному разнесенному по времени
клону самого себя.  Что-то типа такого.


Кроме того, например, один мой начальник начал окончательно энфорсить
использование CVS'а в конторе после того, как я ему подсунул введение в CVS
в переводе (усилия, необходимые на прочтение ровно того же документа
по-английски были бы таковы, что иначе не получалось).  Это еще одна
сторона interoperability на самом деле.

DG Уважаемые переводчики, каким цензурным словосочетанием вы переведете
DG выражение asynch signal safe? 

Корректно работает в присутствии асинхронных сигналов.

--alexm