ReactOS 0.3.12 released

Aleksey Bragin <[email protected]> Wed, 20 Oct 2010 23:39:15 +0400
Newsgroups gmane.os.reactos.announce
Message-ID <6C1A5735-2620-468D-A5EB-710B568390F1__16263.9759401374$1287604617$gmane$org@reactos.org>
--===============0207804452==
Content-Type: multipart/alternative; boundary=Apple-Mail-24-58710552


--Apple-Mail-24-58710552
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=WINDOWS-1252;
	delsp=yes;
	format=flowed

The ReactOS team is proud to announce the release of ReactOS 0.3.12.

This is a huge release for the team, not just with regards to the =20
number of improvements which this release holds but in terms of the =20
leap forward architecturally, stability wise and in bringing some of =20
the more modern aspects of the NT kernel into ReactOS.

It's been almost a year since the last release and whilst this is =20
understandably excessive, it was required to stabilize the OS due to =20
the nature of the work which was undertaken. Focus at the start of =20
this release was on a single area, the trap handler mechanism, which =20
resulted in a complete rewrite of this area. This brought with it the =20=

need for more changes which escalated into many areas getting an =20
overhaul and many new technologies being developed and brought into =20
the core. What resulted from this was a vastly more modern kernel =20
containing code which had been exercised significantly less than the =20
code it replaced. This triggered a large testing phase to bring the =20
stability and compatibility to levels above that of the previous code.

During the preparation of this release, 259 bugs were fixed, =20
including 61 regressions some of which originated from ReactOS 0.3.7. =20=

Ten of those bugs are more than 3 years old, with the oldest fixed =20
bug being #969 (5 years old).

A heavily cut down list of some of the more major changes which have =20
been going on in the past year is as follows:

=95	Memory Manager - The memory manager continued to see much work =
as =20
the ARM team replaced each component piece by piece whilst also =20
maintaining the functionality of the old manager.  Although 0.3.12 =20
does not completely switch over to the new manager, what is obvious =20
are the speed, stability and compatibility improvements of this new =20
model.
=95	NMI support - ReactOS can now handle NMIs with a Red Screen of =20=

Death, useful for capturing hardware errors detected by the CPU or =20
Bus. Additionally, support for 3rd party NMI callbacks has been =20
implemented, which is useful for certain server systems. Finally, =20
support for generating a crash dump during an NMI is partly =20
implemented, which can help when a machine is frozen or hung and an =20
external NMI dump switch is used.
=95	Trap Handler Rewrite - Almost all CPU faults, trap, exception, =
and =20
system call code is now written in C instead of Assembly. Many legacy =20=

and/or deprecated code paths have been disabled and performance-heavy =20=

debugging paths disabled by default. Additionally, the x64 and ARM =20
ports now share much more of this code. Finally, the code is much =20
cleaner and can take advantage of compiler optimizations to generate =20
the best possible code for the CPU instead of writing hand-crafted =20
assembly that was specific only to certain CPU models. Work is =20
ongoing to remove even more of the last remaining Assembly routines.
=95	EMS - Support for Emergency Management System (or Headless) has =20=

been partially implemented. The boot flags documented by Microsoft =20
are supported, and certain debug output is sent to the serial port as =20=

expected. Work is ongoing to provide the EMS logging capabilities and =20=

to move the existing legacy KDBG debugger over EMS. SAC (Special =20
Administration Console) driver work is also in progress to compliment =20=

this.
=95	PnP Compatibility - Various improvements have been done to =
increase =20
hardware support and support for loading 3rd party drivers.
=95	ACPI Improvements - The ARM team has implemented the basic =
drivers =20
required for supporting batteries and 3rd party UPS/battery drivers, =20
including support for the ACPI Composite Battery specification. This =20
support is not currently enabled in this release because ACPI is =20
still undergoing work.
=95	New PCI-X driver - The ARM team has been slowly working on the =
new =20
PCI bus driver. Previously, ReactOS was using a very simple and =20
mostly stubbed PCI bus driver which lacked support for many real-=20
world PCI bus features, PCI-to-PCI bridges etc.  With this new =20
driver, compatibility on real hardware, not just virtual machines, =20
should improve significantly, along with performance.
=95	SxS support =96 Side-by-side code was added, along with loading =
and =20
finding manifest files. It=92s an important step forward to be =20
compatible with modern applications which use this technology.
=95	Pool Corruption Fixes - Perhaps the most serious of these =
suspected =20
leaks were fixed thanks to combined efforts of key ReactOS developers =20=

utilising advanced methods including a customized version of QEMU =20
virtual machine.
=95	Timer and message handling rewrite - Incorrect handling of non-=20=

queued messages led to deadlocks in some applications which the =20
message handling rewrite resolved. The timer implementation rewrite =20
is also completed by this release which fixes many timer-related =20
problems, most known is the =93need to move mouse in order to download =20=

in FireFox=94.
=95	x64 build - While the x64 port is still in an early stage =
regarding =20
the functioning of the kernel, most of the generic compilation issues =20=

