Login Barrapunto
Compiladores y el kernel de linux
mig21 escribe: "Estos días ha habido en la lista del kernel una discusión acerca del gcc 3.2.1. La mayoría de la gente se queja de que compila lento y que el código tampoco es muy óptimo. El propio Linus ha dicho que los desarrolladores del gcc están más preocupados por optimizar para C++ o Ada que para C. También explica sus gcc-centrismos (donde estarían las incompatibilidades con otros compiladores). A partir de ahí han empezado a discutir acerca de hacer un fork del gcc solo para compilar el kernel y otras alternativas (no para ahora) para compilar el kernel, como lcc o tcc. ¿Acabará el kernel de linux pudiéndose compilar en otros compiladores?¿Es gcc "demasiado" versátil?" ¿O con el Visual C++? :-) ¿O acabarán pasando el kernel de Linux a Mono?
Historias relacionadas
[+]
LinuxDNA: El kernel Linux compilado con Intel C++ Compiler 44 comentarios
mig21 nos cuenta: «Según se puede leer en Linux Journal, el proyecto LinuxDNA ha sido capaz de compilar una versión del kernel Linux con el compilador de Intel (Intel C++ Compiler), que no sólo compila sin errores sino que es capaz de arrancar un sistema completo basado en Gentoo. Utiliza la versión 2.6.22 del kernel, aunque el objetivo de LinuxDNA es conseguir y mantener una versión compatible con ICC del último kernel Linux, con la posible mejora de rendimiento que podría suponer. Más en LWN y reddit.»
Este hilo ha sido archivado.
No pueden publicarse nuevos comentarios.
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.

