No entiendo por qué núcleo de Mac OS X de 32 bits puede acceder a los 4GB de memoria (y más) mientras que Windows de 32 bits puede sólo funciona con ~ 3, 3 GB, y para el uso de más de 4GB tiene Windows de 64 bits. Incluso cuando Windows de 32 bits se ejecuta en hardware de Mac con > 4GB mem, todavía no utiliza todo. Perdón por hablar de Windows en este sitio), me gustaría entender la diferencia.
Respuestas
¿Demasiados anuncios?Lectura recomendada: Carretera a Mac OS X Snow Leopard: 64-bits, Santa Rosa, y más (y el resto del Príncipe de McLean Camino a Snow Leopard de la serie). Si usted no desea que mucho de la lectura, lo voy a resumir:
En primer lugar, usted tiene que darse cuenta de que OS X no tiene una sola 32/64-bit switch de modo similar a Windows; Es estaremos contentos de ejecución de 64 bits de aplicaciones bajo un kernel de 32 bits, o viceversa, y ambos son independientes de lo que la física del subsistema de la memoria puede soportar. La mente, el valor de bits de las aplicaciones y kernel imponen los límites de la memoria: una aplicación que se ejecuta en modo de 32 bits sólo puede direccionar 4 GB de memoria virtual, no importa cuánto se instala/apoyado en la máquina (aunque un Mac con un montón de memoria RAM se puede ejecutar varios plenamente residente de 4GB procesos a la vez); y si es el kernel en modo de 32 bits sólo puede asignar hasta 4 gb para sus diversas estructuras de datos (tabla de la página, tabla de proceso, abra el archivo de tabla, etc). Esto ya es un poco diferente de la forma en que Windows lo hace, ya que comparte el espacio de direcciones entre el núcleo y el proceso de ejecución, de modo que cada uno de ellos sólo consigue 2 GB. La ventaja de Windows es que este método no requiere de un vaciado de caché para cambiar dentro y fuera del núcleo, lo que es más rápido. Pero OS X, sólo necesita vaciar la caché si el programa y el núcleo están en modo de 32 bits; si es de 64 bits, que comparten espacio y evitar la multa de velocidad.
Ahora, a la pregunta que te estás preguntando acerca de: RAM física límites. Muchos de los primeros Macs Intel tienen la misma ~3 GB de límite de memoria que Windows de 32 bits, por la misma razón: algunos de los 4 gb de espacio de direcciones físicas es tomado por la memoria de e/S asignada, especialmente el de la tarjeta de vídeo. Después de algunos equipos Mac utiliza el Santa Rosa de apoyo chipset, lo que les permitió poner la I/O en un espacio de direcciones independiente, y el uso de hasta 4 gb de memoria RAM física. Superior-final (/incluso la más reciente) Mac han PAE, que permite mucho más memoria RAM física. El Rumor es que Windows no soporta PAE en la mayoría de sus 32-bit sistemas operativos debido a la compatibilidad de los controladores de problemas. Apple controla la mayoría de los controladores pertinentes de todos modos, así que lo hicieron el trabajo; si el hardware lo soporta, el sistema operativo sólo la utiliza.
a través de http://en.wikipedia.org/wiki/Physical_Address_Extension
El uso de PAE, sistema operativo, es necesario apoyo. Intel versiones de Mac OS X soporte PAE. El kernel de Linux soporta PAE como una opción de generación y la mayoría de las principales distribuciones de proporcionar un kernel PAE como el valor predeterminado o como una opción. FreeBSD y NetBSD también el apoyo de PAE como una opción de compilación del kernel.
Microsoft Windows implementa PAE si arrancado con la opción adecuada, pero de 32-bit ediciones de escritorio de hacer cumplir la dirección física del espacio dentro de 4 gb, incluso en el modo PAE. Según Geoff Chappell, Microsoft límites de las versiones de 32 bits de Windows 4GB debido a una restricción de licencias, y el Técnico de Microsoft Compañeros de Mark Russinovich dice que algunos conductores se encontraron a ser inestable cuando se enfrentan a direcciones físicas por encima de 4 GB.
A partir de aquí: http://www.tomshardware.com/forum/231766-45-windowsxp-recognizing
"Windows XP Professional de 32 bits está limitado a 4 gb de espacio de direcciones. Si tienes 4GB de RAM instalada, no se mostrará 4GB dentro de Windows. Lo que probablemente es el tamaño de su archivo de paginación de la resta de los 4 gb.
Algunos de este espacio de direcciones reservado para el hardware y el sistema operativo... por lo que nunca tendrá acceso a los 4GB de todos modos. Si desea acceder a 4GB+ de RAM... la mejor solución es recoger XP Pro de 64 bits... pero que solo funcionará si el P4 CPU tiene EMT64."
Una respuesta más detallada se puede encontrar en: http://www.codinghorror.com/blog/2007/03/dude-wheres-my-4-gigabytes-of-ram.html