The essence and difference between IO and NIO in Java

Introduction The full name of IO is input output, is the bridge between the java program and the outside world, IO refers to all the classes in the package, they exist from java 1.0. NIO is called new IO, is the new generation of IO introduced in java 1.4. What is the nature of IO? What is the difference between it and NIO? How do we learn IO and NIO?

JavaNIO and Zero Copy

Zero-copy in the Linux operating system Let’s start with the general I/O process of Linux This is a procedure that reads from a disk file and writes to it via socket, and the corresponding system call is as follows. read(file, tmp_buf, len); write(socket, tmp_buf, len); The program uses the read() system call to change the system from user state to kernel state, and the data from the disk is read into the kernel buffer by means of DMA (Direct memory access).