ReactOS

Một hệ điều hành

ReactOS là một hệ điều hành mã nguồn mở cho các máy tính cá nhân x86/x64 với mục đích tương thích nhị phân với các chương trình máy tínhdriver được viết cho Windows Server 2003.[3]

ReactOS
Nhà phát triểnReactOS Foundation
Được viết bằngC, C++[1][2]
Họ hệ điều hànhTương tự Windows
Tình trạng
hoạt động
Alpha
Kiểu mã nguồnMã nguồn mở
Phát hành
lần đầu
1998; 19 năm trước (1998)
Phiên bản
mới nhất
0.4.14
Bản xem trước
mới nhất
0.4.15 build 3516 (25 tháng 12 năm 2021)
Đối tượng
tiếp thị
Máy tính cá nhân
Phương thức
cập nhật
CD-ROM
Nền tảngIA-32, x86-64, ARM
Loại nhânHybrid (được thiết kế để tương thích với Windows NT và sau này)
Giao diện
mặc định
Đồ họa (ReactOS Explorer)
Giấy phépGNU GPL v2+ với một phần dưới giấy phép LGPL và BSD
Website
chính thức
www.reactos.org
ReactOS 0.4.7 Desktop

Bắt đầu phát triển từ năm 1996, như một dự án bản sao của Windows 95, và tiếp tục phát triển như là ReactOS năm1998, với việc bổ sung gia tăng của các tính năng của các phiên bản mới hơn của Windows. ReactOS đã được ghi nhận như là một thay thế mã nguồn mở thay thế tiềm năng cho Windows vì nó hỗ trợ Windows API. Trên trang web chính thức có nói: "Mục tiêu chính của dự án ReactOS là cung cấp một hệ điều hành tương thích nhị phân với Windows... như vậy mọi người đã quen với giao diện người dùng quen thuộc của Windows có thể tìm cách sử dụng ReactOS dễ dàng. Mục tiêu cuối cùng của ReactOS là cho phép loại bỏ Windows và cài đặt ReactOS mà không cần người dùng cuối nhận thấy sự thay đổi."[4] Tính đến tháng 7 năm 2016, ReactOS được coi là phần mềm alpha, tính năng không đầy đủ nhưng với nhiều ứng dụng Windows đã làm việc (ví dụ. Adobe Reader 6.0, OpenOffice...[5]),[6] và do đó khuyến cáo của các nhà phát triển chỉ cho mục đích đánh giá và thử nghiệm.[7]

ReactOS chủ yếu được viết bằng C, với một số phần, chẳng hạn như ReactOS File Explorer, được viết bằng C++. Dự án phần thực hiện chức năng của Windows API và đã hỗ trợ các kiến trúc vi xử lý AMD64. ReactOS, là một phần của hệ sinh thái FOSS, tái sử dụng và hợp tác với nhiều dự án phần mềm nguồn mở khác, đáng chú ý là hầu hết dự án Wine phát triển một lớp tương thích Windows cho các hệ điều hành tương tự Unix.

Lịch sử

Điều phối viên dự án ReactOS Aleksey Bragin (trái) đang trình diễn ReactOS với Viktor Alksnis
Thủ tướng Nga Dmitry Medvedev (trái) đang xem một trình diễn của ReactOS

Phát triển sớm

Vào khoảng năm 1996, một nhóm các nhà phát triển phần mềm tự do mã nguồn mở bắt đầu một dự án gọi là FreeWin95 như một bản sao của  Windows 95. Dự án bị đình trệ trong các cuộc thảo luận về thiết kế của hệ thống.

Trong khi FreeWin95 đã bắt đầu với những kỳ vọng lớn, vẫn chưa có bất kỳ bản phát hành vào cuối năm 1997. Kết quả là, các thành viên dự án, do điều phối viên Jason Filby, kết hợp với nhau để phục hồi dự án. Dự án hồi sinh tìm cách lặp lại trong các chức năng của Windows NT.[8] Trong việc tạo ra các dự án mới, một cái tên mới,, ReactOS, được chọn. Dự án bắt đầu phát triển tháng 1/1998 bằng cách tạo cơ sở cho một kernel NT mới và các driver.[9] Tên ReactOS được đặt ra trong một nhóm chat IRC. Trong khi thuật ngữ "OS" là viết tắt cho operating system (hệ điều hành), từ "react" nhắc đến sự bất mãn của nhóm với - và phản ứng - vị trí độc quyền của Microsoft.[10]nó giống như Windows 95-Windows 2000

