Hi Mark,
Thanks for the utasker link.
The global interrupts of FreeRTOS are disabled before receiving the character and enabled after the reception so that the ISR is given control. (Similarly for sending a character). It is taken care by ENTER_CRITICAL() and EXIT_CRITICAL() tasks.
UART interrupts are enabled in the initialization code.
Thank you,
Karthik