are resolved and necessary core functionality implemented. These =20
efforts have been merged back into trunk, so that trunk can be =20
compiled for x64 target. With the help of automatic builds, possible =20
breakages can now quickly be detected and resolved. Don't expect it =20
to boot to GUI though!

The changelog <http://www.reactos.org/wiki/index.php/=20
ChangeLog-0.3.12> for 0.3.12 is also markedly different from previous =20=

releases, with an emphasis on conveying an understandable and concise =20=

summary of major changes in the release.  Thus instead of duplicating =20=

that summary here, we invite you to peruse its contents and see what =20
has been accomplished.

Whilst the ReactOS team has still been attending many public events =20
and conferences in various different countries, we=92ve been out of the =20=

news due to what may appear as a quiet patch or a lull in activity. =20
We hope this release will go some way to show that we=92ve been busier =20=

than ever behind the scenes.=

--Apple-Mail-24-58710552
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=WINDOWS-1252

<HTML><BODY style=3D"word-wrap: break-word; -khtml-nbsp-mode: space; =
-khtml-line-break: after-white-space; "><P style=3D"margin: 0.0px 0.0px =
10.0px 0.0px"><FONT class=3D"Apple-style-span" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: 11px;">The ReactOS team =
is proud to announce the release of ReactOS 0.3.12.</SPAN></FONT></P><P =
style=3D"margin: 0.0px 0.0px 10.0px 0.0px"><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 11px;">This is a huge release for the team, not just =
with regards to the number of improvements which this release holds but =
in terms of the leap forward architecturally, stability wise and in =
bringing some of the more modern aspects of the NT kernel into =
ReactOS.</SPAN></FONT></P><P style=3D"margin: 0.0px 0.0px 10.0px =
0.0px"><FONT class=3D"Apple-style-span" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: 11px;">It's been almost a =
year since the last release and whilst this is understandably excessive, =
it was required to stabilize the OS due to the nature of the work which =
was undertaken. Focus at the start of this release was on a single area, =
the trap handler mechanism, which resulted in a complete rewrite of this =
area. This brought with it the need for more changes which escalated =
into many areas getting an overhaul and many new technologies being =
developed and brought into the core. What resulted from this was a =
vastly more modern kernel containing code which had been exercised =
significantly less than the code it replaced. This triggered a large =
testing phase to bring the stability and compatibility to levels above =
that of the previous code.</SPAN></FONT></P><DIV style=3D"margin-top: =
0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 11px;">During the preparation of this release, 259 =
bugs were fixed, including 61 regressions some of which originated from =
ReactOS 0.3.7. Ten of those bugs are more than 3 years old, with the =
oldest fixed bug being #969 (5 years old).</SPAN></FONT></DIV><DIV =
style=3D"margin-top: 0px; margin-right: 0px; margin-bottom: 0px; =
margin-left: 0px; font: normal normal normal 11px/normal Helvetica; =
min-height: 13px; "><BR></DIV><P style=3D"margin: 0.0px 0.0px 10.0px =
0.0px"><FONT class=3D"Apple-style-span" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: 11px;">A heavily cut down =
list of some of the more major changes which have been going on in the =
past year is as follows:</SPAN></FONT></P><DIV style=3D"margin-top: 0px; =
margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">Memory Manager - The memory manager continued to see much work as =
the ARM team replaced each component piece by piece whilst also =
maintaining the functionality of the old manager.</SPAN></FONT><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 11px;">=A0 </SPAN></FONT><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 11px;">Although 0.3.12 does not completely switch =
over to the new manager, what is obvious are the speed, stability and =
compatibility improvements of this new model.</SPAN></FONT><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 11px;">=A0</SPAN></FONT></DIV><DIV =
style=3D"margin-top: 0px; margin-right: 0px; margin-bottom: 0px; =
margin-left: 0px; "><FONT class=3D"Apple-style-span" face=3D"Symbol" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">NMI support - ReactOS can now handle NMIs with a Red Screen of =
Death, useful for capturing hardware errors detected by the CPU or Bus. =
Additionally, support for 3rd party NMI callbacks has been implemented, =
which is useful for certain server systems. Finally, support for =
generating a crash dump during an NMI is partly implemented, which can =
help when a machine is frozen or hung and an external NMI dump switch is =
used.</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; margin-right: =
0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">Trap Handler Rewrite - Almost all CPU faults, trap, exception, =
and system call code is now written in C instead of Assembly. Many =
legacy and/or deprecated code paths have been disabled and =
performance-heavy debugging paths disabled by default. Additionally, the =
x64 and ARM ports now share much more of this code. Finally, the code is =
much cleaner and can take advantage of compiler optimizations to =
generate the best possible code for the CPU instead of writing =
hand-crafted assembly that was specific only to certain CPU models. Work =
is ongoing to remove even more of the last remaining Assembly =
routines.</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; =
margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">EMS - Support for Emergency Management System (or Headless) has =
been partially implemented. The boot flags documented by Microsoft are =
supported, and certain debug output is sent to the serial port as =
expected. Work is ongoing to provide the EMS logging capabilities and to =
move the existing legacy KDBG debugger over EMS. SAC (Special =
Administration Console) driver work is also in progress to compliment =
this.</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; margin-right: =
0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">PnP Compatibility - Various improvements have been done to =
increase hardware support and support for loading 3rd party =
drivers.</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; margin-right: =
0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">ACPI Improvements - The ARM team has implemented the basic =
drivers required for supporting batteries and 3rd party UPS/battery =
drivers, including support for the ACPI Composite Battery specification. =
This support is not currently enabled in this release because ACPI is =
still undergoing work.</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; =
margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">New PCI-X driver - The ARM team has been slowly working on the =
new PCI bus driver. Previously, ReactOS was using a very simple and =
mostly stubbed PCI bus driver which lacked support for many real-world =
PCI bus features, PCI-to-PCI bridges etc.=A0 With this new driver, =
compatibility on real hardware, not just virtual machines, should =
improve significantly, along with performance.</SPAN></FONT></DIV><DIV =
style=3D"margin-top: 0px; margin-right: 0px; margin-bottom: 0px; =
margin-left: 0px; "><FONT class=3D"Apple-style-span" face=3D"Symbol" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">SxS support =96 Side-by-side code was added, along with loading =
and finding manifest files. It=92s an important step forward to be =
compatible with modern applications which use this =
technology.</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; =
margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">Pool Corruption Fixes - Perhaps the most serious of these =
suspected leaks were fixed thanks to combined efforts of key ReactOS =
developers utilising advanced methods including a customized version of =
QEMU virtual machine.</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; =
margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">Timer and message handling rewrite - Incorrect handling of =
non-queued messages led to deadlocks in some applications which the =
message handling rewrite resolved. The timer implementation rewrite is =
also completed by this release which fixes many timer-related problems, =
most known is the =93need to move mouse in order to download in =
FireFox=94.</SPAN></FONT><FONT class=3D"Apple-style-span" size=3D"3"><SPAN=
 class=3D"Apple-style-span" style=3D"font-size: =
