Linux初心者の入門と基礎「ネットワークドライバ(6)」
こんにちは!!
Linux大学学長のりなっくまです。
本日の講義をはじめていきます!!
テーマは「ネットワークドライバ(6)」です。
・・・(5)からのつづき
NICには、ハードディスクなどと同じように、デバイスドライバがあります。
代表的なものにIntelのPRO/100などがあります。
Linuxの多くのディストリビューションは、それに対応するデバイスドライバとして
e100.koなどを「/lib」ディレクトリ配下に備えています。
Linux起動時に、NICが自動認識され、該当のドライバが自動的にカーネルに
組み込まれます。
Linux大学学長のりなっくまです。
本日の講義をはじめていきます!!
テーマは「ネットワークドライバ(6)」です。
・・・(5)からのつづき
NICには、ハードディスクなどと同じように、デバイスドライバがあります。
代表的なものにIntelのPRO/100などがあります。
Linuxの多くのディストリビューションは、それに対応するデバイスドライバとして
e100.koなどを「/lib」ディレクトリ配下に備えています。
Linux起動時に、NICが自動認識され、該当のドライバが自動的にカーネルに
組み込まれます。
Linux初心者の入門と基礎「ネットワークドライバ(5)」
こんにちは!!
Linux大学学長のりなっくまです。
本日の講義をはじめていきます!!
テーマは「ネットワークドライバ(5)」です。
・・・(4)からのつづき
アプリケーションはデータを送る前に、ソケットに「bindシステムコール」を
使って、宛先IPアドレスを教えておきます。これで、ソケットとIPアドレス/ポート番号
が結びつけられます。あとはwriteを使って、通常のファイルに対する操作と同じように
アプリケーションはデータを送り出せます。
writeを実行すると、カーネルが、与えられたfdを調べ、ファイルディスクリプタでなく
ソケットであることを知ると、TCP/IPスタックを呼び出します。そしてTCP/IPスタックが
宛先アドレスなどをヘッダーに付与します。
このようにユーザー・アプリケーションが直接デバイスファイルをオープンするのではなく、
デバイスの選択はカーネルに任せるため、データの書き込みにはソケットを使います。
Linux大学学長のりなっくまです。
本日の講義をはじめていきます!!
テーマは「ネットワークドライバ(5)」です。
・・・(4)からのつづき
アプリケーションはデータを送る前に、ソケットに「bindシステムコール」を
使って、宛先IPアドレスを教えておきます。これで、ソケットとIPアドレス/ポート番号
が結びつけられます。あとはwriteを使って、通常のファイルに対する操作と同じように
アプリケーションはデータを送り出せます。
writeを実行すると、カーネルが、与えられたfdを調べ、ファイルディスクリプタでなく
ソケットであることを知ると、TCP/IPスタックを呼び出します。そしてTCP/IPスタックが
宛先アドレスなどをヘッダーに付与します。
このようにユーザー・アプリケーションが直接デバイスファイルをオープンするのではなく、
デバイスの選択はカーネルに任せるため、データの書き込みにはソケットを使います。