La dimensión de Windows 10 como sistema operativo es colosal, y aun con sus sombras, este desarrollo puede presumir de estar presente en 800 millones de equipos y de hacerlo habiendo mantenido la retrocompatibilidad binaria con versiones que aparecieron hace literalmente décadas.
Eso da una idea de la complejidad de este sistema operativo cuyo código es inmenso. Uno de los ingenieros del núcleo de Windows 10 ha dado algunas cifras internas del proyecto, y todas ellas son asombrosas.
Millones de líneas de código
El desarrollo del sistema operativo Windows ha ido evolucionando con el paso de los años, pero una de las características fundamentales de este proyecto ha sido la de mantener la compatibilidad binaria hacia atrás: programas que funcionaban en las primeras versiones de Windows siguen haciéndolo ahora.
Eso ha hecho que Microsoft haya conservado o adaptado muchos de los componentes iniciales o fusionado otros para ir ofreciendo todas esas funcionalidades antiguas y nuevas, algo que también ha tenido impacto en cuanto a los lenguajes utilizados en el sistema operativo.
El tamaño de ese código es también enorme. Axel Rietschin, ingeniero de Microsoft, indicaba en un artículo cómo el "árbol de código fuente" con todo el código (incluido el de pruebas) ocupa más de medio terabyte y está distribuido en más de 4 millones de ficheros y más de medio millón de carpetas.
En dicho árbol de código se encuentra todo lo referente no solo a las versiones de escritorio del sistema operativo, sino también a los productos dirigidos a estaciones de trabajo y servidores. Rietschin destacaba que "creo que cualquiera podría dudar de que una sola persona pueda leer todo el código que se añade a Windows cada día, ¡no digamos ya el que se ha escrito durante los últimos 30 años!".
C, C++ y C# como protagonistas
Este ingeniero explicaba además cómo la mayor parte del núcleo del sistema (ntoskrnl.exe) está programado en C. Hay incluso una versión pública, Windows Research Kernel, que está disponible en GitHub en el que la presencia del lenguaje de programación C es muy notable.
El uso de ese lenguaje, no obstante, se combina con otros que se utilizan para muchos otros componentes fuera del núcleo del sistema. Como explicaba tanto este ingeniero como otros expertos, en Microsoft cuanto más vas a modo usuario y menos hacia desarrollos recientes, "encontrarás cada vez menos C y cada vez más C++".
Aún así la relevancia de C#, un lenguaje de alto nivel, es también clara, aunque hay otros como JavaScript, TypeScript o VB.NET que son igualmente utilizados junto a otros que se utilizan para diversos componentes, aplicaciones y plataformas relacionadas con el sistema operativo.
El soporte de lenguajes de programación en este sistema operativo es enorme como demuestra su propio entorno de desarrollo, Visual Studio, pero la relevancia de C, C++ y C# sigue siendo clara en un sistema operativo que este año cumplirá cuatro años desde su lanzamiento.
Vía | Quora
Ver 48 comentarios