3 votos

¿Cómo saber que las extensiones de mi núcleo están listas para 64 bits?

¿Hay una forma fácil de saber si todas mis extensiones de kernel "sobrevivirán" al arranque con un kernel de 64 bits? Por supuesto que puedo probar el "arranque de 6-4 dedos", pero tal vez hay una pieza de hardware que uso con poca frecuencia y que no funcionará cuando la use en un mes, lo que me hace preguntarme qué fue lo que falló.

Puedo ver una lista de extensiones en System Profiler > Software > Extensiones, con 8 de ellas listadas no como "64-bit (Intel)", pero 5 de ellas son "Pseudoextensiones" con una dirección de carga "incorporada al kernel", y las otras 3 están relacionadas con CHUD y probablemente desaparecerán una vez que actualice Xcode? ¿Es suficiente para concluir que no tendré problemas? ¿O hay extensiones que no están cargadas ahora y que puedo probar de alguna manera?

6voto

Clay Nichols Puntos 569

Por lo que sé, el Perfilador de Sistema no mostrará información de ningún .kext que se esté cargando y que se encuentre en otro lugar además de la carpeta /Sistema/Biblioteca/Extensiones/.

Para obtener información completa sobre las extensiones del núcleo que están actualmente cargadas y en uso en tu Mac, puedes usar el kextstat herramienta de línea de comando.

Abra la aplicación Terminal (en la carpeta /Aplicaciones/Utilidades/), escriba lo siguiente en el indicador y luego presione return:

 kextstat

Obtendrás una gran lista de todas las extensiones del núcleo cargadas. Principalmente querrás centrarte en los identificadores de los paquetes de los .kexts cargados. (Esa es la cadena de nombres de dominio al revés como "com.apple...."). Deberías poder eliminar los que incluyen "com.apple", ya que serán de Apple y deberían tener una versión K64. Una vez que te hayas deshecho de ellas, tendrás que repasar las restantes para asegurarte de que están construidas como versiones universales de K32+K64, o si necesitas asegurarte de que tienes las últimas actualizaciones.

Por ejemplo, después de eliminar todas las teclas de Apple en la salida que obtengo, tengo las siguientes teclas en la lista. Desde que cambié a K64 hace un año más o menos, todos estos están en orden así que todo está bien.

MacPro:~ mdouma46$ kextstat
Index Refs Address          Size   Wired  Name (Version) <Linked Against>
73  0 0xffffff7f8111a000 0x8000 0x8000  com.AmbrosiaSW.AudioSupport (3.2) <72 5 4 3 1>
81  0 0xffffff7f811bf000 0x9000 0x9000  jp.plentycom.driver.SteerMouse (4.0.2) <55 29 24 5 4 3>
105 0 0xffffff7f81499000 0x5000 0x5000  com.Cycling74.driver.Soundflower (1.5.2) <72 5 4 3>
115 0 0xffffff7f814bf000 0xd1000 0xd1000 com.vmware.kext.vmx86 (3.1.2) <7 5 4 3 1>
116 0 0xffffff7f81590000 0xc000 0xc000   com.vmware.kext.vmci (3.1.2) <5 4 3 1>
117 0 0xffffff7f8159c000 0x7000 0x7000  com.vmware.kext.vmioplug (3.1.2) <29 24 5 4 3 1>
118 0 0xffffff7f815a3000 0xa000 0xa000  com.vmware.kext.vmnet (3.1.2) <5 4 3 1>
119 0 0xffffff7f815ad000 0x2000 0x2000  com.nvidia.CUDA (1.1.0) <4 1>

2voto

Nicholas Puntos 398

kextfind

El kextfind La utilidad localiza e imprime información, o genera informes, sobre las extensiones del núcleo (KEXTs).

Ejemplos

El siguiente comando busca /System/Library/Extensions para los KEXTs que no incluyen la arquitectura x86_64:

kextfind -not -arch x86_64

Una búsqueda extendida, para incluir los dos caminos más utilizados para la instalación:

kextfind -f /Library/Extensions -e -not -arch x86_64

Otros directorios

Los KEXTs también pueden ser instalados en ROM o dentro de un paquete de aplicaciones pero la búsqueda de la llave no puede ser recursiva.

En la época del Leopardo había un sugerencia que los KEXTs podrían ser encontrados en el /Library/StartupItems en la zona. Como El SystemStarter está desaprobado así que puede ser razonable omitir esta área cuando se usa el kextfind.

Páginas del manual

Los usuarios de OS X pueden ver la página actual del manual en la Terminal. En un navegador web, vaya a:

  • x-man-page://8/kextfind

En la biblioteca de desarrollo de Mac OS X la Edición de 2009 de la página está desactualizada.

Gracias

Para ghoppe para sensibilización sobre el kextfind .

1voto

Mykroft Puntos 4292

Use el file comando.

Ejemplo:

$ cd /System/Library/Extensions/KeyspanUSAdriver.kext/Contents/MacOS
$ file KeyspanUSAdriver 
KeyspanUSAdriver: Mach-O universal binary with 2 architectures
KeyspanUSAdriver (for architecture x86_64): Mach-O 64-bit kext bundle x86_64
KeyspanUSAdriver (for architecture i386):   Mach-O object i386

Fíjate que tiene ambas arquitecturas, x86_64 y i386.

0voto

  1. Ejecutar System Profiler
  2. En Software, haga clic en Extensiones.
  3. Observe la columna de 64 bits en la lista de la derecha.

Nota: Si no ves esta opción, ve al menú "Ver" y asegúrate de que está seleccionado "Perfil completo".

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X