miércoles, 20 de octubre de 2010

Lanzada versión 0.3.12 de ReactOS

El dicho dice que "más vale tarde que nunca"... Y es que ha pasado casi un año desde la publicación de la versión 0.3.11, y vosotros, los usuarios, empezábais a impacientaros.

Pero la espera ha merecido la pena: más de 500 errores corregidos, muchos de ellos críticos para la estabilidad del sistema, decenas de mejoras introducidas....y en definitiva, una experiencia de usuario muy depurada con respecto a su antecesor.
Pero, claro está, aún queda mucho por hacer.


Hoy Aleksey Bragin, el coordinador del proyecto, ha comunicado oficialmente el lanzamiento de ReactOS 0.3.12 y detallado las novedades que podreís encontraros en esta versión.
Algunas de ellas ya han sido comentadas en este Blog, pero esperamos sorprenderos con muchas otras que han permanecido "ocultas" hasta el día de hoy.
Si quereís conocerlas todas solo tenéis que seguir leyendo.



Transcripcion del anuncio oficial


" El equipo de ReactOS está orgulloso de anunciar el lanzamiento de la versión 0.3.12.
Este es un lanzamiento gigantesco para el equipo, no solo por el numero de mejoras introducidas sino por el gran salto adelante desde el punto de vista de la arquitectura, estabilidad y de la adopción de algunos de los aspectos mas modernos del kernel NT en ReactOS.

Ha pasado casi un año desde el último lanzamiento, y aunque es comprensiblemente excesivo, era necesario para estabilizar el Sistema Operativo debido a la naturaleza del trabajo que se estaba realizando.

Al principio nos centramos en un único area, el mecanismo manejador de "trampas" (el trap handler mechanism) que terminamos reescribiendo completamente. Esto  nos obligó a hacer cambios en muchas otras áreas realizando una gran puesta a punto y desarrollando nuevas tecnologías que fueron integradas en el núcleo.
Lo que obtuvimos fue un kernel muchísimo más moderno con un código que había sido probado menos que el código al que reemplazaba.  Esto desencadenó en una gran fase de testeo para conseguir unos niveles de estabilidad y compatibilidad superiores al código sustituido.

Durante la preparación de este lanzamiento 259 bugs fueron solucionados, incluidas 61 regresiones algunas de las cuales fueron originadas en la época de ReactOS 0.3.7.
10 de estos bugs tienen más de 3 años de antiguedad, siendo el más viejo el número #969 (5 años de antiguedad)

A continuación se muestra una muy reducida lista de algunos de los cambios más importantes que han sido introducidos durante este año:
  • Memory Manager (Manejador de Memoria) - El Manejador de memoria  ha recibido muchísimo trabajo ya que el equipo ARM ha reemplazado cada componente pieza a pieza mientras se mantenía la funcionalidad del antiguo manejador. Aunque la 0.3.12 no hace uso completamente del nuevo manejador sí que se nota una gran mejora de la velocidad,estabilidad y compatibilidad de este nuevo modelo. 
  • Soporte NMI - ReactOS puede manejar  NMIs con un Pantallazo Rojo de la Muerte, útil para capturar errores de hardware detectados por la CPU o el Bus. Además, se ha implementado el soporte para llamadas NMI de terceros, algo muy util para ciertos sistemas de servidores. Para concluir, se ha implementado parcialmente la generación de "Crash dumps" lo cual puede ayudar cuando se utiliza un interruptor NMI externo en una máquina congelada o colgada.
  • Reescritura del "Tral Handler"- Ahora casi todo el código de llamadas de sistemas, excepciones, trampas y fallos de la CPU está escrito en C en vez de Ensamblador. Muchos de los códigos antiguos o ya no utilizados han sido eliminados y las rutas de debugeo que consumen más recursos han sido desactivados por defecto. Además ahora los ports x64 y ARM comparten más codigo. Por último, el código está mucho más limpio y puede aprovecharse de las optimizaciones del compilador para generar el mejor código posible para la CPU en vez del antiguo código ensamblador creado a mano que era específico para ciertos modelos de CPU. El trabajo continúa con el fin de eliminar las rutinas de ensamblador restantes. 
  •  EMS - El soporte para el "Emergency Management System" ( o Headless) ha sido implementado parcialmente. Las flags de arranque documentadas por Microsoft son ahora soportadas y la información de debuggeo es mandada al puerto serie correctamente. Actualmente estamos trabajando para conseguir que EMS pueda logar y mover nuestro actual KDBG debugger a EMS. Para ello estamos creando un driver denominado SAC ("Special Administration Console").
  • Compatibilidad PnP- Se han hecho varias mejoras para mejorar la compatibilidad con el Hardware y el soporte de drivers de terceros.
  • Mejoras ACPI - El equipo ARM ha implementado drivers básicos para soportar baterías y drivers para baterías UPS de terceros, incluyendo soporte para la especificación "ACPI Composite Battery". Este soporte no está activado en esta versión porque aún queda parte de trabajo por hacer.
  • Un driver PCI-X nuevo - El equipo ARM ha estado trabajando en el nuevo driver de bus PCI. Anteriormente ReactOS estaba usando un driver PCI muy simple que era incapaz de soportar características de los PCIs del mundo-real, puentes PCI-PCI, etc. Con este nuevo driver la compatibilidad en hardware real , no solo en máquinas virtuales, debería aumentar sensiblemente, así como su rendimiento.
  • Soporte SxS - Se ha añadido código Side-by-Side así como la capacidad de cargar y encontrar manifiestos.Es un paso muy importante para ser compatibles con aplicaciones modernas que hacen uso de esta tecnología.
  • Arreglo de corrupciones de nuestras Pools - Las fugas mas importantes fueron solucionadas gracias a los esfuerzos combinados de varios desarrolladores de ReactOS utilizando métodos avanzados, incluyendo una versión tuneada de la máquina virtual Qemu.
  • Reescritura del manejo de Timers y Mensajes - El incorrecto manejo de mensajes no-encolables provocaban puntos muertos ("Deadlocks") en algunas aplicaciones que han sido resueltos con la reescritura del manejo de mensajes. La reescritura de la implementación de los Timers arregla muchos de los problemas asociados a los mismos como el conocido "mover el ratón para poder descargar en Firefox"
  • x64 - Aunque nuestro port x64 se encuentra en una fase temprana de desarrollo de acuerdo con la funcionalidad de su kernel, los problemas de compilación están resueltos y las funcionalidades básicas del núcleo han sido implementadas. Estos esfuerzos han sido añadidos al trunk, de tal forma que el trunk puede ser compilado como x64. Con la ayuda de las builds automáticas podemos detectar y resolver rápidamente cualquier problema. ¡No esperéis que el port arranque hasta la GUI!
