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;"><</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;">></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==--