ソケットはOSレベルで提供されるインタフェースであり、多くのプログラミング言語で対応している。今回はC言語とJava言語の両方を実装を示し、それがプログラミング言語に依らず動作することなどを紹介する。 C言語を使った実装 - server.c C言語で、標準ライブラリであるlibcにおけるソケットを使った場合の簡易サーバの実装例をリスト1に示す。これはFreeBSD 6.0で作成したものだが、ほかのUNIX系OSでもそのままか、少しの変更で使える。リスト1の実装は、バッファオーバフローや、こまごました部分の異常系は無視して実装したものだ。C言語でlibcだけを使って実装する場合のごくごく基本的なものといえる。 リスト1 server.c - C言語 libc を使って実装した簡易サーバ #include <unistd.h> #include <netinet/in.h> #inclu