[ubuntu-ar] Ubuntu 32bit o 64bit

Pablo Lillia pablofer72 at yahoo.com.ar
Sun Mar 23 20:39:16 GMT 2008


El 23/03/2008 14:20, Lucio Saccal escribió:
> Juan Bas wrote:
>> aprovecho el tema para preguntar, ¿como se programa para 64 bits?, 
>> ¿Por qué hay tan pocos programas?
> Juan: Supongo que sera cosa del compilador ocuparse de hacerlo funcionar 
> correctamente en sistemas de 64 bits...
> no creo que el programador de lenguajes de alto y medio nivel.... deba 
> preocuparse por cambiar sus tecnicas de programacion
> sobre un sistema de 64 bits....
> 
> Supongo que en cuanto los compiladores se acomoden mejor a 64 bits los 
> sistemas funcionaran mejor!!!
> 
> Con respecto a los drivers o controladores, cuyo acceso al hardware esta 
> escrito en bajo nivel creo que esto si
> podria llegar a causar problemas de compatibilidad...
> 
> A mi modo las soluciones podrian ser 2:
> 1-crear una capa de compatibilidad asi los drivers  de 32 bits serian 
> emulados y funcionarian en
> 64 bits aunque no aprobechando todos sus beneficios
> 2-reescribir los drivers para 64 bits de los dispositivos ya existentes 
> y asi poder aprobechar todas
> las capacidades de 64 bits (cosa que no creo que las companias de 
> software quieran hacer ya que
> te quieren forzar a que compres nuevo hardware con drivers disponibles 
> en 64.)
> 
> Con respecto a aplicaciones de gestores de base de datos o similares que 
> deben tener un muy eficiente acceso a
> dispositivos ... creo que ya estan performados para 64 bits y que la 
> arquitectura de 64 podria dar mucha
> mas performance.. al momento de jugar con las posiciones de memoria y de 
> disco.
> hace varios anos que hay servers corriendo en 64 bits....
> 
> Opiniones???
> Ideas???
> 
> Saludos
> Lucio.
> 

El núcleo de Linux y la mayoría del software ya está más que preparado 
para los 64 bits, y en varias arquitecturas, en mayor o menor medida. De 
hecho, si mal no recuerdo, en sus inicios, creo que el primer port del 
kernel fue hacia Alpha 64.

Y el compilador GCC también tiene el soporte, como todas las principales 
librerías. El problema, como siempre, somos los programadores :D

El tema es que no basta con recompilar, muchas veces se asume (mal) en 
el código fuente que un tipo de datos será de tantos bits y tal 
alineación, y luego, al portar a otra arquitectura, resulta no que era 
taaaaan así :p. En realidad, esto sucede mucho más con programas 
escritos en C y C++, que tienen más bajo nivel, y cuyos tipos de datos 
básicos solo definen tamaños mínimos, pudiendo cambiar el tamaño real de 
una arquitectura a otra, así como la alineación de los bytes, por 
razones lógicas de optimización. En otros lenguajes son más estrictos en 
estas definiciones, y hay ventajas y desventajas en todo esto, y es un 
tema para largo. De todas formas, y lo más importante, es que se puede 
programar de forma de evitar estos problemas, incluso con lenguajes como 
estos, usando los tipos definidos por el usuario, de forma que estos 
sean neutrales (o siempre del mismo tamaño en cualquier arquitectura), y 
sin asumir una alineación. Incluso, no solo hay convenciones desde hace 
años, sino que tenemos librerías estables (como la GLib) que ya 
resuelven todo esto. Resumiendo: con un mínimo de prolijidad, esto está 
resuelto.

Pero el problema subsiste con las estructuras de datos definidas por los 
programadores. Se debe ser igualmente de cuidadoso al hacerlo y tener en 
cuenta las mismas cuestiones. Y cuando se pasan por alto, se dificulta 
(a veces mucho) la portabilidad de la aplicación.

Así y todo, siempre y cuando exista el código fuente, como sucede con el 
Software Libre, existirá la posibilidad de que alguien lo corrija. En 
cambio, con software privativo (caso Adobe Flash, Skype, Google Earth, 
etc) dependemos exclusivamente de que la empresa dueña del producto 
decida portarlo y soportarlo (y lógicamente pesará más una decisión 
económica, que puede ser lógica o arbitraria, y puede no coincidir con 
la necesidad real del usuario). Así es como terminamos haciendo chapuzas 
para usar el plugin de flash en 64 bits :p, aunque se viene avanzando 
mucho en la alternativa.

Slds.-
Pablo






More information about the Ubuntu-ar mailing list