Phân nhánh Ekush OS

Năm 2004, một sự vi phạm bản quyền/giấy phép mã ReactOS GPL (và các mã FOSS khác) đã được tìm thấy khi ai đó phân phối một phân nhánh ReactOS dưới tên Ekush OS. Trang web sau đó đã ngừng hoạt động.

Kiểm toán nội bộ

Để tránh bị truy tố về bản quyền, ReactOS cần phải hoàn toàn khác biệt và không phải phái sinh từ Windows, một mục tiêu mà cần làm rất cẩn thận.[11]Một tuyên bố được đưa ra ngày 17/1/2006, bởi một cựu nhà phát triển của Hartmut Birr trên mailing list (ros-dev)  của các nhà phát triển của ReactOS rằng ReactOS có chứa mã nguồn tách rời từ Microsoft Windows.[12] Các đoạn mã mà Birr tranh chấp có liên quan đến chức năng BadStack trong syscall.S.[13] cũng như mục không xác định khác.[14] So sánh tính năng này với mã nhị phân tách rời từ Windows XP, Birr lập luận rằng các chức năng BadStack chỉ đơn giản là copy-paste từ Windows XP, cho rằng chúng giống hệt nhau. Alex Ionescu, tác giả của mã này, khẳng định rằng trong khi nhị phân Windows XP trong câu hỏi đã thực sự tháo rời và nghiên cứu, các mã này không chỉ đơn thuần là copy-paste, nhưng tái triển khai; lý do tại sao các chức năng giống hệt nhau, Ionescu tuyên bố, là vì chỉ có một cách có thể để thực hiện chức năng.[15]

Ngày 27/1/2006, các nhà phát triển chịu trách nhiệm cho việc duy trì các mã  kho lưu trữ ReactOS đã khóa truy cập sau cuộc họp để thảo luận về các cáo buộc. Khi tiếp cận bởi NewsForge, Microsoft từ chối bình luận về vụ việc. Từ khi ReactOS phát triển một phần mềm tự do nguồn mở, yêu cầu bồi thường gây ra một phản ứng tiêu cực của cộng đồng phần mềm tự do; đặc biệt là, Wine cấm số nhà phát triển hoạt động từ việc cung cấp các khoản đóng góp[16] và hợp tác cấp cao chính thức giữa hai dự án vẫn còn khó khăn tính đến năm 2006.[17] Các khoản đóng góp từ một số nhà phát triển ReactOS hoạt động đã được chấp nhận hậu kiểm toán, và hợp tác ở mức độ thấp để sửa lỗi vẫn xảy ra.

Trong một tuyên bố trên website của mình, ReactOS trích dẫn những định nghĩa khác nhau về các cấu thành của kỹ thuật dịch ngược sạch như là một nguyên nhân cho cuộc xung đột.[18] Một vài quốc gia, bao gồm cả Mỹ yêu cầu việc tái triển khai dựa trên mã tách rời phải được viết bởi một người nào đó khác hơn so với người đã tách rời và kiểm tra mã gốc,[19][20] trong khi các nước khác cho phép cả hai công việc được thực hiện bởi cùng một cá nhân. Do đó, ReactOS làm rõ việc Chính sách về Sở hữu trí tuệ (Intellectual Property Policy Statement) của họ yêu cầu kỹ thuật dịch ngược sạch phải tuân theo Luật pháp Mỹ US. Việc kiểm toán mã nguồn nội bộ đã được tiến hành để đảm bảo rằng chỉ kỹ thuật dịch ngược sạch được dùng, và tất cả các nhà phát triển đã được thực hiện để ký một thỏa thuận cam kết họ tuân thủ các chính sách của dự án về kỹ thuật dịch ngược. Người đóng góp cho sự phát triển của nó không bị ảnh hưởng bởi việc này, và tất cả các truy cập vào các công cụ phát triển phần mềm đã được phục hồi ngay sau đó. Tháng 9/2007, với các kiểm toán gần hoàn thành, tình trạng kiểm toán đã được gỡ bỏ từ trang chủ ReactOS. Mặc dù việc kiểm toán đã được hoàn thành, chi tiết cụ thể không được công bố công khai vì nó chỉ là một sự nỗ lực nội bộ để đảm bảo tuân thủ các chính sách riêng của dự án.[21]

