java.net.socket实现

时间:2012-08-21 22:51:53

标签: java sockets io

在linux上,我假设Java套接字最终调用了glibc套接字。

这两层之间的互动如何发生?它类似于JNI调用还是有一些特殊的更快的方式从Java访问glibc函数?

谢谢!

1 个答案:

答案 0 :(得分:2)

套接字由内核实现,系统调用函数包装器由JVM实现者碰巧使用的任何C库提供。 Java通过JNI调用C库,C库通过系统调用软件中断调用内核。虽然实现细节可能有所不同,但JDK之间在此过程中没有概念上的差异。

  

glibc套接字

真的没有这样的事情。套接字函数是系统调用。所有glibc都提供了C包装器。