>>396
os.write()はシステムコールを直接呼ぶから、一般には1度の呼び出しで
全バイト書き込まれることは保障されていない。特にfdがソケットであったり
するような場合は、partial writeはごく普通に発生する。

本当はEINTRの場合の処理もやったほうがいい筈だが、割り込まれた時に
システムコールのwrite()を自動的に再送するかどうか、といった挙動が
Unixでもシステムによって様々なので、移植性のあるコードを書くのは
難しいかもしれん。