I have been playing with assembly and OS development for a while (in both real and protected modes) and since I was working in kernel mode ("Ring 0" a.k.a "Full Privileges") I always had to worry about setting up a stack before using stack instructions (push/pop).
Now I've been looking at user mode 32 bit assembly programs (for both windows and linux) and noticed that all the program examples I saw, simply used stack instructions without first setting a stack. What is the meaning of this? Does the OS sets the process stack itself before starting said process?
Thanks in advance,
João Silva.