返回信息流最近在学习Linux网络部分的内核源码,知道有数据到达时会产生硬件中断和软中断,然后内核调用相应的函数将数据一步步上交给传输层。应用层可以通过调用read( )函数读取传输层的数据。
但是应用层如何知道传输层有数据呢?或者说如何确定调用read( )的时机呢?是通过软中断,或是不停地调用read( )读取,还是其他的什么机制?我用VC++做过简单的异步套接字编程,当有数据到达时会产生一个消息,这样应用层收到消息通知后就可以调用相应的函数及时处理。不知Linux在处理类似问题时采用怎样的机制?
如果有内核源码,那么是在哪个文件中呢?
我很菜,希望得到一些指点。
这是一条镜像帖。来源:北邮人论坛 / soft-design / #25689同步于 2008/5/23
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SoftDesign机器人发帖
[求助]Linux下的socket编程,调用read( )的时机问题
hydralisk001
2008/5/23镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。