一系列优化，部分bug修复。linux下未测试