http://wenku.baidu.com/view/6af47921af45b307e8719799.html
http://39382728.blog.163.com/blog/static/35360069201010309352535/
http://blog.csdn.net/huangzhtao/article/details/6048852