ReactOS: Difference between revisions

Content deleted Content added
Cristan : you don't know how to follow a footnote ??
Rescuing 3 sources and tagging 0 as dead.) #IABot (v2.0.9.5
 
Line 1:
{{Short description|Free incomplete Windows NT-like operating system}}
{{alpha software}}
{{Use dmy dates|date=January 2016}}
{{infobox OS
{{distinguish|React (JavaScript library)|Redox OS}}
| name = ReactOS
{{Infobox OS
| logo = [[Image:ReactOS logo.svg|150px]]
| name = ReactOS
| screenshot = [[Image:ReactOS screenshot.png|300px]]
| logo = ReactOS logo.svg
| caption = ReactOS 0.3.4 showing the [[Start Menu]]
| logo size = 180px
| developer = ReactOS Foundation
| screenshot = ReactOS 0.4.14 desktop screenshot.png
| source_model = [[Free software]]
| caption = ReactOS 0.4.14 desktop<ref name="Github ver">{{GitHub|reactos|reactos}}</ref><ref name="DistroWatch ver">{{DistroWatch|reactos|NAME=ReactOS}}</ref>
| latest_release_version = 0.3.7
| developer = Community contributors <br /> The ReactOS developers
| latest_release_date = {{release date and age|2008|11|04}}
| programmed in = [[C (programming language)|C]], [[C++]]<ref>{{cite web |title=ReactOS on Open Hub|url=https://www.openhub.net/p/reactos/analyses/latest/languages_summary |website=openhub.net |publisher=Black Duck Open Hub |access-date=2014-10-24}}</ref>
| kernel_type = [[Hybrid kernel]]
| family = [[Windows NT]]-like
| working_state = Alpha
| working state = [[Software release life cycle#Alpha|Alpha]]
| ui = [[Graphical User Interface]]
| source model = [[Open-source software|Open-source]]<ref>{{cite web |title=ReactOS on GitHub|website=[[GitHub]]|url=https://github.com/reactos/reactos|access-date=2019-04-27}}</ref>
| license = Various [[free software]] licenses
| released = (partial) {{Start date and age|1998}}
| website = [http://www.reactos.org/ www.reactos.org]
| latest release version = <!-- currently in alpha -->
| latest release date = <!-- currently in alpha -->
| latest preview version = 0.4.15<ref name="0.4.15" /><ref name="Github ver"/><ref name="DistroWatch ver" />
| latest preview date = {{Start date and age|2025|03|21|df=y}}<ref name="0.4.15" />
| marketing target = [[Personal computing]]
| updatemodel = [[CD-ROM]] [[ISO image]], [[QEMU]] image, [[VirtualBox]] image, [[VMware]] image, or [[source code]]<ref name=Download>{{cite web |url=https://www.reactos.org/download |title=Download {{!}} ReactOS Project |website=www.reactos.org |access-date=2017-07-28}}</ref>
| supported platforms = [[IA-32]], [[x86-64]]
| kernel type = [[Hybrid kernel|Hybrid]] (designed to be [[backward compatibility|compatible]] with [[Windows NT|Windows NT family]])
| influenced by = [[Microsoft Windows]]
| ui = [[Graphical user interface|Graphical]] (ReactOS Explorer)
| license = [[GNU General Public License|GPL-2.0-or-later]]{{efn|[[GNU General Public License|GPL-2.0-or-later]] with parts under [[GNU Lesser General Public License|LGPL]] and [[BSD licenses]]}}
| website = {{URL|https://www.reactos.org}}
}}
[[File:ReactOS 0.4.14 Firefox 48 screenshot.png|thumb|ReactOS 0.4.14 running the [[Firefox]] [[web browser]]]]
'''ReactOS''' is a computer [[operating system]] intended to be [[Application binary interface|binary compatible]] with [[application software]] and [[device driver]]s made for [[Microsoft]] [[Windows NT]] versions 5.x and up ([[Windows 2000]] and its successors). It is composed entirely of [[free software]], by means of a complete [[Clean room design|clean room]] [[reverse engineering]] process.
'''ReactOS''' is a [[Free and open-source software|free and open-source]] [[operating system]] for [[i586]]/[[amd64]] [[personal computer]]s that is intended to be [[binary-code compatibility|binary-compatible]] with [[computer program]]s and [[device driver]]s developed for [[Windows Server 2003]] and later versions of Microsoft Windows.<ref>{{Cite news|url=https://www.osnews.com/story/21087/reactos-targets-windows-2003-vista/|title=ReactOS Targets Windows 2003, Vista|last=Holwerda|first=Thom|date=2009-03-05|work=OSNews|access-date=2020-10-14}}</ref><ref>{{cite web |title=ReactOS 0.4.8 released!! |author=vicmarcal |website=ReactOS.org Project News |type=Corporate blog |date=2018-04-14 |url=https://www.reactos.org/project-news/reactos-048-released |access-date=2020-10-14 |archive-url=https://archive.today/20180416011852/https://www.reactos.org/project-news/reactos-048-released |archive-date=16 April 2018 |url-status=live |quote=With software specifically leaving NT5 behind, ReactOS is expanding its target to support NT6+ (Vista, Windows 8, Windows 10) software.}}</ref> ReactOS has been noted as a potential open-source [[drop-in replacement]] for Windows<ref>{{Cite news|url=https://www.heise.de/newsticker/meldung/Russland-erklaert-ReactOS-zu-favorisierter-Windows-Alternative-2722495.html|title=Russland erklärt ReactOS zu favorisierter Windows-Alternative|last=Stahl|first=Louis-F.|date=2015-06-23|work=heise online|access-date=2020-10-14}}</ref><ref name="Spiegel" /><ref name="dvorak" /> and has been of interest for its information on [[undocumented feature|undocumented]] [[Windows API]]s.<ref name="undocumented" />
 
ReactOS has been in development since 1996. {{As of|2025|4|df=US}}, it is still considered to be feature-incomplete [[Software release life cycle#Alpha|alpha software]]. Therefore, it is recommended by the developers to be used only for evaluation and testing purposes.<ref name="chemnitz">{{cite conference |last1=Kupfer |first1=Matthias |last2=Bragin |first2=Aleksey |date=2010-03-14 |title=ReactOS&nbsp;— Das zu Windows binärkompatible Open-Source-Betriebssystem |url=https://chemnitzer.linux-tage.de/2010/vortraege/detail.html?idx=424 |conference=Chemnitzer Linux-Tage |language=de |___location=Chemnitz, Germany |access-date=2010-03-15 |conference-url=https://chemnitzer.linux-tage.de/2010/info/}}</ref><ref name="lowendmacreview" /> However, many Windows applications are working, such as [[Adobe Acrobat|Adobe Reader]] 9.3, [[GIMP]] 2.6, and [[LibreOffice]] 5.4.<ref>{{cite news |author=Thom Holwerda |date=2007-11-14 |title=ReactOS Gets OpenOffice.org 2 Support; New Release Plans |url=https://www.osnews.com/story/18921/ReactOS_Gets_OpenOffice_org_2_Support_New_Release_Plans |work=[[OSNews]]}}</ref><ref name="0.4.14-tests">[https://reactos.org/wiki/Tests_for_0.4.14 Tests for 0.4.14] on reactos.org (February 2022)</ref>
Although the project is in the alpha [[development stage]] as of 2008, many Windows programs already work well. While the ReactOS [[kernel (computer science)|kernel]] has been written from scratch, the [[userland (computing)|userland]] is based on the [[Wine (software)|Wine]] compatibility layer for [[Unix-like]] [[operating system]]s.
 
ReactOS is primarily written in the [[C (programming language)|C programming language]], with some elements written in [[C++]], such as the ReactOS [[File Explorer,]]. writtenThe inproject partially implements [[C++Architecture of Windows NT|Windows API]]. Variousfunctionality componentsand ofhas ReactOSbeen areported licensed underto the [[GNUx86-64|AMD64]] General[[Instruction Publicset architecture|processor Licensearchitecture]],.<ref name=2008review /> ReactOS is part of the [[GNUfree Lesserand Generalopen-source Public Licensesoftware|FOSS]] ecosystem so it re-uses and collaborates with many other FOSS projects,<ref name=collaboration /><ref name=collaboration2 /> most notably the [[BSDWine License(software)|Wine]] project that presents a Windows compatibility layer for [[Unix-like]] operating systems.
 
==DevelopmentHistory==
===FreeWin95Early to ReactOSdevelopment===
Around 1996, a group of [[free and open -source software]] developers started a project called ''FreeWin95'', to implement a [[clone (computer sciencecomputing)|clone]] of [[Windows 95]]. The project stalled in discussions ofon the design of the system.
 
AtWhile theFreeWin95 endhad ofstarted 1997out thewith projecthigh expectations, there still had yetnot been any builds released to releasethe anypublic softwareby the end of 1997. TheAs a result, the project members, led by then coordinator Jason Filby, gotjoined together to revive the project. The revived project's targetsought wasto changedduplicate tothe functionality of [[Windows NT]].<ref>{{Cite andnews|url=https://www.osnews.com/story/178/interview-with-jason-filby-from-the-reactos-project/|title=Interview with Jason Filby from the project'sReactOS nameProject|last=Loli|first=Eugenia|date=16 wasOctober changed2001|work=OSNews|access-date=18 toApril 2019}}</ref> In creating the new project, a new name, ''ReactOS'', was chosen. The ReactOS project began development in February 1998, started by developingcreating the basis for a new NT kernel and basic drivers.<ref>{{Citation
| last = Loschwitz
| first = Martin
| title = Projects on the Move
| newspaper = [[Linux Magazine]]
| page = 87
| date = March 2004
| url = https://www.linux-magazine.com/w3/issue/40/Free_Software_Projects.pdf
| access-date = 2009-11-18
| url-status = dead
| archive-url = https://web.archive.org/web/20110519211406/https://www.linux-magazine.com/w3/issue/40/Free_Software_Projects.pdf
| archive-date = 19 May 2011
| df = dmy-all
}}
</ref><ref>{{Cite web |last=Speed |first=Richard |date=2022-03-14 |title=ReactOS now supports SMP |url=https://www.theregister.com/2022/03/14/reactos_smp/ |access-date=2022-12-20 |website=www.theregister.com |language=en}}</ref> The name ReactOS was coined during an IRC chat. While the term "OS" stood for operating system, the term "react" referred to the group's dissatisfaction inspired reaction to Microsoft's [[Microsoft litigation|monopolistic position]].<ref name=Spiegel>{{cite web |url=http://www.spiegel.de/netzwelt/tech/0,1518,287199,00.html |last=Sixtus |first=Von Mario |title=ReactOS: Das Nicht-Windows |language=de |publisher=[[Der Spiegel|Spiegel Online]] |date=2004-02-20 |access-date=2009-12-11}}</ref>
 
In 2002, the ReactOS Foundation was established in Moscow with Maxim Osowski and Aleksey Bragin as executive officers and Vladimir Bragin, Saveliy Tretiakov, and Alexey Ivanov on the board of directors.<ref name=":0">{{Cite web|url=https://www.reactos.org/wiki/ReactOS_Foundation|title=ReactOS Foundation&nbsp;— ReactOS Wiki|website=www.reactos.org|access-date=2019-03-06}}</ref> In 2015, the foundation was liquidated.<ref name="liquidated">{{Cite web|url=https://egrulinfo.com/8583363/|title=ФОНД АКТИВИЗАЦИИ КИБЕРПРОСТРАНСТВА, ФАК, РЕАКТОС&nbsp;— ФОНД, ФОНД РЕАКТОС, г. Саранск: ИНН: 1328170012, ОГРН: 1021301112876|website=egrulinfo.com|access-date=18 April 2019|archive-date=7 April 2019|archive-url=https://web.archive.org/web/20190407103959/https://egrulinfo.com/8583363/|url-status=dead}}</ref>
=== Version history ===
[[Image:Alksnis-Bragin.jpg|thumb|ReactOS project coordinator Aleksey Bragin (left) shows ReactOS functionality to [[Viktor Alksnis]].]]
ReactOS's many [[Application programming interface|API]]s and [[application binary interface|ABI]]s are ready for a higher level of development and a basic [[GUI]] is available. ReactOS features ReactOS Explorer (ROSExplorer), a basic [[operating system shell|shell]] similar to [[Windows Explorer]].
 
====Internal 0.2 =audit===
In order to avoid copyright prosecution, ReactOS had to be expressly completely distinct and non-[[derivative work|derivative]] from Windows, a goal that needed very careful work.<ref name="ExecutableCopyright">{{Cite web |last=Hancock |first=Terry |date=2008-08-29 |title=What if copyright didn't apply to binary executables? |url=https://freesoftwaremagazine.com/articles/what_if_copyright_didnt_apply_binary_executables/ |access-date=2020-11-01 |publisher=[[Free Software Magazine]] |language=en |quote=(…) ReactOS aims to run actual Windows binary executable programs. This means that ReactOS must implement the entire Windows environment. Functions must do exactly what their Windows counterparts would do. In other words, like our notional parallel stew recipes, ReactOS and Windows should be functionally identical.&emsp;In order to avoid copyright prosecution, though, ReactOS must be expressly completely distinct and non-derivative from Windows. This is a careful tightrope walk, ReactOS is a free, clean room re-implemented drop-in replacement for Windows. So, consider this, especially regarding extremely simple library call: ''is it legal for ReactOS to produce identical binary code to Windows?''}}</ref> A claim was made on 17 January 2006 by developer Hartmut Birr on the ReactOS developers [[mailing list]] (ros-dev) that ReactOS contained code derived from [[disassembler|disassembling]] Microsoft Windows.<ref name="byebye">{{cite mailing list |last=Birr |first=Hartmut |title=Bye bye |mailing-list=ros-dev |date=2006-01-18 |url=https://marc.info/?l=ros-dev&m=118775346131642&w=2 |access-date=2009-01-03}}</ref> The code that Birr disputed involved the function BadStack in syscall.S,<ref>{{cite web |url=https://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/syscall.S?revision=20935&view=markup&pathrev=20935#l43 |title=BadStack in syscall.S |publisher=ReactOS |date=2006-01-17 |access-date=2018-08-04 |archive-url=https://web.archive.org/web/20170904111000/https://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/syscall.S?revision=20935&view=markup&pathrev=20935#l43 |archive-date=4 September 2017 |url-status=dead |df=dmy-all}}</ref> as well as other unspecified items.<ref>{{cite mailing list |first=Hartmut |last=Birr |url=http://marc.info/?l=ros-dev&m=118775346131646&w=2 |title=Bye bye |date=2006-01-18 |mailing-list=ros-dev |access-date=2009-11-16}}</ref> Comparing this function to disassembled binaries from [[Windows XP]], Birr argued that the BadStack function was simply [[Cut, copy, and paste|copy-pasted]] from Windows XP, given that they were identical. Alex Ionescu, the author of the code, asserted that while the Windows XP binary in question was indeed disassembled and studied, the code was not merely copy-pasted, but reimplemented; the reason why the functions were identical, Ionescu claimed, was because there was only one possible way to implement the function.<ref>{{cite mailing list |last=Ionescu |first=Alex |title=Bye bye |mailing-list=ros-dev |date=2006-01-18 |url=https://marc.info/?l=ros-dev&m=118775346131654&w=2 |access-date=2009-11-16}}</ref>
[[Development stage#Alpha|Alpha]] version 0.2.0 of ReactOS, released in March 2004, is able to run many [[Win32]] applications, including [[Notepad]] (a basic text editor), [[Regedit]] (the Registry editor), [[cmd.exe]] (the command-line interpreter), and several other applications (such as [[AbiWord]]) and some older [[computer games|games]] (such as [[Quake]] and [[Quake II]], and the [[Wine (software)|Wine]] clone of [[Minesweeper (computer game)|Minesweeper]]).
 
On 27 January 2006, the developers responsible for maintaining the ReactOS code repository disabled access after a meeting was held to discuss the allegations. When approached by [[Geeknet|NewsForge]], Microsoft declined to comment on the incident. Since ReactOS is a [[free and open-source software]] development project, the claim triggered a negative reaction from the [[Free software movement|free software community]]: in particular, Wine barred several inactive developers from providing contributions{{Citation needed|date=August 2018}}<!-- wrong citation:<ref>{{cite web |url=http://www.winehq.org/interview/14 |title=Interview with Steven Edwards |access-date=2013-06-23 |first=Brian |last=Vincent |publisher=winehq.com |date=2004-05-25 |quote=''BV: You guys have certainly contributed a lot of your work back to Wine, including some of the utilities you've written. For instance, the task manager was recently ported from ReactOS.''}}</ref> --> and formal high-level cooperation between the two projects remained difficult {{As of|2006|lc=y}}.<ref name=suspend>{{cite web |url=https://www.linux.com/news/reactos-suspends-development-source-code-review/ |first=Stephen |last=Feller |title=ReactOS suspends development for source code review |publisher=[[Linux.com]] |date=2006-02-01 |access-date=2009-12-10}}</ref>
Some games like [[Unreal Tournament]] and [[Deus Ex]] are confirmed to work, using [[software rendering]]. [[OpenGL]] runs with some minor problems, using the [[nVidia]] driver or the software implementation [[Mesa 3D]]. The first Web server (''Tiny Web Server'')<ref>[http://www.ritlabs.com/tinyweb/ Tiny Web Server]</ref> and VNC client ([[UltraVNC]]) are reported to work, and [[OpenOffice.org]] version 1.x works partly.
 
In a statement on its website, ReactOS cited differing legal definitions of what constitutes [[Chinese wall#Reverse engineering|clean-room reverse engineering]] as a cause for the conflict.<ref>[https://www.reactos.org/reset-reboot-restart-legal-issues-and-long-road-03 Reset, Reboot, Restart, legal issues and the long road to 0.3] on reactos.org by Steven Edwards (27 January 2006)</ref> To avoid potential litigation, companies sometimes enact a policy where reimplementation based on disassembled code must be written by someone other than the person having disassembled and examined the original code.<ref name="cleanroom">{{cite web |last=Schwartz |first=Mathew |date=2001-11-12 |title=Reverse-Engineering |url=https://www.computerworld.com/s/article/65532/Reverse_Engineering?pageNumber=1 |access-date=2013-06-23 |publisher=[[Computerworld]].com |quote=''To protect against charges of having simply (and illegally) copied IBM's BIOS, Phoenix reverse-engineered it using what's called a "clean room," or "Chinese wall", approach. First, a team of engineers studied the IBM BIOS, about 8KB of code, and described everything it did as completely as possible without using or referencing any actual code. Then Phoenix brought in a second team of programmers who had no prior knowledge of the IBM BIOS and had never seen its code. Working only from the first team's functional specifications, the second team wrote a new BIOS that operated as specified.''}}</ref><ref>{{cite web |last=Hogle |first=Sean |date=2008-10-23 |title=Clean Room Defeats Software Infringement Claim in US Federal Court |url=https://hoviblog.blogspot.de/2008/10/clean-room-defeats-software.html |access-date=2013-05-23 |quote=[...] dirty room reverse engineering should be done in conjunction with clean room development by using two physically and electronically isolated teams where one team does dirty room reverse engineering and the other does clean room development. If a dirty room team exists, the clean room engineers can write a description of the portion of the specification that needs elaboration or clarification. The dirty room engineers then use that request to create additional functional specifications or tests.}}</ref> ReactOS clarified its Intellectual Property Policy Statement requirements on clean room reverse engineering to avoid potential infringement of United States law. An internal source code [[audit]] was conducted to ensure that only clean room reverse engineering was used, and all developers were made to sign an agreement committing them to comply with the project's policies on reverse engineering.<ref name=suspend /> Contributors to its development were not affected by these events and all access to the software development tools was restored shortly afterward. In September 2007, with the audit nearing completion, the audit status was removed from the ReactOS homepage. Though the audit was completed, specific details were not made public, as it was only an internal effort to ensure compliance with the project's own policies.<ref name=audit>{{cite mailing list |first=Aleksey |last=Bragin |url=http://marc.info/?l=ros-dev&m=119018479822866&w=2 |title=Audit |mailing-list=ros-dev |date=2007-09-18 |access-date=2009-01-03}}</ref>
Version 0.2.2, released on [[April 28]] [[2004]], has basic bugfixes and feature improvements
 
Also, the 2004 [[Internet leak#Source code leaks|leaked]] Windows source code<ref>{{cite web |last=Evers |first=Joris |date=12 February 2004 |title=Windows Code May Be Stolen |url=https://www.pcworld.com/article/114771/article.html |url-status=dead |archive-url=https://web.archive.org/web/20130731034443/http://www.pcworld.com/article/114771/article.html |archive-date=31 July 2013 |access-date=20 November 2021 |publisher=[[PC World]]}}</ref> was not seen as legal risk for ReactOS, as the [[trade secret]] was considered indefensible in court due to broad spread.<ref name=tradesecret>[https://www.reactos.org/reset-reboot-restart-legal-issues-and-long-road-03 Reset, Reboot, Restart, legal issues and the long road to 0.3] "''Now as for the issue of leaked source code, I want to try to put all fears to rest. We don't know what the legal ramifications are for someone downloading and having leaked code, as the party that maintains copyright ownership of that code might still try to claim Trade Secrecy on information contained in the sources in a court of law. It is our point of view that the source code leaks of Windows have been spread to a broad enough audience that it would be impossible to claim the product is still under Trade Secrecy.''" on reactos.org by Steven Edwards (27 January 2006)</ref>
Version 0.2.5, released on [[January 5]] [[2005]], has large improvements in networking and stability.
 
Axel Rietschin, who is a kernel engineer at Microsoft, claimed that he recognized some specific bits in the ReactOS kernel that are unlikely to result from a clean room reimplementation, such as internal data structures and variable names having the exact same name in both ReactOS and the research kernel. Rietschin suggests that the project took source code from the Windows Research Kernel, which was licensed to universities and has been leaked multiple times.<ref>{{cite web |last1=Anderson |first1=Tim |title=ReactOS 'a ripoff of the Windows Research Kernel', claims Microsoft kernel engineer |url=https://www.theregister.com/2019/07/03/reactos_windows_research_kernel_claim/ |date=3 Jul 2019 |website=[[The Register]] |language=en}}</ref>
In version 0.2.8 some elements of [[TCP/IP]] networking work, as well as a larger number of applications. Sound and [[Universal Serial Bus|USB]] support is still being worked on ([[SB16]] works partially, and USB [[OHCI]] and [[UHCI]] work is still being undertaken). The USB functionality is derived from the [[Cromwell (computing)|Cromwell]] project.
 
===Google Summer of Code participation===
[[Plug-and-play]] work has also begun, as has the move to support the [[Windows Driver Model]]. In addition to the [[Lynx (web browser)|Lynx]] text-based browser, ReactOS can use DCOM components from [[Mozilla]] to browse web pages graphically.
Starting in 2006,<ref>{{cite web|url=https://developers.google.com/open-source/soc/2006/#reactos |title=Google Summer of Code 2006 |quote=This is a page lists the students and organizations that participated in the Google Summer of Code 2006 program. [...] ReactOS}}</ref> the ReactOS project participated in several [[Google Summer of Code|Google Summers of Code]]. For example, in the GSoC 2011,<ref name="gsoc2011">{{cite web |url=http://www.google-melange.com/gsoc/project/google/gsoc2011/claudiu_mihail/8001 |title=TCP/IP driver replacement for ReactOS, using lwIP |access-date=9 August 2011 |url-status=dead |archive-url=https://web.archive.org/web/20120321144810/http://www.google-melange.com/gsoc/project/google/gsoc2011/claudiu_mihail/8001 |archive-date=21 March 2012 |df=dmy-all}}</ref> ReactOS mentored a student project which integrated [[lwIP]] into the network stack.<ref name="lwIP2" />
 
===Lobbying for support in Russia===
ReactOS 0.2.8 can also detect whether it is running in a [[VMware]] environment and can install the [[Super Video Graphics Array|SVGA]] driver from the VMware Tools ISO to provide a better level of GUI performance. [[CSRSS#Core components|CSRSS]] has also been totally rewritten, and a "written-from-scratch" implementation of [[Winsock]] 2 is scheduled to arrive very soon. Also present in the [[trunk (software)|trunk]] are somewhat-working elements of ddraw, dplay, and dplayx.
Between 2007 and 2015, Russian ReactOS contributors representing the ReactOS Foundation made efforts at lobbying the Russian federal government. {{as of|2019|4}}, these efforts have not yielded government support for ReactOS, and the Russia-based ReactOS Foundation has been dissolved since November 2015.<ref name="liquidated" />
[[File:Alksnis-Bragin.jpg|thumb|Former ReactOS project coordinator Aleksey Bragin (left) showing ReactOS to [[Viktor Alksnis]]]]
* In 2007, then [[State Duma]] member and chairman of Russian Center of Free Technologies, [[Viktor Alksnis]] met with project coordinator Aleksey Bragin, who gave a presentation and demonstration of the project, showing ReactOS running with [[Total Commander]] and [[Firefox|Mozilla Firefox]].<ref>{{cite web |url=http://v-alksnis2.livejournal.com/32900.html |title=Виктор Имантович Алкснис – Знакомство с проектом ReactOS |language=ru |first=Viktor |last=Alksnis |date=2007-06-06 |access-date=2009-12-11}}</ref>
* In 2011, a demonstration was given to then president [[Dmitry Medvedev]] during a visit to a high school in Verhnerusskoe, [[Stavropol]], attended by one of the development team members.<ref name="medvedev">{{cite news |url=https://www.bbc.co.uk/news/technology-14899507 |title=Russian President Medvedev asked to fund Windows clone |agency=[[BBC News]] |date=2011-09-13 |access-date=2011-09-15}}</ref>
* On 31 July 2012, [[Vladimir Putin]] was also given a demonstration during his visit as [[President of Russia]] to [[Seliger (forum)|Seliger Youth Forum]], attended by Marat Karatov, one of the development team members.<ref>{{cite web |url=http://www.reactos.org/reactos-presented-president-putin |title=ReactOS Presented to President Putin |author=((Z98)) |work=ReactOS News |date=2012-08-05 |access-date=2013-06-23}}</ref>
* On 1 April 2015, Bragin attended an expert meeting of the [[Ministry of Digital Development, Communications and Mass Media (Russia)|Russian Ministry of Communications]] on reducing Russia's dependency from proprietary software imports. Its minutes name the "creation of an open source operating system based on ReactOS for PCs, laptops and other mobile devices", as well as the "creation of an open source operating system for servers based on ReactOS",<ref>[http://minsvyaz.ru/ru/documents/4662/ Minutes of the expert evaluation of projects on import substitution infrastructure software according to paragraph 4-8 of import substitution plan software, approved by order of the Ministry of Communications of Russia from 1 April 2015 №96 "On approval of import software"] {{Webarchive|url=https://web.archive.org/web/20150718033724/http://www.minsvyaz.ru/ru/documents/4662/ |date=18 July 2015 }} [[Ministry of Digital Development, Communications and Mass Media (Russia)|Russian Ministry of Communications]] ''"Direction "client operating system / Server Operating Systems" first place&nbsp;— the project "Corporate platform on the basis of domestic operating systems" [...] second place&nbsp;— the project "Creation of the operating system open source based on ReactOS for PCs, laptops and other mobile devices," "Creating the operating system open source-based server ReactOS" (Fund "Reaktos" MSTU. AN Bauman, LLC "Paral Plelz Research" and others.)."'' (2 June 2015, [https://translate.google.de/translate?sl=ru&tl=en&js=y&prev=_t&ie=UTF-8&u=http%3A%2F%2Fminsvyaz.ru%2Fru%2Fdocuments%2F4662%2F&edit-text= translated] {{Webarchive|url=https://web.archive.org/web/20160305011152/https://translate.google.de/translate?sl=ru&tl=en&js=y&prev=_t&ie=UTF-8&u=http%3A%2F%2Fminsvyaz.ru%2Fru%2Fdocuments%2F4662%2F&edit-text= |date=5 March 2016 }})</ref><ref>{{Cite web|url=https://www.reactos.org/project-news/reactos-second-os-russian-governments-software-freedom-effort/|title=ReactOS as a second OS in Russian government's software freedom effort {{!}} ReactOS Project|website=www.reactos.org|access-date=2019-04-06}}</ref><ref name="favourit">[https://www.heise.de/newsticker/meldung/Russland-erklaert-ReactOS-zu-favorisierter-Windows-Alternative-2722495.html Russland-erklaert-ReactOS-zu-favorisierter-Windows-Alternative] on [[Heinz Heise|heise online]] by Louis-F. Stahl (23 June 2015, in German)</ref><ref>[https://derstandard.at/2000017947663/Russland-macht-ReactOS-zur-bevorzugten-Windows-Alternative Russland macht ReactOS zu bevorzugter Windows-Alternative] on [[Der Standard]] (24 June 2015, in German)</ref> placing it second among three named proposals.
 
====Funding 0.3 =campaigns===
On 1 May 2012, a €30,000 funding campaign was started to finance additional development projects.<ref>{{cite news |author=Oliver Diedrich |date=2012-05-03 |title=ReactOS: Spenden gesucht |url=https://www.heise.de/open/meldung/ReactOS-Spenden-gesucht-1567379.html |work=[[Heinz Heise|heise.de]] |language=de}}</ref><ref>[https://www.reactos.org/archives/public/ros-general/2012-May/002810.html A personal appeal from ReactOS Project Coordinator Aleksey Bragin], accessed on 15 April 2013</ref> At the end of the year, approximately 50% of the funding goal was achieved and it was decided to continue the funding campaign without deadlines.<ref>[http://old.reactos.org/de/foundation_donators.html Spenderliste] {{webarchive|url=https://web.archive.org/web/20131230234231/http://old.reactos.org/de/foundation_donators.html |date=30 December 2013}} 24 December 2012, accessed on 15 April 2013 (in German)</ref> The money went to ''ReactOS Deutschland [[Registered association (Germany)|e.&nbsp;V.]]''. As the [[tax law]] in Germany for this form of a [[Civil registration|registered]] [[voluntary association]] (''[[Registered association (Germany)|Eingetragener Verein]]'') makes it problematic to pay developers directly;<ref>{{cite web |archive-url=https://web.archive.org/web/20130403104658/http://reactos.org/january-2013-meeting-minutes |url=http://reactos.org/january-2013-meeting-minutes |archive-date=3 April 2013 |date=2013-02-07 |access-date=2013-06-19 |title=January 2013 Meeting Minutes |quote=Late last year the German foundation learned that the contracts it was issuing for developers might not be compliant with German regulations involving non-profits. Due to this, the German foundation needed to temporarily halt payment to developers and consult with tax attorneys to determine how to proceed in a compliant manner. |url-status=dead |df=dmy-all}}</ref> indirect possibilities like [[stipend]]s were evaluated.
ReactOS ''0.3.0 Release Candidate 1'' was released on [[June 15]] [[2006]]. It is also an alpha build. Improved network (TCP/IP) and Plug & Play support are the headline improvements of this version. Version ''0.3.0 Release Candidate 2'' was released when the audit reached 94%. It was deemed appropriate to release another candidate version at this time because so many bug fixes had been made during the audit.
 
===Thorium Core Cloud Desktop project===
ReactOS 0.3.1, released on [[March 11]] [[2007]], was the first release after the start of a massive kernel rewrite, which made many parts more compatible to NT 5.2. This release also features the addition of a Registry library, which greatly improved the Registry support. An easy tool for downloading popular free and Shareware applications also debuted in this release.
When ReactOS was awarded as Project of the Month on [[SourceForge]] in June 2013, a [[crowdfunding]] campaign on [[Kickstarter]] was announced in an interview with the project's coordinator, Aleksey Bragin.<ref name="potm-201306">{{cite web |date=2013-06-17 |title=Sourceforge POTM June 2013 |url=https://www.sourceforge.net/blog/potm-201306/ |access-date=2013-06-17 |publisher=[[SourceForge|Sourceforge.com]] |quote=''Well I don't want to spread too many rumors, but I can say that we do have something in the works. If all goes well, it's going to be announced within a week. While I cannot go into too many details, I can say that it involves Kickstarter and what we believe to be a viable commercial product based off of {{sic}} ReactOS.''}}</ref> On 23 December 2013 the announced project was revealed as a Kickstarter campaign with the goal of US$120,000 was started.<ref>[https://www.phoronix.com/scan.php?page=news_item&px=MTU3OTY ReactOS Wants To Bring Open-Source Windows To The Cloud] on [[Phoronix]] by [[Michael Larabel]] (22 January 2014)</ref><ref>{{cite news |author=Oliver Diedrich |date=2014-01-21 |title=ReactOS: Freier Windows-Klon braucht Unterstützung] |url=https://www.heise.de/open/meldung/ReactOS-Freier-Windows-Klon-braucht-Unterstuetzung-2090408.html |work=[[Heinz Heise|heise.de]] |language=de}}</ref> The ''Thorium Core Cloud Desktop'' dubbed [[cloud computing]] service would use ReactOS as core and could allow the use of Windows compatible applications from [[mobile device]]s (like [[smartphone]]s, [[tablet computer|tablet]]s), [[workstation]]s, or any other connected device. On 21 February 2014, fundraising ended short of the target amount, with $48,965 of $120,000 raised, resulting in no transferred money.<ref>{{cite web |url=http://www.kickstarter.com/projects/thorium/thorium-core-cloud-desktop |title=Thorium Core Cloud Desktop |author1=Aleksey Bragin |author2=Steven Edwards |date=2013-12-23 |access-date=2014-04-08 |publisher=[[Kickstarter|Kickstarter.com]]}}</ref>
 
===ReactOS Community Edition===
Version 0.3.2 had been skipped due to many complex blockers, which could not be fixed in the scheduled time frame.
In April 2014, the ReactOS project announced an [[Indiegogo]] campaign to launch ReactOS Community Edition, a version of ReactOS based on the 0.4 release. The flexible funding campaign had a goal of $50,000 with additional stretch goals beyond that.<ref>{{cite news |author=Torsten Kleinz |date=2014-04-08 |title=XP ist tot, es lebe Windows |trans-title=XP is dead, long live Windows |url=https://www.zeit.de/digital/internet/2014-04/reactos-alternative-windows-xp |work=[[Die Zeit]] |language=de}}</ref> Development of ReactOS Community Edition would be community-centric, with ReactOS users voting and funding to decide which software and hardware drivers the project will aim to support.<ref>[https://www.phoronix.com/scan.php?page=news_item&px=MTY2Nzk ReactOS Working On A Community Windows OS] on [[Phoronix]] by [[Michael Larabel]] (19 April 2014)</ref><ref>{{cite web |author=Silviu Stahie |date=2014-04-04 |title=ReactOS goes to Indiegogo, will run Windows apps natively |url=https://news.softpedia.com/news/ReactOS-Goes-to-IndieGogo-Will-Run-Windows-and-Linux-Apps-Natively-435797.shtml |access-date=2014-04-08 |publisher=[[Softpedia|softpedia.com]]}}</ref> On 1 June 2014, the flexible crowdfunding campaign on Indiegogo ended, raising $25,141 for the development of the community edition,<ref>{{cite web |last=Hoffman |first=Chris |date=2014-11-14 |title=Why prominent 'hobbyist' operating systems face an existential crisis |url=https://www.pcworld.com/article/2847723/why-prominent-hobbyist-operating-systems-face-an-existential-crisis.html |access-date=2015-12-29 |publisher=[[PCWorld]] |quote=ReactOS raised more than $25,000 in an Indiegogo crowdfunding campaign earlier in 2014, for the development of a community edition of the operating system.}}</ref><ref>[https://www.indiegogo.com/projects/reactos-community-edition reactos-community-edition] on [[Indiegogo]] (1 June 2014)</ref> and the voting process to support hardware and software was started shortly thereafter.<ref>[https://www.heise.de/open/artikel/ReactOS-Grosse-Fortschritte-und-Stipendien-fuer-Entwickler-beim-freien-Windows-Nachbau-2410783.html ReactOS: Große Fortschritte und Stipendien für Entwickler beim freien Windows-Nachbau] {{Webarchive|url=https://web.archive.org/web/20160607151332/http://www.heise.de/open/artikel/ReactOS-Grosse-Fortschritte-und-Stipendien-fuer-Entwickler-beim-freien-Windows-Nachbau-2410783.html|date=7 June 2016}} on [[Heinz Heise|heise.de]] by Louis-F. Stahl (2 October 2014, in German)</ref>
 
===ReactOS Hackfest===
The release of ReactOS 0.3.3 on [[September 12]] [[2007]] brought more improvements in the kernel, bringing many areas closer to NT 5.2. It also brought stability increase in many core modules, especially win32k.
[[File:ReactOS printing for the first time.webm|thumb|First video of printing from ReactOS]]
The ReactOS project organized a [[Hackathon|hackfest]] from 7 to 12 August 2015, in the German city of [[Aachen]].<ref>[https://www.heise.de/newsticker/meldung/Russland-erklaert-ReactOS-zu-favorisierter-Windows-Alternative-2722495.html Russland-erklaert-ReactOS-zu-favorisierter-Windows-Alternative] on [[Heinz Heise|heise online]] by Louis-F. Stahl "Einen weiteren Schub in der Entwicklung erhofft sich die ReactOS-Community vom ersten ReactOS Hackfest, das vom 7. bis zum 12. August 2015 in Aachen stattfindet." (23 June 2015, in German)</ref><ref>[https://www.derstandard.at/2000017947663/Russland-macht-ReactOS-zur-bevorzugten-Windows-Alternative Russland macht ReactOS zu bevorzugter Windows-Alternative] on [[Der Standard]] "Von 7. bis 12. August lädt die Entwicklergemeinde in Deutschland zum ersten ReactOS-Hackfest, das in Aachen über die Bühne gehen wird." (24 June 2015, in German)</ref><ref>{{Cite web|url=https://www.reactos.org/project-news/reactos-hackfest-aachen|title=ReactOS Hackfest in Aachen|date=1 September 2015|website=ReactOS|access-date=18 April 2019}}</ref> The Hackfest resulted in many features being added to ReactOS.
 
The second hackfest was organized by the ReactOS project from 14 to 18 August 2017, in the German city of [[Cologne]].<ref>{{Cite web|url=https://reactos.org/wiki/ReactOS_Hackfest_2017|title=ReactOS Hackfest 2017|website=ReactOS Wiki|access-date=18 April 2019}}</ref>
ReactOS 0.3.4, released on [[January 22]] [[2008]], brought a rewrite of registry support, syncing of DLLs with the Wine project, improved plug'n'play support, improvements to user32, Win32k, many core user mode components, shell32, the Control Panel, and the addition of a remote desktop client.<ref>[http://www.reactos.org/en/news_page_40.html News #40 - ReactOS Website<!-- Bot generated title -->]</ref>
 
The third and fourth hackfests were organized by the ReactOS project from 16 to 21 August 2018 and from 15 to 20 August 2019 in [[Berlin]] respectively.<ref>{{Cite web|url=https://reactos.org/wiki/ReactOS_Hackfest_2018|title=ReactOS Hackfest 2018|website=ReactOS Wiki|access-date=18 April 2019}}</ref><ref>{{Cite web|url=https://reactos.org/wiki/ReactOS_Hackfest_2019|title=ReactOS Hackfest 2019|website=ReactOS Wiki|access-date=20 October 2020}}</ref>
Version 0.3.5 was released on [[June 30]] [[2008]], contains fixes for many old bugs, some having been present since 0.3 or even earlier and some being regressions introduced in further releases due to rewrites of certain components.<ref>[http://www.reactos.org/en/news_page_44.html News #44 - ReactOS Website]</ref>
 
==Release history==
Version 0.3.6, released on [[August 6]] [[2008]], also contains bug fixes in the kernel and a RTL heap implementation. Note: Unlike stated in the news entry on the website this release does not contain the initial AMD64 support (currently being developed in a separate branch). <ref>[http://www.reactos.org/de/news_page_45.html news #45 - Reactos Website]</ref>
{{Clear}}
{| class="wikitable sortable"
|-
! System version !! Release date !! Release information
|-
! {{Version|o|0.3.0}}
| | 2006-08-27<ref>{{Cite web|url=https://reactos.org/project-news/reactos-030-released//|title=ReactOS 0.3.0 Released!|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| First version to officially support networking
|-
! {{Version|o|0.3.1}}
| | 2007-03-10<ref>{{Cite web|url=https://reactos.org/project-news/reactos-031-released//|title=ReactOS 0.3.1 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| Program manager included, start of kernel rewrite
|-
! {{Version|o|0.3.2}}
| style="background:#ccc;"| ''skipped'' || Branch created but never released<ref name=":1" />
|-
! {{Version|o|0.3.3}}
| | 2007-09-12<ref name=":1">{{Cite web|url=https://reactos.org/project-news/reactos-033-released//|title=ReactOS 0.3.3 Released!|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| Kernel and win32k improvements
|-
! {{Version|o|0.3.4}}
| | 2008-01-22<ref>{{Cite web|url=https://reactos.org/project-news/reactos-034-released//|title=ReactOS 0.3.4 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| Registry support rewrite, remote desktop client and [[Legacy Plug and Play|Plug and Play]]
|-
! {{Version|o|0.3.5}}
| | 2008-06-30<ref>{{Cite web|url=https://reactos.org/project-news/reactos-035//|title=ReactOS 0.3.5|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| Bug fixes only
|-
! {{Version|o|0.3.6}}
| | 2008-08-06<ref>{{Cite web|url=https://reactos.org/project-news/reactos-036//|title=ReactOS 0.3.6|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| RTL support
|-
! {{Version|o|0.3.7}}
| | 2008-11-04<ref>{{Cite web|url=https://reactos.org/project-news/reactos-037//|title=ReactOS 0.3.7|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| Improved [[x86-64]]; MSVC, new stacks
|-
! {{Version|o|0.3.8}}
| | 2009-02-04 || Introduced PSEH and multi-partition HDD support in live CD{{Citation needed|date=April 2020}}
|-
! {{Version|o|0.3.9}}
| | 2009-04-26<ref>{{Cite web|url=https://reactos.org/project-news/reactos-039-released//|title=ReactOS 0.3.9 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| 24&nbsp;MB minimum RAM, faster hyperspace mapping, initial sound support
|-
! {{Version|o|0.3.10}}
| | 2009-07-05<ref>{{Cite web|url=https://reactos.org/project-news/reactos-0310-released//|title=ReactOS 0.3.10 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| Initial [[Serial ATA|SATA]] support, [[USB]] keyboard/mouse support, [[Microsoft Paint|Paint]] clone, initial [[Microsoft Visual C++|MSVC]].<ref>{{cite web |url=http://osrevolution.com/os-release/reactos-0-3-10 |title=ReactOS 0.3.10 |publisher=OS Revolution |access-date=2009-12-09 |url-status=dead |archive-url=https://web.archive.org/web/20091212140506/http://osrevolution.com/os-release/reactos-0-3-10 |archive-date=12 December 2009 |df=dmy-all}}</ref><ref>{{cite web |last=Holwerda |first=Thom |date=2009-07-06 |title=ReactOS 0.3.10 Released |url=https://www.osnews.com/story/21778/ReactOS_0_3_10_Released |access-date=2009-12-09 |publisher=[[OSNews]]}}</ref>
|-
! {{Version|o|0.3.11}}
| | 2009-12-16<ref>{{Cite web|url=https://reactos.org/project-news/reactos-0311-released//|title=ReactOS 0.3.11 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| Kdcom rewrite; Chinese/Korean fonts; compatibility updates; sound system improvements
|-
! {{Version|o|0.3.12}}
| | 2010-10-20<ref>{{Cite web|url=https://reactos.org/project-news/reactos-0312-released//|title=ReactOS 0.3.12 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>|| Trap handler rewrite; timer and message handling rewrite; [[non-maskable interrupt|NMI]] support; [[side-by-side assembly|SxS]] support; partial [[Emergency Management Services|EMS]] support<ref>{{cite web |last=Holwerda |first=Thom |date=2010-10-20 |title=ReactOS 0.3.12 Released |url=https://www.osnews.com/story/23919/ReactOS_0_3_12_Released |access-date=2010-11-08 |publisher=[[OSNews]]}}</ref>
|-
! {{Version|o|0.3.13}}
| | 2011-03-22<ref>{{Cite web |title=ReactOS 0.3.13 Released |url=https://www.reactos.org/project-news/reactos-0313-released// |access-date=2020-04-25 |website=reactos.org |language=en-US}}</ref>|| Heap manager rewrite, improved SATA support, fixed graphics issues<ref>{{citation |url=http://www.reactos.org/wiki/0.3.13 |title=0.3.13&nbsp;— ReactOS |publisher=ReactOS Foundation |access-date=2014-02-10}}</ref>
|-
! {{Version|o|0.3.14}}
| | 2012-02-07<ref>{{Cite web|url=https://reactos.org/project-news/reactos-0314-released//|title=ReactOS 0.3.14 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>||[[Advanced Configuration and Power Interface|ACPI]] enabled by default, [[Wi-Fi|WiFi]] support (unencrypted and [[Wired Equivalent Privacy|WEP]]), theme support, new TCP/IP driver ([[LwIP]]), MSVC compatibility, [[Vectored I/O|Scatter/Gather]] [[Direct memory access|DMA]] operations supported, shell32 rewrite<ref>{{citation |title=0.3.14&nbsp;— ReactOS |url=https://www.reactos.org/wiki/0.3.14 |access-date=2014-02-10 |publisher=ReactOS Foundation}}</ref>
|-
! {{Version|o|0.3.15}}
| | 2013-05-30<ref>{{Cite web|url=https://reactos.org/project-news/reactos-0315-released//|title=ReactOS 0.3.15 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>||USB support for mice, keyboard, and storage devices; rewritten session management; [[Advanced Host Controller Interface|AHCI]] support with updated UniATA driver; alternate ReactOS Memory Management Module has taken over all memory management responsibilities except for sections; preliminary support for debugging ReactOS components using [[WinDbg]]; improvements based on results from the [[AutoHotkey]] application functionality test suite; Bugfixes based on running Driver Verifier on several bundled drivers<ref>{{citation |title=0.3.15&nbsp;— ReactOS |url=https://www.reactos.org/node/663 |access-date=2014-02-10 |publisher=ReactOS Foundation}}</ref>
|-
! {{Version|o|0.3.16}}<ref>[http://www.linuxbsdos.com/2014/02/06/reactos-0-3-16-review/ ReactOS review | LinuxBSDos.com]</ref>
| | 2014-02-06<ref>{{Cite web|url=https://reactos.org/project-news/reactos-0316-released//|title=ReactOS 0.3.16 Released|website=reactos.org|language=en-US|access-date=2020-04-25}}</ref>||CSRSS rewrite; theme support improved; network card driver for the [[RTL8139]], allowing ReactOS to support newer versions of [[QEMU]] out of the box<ref>{{citation |url=http://www.reactos.org/node/772 |title=ReactOS 0.3.16 Released |publisher=ReactOS Foundation |access-date=2014-02-10}}</ref>
|-
! {{Version|o|0.3.17}}<ref>[https://distrowatch.com/weekly.php?issue=20150119#reactos DistroWatch Weekly, Issue 593, 19 January 2015]</ref>
| | 2014-11-05<ref>{{Cite web |title=ReactOS 0.3.17 Released |url=https://www.reactos.org/project-news/reactos-0317-released// |access-date=2020-04-25 |website=reactos.org |language=en-US}}</ref>|| Inclusion of an [[Virtual DOS machine#NTVDM|NTVDM]]; font improvements;<ref>{{citation |title=Gimp/GTK+ drawing problems |url=https://jira.reactos.org/browse/CORE-4657 |access-date=2014-10-05 |publisher=ReactOS Foundation}}</ref><ref>{{citation |title=JRE installer and Winrar shows Marlett font instead the proper one |url=https://jira.reactos.org/browse/CORE-8525 |access-date=2014-11-05 |publisher=ReactOS Foundation}}</ref> bug fixes<ref>{{citation |title=ReactOS 0.3.17 Released |url=https://www.reactos.org/it/node/911 |access-date=2014-11-05 |publisher=ReactOS Foundation}}</ref>
|-
! {{Version|o|0.4.0}}<ref>[https://distrowatch.com/weekly.php?issue=20160314#reactos DistroWatch Weekly, Issue 652, 14 March 2016]</ref>
| | 2016-02-16<ref name="0.4.0">{{citation |title=ReactOS 0.4.0 Released |url=https://www.reactos.org/project-news/reactos-040-released |access-date=2016-02-16 |publisher=ReactOS Foundation}}</ref>||Improved USB support, new file explorer shell and theming, improved [[VirtualBox]] and [[Windows Virtual PC|Virtual PC]] support, [[ext2]] read/write support, [[NTFS]] read support and improved networking support
|-
! {{Version|o|0.4.1}}<ref>[http://www.dedoimedo.com/computers/reactos-0-4.html ReactOS 0.4.1 review&nbsp;— Cold fusion], '''Dedoimedo'''</ref>
| | 2016-05-17<ref name="0.4.1">{{citation|url=http://www.reactos.org/project-news/reactos-041-released|title=ReactOS 0.4.1 Released |publisher=ReactOS Foundation |access-date=2016-05-17}}</ref> ||Improved Activation Context, [[Btrfs]] support, improved Shell, USB bug fixes, support for Virtual Machine Shared Folders
|-
! {{Version|o|0.4.2}}
| | 2016-08-16<ref name="0.4.2">{{citation |title=ReactOS 0.4.2 Released |url=https://www.reactos.org/project-news/reactos-042-released |access-date=2016-08-16 |publisher=ReactOS Foundation}}</ref>||Improved [[Btrfs]] and [[extended file system]] support, [[ReiserFS]] and [[Unix File System|UFS/FFS]], introduced [[.NET Framework]] 2.0 and 4.0 support, Shell fixes and improvements
|-
! {{Version|o|0.4.3}}
| | 2016-11-16<ref name="0.4.3">{{citation |title=ReactOS 0.4.3 Released |url=https://www.reactos.org/project-news/reactos-043-released |access-date=2016-11-16 |publisher=ReactOS Foundation}}</ref>|| New [[Winsock]] library, initial sections support, usual bug fixes
|-
! {{Version|o|0.4.4}}
| | 2017-02-16<ref name="0.4.4">{{citation |title=ReactOS 0.4.4 Released |url=https://www.reactos.org/project-news/reactos-044-released |access-date=2017-02-16 |publisher=ReactOS Foundation}}</ref>|| Initial print stack support, minor font fixes, usual improvements and bug fixes
|-
!{{Version|o|0.4.5}}
| | 2017-05-18<ref name="0.4.5">{{citation|url=https://www.reactos.org/project-news/reactos-045-released|title=ReactOS 0.4.5 Released
| publisher=ReactOS Foundation |access-date=2017-05-19}}</ref> || Improved rendering of fonts and font metrics, major fixes in kernel and drivers, [[Microsoft Office 2010]] tested as functioning
|-
!{{Version|o|0.4.6}}
| | 2017-09-01<ref name="0.4.6">{{citation|url=https://www.reactos.org/project-news/reactos-046-released|title=ReactOS 0.4.6 released
| publisher=ReactOS Foundation |access-date=2017-09-01}}</ref> || Several fixes for [[multi-booting|dual-boot]] issues, improved theming support, [[Network File System|NFS]] driver added, several kernel and filesystem fixes
|-
!{{Version|co|0.4.7}}
| | 2017-12-06<ref name="0.4.7">{{citation|url=https://www.reactos.org/project-news/reactos-047-released|title=ReactOS 0.4.7 released!
| publisher=ReactOS Foundation |access-date=2017-12-06}}</ref> || Improved version of the applications manager RAPPS, implementation of the "Quick-Launch" toolbar in the explorer; various bug fixes in the filesystem drivers, improvements in the RDBSS/RXCE and NFS support.
|-
!{{Version|co|0.4.8}}
| |2018-04-14<ref name="0.4.8">{{citation|url=https://www.reactos.org/project-news/reactos-048-released|title=ReactOS 0.4.8 released!!
| publisher=ReactOS Foundation |access-date=2018-04-14}}</ref> || Balloon notifications, notification tray, shell autocompletion, a new NTFS driver, crash dump reporting and experimental support for NT6+ software.
|-
!{{Version|co|0.4.9}}
| |2018-07-23<ref name="0.4.9">{{citation|url=https://www.reactos.org/project-news/reactos-049-released|title=ReactOS 0.4.9 released
| publisher=ReactOS Foundation |access-date=2018-07-23}}</ref> || ReactOS is (again) [[Self-hosting (compilers)|self-hosting]].
|-
!{{Version|co|0.4.10}}
| |2018-11-06<ref name="0.4.10">{{citation|url=https://www.reactos.org/project-news/reactos-0410-released|title=ReactOS 0.4.10 released |publisher=ReactOS Foundation |access-date=2018-11-06}}</ref> || Supports BTRFS booting.
|-
!{{Version|co|0.4.11}}
| |2019-03-04<ref name="0.4.11">{{citation|url=https://www.reactos.org/project-news/reactos-0411-released|title=ReactOS 0.4.11 released |publisher=ReactOS Foundation |access-date=2020-10-20}}</ref> || Drivers for battery management (its icon is located in the taskbar, in the bottom right of the screen, next to the clock). Support for updating an existing ReactOS installation. Improved SATA support.
|-
!{{Version|co|0.4.12}}
| style="white-space: nowrap;" |2019-09-23<ref name="0.4.12">{{Cite web |title=ReactOS 0.4.12 released {{!}} ReactOS Project |url=https://www.reactos.org/project-news/reactos-0412-released |access-date=2019-09-23 |website=reactos.org}}</ref>
|| Kernel improvements, window-snapping feature, font improvements, Intel e1000 NIC driver, user-mode DLLs, new themes.
|-
!{{Version|co|0.4.13}}
|2020-04-09<ref name="0.4.13">{{Cite web|url=https://reactos.org/project-news/reactos-0413-released|title=ReactOS 0.4.13 released {{!}} ReactOS Project|website=reactos.org|access-date=2020-04-10}}</ref>
|New USB stack, FAT driver from FreeLoader optimized, new software introduced: Accessibility Utility Manager.
|-
!{{Version|co|0.4.14}}
|2021-12-16<ref name="0.4.14">{{Cite web|url=https://reactos.org/project-news/reactos-0414-released/|title = ReactOS 0.4.14 released {{!}} ReactOS Project |website=reactos.org |date=2021-12-16 |access-date=2021-12-18}}</ref>
|"Send To" feature and [[Shell (computing)|Shell]] improvements, [[NEC PC-9800]] boot support, [[Internet Control Message Protocol|ICMP]] improvements, [[Kernel (operating system)|Kernel]] improvements, NetKVM [[VirtIO]] bringup, miscellaneous changes & improvements
|-
!{{Version|c|0.4.15}}
|2025-03-21<ref name="0.4.15">{{Cite web|url=https://reactos.org/project-news/reactos-0415-released/|title = ReactOS 0.4.15 released {{!}} ReactOS Project |website=reactos.org |date=2025-03-21 |access-date=2025-03-21}}</ref>
| [[Plug and Play]] fixes, audio fixes, memory management fixes, registry healing, improvements to accessories and system tools, and shell improvements.
|-
!{{Version|p|0.4.16}}
|{{n/a}} || Current development version.<ref>https://github.com/reactos/reactos/tree/0.4.16-dev</ref>
|-
|-
!{{Version|p|0.5.0}}<ref>{{Cite web|url=https://reactos.org/wiki/0.5.0|title=0.5.0 - ReactOS Wiki|website=reactos.org|access-date=2023-12-02}}</ref>
|{{n/a}} || Support for reading and writing the [[NTFS]] filesystem, support for the [[Windows Driver Model]] (including video card support), improvements to the printing subsystem and the [[DirectX|DirectX Core]].
|-
| colspan="5" |{{Version |l |show=111101}}
|}
 
==Features==
Version 0.3.7 was released on [[November 4]] [[2008]]; it contains improved support for the x64 architecture and the start of a real MSVC compiler support. This version also includes many bug fixes and new stacks (like network). <ref>[http://www.reactos.org/en/news_page_46.html news #46 - ReactOS Website]</ref>
{{Prose|section|date=November 2021}}
{{Expand section|date=October 2018}}
[[File:ReactOS 0.4.14 start menu and explorer screenshot.png|thumb|ReactOS 0.4.14 desktop: left [[Start menu|Start Menu]] and right ReactOS's own [[File Explorer]] |alt=]]
[[File:ReactOS 0.4.14 explorer and winver screenshot.png|thumb|New shell in ReactOS (v0.4.0 and newer)]]
[[File:ReactOS 0.4.14 applications screenshot.png|thumb|Command Prompt, Spider Solitaire, Calculator and WineMine]]
[[File:ReactOS 0.4.14 device manager screenshot.png|thumb|Device Manager in ReactOS 0.4.14]]
 
==== 0.4 =Programs===
* ReactOS Explorer (''[[File Explorer]]'')
Version 0.4 is expected to have a 50% compatible Windows NT Kernel, [[Server Message Block|SMB]] support, initial audio support, Winlogon, support for USB input devices, support for the 5 most common network cards, and networking improvement.<ref name="roadmap">{{cite web | title = Roadmap for ReactOS | url = http://www.reactos.org/en/about_roadmap.html | accessdate = 2008-04-14}}</ref>
* ReactOS Applications Manager
* Accessories
** [[Windows Calculator|Calculator]]
** [[Command Prompt]]
** [[Microsoft Notepad|Notepad]]
** [[Microsoft Paint|Paint]]
** [[WordPad]]
** [[Magnifier (Windows)|Magnifier]]
** [[On-Screen Keyboard]]
** [[Remote Desktop Connection]]
** Multimedia Player (''[[Windows Media Player|Media Player]]'')
** [[Voice Recorder (Windows)|Sound Recorder]]
** Volume Control
** [[Character Map]]
** [[Clipboard Viewer]]
** FontSub
** Keyboard Layout Switcher
** ReactX Diagnostic (''[[DxDiag]]'')
** [[Registry Editor]]
** SnapShot
** [[Task Manager (Windows)|Task Manager]]
* Administrative Tools
** [[Device Manager]]
** [[Event Viewer]]
** Service Manager (''[[Windows service]]'')
** System Configuration (''[[MSConfig]]'')
* Games
** [[Solitaire (game)|Solitaire]] (''[[Microsoft Solitaire]]'')
** [[Spider Solitaire]] (''[[Microsoft Spider Solitaire]]'')
** [[Minesweeper (video game)|WineMine]] (''[[Microsoft Minesweeper]]'')
 
==== 0.5 =Commands===
{{See also|Comparison of DOS operating systems|List of DOS commands}}
Version 0.5 will be marked as '''beta''' rather than '''alpha'''.
[[File:ReactOS-0.4.13 reg command 667x434.png|thumb|The ReactOS <code>[[reg (command)|reg]]</code> command]]
The following is a non-exhaustive list of [[command (computing)|commands]] that are supported by the ReactOS [[Command-line interface#Command-line interpreter|Command Prompt]].<ref>{{Cite web|url=https://github.com/reactos/reactos/tree/master/base/shell/cmd|title=reactos/base/shell/cmd at master · reactos/reactos · GitHub|website=github.com}}</ref><ref>{{Cite web|url=https://github.com/reactos/reactos/tree/master/base/applications/cmdutils|title=reactos/base/applications/cmdutils at master · reactos/reactos · GitHub|website=github.com}}</ref><ref>{{Cite web|url=https://github.com/reactos/reactos/blob/master/modules/rosapps/applications/cmdutils/|title=reactos/modules/rosapps/applications/cmdutils at master · reactos/reactos · GitHub|website=github.com}}</ref>
 
{{Div col|colwidth=6em}}
=== Current and future development ===
* ?
[[Image:ReactOS 0.3 - 1.png|thumb|ReactOS running AbiWord and ReactOS Explorer]]
* [[alias (command)|alias]]
The ReactOS developers are currently working on support for USB. For this, the [[Cromwell (computing)|Cromwell]] version of the [[Linux]] implementation is being ported. Development is also taking place to add [[Computer network|networking]], [[multimedia]], [[plug-and-play]] hardware support, and improving the [[GUI]] system. [[Java platform|Java]] and [[Microsoft .NET|.NET]] support (through [[Mono (software)|Mono]]) has also been stubbed. After a multi-user environment is developed, Terminal Service and Remote desktop will be developed; for this [[xrdp]], [[Virtual Network Computing]] (VNC), and [[rdesktop]] will be used. Provisions for [[DOS]], [[OS/2]], and [[POSIX]] subsystems have also been made, similarly to the [[Windows NT]] subsystems.<ref>[http://www.reactos.org/en/news_page_38.html News #38 - ReactOS Website<!-- Bot generated title -->]</ref>
* [[assoc (command)|assoc]]
* [[at (command)|at]]
* [[ATTRIB|attrib]]
* [[beep (command)|beep]]
* [[cacls]]<ref>{{Cite web|url=https://github.com/reactos/reactos/tree/master/base/applications/cacls|title=reactos/base/applications/cacls at master · reactos/reactos · GitHub|website=github.com}}</ref>
* [[call (command)|call]]
* [[cat (command)|cat]]
* [[cd (command)|cd]]
* [[cd (command)|chdir]]
* [[chcp (command)|chcp]]
* [[choice (command)|choice]]
* [[clip (command)|clip]]
* [[CLS (command)|cls]]
* [[color (command)|color]]
* [[comp (command)|comp]]
* [[copy (command)|copy]]
* [[ctty (command)|ctty]]
* [[date (command)|date]]
* [[dbgprint (command)|dbgprint]]
* [[del (command)|del]]
* [[del (command)|delete]]
* [[delay (command)|delay]]
* [[dir (command)|dir]]
* [[dirs (command)|dirs]]
* [[doskey]]
* [[echo (command)|echo]]
* [[echos (command)|echos]]
* [[echoerr]]
* [[echoserr]]
* [[endlocal]]
* [[eventcreate]]
* [[del (command)|erase]]
* [[exit (command)|exit]]
* [[find (Windows)|find]]
* [[for (command)|for]]
* [[free (command)|free]]
* [[fsutil]]
* [[goto (command)|goto]]
* [[help (command)|help]]
* [[history (command)|history]]
* [[hostname]]
* [[if (command)|if]]
* [[label (command)|label]]
* [[memory (command)|memory]]
* [[mkdir|md]]
* [[mkdir]]
* [[mklink]]
* [[mode (command)|mode]]
* [[more (command)|more]]
* [[move (command)|move]]
* [[path (command)|path]]
* [[pause (command)|pause]]
* [[pushd and popd|popd]]
* [[prompt (command)|prompt]]
* [[pushd and popd|pushd]]
* [[rmdir|rd]]
* [[rmdir]]
* [[reg (command)|reg]]
* [[rem (command)|rem]]
* [[ren (command)|ren]]
* [[ren (command)|rename]]
* [[replace (command)|replace]]
* [[sc (command)|sc]]<ref>{{Cite web|url=https://github.com/reactos/reactos/tree/master/base/applications/sc|title=reactos/base/applications/sc at master · reactos/reactos · GitHub|website=github.com}}</ref>
* [[schtasks]]
* [[screen (command)|screen]]
* [[set (command)|set]]
* [[setlocal]]
* [[shift (command)|shift]]
* [[shutdown (command)|shutdown]]<ref>{{Cite web|url=https://github.com/reactos/reactos/tree/master/base/applications/shutdown|title=reactos/base/applications/shutdown at master · reactos/reactos · GitHub|website=github.com}}</ref>
* [[SORT (DOS command)|sort]]
* [[start (command)|start]]
* [[taskkill]]
* [[tee (command)|tee]]
* [[TIME (command)|time]]
* [[timeout (command)|timeout]]
* timer
* [[title (command)|title]]
* [[touch (command)|touch]]
* [[tree (command)|tree]]
* [[TYPE (DOS command)|type]]
* [[uptime (command)|uptime]]
* [[ver (command)|ver]]
* [[verify (command)|verify]]
* [[vol (command)|vol]]
* [[whoami]]
* [[xcopy]]
{{Div col end}}
 
=== On-going national language development ===
The developers aim to make the kernel more compatible with Windows NT versions 5 and 6, and add support for more applications. Improved USB, networking, and other hardware support may also be available, while support for file sharing services with SMB and [[NTFS]] file system support may be added. Most of these changes are already underway, while more advanced features will take longer to develop.<ref name="roadmap"/>
Presently, ReactOS has active development in: [[Czech language|Czech]], [[English language|English]], [[Dutch language|Dutch]], [[Finnish language|Finnish]], [[French language|French]], [[German language|German]], [[Hebrew]], [[Hungarian language|Hungarian]], [[Indonesian language|Indonesian]], [[Italian language|Italian]], [[Japanese language|Japanese]], [[Mandarin Chinese]], [[Norwegian language|Norwegian]], [[Polish language|Polish]], [[Russian language|Russian]], [[Spanish language|Spanish]], [[Swedish language|Swedish]], [[Thai language|Thai]], [[Ukrainian language|Ukrainian]].
 
==Development==
Work is also being done to improve 3D gaming support and complete [[OpenGL]] support, and progress is being made in developing ReactX, the project's open-source equivalent of [[DirectX]].<ref>[http://www.reactos.org/en/newsletter_34.html#sec4 ReactOS Newsletter #34]</ref>
===ReactOS core development===
ReactOS is primarily written in [[C (programming language)|C]], with some elements, such as ReactOS Explorer and the sound stack, written in [[C++]]. The project compiles using both [[MinGW]] and [[Microsoft Visual Studio]], and contributes to the development of the build systems used through the submission of [[patch (computing)|patches]] to its components.<ref name=waterloo />
 
The developers aim to make the kernel and usermode application programming interface (API) more compatible with Windows NT version 5.2 ([[Windows Server 2003]]) and to add support for more applications and hardware, with plans to target newer versions of Windows as development matures.<ref>{{cite web |url=https://www.reactos.org/pipermail/ros-dev/2015-March/017216.html |title=ReactOS versioning|date=7 March 2015 |publisher=ReactOS|access-date=2015-03-07}}</ref> [[DirectX]] support is undertaken through ReactX, an in-house implementation. 2D and [[OpenGL]] 3D hardware-accelerated rendering is done natively, while other drawing functionality such as [[Direct3D]] is redirected to OpenGL as a stopgap solution, mostly using [[Wine (software)|Wine]]'s code such as [[Wine (software)#Direct3D|WineD3D]].<ref name=2008review /><ref>{{cite web |date=28 May 2014 |title=ReactX |url=https://www.reactos.org/wiki/ReactX |access-date=15 February 2022 |website=ReactOS Wiki}}</ref>
=== Internal audit ===
On [[17 January]] [[2006]] a (now former) developer named Hartmut Birr alleged on the ReactOS Developers [[mailing list]] (ros-dev) that ReactOS contained code derived from [[disassembler|disassembling]] Microsoft Windows.<ref>[http://www.reactos.org/archives/public/ros-dev/2006-January/007389.html [ros-dev&#93; Bye bye<!-- Bot generated title -->]</ref> As a result of the allegations, the project's developers decided to temporarily suspend access to files of the operating system for non-developers while the contributors were contacted to ensure clean reverse engineering. Since ReactOS is a free/open-source software development project, this action caused a negative reaction by the [[free software community]]. Contributors to its development were not affected by this action, and all access to the software development tools was restored shortly afterwards.
 
The development progress is influenced by the size of the development team and the level of experience among them. As an estimate of the effort required to implement [[Windows 7]], Microsoft employed 1,000 or so developers, organized into 25 teams, with each team averaging 40 developers.<ref>{{cite web |url=http://blogs.msdn.com/e7/archive/2008/08/18/windows_5F00_7_5F00_team.aspx |first=Steven |last=Sinovsky |title=The Windows 7 Team |publisher=Engineering Windows 7, MSDN |date=2008-08-18 |access-date=2009-12-09}}</ref> {{As of|2011|09|02}}, in the ReactOS entry in [[Open Hub|Ohloh]], the page followed through the "Very large, active development team" link lists 33 developers who have contributed over a 12-month period and a [[wikt:cumulative|cumulative total]] of 104 present and former users who have contributed code to the project via [[Apache Subversion]] since its inception.<ref>{{cite web |url=http://www.ohloh.net/p/reactos/ |title=ReactOS |publisher=Ohloh |access-date=2011-09-02 |archive-date=28 October 2011 |archive-url=https://web.archive.org/web/20111028084636/https://www.ohloh.net/p/reactos |url-status=dead }}</ref> In his presentation at Hackmeeting 2009 in Milan, ReactOS developer Michele C. noted that most of the developers learn about Windows architecture while working on ReactOS and have no prior knowledge.<ref name=notwindows />
Consequently, from March 2006 through December 2007, an internally conducted source code [[audit]] was carried out to ensure that only [[clean room design|clean room]] [[reverse engineering]] was used.<ref>[http://www.reactos.org/wiki/index.php/Audit Audit - ReactOS Wiki]</ref> All developers were also made to sign an agreement committing them to use only clean room reverse engineering.<ref>[http://www.reactos.org/en/news_page_14.html News #14 - ReactOS Website<!-- Bot generated title -->]</ref> In September 2007, with the audit nearing completion, the audit status was removed from the ReactOS homepage. Though the audit was completed, specific details were not made public as it was only an internal effort to ensure legally produced code.<ref>[http://www.reactos.org/archives/public/ros-dev/2007-September/009801.html Archive from September 2007 of the ReactOS developer mailing list, ros-dev: Audit]</ref>
 
While ReactOS targets mainly the [[x86]]/[[x86-64|AMD64]] [[personal computer|PC]] platform,<ref>{{cite web |date=2014-01-20 |title=Installing |url=https://www.reactos.org/wiki/Installing_ReactOS |access-date=2014-02-10 |publisher=ReactOS}}</ref> an effort to port to the [[ARM architecture]] was at one point "under way",<ref name="2008review">{{cite web|url=https://www.osnews.com/story/20790/reactos-looking-back-upon-2008/|title=ReactOS: Looking Back Upon 2008|last=Holwerda|first=Thom|date=17 January 2009|website=[[OSNews]]|access-date=18 April 2019}}</ref> while it did not produce much functionality and was abandoned<ref>{{Cite web|url=https://www.reactos.org/wiki/ReactOS_ports|title=ReactOS ports - ReactOS Wiki}}</ref> along with a port to [[PowerPC]], that is no longer actively maintained.<ref name=chemnitz /> Support for the [[Xbox (console)|Xbox]] and the [[NEC PC-9800]], a variant [[IA-32]] architecture, was added through the use of an architecture-specific [[hardware abstraction|HAL]].<ref name=notwindows /><ref name="0.4.13" /><ref name="0.4.14" /> Improved 64-bit support for ReactOS is "being worked on", however, development seems to be going slowly.<ref>{{Cite web|url=https://github.com/reactos/reactos/labels/x64|title=ReactOS GitHub (Label: x64)|website=[[GitHub]]|access-date=11 August 2019}}</ref>
[[RosAsm]]'s developer has however alleged that the most suspect files were missing from the list of files selected for the audit,<ref>[http://betov.free.fr/ReactOS.html The story] from [[RosAsm]]'s developer point of view.</ref> which would make the audit unavailing.
 
===Collaboration and reuse===
== Related projects ==
While ReactOS has the aim to build a Windows-compatible kernel as open-source software, much of the surrounding required functionality to create a complete OS is already available in the greater open-source ecosystem.
* ReactOS works with the [[Wine (software)|Wine]] project so that the ReactOS project can benefit from Wine's progress in implementing the Win32 API. These efforts mainly concern Wine's [[Library (computer science)|DLLs]], most of which can be shared between ReactOS and Wine. Both projects work on cross-compatibility issues, so that the remaining few DLLs can be used in ReactOS.
When available and possible, ReactOS therefore builds on and collaborates with already existing open-source projects.<ref name=collaboration>{{cite web |url=http://haiku-os.org/news/2012-02-20_reactos_gets_usb_stack_help_us |title=ReactOS gets USB Stack, with Help from Us |publisher=[[Haiku (operating system)|Haiku]] |date=2012-02-20 |access-date=2016-01-02 |quote=The ReactOS and Haiku projects have had a friendly working relationship for several years now, with each group helping the other whenever possible.}}</ref>
Conversely, projects like [[Wine (software)|Wine]],<ref name=collaboration2 /> and formerly [[Captive NTFS]]<ref>[http://www.osnews.com/story/5299/Captive_NTFS_Read_Write_Filesystem_Addon_for_Linux Captive: NTFS Read/Write Filesystem Addon for Linux] on [[OSNews]] by Eugenia Loli "''They are using WINE and ReactOS code to emulate parts of Windows environment needed to make the driver work.''" (4 December 2003)</ref> and [[Longene]] re-use the open-source ReactOS code-base as well.<ref>[https://lwn.net/Articles/349988/ Linux unified kernel 0.2.4.1] "The LUK project does not develop the Windows and the Linux userland libraries. Those libraries are offered by the Wine (or Microsoft Windows/ReactOS) project and the Linux project."</ref>
 
====Hardware driver stack====
* Other related projects are [[Samba (software)|Samba]]/[[Samba TNG]], which implement [[Local Security Authority Subsystem Service|LSASS]], [[Security Account Manager|SAM]], NETLOGON, [[Print spooling]] and other Windows network services.
On the [[device driver|hardware driver]] side, for instance the [[UniATA]] project provides [[Serial ATA]] drivers for ReactOS.<ref name=lowendmacreview /><ref>{{cite web |title=Universal ATA/SATA/AHCI driver for Windows NT3.51/NT4/2000/XP/2003/7 |url=https://alter.org.ua/soft/win/uni_ata/ |access-date=2014-02-10 |publisher=Alter.org.ua}}</ref> The project has also experimented with using the FullFAT library in its rewrite of its [[File Allocation Table|FAT]] [[Installable File System]].<ref>{{cite web |url=http://www.fullfat-fs.co.uk/Features/Portability |archive-url=https://web.archive.org/web/20100423042752/http://www.fullfat-fs.co.uk/Features/Portability |url-status=dead |archive-date=2010-04-23 |first=James |last=Walmsley |title=Features&nbsp;— Portability |year=2009 |access-date=2010-02-19}}</ref> ReactOS makes use of the [[USB]] stack from [[Haiku (operating system)|Haiku]] both as a reference and as a foundation for its USB support.<ref>[https://www.osnews.com/story/25632/ReactOS_gets_USB_stack_with_Haiku_s_help/ ReactOS gets USB stack with Haiku's help] on [[OSNews]] by Thom Holwerda</ref><ref>{{cite web |date=2012-02-20 |title=ReactOS gets USB Stack, with Help from Us |url=https://www.haiku-os.org/news/2012-02-20_reactos_gets_usb_stack_help_us |access-date=2012-03-02 |publisher=[[Haiku (operating system)|Haiku]]}}</ref> [[Mesa (computer graphics)|Mesa 3D]] provides [[OpenGL]] rendering.<ref name=lowendmacreview /><ref name=waterloo />
 
====Networking====
* A more distant project at the architectural level is [[Linux Unified Kernel]] which aims at enabling execution of Win32 applications on a modified Linux kernel. This plus NDISWrapper make it possible for Linux Modified Kernel to offer a free conterpart to Windows not only at application level but also at driver level that is useable on many modern PCs.
ReactOS's network stack is built on the [[Transmission Control Protocol|TCP]] portion of OSKit's port of the network stack in [[FreeBSD]], along with an internally developed implementation for packet-oriented protocols like [[Internet Protocol|IP]].<ref>{{cite web |date=2007-03-28 |title=An interview with Art Yerkes, Network Developer for the ReactOS Project |url=https://www.networkperformancedaily.com/2007/03/an_interview_with_art_yerkes_n_1.html |url-status=dead |archive-url=https://web.archive.org/web/20110714172333/https://www.networkperformancedaily.com/2007/03/an_interview_with_art_yerkes_n_1.html |archive-date=14 July 2011 |access-date=2010-02-22 |publisher=Network Performance Daily}}</ref> Later, [[lwIP]] was integrated into the ReactOS network stack.<ref name="lwIP2">{{cite mailing list |last=Gutman |first=Cameron |title=ReactOS is now using lwIP for TCP |mailing-list=lwip-devel |date=2011-08-07 |url=https://lists.nongnu.org/archive/html/lwip-devel/2011-08/msg00010.html |access-date=2011-08-09}}</ref>
 
====Wine cooperation====
* [[Ndiswrapper]] recreated a partial Windows NT kernel inside a Linux Kernel making it possible to execute modern Windows drivers inside the NT kernel box. NDISWrapper consists of a NTOSKRNL API, a basic WDM controller, and a set of Windows call wrappers such as Wireless/NDIS/USB/PnP to Linux APIs. NDISWrapper is not limited to execute only NDIS drivers, other WDM drivers can be used as long as the driver doesn't call a non implemented Windows API.
[[File:Wine on ReactOS.svg|thumb|300px|A simplified architecture diagram of ReactOS, with Wine dependencies indicated by the Wine logo. White boxes denote third-party binary software. Green boxes are "[[user space|userland]]" components, red are kernel components.]]
The ReactOS and the [[Wine (software)|Wine]] projects share the goal to run binary Windows software natively and can therefore share many dependencies and development.<ref name=collaboration2>{{cite web |url=https://www.winehq.org/interview/14 |title=Interview with Steven Edwards |first=Brian |last=Vincent|date=2004-05-15 |publisher=winehq.com |quote=''BV: Wine and ReactOS have had a mutually beneficial relationship. Is there anything Wine could do different that would help ReactOS development?[...] BV: You guys have certainly contributed a lot of your work back to Wine, including some of the utilities you've written. For instance, the task manager was recently ported from ReactOS. Do you guys have any plans in the works for developing more tools? Steven: I really want to see a solitaire clone make it in to Wine and ReactOS.[...] At some point we are going to have to develop replacement components for everything in Windows so if there is a program that Wine needs and ReactOS implements it then I will try to make sure it's released under a compatible license.'' |access-date=2016-01-06}}</ref><ref name=wineackn /> ReactOS uses portions of the [[Wine (software)|Wine]] project so that it can benefit from Wine's progress in implementing the [[Windows API#Versions|Win32]] [[Application programming interface|API]].<ref name="wineackn">{{cite web |title=Acknowledgements |url=https://wiki.winehq.org/Acknowledgements |access-date=2009-11-15 |publisher=Wine}}</ref> While Wine's [[Native API|NTDLL]], [[Windows USER|USER32]], [[Microsoft Windows library files#KERNEL32.DLL|KERNEL32]], [[Microsoft Windows library files#GDI32.DLL|GDI32]], and [[Microsoft Windows library files#ADVAPI32.DLL|ADVAPI32]] components cannot be used directly by ReactOS due to architectural differences, [[Snippet (programming)|code snippets]] of them and other parts can be shared between both projects. The kernel is developed by ReactOS separately as Wine relies here on existing [[Unix-like]] kernels.<ref name="waterloo">{{cite speech |url=https://csclub.uwaterloo.ca/resources/tech-talks/reactos-an-open-source-os-platform-for-learning/ |author=Ionescu, Alex |title=The ReactOS Project – An Open Source OS Platform for Learning |___location=University of Waterloo, Canada |date=2006-02-26 |access-date=2009-12-10}}</ref><ref name="notwindows">{{cite conference |last=C. |first=Michele |date=2009-06-19 |title=ReactOS is (not) Windows |url=https://www.hackmeeting.org/hackit09/presentazioni/ReactOS_is_(not)_Windows.pdf |conference=Hackmeeting 2009 |___location=Milan |access-date=2020-10-20 |conference-url=https://hackmeeting.org/hackit09/}}</ref>
 
Separately, the experimental ''Arwinss'' branch was created as an alternative means to improve USER32 and GDI32 support through an alternative implementation of the Win32 API. Whereas ReactOS's original Win32 subsystem was closely modeled after its equivalent in Windows, Arwinss combines the architecture of that subsystem with the corresponding implementation in Wine. To this end, Arwinss uses Wine's GDI32 and USER32 libraries with few changes to take fuller advantage of Wine's existing software compatibility. Arwinss also allows the user to optionally use a remote [[X Window System|X server]] instead of a local display.<ref>{{cite web |last=Holwerda |first=Thom |date=2010-01-18 |title=ReactOS Proposes Radical New Win32 Subsystem |url=https://www.osnews.com/story/22750/ReactOS_Proposes_Radical_New_Win32_Subsystem |access-date=2010-01-18 |publisher=[[OSNews]]}}</ref>
* Independently of but roughly simultaneously with the NDISwrapper project, Bill Paul of Wind River Systems developed a similar system, known as Project Evil or The NDISulator, for FreeBSD. It has since been ported to NetBSD, but not OpenBSD, due to the latter's anti-binary blob policy. The NDISulator lacks some of the functionality of NDISwrapper, such as USB support.
 
====Other====
== Hardware requirements ==
The [[Tango Desktop Project]] initiative provides open-source design guidelines and resources (as [[icon (computing)|icons]]) for applications on [[desktop environment]]s. [[FreeType]] is an open-source software development [[library (computing)|library]], used to render text on to bitmaps and provides support for other font-related operations.<ref name=lowendmacreview>{{cite web |url=http://lowendmac.com/2014/reactos-a-windows-compatible-alternative-os/ |title=ReactOS: A Windows Compatible Alternative OS |publisher=lowendmac.com |first=Simon |last=Royal |date=2014-02-16 |access-date=2016-01-10 |quote=While the main core of ReactOS is built from scratch, it has some dependencies on existing software and protocols. It uses parts of Wine, networking in the form of lwIP, USB from Haiku, as well as FreeType, Mesa3D, and UniATA.}}</ref> The ''KernelEx'' project is a Windows-API extension and compatibility layer project, which provides open-source implementations of some Windows-APIs.<ref>[https://sourceforge.net/projects/kernelex/ kernelex] on [[sourceforge.net]]</ref> Other contributing projects are [[MinGW]], [[SYSLINUX]], [[adns]], [[International Components for Unicode|ICU]], GraphApp, [[Ext2]], [[GNU FreeFont]], [[DejaVu fonts]], and [[Liberation fonts]].<ref>{{cite web |title= Third party libraries&nbsp;— ReactOS|url= https://www.reactos.org/wiki/Third_party_libraries|website= www.reactos.org|access-date= 2015-01-08}}</ref><ref>{{cite web|title= FishEye: Annotated&nbsp;— reactos/trunk/reactos/media/doc/3rd Party Files.txt|url= https://code.reactos.org/browse/reactos/trunk/reactos/media/doc/3rd%20Party%20Files.txt?hb=true|website= code.reactos.org|access-date= 2015-01-08|archive-url= https://web.archive.org/web/20160803013323/http://code.reactos.org/browse/reactos/trunk/reactos/media/doc/3rd%20Party%20Files.txt?hb=true|archive-date= 3 August 2016|url-status= dead|df= dmy-all}}</ref><ref>{{cite web|title= [reactos] Contents of /trunk/reactos/dll/win32/syssetup/syssetup.rc|url= https://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/syssetup/syssetup.rc?view=markup|website= svn.reactos.org|access-date= 2015-01-08|archive-url= https://web.archive.org/web/20170904111913/https://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/syssetup/syssetup.rc?view=markup|archive-date= 4 September 2017|url-status= dead|df= dmy-all}}</ref>
The minimum [[System requirements|hardware requirements]] for ReactOS to run are:<ref>[http://www.reactos.org/wiki/index.php/Installing_ReactOS Installing ReactOS - ReactOS<!-- Bot generated title -->]</ref>
 
==Forks==
* 32MB RAM<ref>Debug builds may require up to 72MB of RAM.</ref>
Forks based on ReactOS exist:
* IDE harddisk (not SATA)
*Ekush OS (2004)<ref name="osnews.com">[https://www.osnews.com/story/8830/Ekush_Emulator_And_its_License_Pains Ekush Emulator and Its License Pains] on [[OSNews]] by Eugenia Loli (10 November 2004)</ref><ref name="web.archive.org">[https://web.archive.org/web/20041114021115/http://blight.eu.org/reactos/ekush.html Ekush OS&nbsp;– stolen source code/copyright violation] (archived 2004)</ref><ref name=ReferenceA>[https://web.archive.org/web/20040918235716/http://www.akshor.com Ekush The Next Generation Operating System] on akshor.com (archived 2004)</ref>
* FAT16/FAT32 primary boot partition<ref>The boot partition must be the first and only partition on the disk.</ref>
* VGA compatible video card (VESA BIOS version v2.0 and higher)
* Standard (PS/2) keyboard
* PS/2 compatible mouse or Microsoft Mouse compatible serial mouse
 
==Reception==
Furthermore, TCP/IP networking works with one of the following Ethernet cards:
Various people have acknowledged ReactOS and the implications of having a viable open-source [[drop-in replacement]] for Windows.<ref name=Spiegel /> A 2004 article and interview of the German weekly magazine ''[[Der Spiegel]]'' describes ReactOS as directed at Windows users who want to renounce use of [[proprietary software|proprietary]] commercial software without having to switch to Linux.<ref name=Spiegel /> [[DistroWatch]], a [[Linux distribution]]'s monitoring Web site, also lists ReactOS and describes it as "a free and open-source operating system based on the best design principles found in the [[Architecture of Windows NT|Windows NT architecture]]."<ref>[https://www.distrowatch.com/table.php?distribution=reactos reactos] on [[DistroWatch|distrowatch.com]] ''ReactOS is a free and open-source operating system based on the best design principles found in the Windows NT architecture.'' (accessed January 2016)</ref>
 
In his column for [[Free Software Magazine]], David Sugar noted in 2006 that ReactOS would allow the use of applications depending on older versions of Windows whose APIs have been deprecated. He also recognized its potential to expand the total deployed base of free software, and as a resource for developers wanting to know [[undocumented feature|undocumented]] Windows APIs in the course of writing portable applications.<ref name="undocumented">{{cite web |last=Sugar |first=David |date=2006-01-31 |title=A reaction to ReactOS |url=https://www.freesoftwaremagazine.com/node/1474 |url-status=dead |archive-url=https://web.archive.org/web/20070810113707/http://www.freesoftwaremagazine.com/node/1474 |archive-date=10 August 2007 |access-date=2009-12-11 |publisher=[[Free Software Magazine]] |df=dmy-all}}</ref> [[PC Magazine]] columnist [[John C. Dvorak]] remarked in 2008 that the Windows NT architecture had remained largely unchanged, making it an ideal candidate for cloning, and believed that ReactOS could be "a bigger threat than [[Linux]] to Microsoft's dominance".<ref name=dvorak>{{cite web |url=https://www.pcmag.com/article2/0,2817,2290313,00.asp |first=John C. |last=Dvorak |title=What A New OS Needs |publisher=[[PC Magazine]] |date=2008-04-04 |access-date=2009-12-11}}</ref> In response to Dvorak's column, [[ZDNet]] technology journalist Dana Blankenhorn noted in 2008 that a lack of corporate sponsors and partners had rendered the project harmless to Microsoft.<ref>{{cite web |last=Blankenhorn |first=Dana |date=2008-05-13 |title=ReactOS no threat to Windows |url=https://blogs.zdnet.com/open-source/?p=2425 |url-status=dead |archive-url=https://web.archive.org/web/20080925230732/http://blogs.zdnet.com/open-source/?p=2425 |archive-date=25 September 2008 |access-date=2009-12-22 |publisher=[[ZDNet]]}}</ref><ref>{{cite web |url=http://talkback.zdnet.com/5208-10535-0.html?forumID=1&threadID=47591&messageID=886507 |archive-url=https://archive.today/20120628231147/http://talkback.zdnet.com/5208-10535-0.html?forumID=1&threadID=47591&messageID=886507 |url-status=dead |archive-date=28 June 2012 |last=Blankenhorn |first=Dana |title=ReactOS needs a channel |publisher=[[ZDNet]] |date=2008-05-13 |access-date=2009-12-22 }}</ref> Echoing this, Thom Holwerda of [[OSNews]] in 2009 categorized ReactOS under a family of hobby operating systems maintained only by small groups of developers working in their spare time, lacking the financial support of more mainstream operating systems and the legacy of formerly mainstream ones such as [[RISC OS]].<ref>{{cite web |last=Holwerda |first=Thom |date=2009-12-20 |title=My OS Is Less Hobby Than Yours |url=https://www.osnews.com/story/22638/My_OS_Is_Less_Hobby_than_Yours |access-date=2009-12-22 |publisher=[[OSNews]]}}</ref>
* NE2000 clones (Such as Realtek 8029)
* AMD PCnet32 LANCE
* ADMtek AN983B
 
In October 2015, a [[International Data Group#IDG Global Brands|Network World]] review of ReactOS v0.3.17 noted "It's just like running Windows 2000" and praised the application [[package manager]], a feature the original Windows is missing.<ref>{{cite web |url=https://www.networkworld.com/article/944754/linux-cousins-part-2-reviewing-reactos-the-open-source-version-of-windows.html|title=Linux cousins Part 2: Reviewing ReactOS, the Open Source version of Windows |quote=''In short: It's just like running Windows 2000. Except Free and Open Source. Which makes makes it feel both awesome. And dirty. And profound... also infuriating. If I'm honest, I really don't know how ReactOS makes me feel. But it's damned impressive that it exists and works so well. Beyond simply being Open Source, ReactOS has one cool features that Windows never really provided properly: An application manager that is laid out and structured like a Linux package manager. From within it you can even install a large number of FOSS software staples, such as [[Firefox]], [[LibreOffice]], and [[GIMP]].'' |first=Bryan|last=Lunduke |access-date=2016-01-04 |date=2015-10-28 |publisher=[[International Data Group#IDG Global Brands|Network World]]}}</ref>
Other cards might also work with the appropriate driver. Please mind that at the moment ReactOS works with NIC drivers up to NDIS 5.0 (Windows 2000).
 
In August 2018, Jesse Smith from DistroWatch Weekly reviewed ReactOS v0.4.9, reporting that it suffered from limited hardware support and that it tended to lock up under load. He concluded: "[it] should be used with caution and probably not as a main, day-to-day operating system"<ref>{{Cite journal|url=https://distrowatch.com/weekly.php?issue=20180827#guixsd|title=Guix System Distribution 0.15.0 and ReactOS 0.4.9|issue=778|author=Jesse Smith|website=DistroWatch Weekly|access-date=2018-08-27}}</ref>
=== Architecture support ===
ReactOS developers are currently working on a number of [[porting|ports]] of ReactOS:
* [[x86 architecture|x86]] (working)
* [[Xbox]] (regressed, but will be revived later)
* [[PowerPC]] (initial booting)<ref>[http://www.reactos.org/wiki/index.php/PowerPC PowerPC - ReactOS<!-- Bot generated title -->]</ref>
* [[ARM architecture|ARM]] (not working, in progress)<ref>[http://www.reactos.org/en/newsletter_37.html#sec4 #37 - ReactOS Website<!-- Bot generated title -->]</ref>
 
===Awards===
As noted, ReactOS can also be run on software which [[emulator|emulates]] or [[virtual machine|virtualizes]] the above hardware, such as [[VMware]], [[VirtualBox]] and [[QEMU]] (support for [[Microsoft Virtual PC]] is currently unavailable, but may be revived in the future).
The ReactOS Project won on the annual [[Seliger (forum)|Seliger Youth Forum]] "The Best Presentation" award with 100,000 [[Russian ruble]]s ($2700) in 2011, attended by Alexander Rechitskiy, one of the development team members.<ref name="bestpresentationaward2011">{{cite web |date=2011-09-12 |title=Russian president asked to Fund Windows Open Source Clone |url=https://jordanopensource.org/freeplanet/article/russian-president-asked-fund-windows-open-source-clone |url-status=dead |archive-url=https://web.archive.org/web/20140201224904/http://jordanopensource.org/freeplanet/article/russian-president-asked-fund-windows-open-source-clone |archive-date=1 February 2014 |access-date=2013-06-18 |publisher=Jordan Open Source Association |quote=''At the forum, ReactOS won "The Best Presentation" award and a grant of 100,000 rubles (approximately 2,400 JDs). In addition, around twenty large investors became interested in the project.'' |df=dmy-all}}</ref>
 
ReactOS was a featured project on [[SourceForge]] for the weeks beginning on 27 February 2012, 25 April 2013,<ref name="sffeaturedproject2012">{{cite web |date=2012-12-27 |title=Featured projects, February 27, 2012 |url=https://www.sourceforge.net/blog/featured-projects-20120227/ |access-date=2012-12-20 |publisher=[[SourceForge|SourceForge.com]]}}</ref> and several others. It was Project of the Month on SourceForge for June 2013<ref name="potm-201306-2">{{cite web |date=2013-06-17 |title=Sourceforge POTM June 2013 |url=https://www.sourceforge.net/blog/potm-201306/ |access-date=2013-06-17 |publisher=[[SourceForge|Sourceforge.com]]}}</ref> and February 2019.<ref>{{cite web |date=8 February 2019 |title=February 2019, "Staff Pick" Project of the Month – ReactOS |url=https://www.sourceforge.net/blog/february-2019-staff-pick-project-month-reactos |access-date=25 May 2021 |language=en}}</ref>
As [[Windows NT 4.0]] ran on [[MIPS architecture|MIPS]], [[DEC Alpha|Alpha AXP]], and PowerPC architectures in addition to the i386 architecture, and NT-derived operating systems such as [[Windows XP]] and [[Windows Server 2003]] have been ported to several architectures (i.e. [[AMD64]], IA-32, and [[IA-64]]), ReactOS developers have also taken initial steps in view of portability. For example, support for a variant IA-32 architecture, the Xbox platform, was added to the 0.2.5 release, and efforts toward a ReactOS port on the PowerPC and the Xen architecture are also underway {{As of|2005|lc=on}}. Also currently they are working on porting ReactOS for ARM platform with the hope for a pocketPC-type ReactOS which at this point can fit better than a full featured operating system.
 
== See also ==
{{Portal|Free software|Freeand Softwareopen-source Portal Logo.svgsoftware}}
*[[Binary-code compatibility]]
* [[andLinux]]
*[[Cooperative Linux|coLinux]], a project allowing Microsoft Windows and the Linux kernel to run simultaneously in parallel on the same machine
* [[coLinux]]
*[[FreeDOS]], a clone of [[MS-DOS]]
* [[E/OS]]
*[[eComStation]] and [[ArcaOS]], two independent proprietary continuations of [[OS/2]] (source code licensed from IBM), which IBM co-created with Microsoft and shares some design elements with MS-DOS and Windows
* [[Freedows OS]]
** osFree,<ref>{{GitHub|osfree-project|osfree}}</ref> an early attempt to clone OS/2
* [[HX DOS Extender]]
*[[Haiku (operating system)|Haiku]], a clone of [[BeOS]]
* [[TinyKRNL]]
*[[Longene]], a hybrid operating system kernel intended to be binary-compatible with both the Microsoft Windows and Linux ecosystems
* [[Linux Unified Kernel]]
*[[NDISwrapper]], a re-creation of Windows NT kernel parts inside the Linux Kernel to allow the use of Windows drivers in Linux
*[[Wine (software)|Wine]], a compatibility layer that runs Microsoft Windows applications on Unix-like operating systems
*[[List of alternative shells for Windows]]
*Timelines of: [[Timeline of Intel|Intel]] / [[Timeline of Microsoft|Microsoft]] / [[Timeline of Microsoft Windows|Microsoft Windows]] / [[Timeline of operating systems|other operating systems]] ([[List of operating systems|List]])
*[[Comparison of operating systems]]
 
== References Notes==
{{reflist|group=lower-alpha}}
{{refs|2}}
 
==References==
== External links ==
{{Commons|ReactOSreflist}}
* [http://www.reactos.org/ Official website]
* [http://www.sky.franken.de/explorer/index.html ReactOS Explorer]
* [http://neosmart.net/blog/archives/220 Detailed review of ReactOS]
* [http://sourceforge.net/projects/reactos/ ReactOS project page] at [[SourceForge]]
* [http://www.winehq.com/?interview=14 Interview with Steven Edwards of ReactOS and Wine] (WineHQ)
* [irc://irc.freenode.net/reactos #reactos] on freenode
 
==External links==
{{FLOSS}}
{{Commons}}
{{Operating System}}
*{{Official website}}
 
{{FOSS}}
{{Operating system}}
{{Russian operating systems}}
{{Authority control}}
 
[[Category:ReactOS| ]]
[[Category:1998 software]]
[[Category:Alpha software]]
[[Category:Articles containing video clips]]
[[Category:Free software operating systems]]
[[Category:Free software programmed in C]]
[[Category:Free software programmed in C++]]
[[Category:Live CD]]
[[Category:Operating system distributions bootable from read-only media]]
[[Category:Software derived from or incorporating Wine]]
[[Category:Upcoming software]]
[[Category:Window-based operating systems]]
[[Category:X86-64 operating systems]]
 
[[Category:IA-32 operating systems]]
[[ar:رياكت.أو.إس]]
[[Category:Works involved in plagiarism controversies]]
[[bg:ReactOS]]
[[ca:ReactOS]]
[[cs:ReactOS]]
[[de:ReactOS]]
[[et:ReactOS]]
[[es:ReactOS]]
[[fr:ReactOS]]
[[ko:ReactOS]]
[[id:ReactOS]]
[[it:ReactOS]]
[[he:ReactOS]]
[[lt:ReactOS]]
[[hu:ReactOS]]
[[nl:ReactOS]]
[[ja:ReactOS]]
[[no:ReactOS]]
[[pl:ReactOS]]
[[pt:ReactOS]]
[[ru:ReactOS]]
[[simple:ReactOS]]
[[sk:ReactOS]]
[[fi:ReactOS]]
[[sv:ReactOS]]
[[tr:ReactOS]]
[[uk:ReactOS]]
[[zh:ReactOS]]