socket()という関数はソケットを作ります。
ソケットを作っただけでは使い物になりません。
ソケットには名前をつけて使えるようになります。
名前がないとプロセスから参照できません。
赤ちゃんが生まれたら、名前を付けて
市役所に届けるようなものです。
名前がないと誰からも相手にされず
悲しい人生を歩むようなものです。
昔、生まれても届けない親、戸籍のない人の
話題がマスコミにとりあげられましたが
似ています。
bind()という関数でソケットに名前を付けます。
このときソケットが使うIPアドレス、ポート番号が
使われます。
listen()という関数でソケットが受け付ける接続要求の
最大数の設定をします。
accept()という関数で、接続要求があるまで待ち状態に
なります。クライアントからコネクト要求があると
接続要求待ち行列にデータが入り、accept()が起動します。
その第1引数と同じ性質のソケットを新たに作ります。
ここでfork()を実行すると、並列処理になります。
記憶の再確認
0 件のコメント :
コメントを投稿