Hầu hết các mã assembly mà đã bị cáo buộc sao chép cũng đã được thay thế như một sự tiến triển tự nhiên trong phát triển ReactOS, với các nhà phát triển đã tái triển khai các chức năng trong C vì lý do tính di động.[cần dẫn nguồn]

Ngoài ra, vụ rò rỉ mã nguồn Windows[22] không được xem như rủi ro pháp lý cho ReactOS, như các bí mật thương mại được coi là không thể bảo vệ tại tòa án do lây lan rộng.[23]

Tham gia Google Summer of Code

Bắt đầu từ 2006[24] dự án ReactOS đã tham gia Google Summer of Codes. Ví dụ, trong GSoC 2011[25] ReactOS dẫn dắt một dự án sinh viên tích hợp lwIP vào ngăn xếp mạng. ReactOS đã có ba lần tham gia GSoC vào các năm: 2006, 2011, và 2016.

Trình diễn công khai

Các buổi trình diễn của ReactOS đã được đưa ra, chủ yếu là hướng tới các chính trị gia Nga. Viktor Alksnis đã gặp điều phối viên của dự án Aleksey Bragin, người đã có một bài thuyết trình và trình diễn của dự án, cho thấy ReactOS chạy với Total CommanderMozilla Firefox trong năm 2007.[26] Dmitry Medvedev cũng đã xem một cuộc trình diễn trong chuyến thăm của Tổng thống Nga đến một trường trung học ở Verhnerusskoe, Stavropol, có sự tham dự của một trong những thành viên trong nhóm phát triển năm 2011.[27]

Ngày 31/7/2012, Vladimir Putin cũng đã xem một buổi trình diễn của ReactOS khi đến dự Seliger Youth Forum với tư cách Tổng thống Nga, có sự tham gia của Marat Karatov, một thành viên của nhóm phát triển.[28]

Chiến dịch gọi vốn

Ngày 1/5/2012 một chiến dịch kêu gọi vốn với mục tiêu 30,000 euro được khởi động để tài trợ cho các dự án phát triển bổ sung.[29][30] Đến cuối năm chiến dịch đạt được 50% mục tiêu đề ra và họ đã quyết định tiếp tục các chiến dịch gọi vốn mà không có thời hạn.[31] Số tiền này được chuyển đến ReactOS Deutschland e. V.. Khi luật thuế của Đức với mô hình tổ chức đăng ký tình nguyện (Eingetragener Verein) khiến họ có thể trả tiền trực tiếp cho các nhà phát triển,[32] các vấn đề gián tiếp như tiền sinh hoạt phí được xem xét.

Dự án Thorium Core Cloud Desktop

Khi ReactOS nhận được giải thưởng Dự án của Tháng trên SourceForge tháng 6/2013, một chiến dịch gọi vốn cộng đồng trên Kickstarter được công bố trong một buổi phỏng vấn với điều phối viên của dự án, Aleksey Bragin.[33] Ngày 23/11/2013 tuyên bố của dự án tiết lộ một chiến dịch trên Kickstarter với mục tiêu 120,000$ được bắt đầu.[34][35] Dịch vụ điện toán đám mây có tên Thorium Core Cloud Desktop sẽ sử dụng ReactOS là cốt lõi và có thể cho phép sử dụng các ứng dụng tương thích Windows từ các thiết bị di động (như smartphone, tablet), workstations, hoặc bất kỳ thiết bị kết nối khác. Ngày 21/2/2014, Chiến dịch gọi vốn kết thúc với việc không đạt mục tiêu, với $48,965 của $120,000 được đưa lên, dẫn đến không có tiền ngay.[36]

