调整部分功能至util，添加部分注释