今さら聞けないWeb(制作現場に出てくる)用語集 第3回 サーバ(Linux)編

今さら聞けないWeb(制作現場に出てくる)用語集 第3回 サーバ(Linux)編

最近、妙に読書熱が上がってきてしまい若干寝不足な nakamura です。今は 沈まぬ太陽 を読んでますが、内容が重たすぎて眠れない、、、

さて『今さら聞けない用語集』シリーズも 3 回目。今回は Linux を主としたサーバ関連の用語解説をお届けします。サーバ関連といってしまうと曖昧ですが、主に Linux やネットワークに関する用語をご紹介していこうと思います。

カーネル

『OS の中核部分』とか『OS とハードウェアの間を取り持つもの』といった解説をよく耳にしますが、我々が普段よく触れている Web アプリケーションの開発に例えると分かりやすいでしょう。昨今のフレームワークではデータアクセスの部分が抽象化されていて、例えば『データベースに接続する』といった過程は特に意識する事なく開発が可能です。カーネルもコンピュータ上で似たような役割を担っています。全てのアプリケーションは等しくメモリや CPU 等のハードウェアへのアクセス、プロセスやスレッドの管理といった自身の目的とは関係ない煩わしい作業を行う必要がありますが、間にカーネルが入る事によりアプリケーションの開発者はその部分の負担を大いに軽減されます。また、最近のカーネルは組込みの機能が年々大きくなっていて、代表的なものでは NFSiptablesによるパケットフィルタリング 、 KMS (Kernel Mode Setting)等が挙げられます。

シェル

カーネルと並び Linux OS の根幹部分を成す機能です。別名をコマンドインタプリタといい、 command (命令)を interprete (通訳)する、という言葉がその機能をよく表しています。カーネルが OS とハードウェアの仲介者なのに対し、シェルは OS と人間の仲介者と言えるでしょう。また、シェルには bsh, bash, csh, zsh 等多くの派生が存在し、それぞれ細かい仕様が異なります。好みに合わせて使い分けましょう。

プロトコル

通信プロトコル、ネットワーク・プロトコルとも呼ばれます。コンピュータ間で通信する為の通信規格全般を指す言葉ですが、よく例えられるのは国際電話で外国人と話す場面です。『お互いが理解できる共通の言語』で話さない限り電話で意思疎通を図るのはまず不可能です。コンピュータの世界でも同様で例えば Web サイトを閲覧する際に HTTP という共通の言葉があるおかげでインターネットはここまで大きく成長出来たと言っても過言ではないでしょう。また、通信プロトコルを 7 つの階層に分けた OSI 参照モデルは現在のインターネットを理解する上で基本となる知識です。

TCP/IP, UDP

別名をインターネット・プロトコル・スイートとも言います。先程のカーネルの説明と同様の事がここでも言え、離れた場所にあるコンピュータと通信する際にアプリケーションの開発者は『接続を開始』、『接続を保持』、『接続を切断』といった機能をイチから構築する必要は無く、アプリケーションの用途に応じて TCP や UDP の仕組みに則るだけで良いのです。今日のインターネットの仕組みを語る上で非常に重要なプロトコルである為、他のプロトコルとは分けて TCP/IP と一括りにして語られる事が多く、TCP/IP と言った場合に UDP を含める場合もあるようです。

セッション

接続開始から終了までの期間を表す単位として使われる言葉です。ただし、状況によって接続開始から終了までの定義が大きく異なり、例えば Web アプリケーションの場合はログインからログアウトまでを 1 セッションと呼ぶ事が多く(ログイン・セッションと呼んだりします)、より下位のプロトコルレベルの場合は純粋に接続を確立してから切断されるまでの期間を指します。よく Web アプリケーション開発の現場で『セッションに格納』と言われますが、厳密に言うと『セッションに対してデータを紐付ける』という意味であり、セッションという名の入れ物がある訳ではありません。

まとめ

以上、駆け足でしたがサーバ関連の用語解説でした。じっくり説明しようとするととても書き切れないので、深く知りたい方はリンク先の Wikipedia 等を参考にして下さい。

  • このエントリーをはてなブックマークに追加

この記事を読んだ人にオススメ