Re:¿Ada?
(Puntos:2)( http://barrapunto.com/ )
¿Por qué? Lo de los lenguajes es como las bebidas: Hay una para cada momento, y siempre dependiendo de los gustos de cada uno.
Re:Sobre la ABI
(Puntos:2, Informativo)( http://www.last.fm/user/Sugar_Kane/ )
Dicho de forma breve, el ABI (Application Binary Interface) es un "estándar" que especifica cómo es la representación binaria de un código compilado (el formato de los ficheros .o, la forma de almacenar tipos estructurados, etc.). Esto hace que se puedan enlazar a un programa una biblioteca compilada con otro compilador distinto, siempre que respete el mismo ABI.
En principio para C hay un ABI bien definido para varias plataformas. El problema es que en otros lenguajes (concretamente C++, por tener un estándar bastante reciente) los cambios que el gcc necesita realizar para ceñirse completamente al estándar implican modificaciones en el ABI, por lo que por ejemplo una biblioteca de C++ generada con gcc 2.95 no se puede enlazar con un programa generado con gcc 3.2.
Saúde!
Enhorabuena y mucha suerte.
(Puntos:2)Soy un programador muy novato, pero intentaré hacer pequeñas contribuciones en la lista y en el canal irc.
Saludos.
Precompile Headers
(Puntos:2, Informativo)( http://appfluence.com/priority_matrix_windows_detailed | Última bitácora: Domingo, 31 Julio de 2011, 16:58h )
Precompiled Headers
(Puntos:1, Redundante)( http://appfluence.com/priority_matrix_windows_detailed | Última bitácora: Domingo, 31 Julio de 2011, 16:58h )
Re:Precompile Headers
(Puntos:1)( http://www.terra.es/personal/diegocg )
Saludos.
Re:Precompile Headers
(Puntos:2)( http://icewinddale.blogspot.com/ | Última bitácora: Jueves, 30 Enero de 2014, 23:34h )
-- icewinddale.blogspot.com [blogspot.com]
Re:¿Ada?
(Puntos:1)( http://www.flickr.com/photos/runlevel0/ | Última bitácora: Jueves, 01 Noviembre de 2007, 11:37h )
Se usa mucho en sistemas del ejercito USA. En cuanto al uso comercial sí que está algo 'out', ya que aquí priman otras cosas, como rapidez, comodidad y flexibilidad.
Por cierto: El nombre ADA proviene de la pionera de la informática Ada Augusta Lovelace, hija ni má ni menos que de Lord Byron y colaboradora de Babbage. Se la considera la primera programadora y la verdad es que era una mujer preciosa, lástima que muriera a los 36 :_(
Aquí un enlace con un daguerotipo suyo :*
29A the Number of the Beast
Re:ADA se enseña en Las Palmas
(Puntos:1)( http://spoek.distrobit.net/ | Última bitácora: Viernes, 12 Enero de 2007, 23:18h )
Re:Lo normal!
(Puntos:2)( http://icewinddale.blogspot.com/ | Última bitácora: Jueves, 30 Enero de 2014, 23:34h )
Evidentemente hay más soporte de lenguajes, más estándar en C++ (cosa necesaria, porque una de las razones del fork del egcs fue que la FSF tenía muerta esta parte), etc.
-- icewinddale.blogspot.com [blogspot.com]
Re:Lo normal!
(Puntos:1)( Última bitácora: Domingo, 08 Agosto de 2004, 01:14h )
Articulo: Inside the Intel Compiler
(Puntos:2, Informativo)( Última bitácora: Domingo, 08 Agosto de 2004, 01:14h )
Inside the Intel Compiler porque los ejecutables de gcc son mas lentos que los de intel_C
Re:Articulo: Inside the Intel Compiler
(Puntos:1)( http://www.terra.es/personal/diegocg )
Re:Precompile Headers
(Puntos:1, Informativo)No suelo hacer compilaciones largas, aunque el proyecto tenga cien ficheros, sólo se compilan los que cambian. Me parece que la velocidad es completamente aceptable
De vez en cuando recompilo todo y aprovecho para hacer un descanso.
Puedo vivir perfectamente sin los headers precompilados. Sin embargo, me jode que se desprecie el make (una de las mejores herramientas que se han inventado).
Re:y que sistema usa windows?
(Puntos:1)( http://www.flickr.com/photos/jnoval/ )
Re:Lo normal!
(Puntos:3, Informativo)( http://icewinddale.blogspot.com/ | Última bitácora: Jueves, 30 Enero de 2014, 23:34h )
Cuando estás programando y desarrollando, las optimizaciones las dejas para el final, lo que está pasando -algo que repito, he notado mucho, es que la velocidad va para abajo que escarba. No sé si cosas como las cabeceras precompiladas ayudarán, pero habrá que mirarlo.
Por ponerte un ejemplo, hay gente que en WIn32 desarrolla con el compilador de Borland, aunque genere peor calidad de código que el Visual C++ y cuando tienen el programa listo compilan con Visual. Todo por la velocidad de compilación, que a la hora de desarrollo es muy importante.
No sé cuanta gente usa cruzados, donde el gcc si es útil, pero por lo que he visto por los diferentes foros, es una opción minoritaria (lo he usado para generar código para la Palm)
-- icewinddale.blogspot.com [blogspot.com]
También se enseña en Zaragoza.
(Puntos:1)Re:Precompile Headers
(Puntos:1)( http://appfluence.com/priority_matrix_windows_detailed | Última bitácora: Domingo, 31 Julio de 2011, 16:58h )
LinuxKernel en Mono, es eso posible?
(Puntos:1)El .NET Framework no necesita de un sistema operativo (con su propio kernel) donde correr?
Segun tengo entendido es conceptualmente similar a Java y por lo tanto necesita de una máquina virutal o algun tipo de soporte software local en el sistema operativo ... no?
Gracias,
Maxine
Re:¿Ada?
(Puntos:1)( http://www.micubiculo.com/ )
Re:LinuxKernel en Mono, es eso posible?
(Puntos:1)( http://flickr.com/photos/jmdana )
Hace unos meses escuché algo de un "mini" sistema operativo en Java.
Al fin y al cabo el que Java necesite de una máquina virtual no significa que no pueda ejecutarse independientemente, si lo miras desde otro punto de vista los ejecutables en C también necesitan de una plataforma (ya se que el ejemplo no es demasiado bueno pero en fin) y se puede construir un sistema operativo con el.
Morralla [flickr.com]