|
Explicación de las carpetas 'Archivos de programa (x86)' y 'SysWOW64'Si utilizas Windows de 64 bits instalado en una computadora de 64 bits (por ejemplo la versión de 64 bits de Windows 7) probablemente te has dado cuenta que existen dos nuevas carpetas con los nombres Archivos de programa (x86) y SysWOW64 en el disco duro, que no existían en Windows de 32 bits. Puede ser que te hayas preguntado ¿qué son estas carpetas, porqué existen y qué clase de archivos contienen?. En este artículo explicaremos estas carpetas y también porqué es importante colocar en ellas los archivos con los correspondientes bits (32 ó 64 bits) en la carpeta correcta en el disco duro. Advertisement Computadoras y Windows de 32 bits versus computadoras y Windows de 64 bits Desde mediados de los 90's casi todas las computadoras que se han vendido han sido computadoras de 32 bits, y la mayoría han tenido instalado Windows de 32 bits. Pero después de la liberación de Windows 7, la venta de computadoras de 64 bits con Windows de 64 bits instalado se han incrementando bastante. En los años venideros, más y más gente tendrá Windows 64 bits instalado en computadoras de 64 bits en sus hogares u oficinas. Una razón para esto es que el precio de una computadora de 64 bits ha descendido tanto que es casi el mismo que una computadora 32 bits, y la gente preferirá computadoras de 64 bits en lugar de 32 bits ya que puede manejar mucha más memoria (RAM). Una computadora de 32 bits con Windows instalado de 32 bits puede utilizar una memoria (RAM) de 3 a 4 GB máximo. La mayor parte alrededor de 3 GB, gran parte del espacio de direcciones se usa para las tarjetas de video y otros dispositivos tales como tarjetas de red, tarjetas de sonido, etc. Esto es así aunque instale 4 GB en la computadora. Únicamente alrededor de 3 GB de RAM se utilizarán. Con Windows de 64 bits y computadoras de 64 bits las cosas son diferentes, una computadora de 64 bits con Windows de 64 bits puede manejar tanta memoria RAM como 192 GB! Los programas de 32 bits como los de 64 bits pueden correr en Windows de 64 bits Tanto los programas de 32 bits como los de 64 bits pueden correr en Windows de 64 bits. Cuando un programa de 32 bits se corre en Windows de 64 bits, se invocará a un emulador de 32 bits para manejar al programa de 32 bits.
Durante la instalación, es importante colocar los archivos en las carpetas correctas Como se mencionó anteriormente el emulador de 32 bits maneja las situaciones cuando programas de 32 bits corren en Windows de 64 bits, esto normalmente funciona bien, pero una fase sensible es la instalación del programa de 32 bits. Existen carpetas especiales en el disco duro que están destinadas únicamente para los archivos binarios de 32 bits por lo que es muy importante que el programa de instalación coloque los archivos binarios de 32 bits en estas carpetas. Algunas carpetas en el disco duro están dedicadas para archivos binarios de 32 bits únicamente y otras carpetas están orientadas únicamente para archivos binarios de 64 bits. Si colocas un archivo binario de específicos bits (32/64) en una carpeta destinada a otra cantidad de bits, el programa probablemente disfuncionará y en muchos casos ni siquiera iniciará. Ejemplos de archivos binarios que se mencionan en este artículo son archivos EXE (archivos de programa), archivos DLL y archivos OCX (componentes ActiveX). Los archivos de datos pueden generalmente colocarse en las mismas carpetas y compartirlos para aplicaciones de 32 ó 64 bits. Dos versiones diferentes de la carpeta Archivos de programa y la carpeta de sistema de Windows Windows de 64 bits tiene dos versiones diferentes de la carpeta program files y la carpeta de sistema de Windows. Una versión está orientada para archivos de 32 bits y la otra versión para archivos de 64 bits. Los nombres de estas carpetas, y los bits a que coresponden, se muestran en la tabla de abajo:
Abajo puedes ver las rutas completas de las carpetas:
La carpeta 'System32' es para archivos 64 bits y la carpeta 'SysWOW64' es para archivos 32 bits Esto puede resultar un tanto confuso, pero la carpeta System32 está dedicada para archivos 64 bits y la carpeta SysWOW64 está dedicada para archivos 32 bits. Esto puede verse un poco ilógico atendiendo a los nombres de las carpetas, pero hay una explicación para ello. Tiene que ver con la compatibilidad. Muchos desarrolladores han codificado el nombre de la ruta de la carpeta de sistema en el código fuente de sus aplicaciones con el fin de preservar la compatibilidad, si la aplicación se convierte a código de 64 bits, la carpeta de sistema de 64 bits, aún se llamará System32. Pero ¿qué ocurre con las aplicaciones de 32 bits que tienen codificada la ruta de system y están corriendo en Windows de 64 bits?. Podrías pensar ¿cómo pueden encontrar la nueva carpeta SysWOW64 sin cambios en el código del programa?. La respuesta es que el emulador redirecciona las llamadas a la carpeta System32 a la carpeta SysWOW64 de manera transparente, aún si la carpeta ha sido codificada a la carpeta System32 (como C:\Windows\System32), el emulador se asegurará que la carpeta SysWOW64 se use en su lugar. De modo que el mismo código fuente, que utiliza la carpeta System32, puede compilarse tanto en código de programa de 32 bits como de 64 bits sin cambio alguno. Recuerda: • la carpeta SysWOW64 está dedicada únicamente para archivos de 32 bits • la carpeta System32 está únicamente destinada para archivos de 64 bits Es muy importante que un archivo binario compilado a bits específicos (32 ó 64) se instale en la carpeta correcta de system. De otra forma el programa que necesita el archivo no podrá cargarlo y probablemente no trabajará como se espera. Las carpetas 'Archivos de programa' y 'Archivos de programa (x86)' Si tienes instalado Windows de 64 bits en tu computadora, quizá te has dado cuenta que existen dos carpetas para archivos de programa: la carpeta Archivos de programa y la carpeta Archivos de programa (x86). La carpeta Archivos de programa, está destinada a programas de 64 bits y la carpeta Archivos de programa (x86) se dedica a programas de 32 bits. En muchos casos el programa iniciará y correrá como se espera aún si colocas el programa en carpetas equivocadas, pero si el programa pide a Windows la ruta de archivos de programa y desea accesar los archivos instalados en la carpeta, se utilizará la carpeta errónea y el programa fallará en su función. De modo que para asegurarse de que todo funcionará como se espera, deberás siempre instalar los archivos con específico número de bits a la correcta carpeta de archivos de programa. Así que en una computadora de 64 bits con Windows de 64 bits, recuerda esto: • instala siempre un programa de 32 bits en la carpeta Archivos de programa (x86) • instala siempre un programa de 64 bits en la carpeta Archivos de programa Soportado por todas las versiones de Windows Esta forma de nombrar a las carpetas de 32 bits y 64 bits está soportada por todas las versiones de Windows de 64 bits en el mercado. Tanto versiones de cliente como versiones servidor de Windows soportan esto. Las siguientes versiones de Windows soportan esta forma de nombres: Windows XP, Windows Vista, Windows 7, Windows 8, Windows 10 y Windows Server 2003 / 2008 / 2012 / 2016 / 2019.
Más información Si deseas tener más información acerca de las diferentes versiones de Program Files y carpeta de System, y tienes un panorama general de la tecnología WOW64, deberás leer el documento Best Practices for WOW64 de Microsoft. Más información está también disponible en nuestro artículo La carpeta 'Archivos de programa' en distintos idiomas. Productos relacionados: SamLogic Visual Installer Otros artículos Más artículos están disponibles en artículo de la página índice. |
|
English |