Tecnología, Internet y juegos
106 meneos
1227 clics
Este envío tiene varios votos negativos. Asegúrate antes de menear

Desarrolladores indios rediseñan el kernel de Linux con programación orientada a objetos y soporte para C++ [ENG]

Desarrolladores indios han creado BOSSMOOL en un esfuerzo para rediseñar el kernel de Linux añadiendo abstracciones mediante orientación a objetos junto a un framework para poder crear controladores de dispositivos en C++ además de otra serie de características.

| etiquetas: kernel , linux , rediseño , oop , poo , c++ , bossmool
70 36 17 K 22
70 36 17 K 22
Comentarios destacados:                
#3 #1 Y parece que fue ayer que andaban cazando bisontes con sus arcos y flechas.
  1. Que virguerías hacen, son cosas del demonio
  2. #1 Y parece que fue ayer que andaban cazando bisontes con sus arcos y flechas.
  3. #3 Custer lo arregló todo de buen rollo. :troll:  media
  4. No quiero ni pensar cómo debe ser ese código.
  5. #3 Sinceramente, para hacer esa monstruosidad se podían haber quedado cazando bisontes.
  6. #6 O enviando sondas a Marte
  7. Estáis haciendo el indio?
    Yo entiendo que son de la India.
  8. #9 en ese caso #4 está equivocado, y deberían enviar a los de la Compañía de las Islas Orientales a escarmentarlos de nuevo.
  9. Débiles, si no saben programar qué no se metan.
    Fdo.- Linus Torvalds
  10. Linus Torvalds confesó una vez que el hizo y sigue haciendo el kernel en C porque es el único lenguaje que conoce.
  11. Desconozco en Ascii como son las señales de humo.
  12. #3 Fuera el tema "indios", en la india el 90% de las personas según leí en articulo no vieron en su vida un cajero automático y viven en la extrema pobreza, o sea no andaran cazando bisontes pero por esa época seguramente.

    El otro 9% deben ser programadores xD
  13. ¡¡HEREJIAS!! Cualquier día vemos el kernel hecho en C#,o algo peor...¡¡en Java!!
  14. al principio tenia las típicas dudas de principiante sobre el c++, sobre todo teniendo una larga experiencia con otros lenguajes. 10 años después ya puedo asegurar sin temor que el c++ es un aborto del infierno.
  15. Frikis. Igual que se fueron los deportes deberían irse estas particularidades que sólo os interesan a los programadores. Borreguéame!
  16. #15 imposible, no puedes ejecutar el CLR ni la JVM sin un kernel por encima.
  17. #5 Quien haya trabajado con empresas indias sabra muy bien lo que estas diciendo :-)
  18. ALEJAD DE MI ESE ABORTO. COMO SE PASE A C++, ME PASO A OPENBSD Y PLAN9 TRAS ACABAR EL CICLO. VADE RETRO SATANA!!
  19. La pregunta sería ¿funciona?
  20. #17 --> #16 Yo tambien quiero saber por que es tan "monstruoso". Que me digas el asm venido a más (esto... C), pero C++ me parece una virgueria.... igual no he programado tanto...
  21. #15 No es por quitarle la razón a #19 (que la tiene, es necesario un kernel para ejecutar la JVM) pero como curiosidad:
    en.wikipedia.org/wiki/JavaOS

    Recuerdo cuando se empezó a hablar del proyecto, de looking glass (es.wikipedia.org/wiki/Proyecto_Looking_Glass).. como molaba Sun. Soñaba con comprarme un Sun Fire en aquella época.

    Después todo se fue al traste pero Sun siempre me ha parecido una de las empresas más "molonas" en el mundillo: Java, Solaris, StarOffice, por supuesto los SPARC... batallaban en todos los terrenos.
  22. No sabía que el kernel Linux actual no tuviese soporta para C++
    Tengo que ponerme al día...
  23. Lo cual por definicion es mucho mas mantenible pero tambien ligeramente mas lento. La POO añade sobrecarga, en sistemas en tiempo real se sigue utilizando estructurada y con razon. De todas formas imagino que en un buen procesador y si esta bien hecho la cosa debe ir como un rayo. Mi admiracion por este equipo.
  24. #19 #24 Veo que a todo hay que ponerle la etiqueta <ironic>...
  25. Es una noticia tan importante que me voy corriendo a comentarla -aunque en realidad no se que comentar porque no me he enterado de nada-
  26. #21 Quieres decir ~satanás();? :troll:

    #26 Lo cual por definicion es mucho mas mantenible

    Lo hace mucho más mantenible… ceteris paribus, es decir, si la calidad general del código es la misma.
  27. ¿Es impresión mía o los indios están muy a la vanguardia en desarrollo software? Más bien en produccion de "mano de obra software".

    Da un poco de miedito, sobre todo viendo el nivel de mucha gente...
  28. Los indios son gente muy buena en programación.
  29. El kernel de Linux tiene que ser algo así como el séptimo círculo de los infiernos de Dante.
  30. En serio deberíamos hacer un Menéame solo para tecnología, me tienen las bolas llenas los que votan irrelevante solo porque a ellos no les interesa
  31. #27 No hombre, había captado la ironía (con lo del C# era evidente). Solo lo he comentado como curiosidad, para demostrar que a veces la realidad alcanza nuestras más disparatadas ocurrencias :-)
  32. Para #5 y #20. Hay solo dos formas de programar orientando a objetos, muy bien o muy mal.
  33. #22 Y no es tan tonta, siendo indios...
  34. El kernel de Linus o el kernel Linux, pero no el kernel de Linux. No hay nadie llamado Linux ni un sistema operativo con tal nombre
  35. #35 No te canses: la POO es para nenazas de CFGS o ingenieros de los de promoción 2000 en adelante. Los machos de verdad aprendimos hace muchos años ya que no hay nada mejor que todo bien estructurado, y todo en C. Luego están los machos alfa, que usan ensamblador para todo, a los que se les debe respeto y admiración. De los coboleros no hablo, esos directamente me dan escalofríos.
  36. Para #38. '...-Veo que no han entendido nada... este aeropuerto sin aviones es para las pesonas...'

    La programación en ensamblador y C es especialmente indicada para programar orientando hacia la arquitectura de los propios sistemas digitales.

    La programación orientada a objetos está enfocada a resolver problemas relacionados con el mundo real o problemas proyectos muy grandes o/y abtractos. (CC #35)
  37. #38 perdona pero lo mas macho es programar con tarjetas perforadas
  38. #31 Quiero pensar que estas siendo sarcástico...
  39. Si alguien quiere descargarse el Kernel de Linux, puede hacerlo desde aquí:
    www.kernel.org/

    Es de una lectura superinteresante. Sobre todo porque la mayoría de las funciones no están documentadas y es muy divertido intentar adivinar para qué sirven. Yo todos los fines de semana me emborracho mientras leo el Kernel de Linux.
  40. #25 No para escribir drivers, solo C(y ensamblador si hay un muy buen motivo). Las aplicaciones se pueden hacer como se quiera.

    #39 Y a qué está enfocada la programación funcional?
  41. Para #44. Buena pregunta. El paradigma funcional es una paradigma que dirige al programador hacia algoritmos muy óptimos, óptimos y compactos (*). De alguna forma las propias reglas y restricciones del los lenguajes funcionales fuerzan al programador a optimizar el código. Un semestre programando con 'Racket' me llevaron a estas conclusiones. (CC #39)

    racket-lang.org/

    (*)(Optimos en cuanto a planteamiento y espacio del propio código fuente, pero no necesariamente en cuanto a velocidad de ejecución. Un mismo algoritmo en lenguaje C prodría ser más rápido).
  42. #23 Sobre todo por el abuso de templates. estoy haciendo una base de datos en memoria que funcione igual en memoria que en ficheros mapeados en memoria y la propagación de tipos es un infierno.muchas veces me acuerdo de la elegaancia de Java con ehcache.
  43. Es muy curioso que la gente vote irrelevante, sobre todo porque, por estadística, la mayoría de los que lo han hecho no saben por qué esta noticia es tan importante.
  44. #48 ¿ tan importante ?

    c++ hace tiempo que fue desechado para el desarollo de Linux: harmful.cat-v.org/software/c++/linus
  45. #47 #49 A mi me parece más una crítica a los desarrolladores que al propio lenguaje.
  46. #50 #49 como si en C no se pudiesen hacer burradas. En fins...entiendo lo del kernel pero lo de git no tiene ni pies ni cabeza. Esos mismos argumentos servirian para programar todo en ensamblador en lugar de hacerlo C. No hay stl ni hay nada... te lo haces tu... seguro que si algo peta lo encuentras rápido. El C++ es simplemente más productivo... y esta mucho mas cerca de la máquina que el java.
  47. #46 ya... pero eso no es del lenguaje... es una herramienta externa. Imagino que algo similar habra en C++. Java puede ser muy chulo pero el rendimiento es bastante malo. Como todo esta oculto es muy dificil optimizar nada. A mi me parece muy limitante para cosas gordas y complejas de verdad.
  48. #52 En el kernel esta mas que discutido: www.tux.org/lkml/#s15-3
  49. #51 ¿Estás seguro que me querías responder?
  50. #22 Solo hasta recompilar el kernel :troll:
  51. Vaya tela con los comentarios, ¿es código libre? Pues bienvenido sea coñe, ojalá tuviéramos 100 kernels libres en vez de uno. Además dejemos que se juzge a estos valientes por su trabajo y no porque son indios!

    ¿Ni un comentario técnico?

    El C++ sí es superior al C, al igual que el paradigma microkernel es superior al monolítico, otra cosa es saber implementar o no, y ojo eso no le quita méritos al señor Torvalds...
  52. #47 "harmful" debería darte una pista.

    #56 "El C++ sí es superior al C,"

    Compara el tamaño un hello world entre uno y otro y compara.

    O cuando un código misteriosamente no compila con un nuevo compilador o cambio simple de ABI, cosa que con glibc no me ha pasado.
  53. #49 Pues precisamente. Después de los argumentos de Linus (como full of bullshit) ya todo queda más claro. Linus no quiere y punto.

    Ahora, unos indios lo han hecho y aparentemente funciona, así que los argumentos que da el hombre son una basura. De hecho, como dice #51, siguiendo esos argumentos más valdría hacerlo todo en ensamblador.

    Y sí, C++ no es un buen lenguaje. Tiene una sintaxis difícil, hace cosas raras con la memoria y, a poco que te despistes, la lías mucho. Pero eso no quita validez a lo principal que dice el artículo: programación orientada a objetos. C++ fue elegido por su madurez (de hecho, ya que es un proyecto nuevo y de investigación, yo habría elegido D). Pero de lo que se trata es de usar OOP para mejorar su mantenibilidad.

    /cc #50
  54. #58 ¿C++ no es un buen lenguaje? Se utiliza para la gran mayoría de juegos AAA y entornos industriales y estáis criticando que una de sus mayores virtudes es el poder gestionar a placer la memoria, sin tener que esperar/forzar a colectores de basuras que bajan el rendimiento. Hombre, yo no afirmaría que sea el mejor, pero no estoy nada de acuerdo en que no es un buen lenguaje. La puedes liar mucho si tienes falta de experiencia porque al desarrollador se le otorga un """poder""" que otros lenguajes no tienen.
  55. #59 No es un buen lenguaje porque su sintaxis es muy retorcida. Y sí, puedes hacer de todo y te deja hacer todo con la memoria (algo bueno, por otra parte), por eso se usa para entornos industriales y juegos; el problema es cuando usabas, en C++98 o C++03, cosas como destructores que lanzaban excepciones o excepciones que lanzaban excepciones o si lanzar excepciones con o sin new. Ni siquiera estaba descrito en el propio estándar el comportamiento de eso (parece que en C++11 lo han mitigado, aunque nos han metido los move semantics con lo que también hay que tener su cuidado).

    Y, volviendo al principio, no hablemos de la sintaxis de las templates, que me da la risa.
  56. #38 todo lo que no sea programación funcional es para retards.

    PD: Programación funcional = Haskell, lo demás también es para retards.

    PD2: Hay que ser gilipollas para usar ensamblador para algo hoy en día salvo muy concretas excepciones. Con C pasa lo mismo.

    #52: En realidad la JVM es la hostia, eso de que Java es lento se quedó atrasado hace unos años: www.infoq.com/articles/twitter-java-use
  57. #61 lo siento pero no. Pot mucho JIT o on-line opt , algo escrito en C siempre va a see mas rápido
  58. #62 no me digas genio? Va a ser igual de mantenible y va a costar lo mismo en horas de desarrolladores también?

    C hoy en día solo es apto para aplicaciones muy concretas. C++ ya es otra cosa.

    También podemos programar todos en ensamblador, o aún mejor desarrollar nuestros propios dispositivos hardware que ejecutan más rápido!

    Sigh...

    Que Java sea más lento que C no significa que sea lento por otra parte.
  59. #63 A los listos siempre tiene que saliros la vena de "sobrao". Ahí te quedas... "genio"
  60. #64: Tienes razón, te pido disculpas. Es que estoy muy cansado de determinadas cosas en el mundo de la informática, como la historia de que C es más rápido, como si eso importase. Conozco a gente que te defiende C a muerte y son unos programadores pésimos que no podrían hacer algo decente ni en Python. Y da mucha rabia, que luego se te pongan a decir cosas como que C es más rápido que Java y luego no se dan cuenta de que eso da igual porque el cuello de botella en su aplicación es la red o el acceso a disco.

    Java a mí no me gusta nada como lenguaje (trabajo con él y no lo soporto), pero es una de las mejores opciones para la inmensa mayoría de aplicaciones (aunque prefiero Scala mil veces). Para otras tienes C++, y para otras C.

    En fin, me disculpo de nuevo. Estuvo fuera de lugar.
  61. #65 Ok. ok... disculpas aceptadas. Esta claro que programar en cualquier cosa (incluso en asm) puede hacer auténticos truños desde el punto de vista de rendimiento. Lo que te digo es que si elevas el nivel de abstracción (que esta genial desde el punto de vista de productividad) pierdes control sobre lo que ocurre en el bare-metal. C esta muy cerca..por lo que si sabes lo que estas haciendo creo que puedes mejorar. También es cierto que si no tienes ni idea de programar, y no va a ser tu modo de vida ... usa Java. Si quieres saber a programar: aprende C y después lo demás (lo mejor seria empezar por ASM pero el x86 es odioso en ese sentido).

    En mi opinión C++ ya empieza a poner las cosas complicadas (algo tan sencillo como la abstracción de tipos puede ser una jodienda... ya no te digo cosas como esta absoluta paja mental www.boost.org/doc/libs/1_55_0/libs/geometry/doc/html/geometry/design.h)

    Otra cosa es con proyectos gordos. En cualquier caso sigo opinando que Java esta muy, muy lejos del hardware. Yo no tengo mucha experiencia pero benchmarks similares escritos en C y Java es bastante complicado sacarle chicha. Imagino que tienes que elegir productividad o rendimiento. En algunos casos lo importante es lo primero y en otros lo segundo...
  62. El unico y mejor lenguaje al que deberia portarse es ADA.
comentarios cerrados

menéame