I read MQX io driver such as uart driver, and find one question.
it seems all driver don't count synchronization between more than one task .
for example, if task A is calling the uart driver's write routine to send some data, but when task A doesn't finish send all data, it is been preempted by task B .
suppose task B also call the driver's write routine, also send some data. then confict occurs. the receiver will get a part of data which is send by task A, and another part of data sent by task B
I am not sure my question is a really trouble