ReactOS Community Edition

Tháng 4/2014, Dự án ReactOS đã kêu gọi một chiến dịch trên Indiegogo để khởi động ReactOS Community Edition, một phiên bản của ReactOS dự trên bản phát hành 0.4. Chiến dịch đặt mục tiêu kêu gọi được 50.000 USD vốn tài trợ với việc bổ sung thêm các mục tiêu mới.[37] Sự phát triển của ReactOS Community Edition sẽ lấy cộng đồng làm trung tâm, với việc người dùng ReactOS có thể biểu quyết và đóng góp để quyết định các phần mềm và trình điều khiển sẽ được dự án hướng đến.[38][39] Ngày 1/6/2014, chiến dịch gây quỹ trên Indiegogo kết thúc với việc huy động thêm được 25.141 USD cho việc phát triển của phiên bản cộng đồng,[40][41] và quá trình bỏ phiếu để hỗ trợ phần cứng và phần mềm đã được bắt đầu ngay sau đó.[42]

ReactOS Hackfest 2015

ReactOS printing for the first time

Dự án ReactOS đã tổ chức một Hackfest từ 7-12/8/2015, tại thành phố Aachen Đức.[43][44][45] Hackfest được công bố là thành công, vì nó bổ sung thêm nhiều tính năng cho ReactOS.

Lịch sử phát hành

