[LUG.ro] Re: [LUG.ro] Qué versión de ubuntu instalo?

Hector Luis Gimbatti lugro@lugro.org.ar
Thu, 22 Nov 2007 20:44:17 -0300


--Boundary-01=_SRhRHuWWkUuHzUD
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

On Thursday 22 November 2007 10:02:55 Manuel Naranjo wrote:
> Hector,
>
> > El tema es que no es dificil portar las aplicaciones a 64
> > bits y entonces simplemente se hacen compatibles los codigos y no se
> > reescribe demasiado,
>
> Cuak! Esto esta mal. No es tan sencillo portar de 32 a 64. O s=E9a deber=
=EDa
> serlo. Deber=EDa no ser m=E1s que recompilar. Pero hay muchos programador=
es
> malos (y creo que m=E1s de uno ca=EDmos en esta categor=EDa alguna vez) q=
ue
> por ejemplo en vez de hacer "sizeof char" ponen directamente 16 que es
> el tama=F1o de un car=E1cter para una determinada arquitectura. O que en =
vez
> de trabajar con las macros del kernel y de la libc que son
> independientes de la plataforma, hacen trabajo a nivel de bits que anda
> bien en esa arquitectura pero posiblemente no en otra. Ni hablar los
> mocos que te podes mandar si no tenes cuidado cuando usas los punteros.

No fue mi idea ponerme tecnico ni hablar con demasiada propiedad para no pe=
rder el punto. No estamos aqui discutiendo sobre desarrollo de soft, solo q=
uise mostrar porque no parece haber diferencia entre el rendimiento de un p=
rocesador de 32 bits contra uno de 64 en la practica.

Ahora, lo que comentas es cierto, pero aun asi cuando uno se refiere a que =
"no es dificil portar" esta hablando de un trabajo total de escritura, del =
cambio de algoritmos y demas. Las aplicaciones que un usuario final (promed=
io) utiliza son facilmente portadas a 64 bits, y se puede ver claramente, y=
o aun no encontrado una aplicacion (salvo opera , y openoffice) que no ande=
 en 64 bits.

>
> As=ED que a no confundir. Es f=E1cil portar una aplicaci=F3n cuando s=F3l=
o es
> cuesti=F3n de compilarla ya que esta bien hecha. Sino es un parto, ten=E9s
> que meterte a releer todo el c=F3digo de nuevo por las dudas, y no
> confiarte de los errores del gcc. Ya que si son errores como lo del
> sizeof posibliemente tu compilador no los detecte.
>

Ahora no quiero caer sobre la ambiguedad de la palabra "facil", pero seamos=
 realistas, aun teniendo que reescribir y tener en cuenta lo que planteas, =
aun teniendo que reescribir algunos cientos de algoritmos basados en operac=
iones de bits, pelearse con librerias, etc etc, eso no lo convierte en un "=
gran trabajo de portacion", como podria ser portar una aplicacion de i686 a=
 mips, alpha o arm.
Si tu aplicacion desarrolada en 32 bits,  con solo compilarla puedes utiliz=
arla en 64 bits, entonces ni siquiera existe el "port", no has hecho nada. =
Es cierto que uno se refiere a auna aplicacion como portable si funciona en=
 distintas arquitecturas/sistemas operativos/..., pero como yo he utilizado=
 la palabra, creo que se entiende que me refiero al hecho de "hacer andar" =
una aplicacion de 32 bits en 64 mediante la rescritura, adaptacion, o como =
quieras llamarlo.=20

> Espero este mail sirva para aclarar un cacho las cosas, y dejarnos bien
> parados de vez en cuando a aquellos que tratamos de no programar para
> una arquitectura en particular ;).
>
> Saludos,
> Manuel
Si ha servido, para todos.

Ahora, un ultimo punto.=20
Si alguna vez has utilizado alguna libreria matematica (ie GMP) o has utliz=
ado alguna aplicacion que la utilize o bien que sus librerias utilizen arit=
metica (ie GAP, pari, ... ), vas a notar diferencia entre una arquitectura =
de 32 bits y una de 64, asi como se nota una diferencia importante en Mathe=
matica, maple, etc. Estas aplicaciones HACEN uso de 64 bits, Y ES BUENO que=
 lo hagan, ya que la diferencia es notable.

=2D-=20
H^n(L,G)
--Boundary-01=_SRhRHuWWkUuHzUD
Content-Type: text/html;
  charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html><head><meta name=3D"qrichtext" content=3D"1" /></head><body style=3D"=
font-size:8pt;font-family:Lucida Grande">
<p>On Thursday 22 November 2007 10:02:55 Manuel Naranjo wrote:</p>
<p><span style=3D"color:#00ca00">&gt; Hector,</span></p>
<p><span style=3D"color:#00ca00">&gt;</span></p>
<p><span style=3D"color:#009000">&gt; &gt; El tema es que no es dificil por=
tar las aplicaciones a 64</span></p>
<p><span style=3D"color:#009000">&gt; &gt; bits y entonces simplemente se h=
acen compatibles los codigos y no se</span></p>
<p><span style=3D"color:#009000">&gt; &gt; reescribe demasiado,</span></p>
<p><span style=3D"color:#00ca00">&gt;</span></p>
<p><span style=3D"color:#00ca00">&gt; Cuak! Esto esta mal. No es tan sencil=
lo portar de 32 a 64. O s=E9a deber=EDa</span></p>
<p><span style=3D"color:#00ca00">&gt; serlo. Deber=EDa no ser m=E1s que rec=
ompilar. Pero hay muchos programadores</span></p>
<p><span style=3D"color:#00ca00">&gt; malos (y creo que m=E1s de uno ca=EDm=
os en esta categor=EDa alguna vez) que</span></p>
<p><span style=3D"color:#00ca00">&gt; por ejemplo en vez de hacer &quot;siz=
eof char&quot; ponen directamente 16 que es</span></p>
<p><span style=3D"color:#00ca00">&gt; el tama=F1o de un car=E1cter para una=
 determinada arquitectura. O que en vez</span></p>
