I am exploring more in depth how c++ handles memory management. More specifically I am trying to figure out the relationship between stack frames and the heap.
I have so far been able to find out that the stack frame is the local segment we appropriate to an individual function. In assembly language it is done through the manipulation of the base pointer that stack pointer and reserving a slot in the stack segment big enough to hold your local variables. Then any parameters there may be you simply push and pop off the stack. I am wondering if this is correct.
The heap used by a program I have been unable to find any concrete information about.
I was wondering if anyone can explain how these work in c++ possibly in assembly language as well for use as a reference or if anyone can provide me with links to resources were I might be able to learn about these.
Best Regards, Bear