Phiên bảnNgày phát hànhThông tin phát hành
Phiên bản cũ, không còn được hỗ trợ: 0.2.025/01/2004Phát hành đầu tiên làm việc với GUI
Phiên bản cũ, không còn được hỗ trợ: 0.2.103/03/2004Sửa lỗi
Phiên bản cũ, không còn được hỗ trợ: 0.2.227/04/2004Sửa lỗi
Phiên bản cũ, không còn được hỗ trợ: 0.2.326/06/2004New LiveCD image, cải thiện sự ổn định trong hạt nhân và win32k, cải thiện mạng và giao diện, lệnh điều khiển nhanh chóng và phần cứng
Phiên bản cũ, không còn được hỗ trợ: 0.2.413/09/2004Đồng bộ mã với Wine, các bản sửa lỗi biên dịch và làm sạch tập tin tiêu đề
Phiên bản cũ, không còn được hỗ trợ: 0.2.502/01/2005Nhập Notepad từ WINE, bổ sung ứng dụng Date/Time
Phiên bản cũ, không còn được hỗ trợ: 0.2.609/04/2005Tăng tốc phần cứng NVIDIA OpenGL, NCITool tạo ra để tạo các file cơ sở dữ liệu lời gọi hệ thống
Phiên bản cũ, không còn được hỗ trợ: 0.2.721/05/2005Command Prompt, My Computer và ReactOS logo icons mới,cải thiện trình cài đặt
Phiên bản cũ, không còn được hỗ trợ: 0.2.829/10/2005Nhận diện VMWare, viết lại CSRSS
Phiên bản cũ, không còn được hỗ trợ: 0.2.922/12/2005Sửa lỗi
Phiên bản cũ, không còn được hỗ trợ: 0.3.027/08/2006Phiên bản chính thức đầu tiên làm việc với mạng
Phiên bản cũ, không còn được hỗ trợ: 0.3.110/03/2007Bao gồm trình quản lý ứng dụng, bắt đầu viết lại kernel
Phiên bản cũ, không còn được hỗ trợ: 0.3.2bỏ quaĐược tạo nhưng không phát hành
Phiên bản cũ, không còn được hỗ trợ: 0.3.312/09/2007Cải tiến Kernel và win32k
Phiên bản cũ, không còn được hỗ trợ: 0.3.422/01/2008Hỗ trợ chỉnh sảu Registry, điều khiển máy khách từ xa và Plug 'N' Play
Phiên bản cũ, không còn được hỗ trợ: 0.3.530/06/2008Sửa lỗi
Phiên bản cũ, không còn được hỗ trợ: 0.3.606/08/2008Hỗ trợ RTL
Phiên bản cũ, không còn được hỗ trợ: 0.3.704/11/2008Cải thiện  x86-64; MSVC, ngăn xếp mới
Phiên bản cũ, không còn được hỗ trợ: 0.3.804/02/2009Giới thiệu PSEH và hỗ trợ đa phân vùng HDD trong LiveCD
Phiên bản cũ, không còn được hỗ trợ: 0.3.926/04/200924 MB bộ nhớ RAM tối thiểu, lập bản đồ không gian điều khiển nhanh hơn, hỗ trợ âm thanh ban đầu
Phiên bản cũ, không còn được hỗ trợ: 0.3.1005/07/2009Bước đầu hỗ trợ SATA, phím/chuột USB, bản sao của Paint, MSVC.[46][47]
Phiên bản cũ, không còn được hỗ trợ: 0.3.1116/12/2009Viết lại Kdcom; fonts chữ Trung/Hàn; cập nhật tương thích; cải tiến hệ thống âm thanh
Phiên bản cũ, không còn được hỗ trợ: 0.3.1220/10/2010Viết lại Trap handler; Viết lại đồng hồ và xử lý tin nhắn; hỗ trợ NMI, SxS; hỗ trợ một phần EMS [48]
Phiên bản cũ, không còn được hỗ trợ: 0.3.1322/03/2011Viết lại trình quản lý Heap, cải thiện hỗ trợ SATA, sửa lỗi đồ họa[49]
Phiên bản cũ, không còn được hỗ trợ: 0.3.1407/02/2012kích hoạt ACPI mặc định, hỗ trợ WiFi (không mã hóa và WEP), hỗ trợ theme, driver TCP/IP mới(LwIP), tương thích MSVC, Scatter/Gather hỗ trợ DMA, viết lại shell32[50]
Phiên bản cũ, không còn được hỗ trợ: 0.3.1530/05/2013Hỗ trợ phím,chuột và bộ nhớ USB; viết lại trình quản lý session; hỗ trợ AHCI với cập nhật cho driver UniATA; thay thế ReactOS Memory Management Module được triển khai trên tất cả chức năng quản lý bộ nhớ cho sections; hỗ trợ sơ bộ để gỡ lỗi các thành phần ReactOS sử dụng windbg; cải tiến dựa trên kết quả của việc áp dụng Sửa lỗi dựa trên chạy Driver Verifier trên nhiều trình điều khiển kèm AutoHotKey; Sửa lỗi dựa trên chạy Driver Verifier trên nhiều trình điều khiển kèm[51]
Phiên bản cũ, không còn được hỗ trợ: 0.3.1606/02/2014Viết lại CSRSS; hỗ trợ chủ đề được cải thiện; driver card mạng cho RTL8139, cho phép ReactOS hỗ trợ các phiên bản mới hơn của QEMU ra khỏi hộp[52]
Phiên bản cũ, không còn được hỗ trợ: 0.3.1705/11/2014Bao gồm một NTVDM; cải tiến font;[53][54] sửa lỗi [55]
Phiên bản cũ, không còn được hỗ trợ: 0.4.016/02/2016[56]Cải thiện hỗ trợ USB, file explorer shell và theming mới,cải thiện hõ trợ VirtualBox và Virtual PC, hỗ trợ đọc ghi ext2, hỗ trợ đọc NTFS và cải thiện hỗ trợ mạng
Phiên bản cũ, không còn được hỗ trợ: 0.4.117/05/2016[57]Cải thiện Activation Context, hỗ trợ Btrfs, cải tiến Shell, sửa lỗi USB, hỗ trợ Virtual Machine Shared Folders
Phiên bản cũ, không còn được hỗ trợ: 0.4.201/08/2016[58]Cải thiện Btrfs và hỗ trợ ext, ReiserFS và UFS/FFS, giới thiệu các hỗ trợ.NET Framework 2.0 và 4.0, sửa chữa và cải thiện Shell
Phiên bản ổn định hiện tại: 0.4.316/11/2016[59]Thư viện winsock mới, phần hỗ trợ ban đầu, sửa lỗi thông thường
Bản ra mắt trong tương lai: 0.4.4
Chú giải:
Phiên bản cũ
Phiên bản cũ, vẫn được hỗ trợ
Phiên bản mới nhất
Phiên bản xem trước mới nhất
Ra mắt trong tương lai