El Changelog para la versión 0.3.12 es significativamente diferente al de anteriores lanzamientos, con el objetivo de crear un comprensible y conciso resumen de cambios en esta versión. Para evitar duplicar el resumen aquí, os invitamos a revisar su contenido y ver que hemos logrado. (VER)
Aunque el equipo de ReactOS ha estado presente en muchos eventos públicos y conferencias en diferentes países, hemos estado fuera de las noticias dando la sensación de que hemos reducido nuestra actividad.
Esperamos que con este lanzamiento podamos demostrar que hemos estado mucho mas ocupados que nunca tras las bambalinas."


Escrito por Aleksey Bragin


Descarga la versión 0.3.12: AQUI 

9 comentarios:

  1. La descarga del zip precargado en QEMU, no es reconocida por el sistema como archivo zip válido y no es posible su descompresión.

    ResponderEliminar
  2. Buenas:
    Si los cambios han sido tan sustanciales ¿Por qué no se ha saltado directamente a la versión 0.4?
    un saludo.

    ResponderEliminar
  3. no descarga el zip con el codigo fuente, supongo que hay mucha gente descargando reactos :)

    ResponderEliminar
  4. Ya probe el zip QEMU y si funciona, tal vez no tienes algun programa para descomprimirlo o no lo tienes bien asociado.

    Y en cuanto a la nueva version se siente muy estable, se notan los cambios y hasta pareciera que ya nada mas falta que le agreguen unas cuantas funciones mas para reemplazar a win, creo que es el momento perfecto para que los desarrolladores analizen que es prioritario y trabajar sobre eso, de acuerdo a los estudios que ustedes publicaron hace tiempo se ve en que hace falta mas trabajar, y asi darian un salto muy grande en la sig. version.

    A mi modo de ver, creo que lo mas urgente del proyecto es:

    -Hacer funcionar el USB, no tanto para las impresoras, teclados, camaras y demas, sino las memorias USB, para meter y sacar informacion.
    -El explorer-new, para resolver bugs, latencia, etc.
    -El asunto de la instalacion y funcionamiento de drivers, para hacer funcionar mejor el hardware.
    -Y no es posible agregar un navegador?, aunque sea de modo texto, algo simple y sencillo, por favor.
    -Integracion de Arwinss

    Creo q cosas como meterle nuevos looks, el audio, y otros programas innecesarios pueden esperar. Sigan asi.

    Aqui estando muy al tanto de ustedes, saludos

    ResponderEliminar
  5. Gracias por este maravilloso regalo. Ahora sí que veo la 0.4 más cerca. Me encanta la agilidad con la que se mueve ahora ReactOS en comparación con las versiones anteriores. ¿Qué tal en hardware real?

    ResponderEliminar
  6. @Anónimo
    Muchas gracias, durante el fin de semana ha sido solucionado.

    ResponderEliminar
  7. @Anónimo
    Aunque los cambios han sido muy sustanciales aún hay muchos a medio camino.
    Realmente estamos esperando a que el explorer-new (u otro cambio muy visible para el usuario) esté terminado.
    En mi opinión seguramente lancemos la 0.4 sin el explorer-new pero con algun otro cambio interesante.
    Aún tenemos que decidir si la próxima versión será la 0.3.13 o la 0.4 :)

    ResponderEliminar
  8. @Angelus
    En Hardware Real mucho mejor que en anteriores versiones ya que se han solucionado problemas con Uniata(soporte SATA) y se han aumentado la compatibilidad con tarjetas de video, sonido y de red.
    Todos los cambios no se han introducido completamente en la 0.3.12 asi pues la próxima versión promete ser otro gran salto de calidad. Esperemos que bajo el nombre de 0.4 ;)

    ResponderEliminar