计算机网络
文章平均质量分 96
计算机网络
bubble小拾
梦想不止于编程,行动才是起点
展开
-
[Linux] IO 复用编程、epoll事件轮询机制的理解
当某一进程调用 epoll_create 方法时,Linux 内核会创建一个 eventpoll 结构体,在内核 cache 里建了个红黑树用于存储以后 epoll_ctl 传来的 socket 外,还会再建立一个 rdllist 双向链表,用于存储准备就绪的事件,当 epoll_wait 调用时,仅仅观察这个 rdllist 双向链表里有没有数据即可。有数据就返回,没有数据就 sleep,等到 timeout 时间到后即使链表没数据也返回。原创 2024-08-31 22:39:28 · 1326 阅读 · 0 评论 -
BIO、NIO编程与直接内存、零拷贝详解
什么是 NIO?NIO 库是在 JDK 1.4 中引入的。NIO 弥补了原来的 BIO 的不足,它在标准 Java 代码中提供了高速的、面向块的 I/O。NIO 被称为 no-blocking io 或者 new io 都说得通。和BIO 的主要区别面向流与面向缓冲Java NIO 和 IO 之间第一个最大的区别是,IO 是面向流的,NIO 是面向缓冲区的。 Java IO 面向流意味着每次从流中读一个或多个字节,直至读取所有字节,它们没有被缓存在任何地方。此外,它不能前后移动流中的数据。原创 2024-08-28 23:27:30 · 1558 阅读 · 0 评论 -
网络通信和TCP/IP协议详解
计算机网络的标准定义是:利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,以功能完善的网络软件及协议实现资源共享和信息传递的系统。计算机网络从覆盖范围上划分可以分为三类:局域网、城域网、广域网。局域网LAN(作用范围一般为几米到几十公里)、城域网MAN(界于WAN与LAN之间)、广域网WAN(作用范围一般为几十到几千公里)。原创 2024-08-26 00:03:32 · 1593 阅读 · 0 评论