Java NIO的零拷贝演示
发布时间
阅读量:
阅读量
Java NIO 零拷贝 演示
- 一、传统IO演进(详细机制需要参考操作系统知识进行理解)
-
- 1.用户态与内核态,需经历四次数据复制以及三次状态转换
- 2.内存映射优化(MMAP)需经历三次数据复制以及三次状态转换
- 3.Linux2.1 SendFile 优化,需经历三次数据复制以及两次状态转换
- 4.Linux2.4 内核修改,需经历两次数据复制以及两次状态转换
-
二、零拷贝演示
-
-
1.传统IO
-
- 1.服务端
- 2.客户端
- 3.首先启动服务端,随后启动客户端,并观察运行结果
-
2.零拷贝IO
-
- 1.服务端
- 2.客户端
- 3.首先启动服务端,随后启动客户端,并观察运行结果
-
-
一、传统IO演进(详细机制需要参考操作系统知识进行理解)
1.用户态与内核态,需要经过 4 次拷贝和 3 次切换
Data Memory Access 直接内存拷贝
KernelBuffer 内核缓冲区
CpuCopy 通过CPU拷贝
UserBuffer 用户缓冲区
SocketBuffer Socket
全部评论 (0)
还没有任何评论哟~
