what is stack winding and stack unwinding

helo can u tell me what do you mean by stack winding and stack unwinding
Regards,
Amit

Sounds a little like homework. However:
When program run, each function(data, registers, program counter, etc) is mapped onto the stack as it is called. Because the function calls other functions, they too are mapped onto the stack. This is stack winding.

Unwinding is the removal of the functions from the stack in the reverse order.

Where this starts getting fun is when you have exceptions or setjmp/longjmp which let you unwind the stack without returning.

Some platforms also have "structured exception handling" (OS/2,Win32) which are basically a standardised way of stack unwinding in exceptional conditions.

Some platforms (eg 32bit PA-RISC) have a bottom-up stack rather than a top-down.