<p><span style=3D"color:#00ca00">&gt; de trabajar con las macros del kernel=
 y de la libc que son</span></p>
<p><span style=3D"color:#00ca00">&gt; independientes de la plataforma, hace=
n trabajo a nivel de bits que anda</span></p>
<p><span style=3D"color:#00ca00">&gt; bien en esa arquitectura pero posible=
mente no en otra. Ni hablar los</span></p>
<p><span style=3D"color:#00ca00">&gt; mocos que te podes mandar si no tenes=
 cuidado cuando usas los punteros.</span></p>
<p></p>
<p>No fue mi idea ponerme tecnico ni hablar con demasiada propiedad para no=
 perder el punto. No estamos aqui discutiendo sobre desarrollo de soft, sol=
o quise mostrar porque no parece haber diferencia entre el rendimiento de u=
n procesador de 32 bits contra uno de 64 en la practica.</p>
<p></p>
<p>Ahora, lo que comentas es cierto, pero aun asi cuando uno se refiere a q=
ue &quot;no es dificil portar&quot; esta hablando de un trabajo total de es=
critura, del cambio de algoritmos y demas. Las aplicaciones que un usuario =
final (promedio) utiliza son facilmente portadas a 64 bits, y se puede ver =
claramente, yo aun no encontrado una aplicacion (salvo opera , y openoffice=
) que no ande en 64 bits.</p>
<p></p>
<p><span style=3D"color:#00ca00">&gt;</span></p>
<p><span style=3D"color:#00ca00">&gt; As=ED que a no confundir. Es f=E1cil =
portar una aplicaci=F3n cuando s=F3lo es</span></p>
<p><span style=3D"color:#00ca00">&gt; cuesti=F3n de compilarla ya que esta =
bien hecha. Sino es un parto, ten=E9s</span></p>
<p><span style=3D"color:#00ca00">&gt; que meterte a releer todo el c=F3digo=
 de nuevo por las dudas, y no</span></p>
<p><span style=3D"color:#00ca00">&gt; confiarte de los errores del gcc. Ya =
que si son errores como lo del</span></p>
<p><span style=3D"color:#00ca00">&gt; sizeof posibliemente tu compilador no=
 los detecte.</span></p>
<p><span style=3D"color:#00ca00">&gt;</span></p>
<p></p>
<p>Ahora no quiero caer sobre la ambiguedad de la palabra &quot;facil&quot;=
, pero seamos realistas, aun teniendo que reescribir y tener en cuenta lo q=
ue planteas, aun teniendo que reescribir algunos cientos de algoritmos basa=
dos en operaciones de bits, pelearse con librerias, etc etc, eso no lo conv=
ierte en un &quot;gran trabajo de portacion&quot;, como podria ser portar u=
na aplicacion de i686 a mips, alpha o arm.</p>
<p>Si tu aplicacion desarrolada en 32 bits,  con solo compilarla puedes uti=
lizarla en 64 bits, entonces ni siquiera existe el &quot;port&quot;, no has=
 hecho nada. Es cierto que uno se refiere a auna aplicacion como portable s=
i funciona en distintas arquitecturas/sistemas operativos/..., pero como yo=
 he utilizado la palabra, creo que se entiende que me refiero al hecho de &=
quot;hacer andar&quot; una aplicacion de 32 bits en 64 mediante la rescritu=
ra, adaptacion, o como quieras llamarlo. </p>
<p></p>
<p><span style=3D"color:#00ca00">&gt; Espero este mail sirva para aclarar u=
n cacho las cosas, y dejarnos bien</span></p>
<p><span style=3D"color:#00ca00">&gt; parados de vez en cuando a aquellos q=
ue tratamos de no programar para</span></p>
<p><span style=3D"color:#00ca00">&gt; una arquitectura en particular ;).</s=
pan></p>
<p><span style=3D"color:#00ca00">&gt;</span></p>
<p><span style=3D"color:#00ca00">&gt; Saludos,</span></p>
<p><span style=3D"color:#00ca00">&gt; Manuel</span></p>
<p>Si ha servido, para todos.</p>
<p></p>
<p>Ahora, un ultimo punto. </p>
<p>Si alguna vez has utilizado alguna libreria matematica (ie GMP) o has ut=
lizado alguna aplicacion que la utilize o bien que sus librerias utilizen a=
ritmetica (ie GAP, pari, ... ), vas a notar diferencia entre una arquitectu=
ra de 32 bits y una de 64, asi como se nota una diferencia importante en Ma=
thematica, maple, etc. Estas aplicaciones HACEN uso de 64 bits, Y ES BUENO =
que lo hagan, ya que la diferencia es notable.</p>
<p></p>
<p>-- </p>
<p>H^n(L,G)</p>
</body></html>
--Boundary-01=_SRhRHuWWkUuHzUD--