Development

Phát triển ReactOS core

ReactOS chủ yếu được viết bằng C, với một số phần, ví dụ như ReactOS Explorer và sound stack, được viết bằng C++. Dự án biên dịch dùng cả MinGW vàMicrosoft Visual Studio, và góp phần vào sự phát triển của hệ thống thông qua việc gửi các bản vá lỗi cho các thành phần của nó.[60]

Các nhà phát triển hướng đến mục tiêu làm cho hạt nhân và các API tương thích với Windows NT version 5.2 (Windows Server 2003) và bổ sung thêm các hỗ trợ cho các phần mềmphần cứng với kế hoạch nhắm đến các phiên bản mới hơn của Windows[61]. Hỗ trợ DirectX được triển khai thông qua ReactX, một triển khai nội bộ. Tăng tốc phần cứng 2D render được thực hiện tự nhiên, trong khi chức năng vẽ khác được chuyển đến OpenGL như một giải pháp tạm thời.[62]

Các tiến trình phát triển bị ảnh hưởng bởi kích thước của nhóm phát triển và mức độ kinh nghiệm giữa họ. Theo một tính toán của các nỗ lực cần thiết để triển khaiWindows 7, Microsoft đã cần 1,000 hoặc hơn các nhà phát triển, tổ chức họ vào 25 nhóm, với mỗi nhóm có trung bình 40 người.[63] Tính đến 2/9/2011, trong mục ReactOS tại Ohloh, trang theo dõi thông các liên kết "Nhóm phát triển tích cực và có đóng góp lớn" liệt kê 33 nhà phát triển có đóng góp trong vòng 12 tháng và có tổng cộng 104 người hiện tại và trước đây đã có đóng góp cho mã của dự án thông qua Subversion từ khi nó bắt đầu[64]. Trong bài thuyết trình của mình tại Hackmeeting 2009 ở Milan, nhà phát triển ReactOS Michele C. lưu ý rằng hầu hết các nhà phát triển tìm hiểu về kiến trúc Windows trong khi làm việc trên ReactOS và không có kiến thức trước đó.[65]

Trong khi mục tiêu chính hiện tại của ReactOS là nền tảng PC x86/AMD64[66], một nỗ lực port cho kiến trúc ARM đã có[62], trong khi nó đã không tạo ra nhiều chức năng và bị bỏ rơi[67]. Các hỗ trợ cho Xbox, một biến thể của kiến trúc IA-32, đã được bổ sung thông qua việc sử dụng một kiến trúc riếng HAL[65], mặc dù điều này, cùng với một port cho PowerPC, không còn được duy trì tích cực.

Hợp tác và tái sử dụng

Trong khi ReactOS có mục tiêu xây dựng một kernel tương thích với Windows như là phần mềm mã nguồn mở, nhiều chức năng xung quanh cần thiết để tạo ra một hệ điều hành hoàn chỉnh là đã có sẵn trong các hệ sinh thái nguồn mở lớn hơn. Khi có sẵn và có thể, ReactOS vì vậy đã xây dựng và phối hợp với các dự án mã nguồn mở đã có.[68] Ngược lại, các dự án như Wine,[69] Captive NTFS trước đây,[70] và Longene tái sử dụng codebase mã nguồn mở của ReactOS.[71]

Trình điều khiển phần cứng

Về mặt điều khiển phần cứng, ví dụ các dự án UniATA cung cấp trình điều khiển Serial ATA cho ReactOS.[72][73] Dự án cũng đã thử nghiệm bằng cách sử dụng thư viện FullFAT trong khi viết lại FAT Installable File System của nó.[74] ReactOS giúp việc sử dụng USB stack từ Haiku vừa là một tài liệu tham khảo vừa như là một nền tảng để hỗ trợ USB của mình.[75][76] Mesa 3D  cung cấp OpenGL render.[72][77]

Mạng

