14

I am a university student who has been trying to write a compare and contrast paper between how Windows, Linux, and Mac OS X manage memory. For instance, with Windows, it's physical memory (RAM) and virtual memory (paging file). How does a Mac do this?

So far, the only information I've found on the topic has been people screaming about one of the releases for Mac OS X and how it had memory leaks. Please keep in mind, I am not a Mac user, so I'm not looking for instructions on how to check memory being used, etc. A link to an article or document that explains how it works would be most appreciated.

I found this: http://www.macosxautomation.com/applescript/apps/memory.html, but it deals more with garbage collection in Objective-C than the OS's internal memory management.

1
  • Let't keep this thread to be focused on OS X memory management from versions 10.0 through 10.8 Mountain Lion. The 10.9 release "Mavericks" has substantially changed memory management by adding compressed memory and additional classes of memory pages and probably deserves it's own question.
    – bmike
    Oct 24, 2013 at 18:39

3 Answers 3

19

Apple documents the lowest levels of the Mach Kernel and the virtual memory subsystem fairly well on the web as part of it's developer documentation.

Since that kernel was developed by Carnegie Mellon University, you can find dozens of papers describing it quite easily.

If that is too low level for your paper, we have easily 10 or more good questions covering more of a non-programmer's view of OS X memory management. You'll probably have to do the synthesis of how OS X compares to the other two OS as I haven't seen that answered here to date.

Focus on the and tags for the best results in your searching:

By the sheer number of "inactive memory" questions, you can focus on the part of OS X's memory management that is most puzzling to people and hence gathers the most questions here looking for explanations.

3

See Apple's documentaion on Memory Management. Also see the answers to this AskDifferent question

3

Mac OS X provides a demand-paged virtual memory system very similar to the one provided by BSD Unix.

1
  • 1
    OSX is based on Mach Kernel and its VM is not BSD Unix, The programs and calls above the kernel are BSD based but not the VM
    – mmmmmm
    Nov 23, 2012 at 13:37

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .