fix ifdef __FreeBSD__
add heder
update source
update README