Part2 - Almost done,
need to be modified:
- link support
- unlink support
- exec support