What you describ is correct. As for the code, I read it. A big array is used as a stack and the stack pointer moved to the bottom of such array at the very beginning of the .c program.
Wish experts answer my questions in c programming under Unix in a real time system: Thanks! 1. how to enlarge the stack size in a c program? 2. should main() be the driver function in in a c program?