   Computer Basics - How RAM is allocated/deallocated/managed?
  I've been wondering this for quite a while, and still haven't really figured it out...I'm wondering, how exactly does memory allocation / deallocation work on the RAM? What happens when memory is allocated? Does it set up some sort of boundary? And for deallocation, does it simply 'take down' the boundary? Does the OS handle it, or does the CPU (or machine, or whatever it is) handle the allocations?Does anyone have any good, somewhat easy-to-understand material on this? I've looked around on Wikipedia some, but I haven't found something pertaining to this precisely...The reason I'm asking is because I've been programming in C++ for around 1.5 years, and I've always wanted to know the specifics of what was going on in the background.</n00b>EDIT: Well, I've a new question: Is there also any good articles that explain in depth how computers carry out basic operations (int + floating pt add, sub, mult, div, etc)? If it gets really machine-specific, then I'd just like to know how x86 machines do it (or however you would classify them).Curiosity with ignorance. A grand couple.   
  I assume you want to know about this at a low level. Do you know what virtual memory is? If not, that's the place to start.   ;  If you want to know the real nitty gritties as far as Windows and x86 based computers go: Memory Management: What Every Driver Writer Needs to Know.Another source of information - that covers memory as well as basic operations are the cpu manuals that Intel provides: Intel® Pentium® Processors - Manuals;  Thanks for the help!Now all that concerns me is finding the time to read all of this... Hoping this will help me in programming.   ;  If you're looking for something easier to digest, you could start with this wikipedia entry: Central processing unit and pursue the various hyperlinks that you find interesting.   