Quetions about the task scheduler

The images you shared show pxCurrentTCB as NULL - it does not seem correct and seems like a memory corruption. Can you use data breakpoint to find the cause of memory corruption? You can declare a variable next to pxCurrentTCB (say pxCurrentTCB2) and put a data breakpoint on it. Since this variable should never be changed, any change detected is a memory corruption. This relies on the assumption that the compiler will put pxCurrentTCB2 next to pxCurrentTCB and the corruption is not limited to 4 bytes only.