11px;">=A0</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; =
margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><FONT =
class=3D"Apple-style-span" face=3D"Symbol" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: =
11px;">=95</SPAN></FONT><SPAN class=3D"Apple-tab-span" =
style=3D"white-space:pre">	</SPAN><FONT class=3D"Apple-style-span" =
size=3D"3"><SPAN class=3D"Apple-style-span" style=3D"font-size: =
11px;">x64 build - While the x64 port is still in an early stage =
regarding the functioning of the kernel, most of the generic compilation =
issues are resolved and necessary core functionality implemented. These =
efforts have been merged back into trunk, so that trunk can be compiled =
for x64 target. With the help of automatic builds, possible breakages =
can now quickly be detected and resolved. Don't expect it to boot to GUI =
though!</SPAN></FONT></DIV><DIV style=3D"margin-top: 0px; margin-right: =
0px; margin-bottom: 10px; margin-left: 0px; min-height: 14px; "><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 11px;">=A0=A0</SPAN></FONT><BR =
class=3D"khtml-block-placeholder"></DIV><P style=3D"margin: 0.0px 0.0px =
10.0px 0.0px"><FONT class=3D"Apple-style-span" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: 11px;">The =
changelog=A0<FONT class=3D"Apple-style-span" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: 12px; white-space: =
pre;">&lt;</SPAN></FONT><A =
href=3D"http://www.reactos.org/wiki/index.php/ChangeLog-0.3.11"><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 12px; white-space: =
pre;">http://www.reactos.org/wiki/index.php/ChangeLog-0.3.12</SPAN></FONT>=
</A><FONT class=3D"Apple-style-span" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: 12px; white-space: =
pre;">&gt;</SPAN></FONT> for 0.3.12 is also markedly different from =
previous releases, with an emphasis on conveying an understandable and =
concise summary of major changes in the release.</SPAN></FONT><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 11px;">=A0 </SPAN></FONT><FONT =
class=3D"Apple-style-span" size=3D"3"><SPAN class=3D"Apple-style-span" =
style=3D"font-size: 11px;">Thus instead of duplicating that summary =
here, we invite you to peruse its contents and see what has been =
accomplished.</SPAN></FONT></P><P style=3D"margin: 0.0px 0.0px 10.0px =
0.0px"><FONT class=3D"Apple-style-span" size=3D"3"><SPAN =
class=3D"Apple-style-span" style=3D"font-size: 11px;">Whilst the ReactOS =
team has still been attending many public events and conferences in =
various different countries, we=92ve been out of the news due to what =
may appear as a quiet patch or a lull in activity. We hope this release =
will go some way to show that we=92ve been busier than ever behind the =
scenes.</SPAN></FONT></P></BODY></HTML>=

--Apple-Mail-24-58710552--


--===============0207804452==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Ros-announce mailing list
[email protected]
http://www.reactos.org/mailman/listinfo/ros-announce
--===============0207804452==--