Ngăn xếp mạng của ReactOS được xây dựng dựa trên port của ngăn xếp mạng OSKit TCP trong FreeBSD, cùng với việc thực hiện phát triển nội bộ các giao thức gói tin theo định hướng tương tự IP.[78] Sau này, lwIP  đã được tích hợp vào ngăn xếp mạng của ReactOS.[79] Các dịch vụ mạng Windows như LSASS, SAM, NETLOGON, và print spooling đã có sẵn như là mã nguồn mở thay thế bởi các dự án Samba/Samba TNG. Một phân nhánh của rdesktop được sử dụng như một triển khai phần mềm client cho giao thức độc quyền của Microsoft Remote Desktop Protocol.

Hợp tác với Wine

Một sơ đồ kiến trúc đơn giản của ReactOS, với phụ thuộc Wine chỉ định với các biểu tượng Wine. Hộp màu trắng biểu thị phần mềm nhị phân của bên thứ ba. Hộp màu xanh lá cây là thành phần "Userland", màu đỏ là thành phần hạt nhân.

Hai dự án ReactOS và Wine chia sẻ mục tiêu để chạy phần mềm Windows nhị phân tự nhiên và vì vậy có thể chia sẻ nhiều phụ thuộc và phát triển.[69][80] ReactOS  sử dụng các phần của dự án Wine để nó có thể được hưởng lợi từ sự tiến bộ của Winetrong triển khai các Win32 API.[80] Trong khi các thành phần NTDLL, USER32, KERNEL32, GDI32, và ADVAPI32 của Wine không thể được sử dụng trực tiếp bởi ReactOS do sự khác biệt về kiến trúc, mã lệnh chúng và các bộ phận khác có thể được chia sẻ giữa cả hai dự án. Hạt nhân được phát triển bởi ReactOS riêng biệt như Wine dựa vào hạt nhân unixoid có sẵn.[65][81]

Đặc biệt, các nhánh Arwinss thử nghiệm đã được tạo ra như là một phương tiện thay thế để cải thiện hỗ trợ USER32 và GDI32 thông qua một cài đặt thay thế của Win32 API. Trong khi đó, hệ thống con Win32 của ReactOS ban đầu theo sát sau hệ thống tương đương của nó trong Windows, Arwinss kết hợp kiến trúc của hệ thống con với các triển khai tương ứng trong Wine. Để kết thúc điều này, Arwinss sử dụng thư viện GDI32 và USER32 của Wine với vài thay đổi để tận dụng đầy đủ hơn về tương thích phần mềm hiện tại của Wine. Arwinss cũng cho phép người dùng tùy chọn sử dụng một X server từ xa thay vì hiển thị cục bộ.[82]

Khác

Dự án Tango Desktop Project chủ động cung cấp hướng dẫn mã nguồn mở thiết kế và nguồn lực (như các icon) cho các ứng dụng trên môi trường desktop. FreeType là một thư viện phát triển phần mềm mã nguồn mở, dùng để render ký tự sang bitmapvaf cung cấp các hỗ trợ cho các hoạt động khác liên quan đến font chữ.[72] Dự án KernelEx là một dự án mở rộng và tương thích Windows-API, cung cấp triển khai nguồn mở của một số Windows-API.[83] dự án góp phần khác là MinGW, SYSLINUX, adns, ICU, GraphApp, Ext2, GNU FreeFont, DejaVu fonts, và Liberation fonts.[84][85][86]

Phân nhánh

Các phân nhánh dựa trên ReactOS đôi khi được tạo ra:

  • Ekush OS (2004)[87][88][89]
  • ReactOS Server Edition[90]
  • ReactOS Server[91]
  • OpenROS (2013)[92]
  • FusionOS (2013)[93]
  • ReactOS NG (2015) – nhằm để tương thích với Windows 8[94]
  • Greentea OS (2016) – nhằm phát triển nhanh và đơn giản[95]

Tiếp nhận

