UNIX ネットワークプログラミング入門

[表紙]UNIX ネットワークプログラミング入門

紙版発売

A5判/288ページ

定価2,728円(本体2,480円+税10%)

ISBN 4-7741-1754-4

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

ネットワークプログラミングというと,どうしても難しく考えがちです。しかしコツさえ掴んでしまえば,それほど難しくありません。本書では簡単なサンプルプログラムの作成を通じた,基本の習得が可能です。C言語の文法が理解できるのであれば,どなたでも入門可能です。

こんな方におすすめ

  • 基礎からクライアントサーバシステムの仕組みを学びたい方
  • 定番本の難易度についていけなかった方

目次

第1章 TCP/IP によるネットワーク

  • 1-1 X ウィンドウとTCP/IP
  • 1-2 ネットワーク・プロトコル
  • 1-3 トランスポート層へのインタフェース ― ソケット
  • 1-4 OSI

第2章 ネットワーク上のプロセス間通信 − チャットプログラム

  • 2-1 プロセスとプロセス間通信
  • 2-2 ファイルディスクリプタ
  • 2-3 ソケットとは
  • 2-4 チャットプログラム
  • 2-5 プログラムの実行方法
  • 2-6 ソケットのアドレス
  • 2-7 有限状態マシンとソケット
  • 2-8 エラーはつきもの
  • 用語解説
    • Note:2-1 システムコール
    • Note:2-2 全2重通信
    • Note:2-3 バイトオーダー
    • Note:2-4 プロトコル
    • Note:2-5 通信ドメイン

第3章 1対1通信と汎用ライブラリ − 3目並べゲーム

  • 3-1 1対1通信専用のライブラリを作る
  • 3-2 3目並べを書いてみよう
  • 用語解説
    • Note:3-1 ライブラリ
    • Note:3-2 Make

第4章 1対1非同期通信 − 鬼ごっこゲーム

  • 4-1 同期と非同期
  • 4-2 ゲームのあらまし
  • 4-3 cursesライブラリの使い方
  • 4-4 入出力の多重化
  • 4-5 クライアント/サーバのメインモジュール
  • 4-6 セッションモジュールの概要
  • 4-7 コンパイル
  • 用語解説
    • NOTE:4-1 terminfo と termcap
    • NOTE:4-2 static キーワード
    • NOTE:4-3 シグナルと端末属性

第5章 1対多通信 − ミニ電子会議1

  • 5-1 電子会議の仕様
  • 5-2 1つのポートで多重のコネクション
  • 5-3 サーバのアクセプト動作
  • 5-4 サーバのセッション管理
  • 5-5 サーバのメインモジュール
  • 5-6 クライアントのセッション管理
  • 5-7 クライアントのメインモジュール
  • 5-8 コンパイル
  • 用語解説
    • NOTE:5-1 関数へのポインタ
    • NOTE:5-2 ar コマンド

第6章 1対多非同期通信 − レーシングゲーム

  • 6-1 レーシングゲームを作ろう
  • 6-2 サーバのセッション管理
  • 6-3 サーバのメインモジュール
  • 6-4 クライアントのセッション管理
  • 6-5 クライアントのメインモジュール
  • 6-6 ヘッダファイル
  • 6-7 コンパイル
  • 6-8 プログラムの実行

第7章 データグラムの利用 − ミニ電子会議2

  • 7-1 データグラムの特徴
  • 7-2 データグラムを使ってみよう
  • 7-3 サーバのメインモジュール
  • 7-4 クライアントのセッション管理
  • 7-5 クライアントのメインモジュール
  • 7-6 ヘッダファイル
  • 7-7 コンパイル

第8章 デーモンプログラミング入門 − 簡易電子掲示板

  • 8-1 デーモンとは
  • 8-2 掲示板デーモン未成熟版bb0d
  • 8-3 コンパイル
  • 8-4 デーモンの起動実験
  • 8-5 セッション・プロセスグループ・制御端末
  • 8-6 掲示板デーモン bb1d
  • 8-7 掲示板デーモン bb9d

第9章 IPv4とIPv6 − プロトコルバージョンへの非依存化

  • 9-1 引数をIPv4に依存させないようにする
  • 9-2 アドレスの検索の方法
  • 9-3 マイライブラリの変更
  • 9-4 コンパイル

Appendix

  • A 研究課題のヒント
  • B 主要システムコール/ライブラリ関数リファレンス
  • C 参考文献