lunes, 25 de octubre de 2010

News: El Branch Yarotows..

11.15.branch_rod

Muchos habéis preguntado por este Branch, y ya va siendo hora de resolveros las principales dudas sobre el mismo.

¿Qué es?¿Para que sirve?¿Que estáis creando en él?¿Y porqué en un Branch?…

Seguramente no seamos capaces de saciar tanta curiosidad suelta, por lo que si tenéis alguna duda tras este mini-reportaje dejad un comentario y la resolveremos cuanto antes.





Yarotows:¿Qué significa?


Todos nuestros branchs con nombres “raros” son acrónimos que “esconden” la utilidad del propio Branch.Por ejemplo ARWINSS significa Another Rewrite of the WIN32 Sub System del que ya hemos hablado
Yarotows es el “Yet Another Rewrite Of The Old Win32 Subsystem” (Otra reescritura más del viejo subsistema Win32).

El objetivo de este branch es la reescritura del antiguo subsistema Win32. Actualmente contamos con dos subsistemas Win32, el denominado Win32Ros( que es el actual) y el “nuevo”(y aun experimental) ARWINSS. Por lo tanto en Yarotows estamos reescribiendo parte del subsistema para alcanzar el nivel de compatibilidad de Arwinss (muy superior a Win32Ros).



¿Quién está trabajando en él?


El branch Yarotows es una idea de Timo Kreuzer al que se han ido añadiendo Zefklop, Kamil Hornicek, Giannis Adamopoulos y otros desarrolladores del actual Win32Ros.


La creación de Yarotows nació como una reacción a Arwinss intentando demostrar que ReactOS con Yarotows podría alcanzar e incluso superar al actual Arwinss.

Esto es algo lógico pues Yarotows sigue la arquitectura NT (no como Arwinss) lo que asegurará en un largo plazo una mejor compatibilidad con las aplicaciones y drivers. En el Blog de ReactOS ya hemos hablado de esta cuestión y de la necesidad de comenzar cuanto antes un rewrite del antiguo subsistema mientras hacemos uso de las bondades Arwinss. (Remember: Aquí)

De Arwinss hablaremos próximamente pues se están acercando novedades.



¿En qué se está centrando Yarotows ahora?


Uno de los objetivos principales de Yarotows es la simplificación y reescritura del actual Win32Ros. Uno de los principales males de los que adolece Win32Ros es la excesiva complejidad y nulos comentarios en el código fuente. Ha sido descrito como una “auténtica jungla” con gran cantidad de follaje y “caminos tan (estúpidamente) tortuosos” que hacen imposibles seguir los fallos o encontrar la salida. De hecho ha devorado a varios desarrolladores que han osado intentar cruzarla…

Yarotows pretende simplificar y hacer más comprensible esta “selva” evitando caminos innecesarios pero siguiendo siempre la estructura NT. Una limpieza de código en toda regla que permita seguir los bugs y cazarlos.

Pero el objetivo no es únicamente abrillantar y pulir a Win32Ros, sino añadir nuevas funcionalidades por el camino.

Actualmente se ha conseguido crear soporte para cambiar la resolución(800x600, 1024x760, etc) y la profundidad del color (16,32 bits..etc) sin necesidad de reiniciar. Esto es fundamental para muchos juegos, pues habréis notado (sobre todo en juegos antiguos como Starcraft, Diablo II…) que los juegos modifican la resolución de Windows para adaptarla a sus propias necesidades, por poner un ejemplo. En el actual Win32Ros no se puede hacer, pues no es posible cambiar dichos parámetros “en caliente”, obligando al usuario a cambiar la resolución manualmente y a reiniciar el ordenador.

Esta característica no está disponible en Arwinss y es debido a que Yarotows sigue la arquitectura NT.






¿Por qué se está desarrollando en un branch?


El subsistema Win32 (ya sea Win32Ros o Arwinss) es una pieza clave del sistema operativo ReactOS ( y de Windows) por lo que es altamente recomendable hacer las modificaciones en un branch para evitar incluir regresiones durante el proceso de desarrollo. Cuando Yarotows sea estable, demuestre que tiene una compatiblidad similar a la del Trunk y las nuevas funcionalidades no presenten bugs se integrará en el trunk principal.



En breve veremos las nuevas funcionalidades en el trunk, la cuenta atrás ha comenzado :)

3 comentarios:

  1. Una pregunta: Yarotows reescribe desde 0 un subsistema Win32 totalmente nuevo o es el mismo Win32Ros reescrito para limpiarlo?, lo pregunto porque a ratos da la idea de que es un nuevo subsistema y en ocasiones da la idea de que es una limpieza del actual subsistema.

    ResponderEliminar
  2. que interesante... una caracteristica que creo que seria muy buena en yaratows seria que al cambiar la resolución del monitor y restaurarla conservara la posicion de los iconos del escritorio, windows es muy conocido por desorganizar el escritorio entre cambios de resolución y eso es molesto para el usuario, una caracteristica así en reactos sería muy apreciada, saludos.

    ResponderEliminar
  3. Creo que es una limpieza para eliminar los fallos o el codigo que no sigue la arquitectura NT.Mi ptegunta es ... Si un juego como el Unreal Tournament que normalmente suele ir a pantalla completa, si se podria poner a pantalla completa en yarotows ?

    ResponderEliminar