Nhiều người đã chấp nhận ReactOS và những tác động của việc giảm nguồn mở khả thi thay thế cho Windows. Một bài báo năm 2004 và cuộc phỏng vấn của tạp chí hàng tuần của Đức Der Spiegel mô tả ReactOS là hướng vào người dùng Windows muốn từ bỏ sử dụng các Phần mềm thương mại độc quyền mà không cần phải chuyển sang Linux. DistroWatch, trang web theo dõi các bản phân phối Linux, cũng liệt kê cũng ReactOS và mô tả nó là "Một hệ điều hành tự do nguồn mở dựa trên các nguyên tắc thiết kế tốt nhất được tìm thấy trong kiến trúc Windows NT.".[96]

Trong phần riêng của mình cho tạp chí Free Software Magazine, David Sugar ghi nhận vào năm 2006 rằng ReactOS sẽ cho phép việc sử dụng các ứng dụng phụ thuộc vào phiên bản cũ của Windows mà các API yêu cầu. Ông cũng nhận ra tiềm năng của nó để mở rộng tổng triển khai cơ sở của phần mềm miễn phí,và như là một nguồn tài nguyên cho các nhà phát triển muốn biết Windows API không có giấy tờ trong quá trình viết các ứng dụng di động.[97] PC Magazine mục John C. Dvorak nhận xét trong năm 2008 kiến trúc Windows NT không có nhiều thay đổi lớn, làm cho nó trở thành một ứng cử viên lý tưởng cho nhân bản, và tin rằng ReactOS có thể là "một mối đe dọa lớn hơn Linux với sự thống trị của Microsoft".[98] Trong phản ứng với mục Dvorak, nhà báo công nghệ của ZDNet Dana Blankenhorn ghi nhận trong năm 2008 rằng sự thiếu nhà tài trợ của các doanh nghiệp và đối tác đã khiến cho dự án vô hại đối với Microsoft.[99][100] Lặp lại điều này, Thom Holwerda của OSNews năm 2009 đã phân loại ReactOS vào nhóm các hệ điều hành thú vui, duy trì chỉ bởi nhóm nhỏ các nhà phát triển làm việc trong thời gian rảnh rỗi của họ, thiếu sự hỗ trợ tài chính  của nhiều hệ điều hành chính thống và là di sản của những sản phẩm trước đây như RISC OS.[101]

Tháng 10/2015, một đánh giá của Network World về ReactOS v0.3.17 ghi nhận có ấn tượng "Nó giống như đang chạy Windows 2000" and praised the extension by an application package manager, a feature the original Windows is missing.[102]

Giải thưởng

ReactOS Project giành chiến thắng tại giải thưởng thường niên Seliger Youth Forum "The Best Presentation" với 100,000 Rúp Nga (≈US$2700) năm 2011, với sự tham dự của Alexander Rechitskiy, một thành viên trong nhóm phát triển.[103]

ReactOS là dự án nổi bật trên SourceForge trong tuần từ ngày 27 /2/2012, và 25/4/2013[104] cùng với một số dự án khác. Nó là Dự án của tháng (Project of the Month) trên Sourceforge trong tháng 6/2013.[105]

Năm 2015, ReactOS được đặt tên bởi Bộ trưởng [ Thông tin Nga] với các hỗ trợ xứng đáng thay thế "Hệ điều hành khác/chủ",[106][107] với tiềm năng của nó trong việc giảm sự phụ thuộc của Nga từ nhập khẩu phần mềm độc quyền.[108][109]

Xem thêm

  • Tương thích mã nhị phân
  • coLinux, một dự án cho phép Microsoft WindowsLinux kernel để chạy đồng thời song song trên cùng một máy
  • FreeDOS, một bản sao của MS-DOS
  • Longene, một hệ điều hành hạt nhân hybrid với ý định tương thích nhị phân với cả hai hệ sinh thái Windows và Linux
  • NDISwrapper, một sự tái tạo hạt nhân Windows NT bên trong hạt nhân Linux cho phép sử dụng các trình điều khiển Windows trong Linux
  • Wine, lớp tương thích mà chạy các ứng dụng Microsoft Windows trên hệ điều hành tương tự Unix

Chú thích

Liên kết ngoài

Trang web chính thức
Đánh giá và phỏng vấn