Move the System Initialization out to be a independent task

*The other task will running after system finish initializing, otherwise the task will be freezed