Como o gerenciamento de memória funciona no Mac OS X?

12

Sou um estudante universitário que está tentando escrever um artigo de comparação e contraste entre como o Windows, Linux e Mac OS X gerenciam memória. Por exemplo, no Windows, é memória física (RAM) e memória virtual (arquivo de paginação). Como um Mac faz isso?

Até agora, as únicas informações que encontrei sobre o assunto foram pessoas gritando sobre um dos lançamentos do Mac OS X e como ele vazou memória. Lembre-se de que não sou usuário de Mac; portanto, não estou procurando instruções sobre como verificar a memória que está sendo usada, etc. Um link para um artigo ou documento que explica como funciona será muito apreciado.

Encontrei o seguinte: http://www.macosxautomation.com/applescript/apps/memory.html , mas lida mais com a coleta de lixo no Objective-C do que com o gerenciamento de memória interna do sistema operacional.

AppNoob
fonte
Não vamos manter esse segmento focado no gerenciamento de memória do OS X das versões 10.0 a 10.8 Mountain Lion. A versão 10.9 "Mavericks" mudou substancialmente o gerenciamento de memória, adicionando memória compactada e classes adicionais de páginas de memória e provavelmente merece sua própria pergunta.
bmike

Respostas:

17

A Apple documenta os níveis mais baixos do Mach Kernel e do subsistema de memória virtual bastante bem na Web como parte da documentação do desenvolvedor.

Desde que o kernel foi desenvolvido pela Carnegie Mellon University , você pode encontrar dezenas de artigos descrevendo-o com bastante facilidade.

Se esse é um nível muito baixo para o seu trabalho, temos facilmente 10 ou mais boas perguntas que abrangem uma visão mais não programada do gerenciamento de memória do OS X. Você provavelmente terá que fazer a síntese de como o OS X se compara aos outros dois, já que eu não vi isso respondido aqui até o momento.

Concentre-se nas tags de e para obter os melhores resultados em sua pesquisa:

Pelo grande número de perguntas sobre "memória inativa", você pode se concentrar na parte do gerenciamento de memória do OS X que é mais intrigante para as pessoas e, portanto, reúne mais perguntas aqui procurando explicações.

bmike
fonte
3

O Mac OS X fornece um sistema de memória virtual paginada por demanda muito semelhante ao fornecido pelo BSD Unix.

hotpaw2
fonte
1
OSX é baseado em Mach Kernel e sua VM não é BSD Unix, os programas e chamadas acima do kernel são baseados BSD, mas não o VM
user151019