[lab5-part2] add locks and dorelease to keep consistent, though bugs exist
[lab5-part2] fix bugs: add locks during create root.
[lab5-part2] add header filess for ubuntu environment