Theoretically, a reason why a shell task would consume all CPU time is, that BSP_DEFAULT_IO_CHANNEL is defined to a polled mode serial driver, as in twrk60d100m.h:
#define BSP_DEFAULT_IO_CHANNEL "ttyf:"
and the shell task has a higher or equal priority than other ready tasks and MQX is configured to use FIFO scheduling for these tasks.
Try to use the serial driver in interrupt mode. In your user_config.h, define:
#define BSPCFG_ENABLE_ITTYD 1
#define BSP_DEFAULT_IO_CHANNEL "ittyd:"
as the interrupt mode serial driver is blocking by default, the shell task would block until a character is received from the stdin.
By the way, when the shell is the only active task, can you open TAD windows and show the Task Status summary window ?