always alloc and init an Reference!
support auto and sudden termination
add board image