jueves, octubre 30, 2008
|
Hoy los envío a que lean un muy interesante artículo que resume la historia de la transición del Mac OS X desde un sistema operativo de 32 bits a uno de 64 bits, ya que tiene muchas lecciones para Microsoft Windows, así como un ejemplo a seguir por la comunidad del Software Libre con Linux.
Antes de empezar, muchos se preguntarán ¿y cuál es la ventaja de 64 bits? Pues inmediatamente no es obvia para aplicaciones actuales, pero aplicaciones que tomen ventaja de 64 bits podrán obtener al menos dos beneficios importantes inmediatamente. El primero y mas obvio es acceso total a memoria de muchos mas de 4GB (en teoría a mas de 2 millones de TeraBytes), lo que significa mucho mas espacio para trabajar con archivos mas grandes. Y lo segundo es la posibilidad de procesar instrucciones de bajo nivel con el doble del largo, lo que significa que sería posible acelerar considerablemente muchos tipos de aplicaciones, en particular aquellas que dependan de datos multimedia o flujo de datos en modo stream (en cadena), como decodificadores de video y programas paralelizados. Lo primero a entender sobre la transición de OS X desde 32 a 64 bits, es que desde el OS X 10.4 Tiger, Apple ya tenía una fundación base de UNIX en 64 bits, lo que significó que desde hace ya varios años los programadores podían escribir aplicaciones, aun fueran en 32 bits, que funcionaban sobre 64 bits, empezando a alisar el camino para lo vendría. Con esta versión ya se podían crear aplicaciones en 64 bits, pero sin interfaces de usuario (es decir, aplicaciones tipo servidores como Apache, MySQL, etc), ya que las librerías para generar entornos gráficos aun eran 32 bits. Para OS X 10.5 Leopard (la versión actual), Apple creó la versión de 64 bits de Cocoa (su marco de librerías para programar a OS X, incluyendo soporte gráfico), lo que ya permite desde hoy escribir aplicaciones que son totalmente en 64 bits. Algo interesante sin embargo, es que el corazón del sistema operativo (el kernel) así como todos los drivers, son 32 bits, pero Apple esconde todo esto de los programadores, quienes tienen la opción de ver el sistema como uno de 32 o 64 bits. Ahora, para la próxima versión 10.6 Snow Leopard, Apple va a completar la transición a un sistema operativo completamente de 64 bits, pero totalmente compatible con 32 bits. Eso significa un kernel y drivers de 64 bits. Algo interesante aquí es los que saben del diseño de Sistemas Operativos se pregunten cómo Apple se hará para convertir todos sus drivers a 64 bits (ya que un kernel de 64 bits requiere drivers de 64 bits), y la respuesta es bien sencilla: Apple controla todo su hardware, por lo que los únicos drivers que tiene que convertir a 64 bits son aquellos que se utilicen en sus Macs y MacBooks que Apple decida serán compatibles con Snow Leopard. Eso significa relativamente poco trabajo para Apple, ya que solo tendrá que soportar máquinas vendidas en los últimos 4 a 5 años, lo que significa soportar solo unas 4 a 6 tarjetas de video, unas 3 o 4 tarjetas de redes, y así sucesivamente. Algo interesante es que Apple desde hace ya varios años creó el concepto de un Binario Gordo (Fat Binary), que significa que los desarrolladores pueden desarrollar sus aplicaciones, compilarlas tanto para PowerPC como para x86, tanto en entornos de 32 bits y 64 bits, e incluirlas todas en el mismísimo archivo instalador. Esto obviamente incrementa el tamaño de los binarios (aunque son los desarrolladores que deciden hacer esto, ya que es perfectamente factible hacer binarios diferentes para cada arquitectura), pero tiene la gran ventaja de que con el mismo instalador puedes instalar versiones de aplicaciones que funcionan en casi todas las Macs en los últimos años, así como en las que vendrán hacia el futuro cercano. Al final de todo el asunto, la lección principal de todo esto es entender que Apple definió una estrategia que le ha permitido transicionar toda su linea de Macs y MacBooks a un entorno totalmente de 64 bits, sin ningún trauma a sus usuarios, y con el menor trauma a los desarrolladores de software. Contrasten esto con Windows (y similarmente con Linux), en donde debes elegir de antemano si compras e instalas una versión de 32 o 64 bits de Windows, y después estás encerrado en uno o en el otro, problema que ha causado que las versiones de 64 bits de Windows sean adoptadas muy lentamente debido a que muchos programas y drivers no están disponibles para el Windows de 64 bits, y por tanto eso hace que muchas personas prefieran las versiones de 32 bits. enlace al artículo autor: josé elías |
9 comentarios |
Apple / OS X , Hardware , Software |
Comentarios
Añadir Comentario |
"No me puedo creer esto... es como si fuese una novela escrita por Dan Brown... esto es inconcebible."
en camino a la singularidad...
©2005-2024 josé c. elías
todos los derechos reservados
como compartir los artículos de eliax
Seguir a @eliax
No veo cual es la lección, creo mas bien que es una forma de darle uso a lo que apple te vende a gran precio.
Creo que esta lección aplicaria a windows, pero no creo que aplique a linux, ya que tanto windows como apple son integrados con computadoras seleccionadas por las grandes marcas, HP, Apple, Dell, los cuales ultimamente ofrecen procesadores con capacidades de 64bits, cosa que deberian de utilizar de manera adecuada, por lo menos apple da un paso adelante en este sentido, mientras windows sigue vendiendo sus versiones 32bits con las pc modernas de marca reconocida.
Al contrario con linux, las distribuciones mas conocidas ofrecen versiones tanto de 32bits como de 64, y esto es bueno, ya que cada persona puede elegir la version que mas le ajuste a su capacidad de hardware, hay que recordar que mucha gente utiliza Linux en procesadores de 32bits.
El aspecto mas importante en linux serian los desarrolladores, ya que muy pocos desarrollan sus aplicaciones tanto para 32bits como 64bits, son muy ppocos los desarrolladores que utilizan estas capacidad y ofrecen el source o binario con capacidades tanto de 64bits como 32bits.