[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: rendimiento de scripts



Iñigo Tejedor Arrondo wrote:
>
> ¿es realmente C más rápido que bash? ¿o depende de las circunstancias?
>

En un lenguaje interpretado, como en los scripts de Bash, hay que interpretar primero cada instrucción. La conversión a código máquina o el enlace (link) a librerías se hacen a posteriori y por eso es más lento en programas grandes.

<<-
Los lenguajes compilados son lenguajes de alto nivel en los que las instrucciones se traducen del lenguaje utilizado a código máquina para una ejecución rápida. Por el contrario un lenguaje interpretado es aquel en el que las instrucciones se traducen o interpretan una a una siendo típicamente unas 10 veces más lentos que los programas compilados.
->>
Fuente: http://es.wikipedia.org/wiki/Lenguaje_compilado

Además, en la mayoría de los scripts de bash se acaban ejecutando programas externos, como /bin/grep, /usr/bin/sort, /usr/bin/find, /bin/cat, ... lo cual sobrecarga bastante.

También, naturalmente, depende del tipo y tamaño de los datos con los que vayas a trabajar. Yo no me pondría a procesar un archivo de 1Gbyte en un script de Bash, ni lo usaría para cálculos científicos (aunque prefiero no jurarlo, que luego me vienen recordando que la NASA usa Python).

Aparte de eso, para acabar de rizar el rizo, resulta que ¡Bash está escrito en C! Igual que muchos intérpretes y módulos de otros lenguajes de script conocidos (Perl, Python, ...)

(Perdón, se me escapó no enviarlo a la lista nada más, inicialmente)

Saludos
--
--
Gabriel Núñez~
   -
gabriel.nnl(at)estudiante.uam.es -- gabriel.nunez(at)hispalinux.es
//May The Source Be With You//
--//--
--//-- Infórmese sobre las patentes de software: /-
http://proinnova.hispalinux.es/
http://eupat.ffii.org/



Reply to: