本原理在CSDN IT1995 博客有详细说明。