Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Linuxでは、Javaソケットが最終的にglibcソケットを呼び出すことになると思います。
これら2つのレイヤー間の相互作用はどのように発生しますか?これはJNI呼び出しに似ていますか、それともJavaからglibc関数にアクセスするための特別な高速な方法がありますか?
ありがとう!
ソケットはカーネルによって実装され、システムコール関数ラッパーは、JVM実装者がたまたま使用しているCライブラリによって提供されます。JavaはJNIを介してCライブラリを呼び出し、Cライブラリはシステムコールソフトウェア割り込みを介してカーネルを呼び出します。実装の詳細は異なる場合がありますが、JDK間でこのプロセスに概念的な違いはありません。
glibcソケット
そんなことは本当にありません。ソケット関数はシステムコールです。glibcが行うのは、Cラッパーを提供することだけです。