09 2021 档案
摘要:关键在 read(fd,buffer,size),buffer的大小 如果读缓冲区数据足够多的话,read可能会全部填满,也有可能读取一部分 所以,最好是知道要收数据的结构,根据结构的大小去定义buffer的size收数据
阅读全文
摘要:1. 应用层 网络使用多路复用 2. 工作线程 根据cpu密集型还是io密集型,创建合适线程 thraed local ,绑定cpu 3. 网卡手法数据 使用dma方式,应该比irq 硬件中断方式好,虽然都是不停的触发,但是irq触发的话,cpu不能处理其他的事情 4. 在系统协议栈层 通过rfs,
阅读全文
摘要:内核如何从网卡接收数据,传统的过程:1.数据到达网卡;2.网卡产生一个中断给内核;3.内核使用I/O指令,从网卡I/O区域中去读取数据; 我们在许多网卡驱动中(很老那些),都可以在网卡的中断函数中见到这一过程。 但是,这一种方法,有一种重要的问题,就是大流量的数据来到,网卡会产生大量的中断,内核在中
阅读全文