ReactOS

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
ReactOS
Logo
Ilustracja
Interfejs użytkownika
Producent Fundacja ReactOS
Architektura IA-32, x86-64
Pierwsze wydanie 1 lutego 1998; ponad 22 lat temu
Aktualna wersja 0.4.13
(9 kwietnia 2020; ponad 7 miesięcy temu)
Aktualna wersja testowa 0.4.14
(9 kwietnia 2020; ponad 7 miesięcy temu)
Jądro hybrydowe
Licencja GPL
Wersja Live T dostępna
[www.reactos.org Strona internetowa]

ReactOS – darmowy system operacyjny typu open source dla komputerów osobistych amd64/i686 funkcjonalnie kompatybilny z Windows NT, Windows 2000 i Windows 2003. W założeniach systemu jest możliwość korzystania z aplikacji i sterowników Windows, aplikacji OS/2, Java i POSIX. Projekt jest we wczesnej fazie rozwoju. ReactOS został napisany w C, a niektóre elementy, jak ReactOS Explorer w C++. Twórcy ReactOS uważają jednak, że nie jest on klonem Windows[1].

ReactOS jest rozwijany od 1996 r. Od listopada 2019 r. jest nadal uważany za niekompletne oprogramowanie w wersji alfa, dlatego jest zalecany przez programistów wyłącznie do testowania. Obecnie działa wiele aplikacji Windows, takich jak Adobe Reader 6.0 i OpenOffice.

ReactOS jest napisany przede wszystkim w C, a niektóre elementy, takie jak ReactOS File Explorer, napisane są w C++. Projekt częściowo implementuje funkcjonalność Windows API i został przeniesiony do architektury procesorów AMD64. ReactOS, jako część ekosystemu FOSS, wykorzystuje i współpracuje z wieloma innymi projektami FOSS, w szczególności projekt Wine, który przedstawia warstwę kompatybilności z Windows dla systemów operacyjnych typu Unix.

Historia[edytuj | edytuj kod]

Misja[edytuj | edytuj kod]

Jak poprzednio stwierdzono na oficjalnej stronie internetowej:

Głównym celem projektu ReactOS jest zapewnienie systemu operacyjnego, który jest binarnie kompatybilny(ang.) z systemem Windows ... tak, aby osoby przyzwyczajone do znanego interfejsu użytkownika systemu Windows mogły z łatwością korzystać z ReactOS. Ostatecznym celem ReactOS jest umożliwienie usunięcia systemu Windows i zainstalowania ReactOS bez zauważenia zmiany przez użytkownika końcowego.

Wczesny rozwój[edytuj | edytuj kod]

Około 1996 roku grupa programistów wolnego i otwartego oprogramowania rozpoczęła projekt FreeWin95, mający być klonem Windows 95. Projekt ten jednak zakończył się tylko na dyskusjach nad samym systemem.

Podczas gdy FreeWin95 zaczął od wysokich oczekiwań, do końca 1997 roku nie było jeszcze żadnych wersji dostępnych publicznie. W rezultacie członkowie projektu, kierowani przez koordynatora Jasona Filby'ego, połączyli siły, aby ożywić projekt. W odnowionym projekcie starano się powielić funkcjonalność systemu Windows NT. Podczas tworzenia nowego projektu wybrano nową nazwę ReactOS. Prace nad projektem rozpoczęto w lutym 1998 r., tworząc podstawy dla nowego jądra NT i podstawowych sterowników. Nazwę ReactOS wymyślono podczas czatu IRC. Podczas gdy termin „OS” oznaczał system operacyjny, termin „reagować” odnosi się do niezadowolenia grupy z monopolistycznej pozycji Microsoftu [i reakcji na nią].

W 2002 r. W Moskwie utworzono Fundację ReactOS z Maksimem Osowskim i Aleksiejem Braginem jako dyrektorami wykonawczymi oraz Wladimirem Braginem, Sawielijem Trietiakowem i Aleksiejem Iwanowem w zarządzie. W 2015 r. Fundacja została zlikwidowana.

Ekush OS[edytuj | edytuj kod]

W 2004 r. stwierdzono naruszenie praw autorskich/licencji do kodu ReactOS GPL (i innego kodu FOSS), gdy ktoś rozpowszechniał ReactOS pod nazwą Ekush OS. Strona internetowa później zniknęła.

Audyt wewnętrzny[edytuj | edytuj kod]

Aby uniknąć ścigania praw autorskich, ReactOS musi wyraźnie odróżniać się od systemu Windows i nie pochodzić od niego, co wymaga bardzo starannej pracy. Oświadczenie zostało zgłoszone 17 stycznia 2006 r. przez byłego programistę Hartmuta Birra na liście dyskusyjnej deweloperów ReactOS (ros-dev), że ReactOS zawiera kod pochodzący z dezasemblacji systemu Microsoft Windows. Kod kwestionowany przez Birra obejmował funkcję BadStack w syscall.S, i inne nieokreślone elementy. Porównując tę funkcję do zdezasemblowanych plików binarnych z systemu Windows XP, Birr argumentował, że funkcja BadStack została po prostu skopiowana z systemu Windows XP, ponieważ była identyczna. Alex Ionescu, autor kodu, twierdził, że chociaż omawiany plik binarny systemu Windows XP został rzeczywiście zdezasemblowany i przeanalizowany, kod nie został jedynie skopiowany, ale został ponownie zaimplementowany; Ionescu twierdził, że powodem, dla którego funkcje były identyczne, był fakt, że istnieje tylko jeden możliwy sposób implementacji funkcji.

W dniu 27 stycznia 2006 r. programiści odpowiedzialni za utrzymanie repozytorium kodu ReactOS zablokowali dostęp po spotkaniu w celu omówienia zarzutów. Na prośbę NewsForge(ang.) Microsoft odmówił skomentowania tego incydentu. Ponieważ ReactOS jest darmowym projektem oprogramowania typu open source, roszczenie wywołało negatywną reakcję społeczności wolnego oprogramowania; w szczególności Wine uniemożliwiło kilku nieaktywnym programistom dostarczanie wkładu, a formalna współpraca na wysokim szczeblu między dwoma projektami była trudna od 2006. Wkład kilku aktywnych programistów ReactOS zaakceptowano po audycie, a współpraca niskiego poziomu w zakresie poprawiania błędów nadal występuje.

Lobbowanie za wsparciem w Rosji[edytuj | edytuj kod]

W latach 2007–2015 rosyjscy współpracownicy ReactOS reprezentujący Fundację ReactOS starali się lobbować rosyjski rząd federalny. Od kwietnia 2019 r. wysiłki te nie przyniosły rządowego wsparcia ReactOS, a rosyjska fundacja ReactOS została rozwiązana od listopada 2015 r.

  • W 2007 r. członek Dumy Państwowej i nacjonalista Wiktor Ałksnis spotkał się z koordynatorem projektu Aleksiejem Braginem, który przedstawił prezentację i przeprowadził demonstrację projektu, pokazując ReactOS działający z Total Commander i Mozilla Firefox.
  • W 2011 r. Ówczesny prezydent Dmitrij Miedwiediew przeprowadził demonstrację podczas wizyty w liceum Wierchnierusskoje w Stawropolu, w którym uczestniczył jeden z członków zespołu programistów.
  • 31 lipca 2012 r. został zademonstrowany Władimirowi Putinowi, podczas swojej wizyty jako prezydenta Rosji w Seliger Youth Forum, w której uczestniczył Marat Karatow, jeden z członków zespołu programistów.
  • 1 kwietnia 2015 r. Bragin wziął udział w spotkaniu ekspertów rosyjskiego Ministerstwa Komunikacji na temat zmniejszenia zależności Rosji od importu zastrzeżonego oprogramowania. Protokół zawiera nazwę „stworzenia systemu operacyjnego typu open source opartego na ReactOS na komputery PC, laptopy i inne urządzenia mobilne”, a także „stworzenia systemu operacyjnego typu open source dla serwerów opartych na ReactOS”, umieszczając go na drugim miejscu wśród trzech wniosków.

Historia wydań[edytuj | edytuj kod]

Legenda
znaczenie
Czerwony starsze wydania
Zielony Aktualne wydanie
niebieski przyszłe wydania
Szary Pominięte
wersja systemu data wydania informacje o wydaniu
0.2.0 2004-01-25 Pierwsze wydanie z graficznym interfejsem
0.2.1 2004-03-03 poprawki błędów
0.2.2 2004-04-27 poprawki błędów
0.2.3 2004-06-26 Nowa wersja LiveCD, poprawki: stabilności jądra i win32k, ulepszenia sieciowe, powłoki, wiersz polecenia i sterowniki sprzętowe
0.2.4 2004-09-13 Kod zsynchronizowany z Wine, poprawki kompilatora i wyczyszczone nagłówki plików
0.2.5 2005-01-02 Zaimportowano Notatnik z WINE, dodano aplikację Data/Godzina
0.2.6 2005-04-09 Działa przyspieszanie sprzętowe NVIDIA OpenGL, NCITool stworzony do generowania plików baz danych wywołań systemowych
0.2.7 2005-08-21 Nowe ikony: Wiersza polecenia, Mój komputer i logo ReactOS, poprawiony wygląd instalatora pierwszego etapu
0.2.8 2005-10-29 Wykrywanie VMware, przepisany CSRSS
0.2.9 2005-12-22 poprawki błędów
0.3.0 2006-08-27[2] Pierwsza wersja posiadająca oficjalnie wsparcie dla sieci
0.3.1 2007-03-10[3] Dołączono Menedżer aplikacji, początek przepisywania jądra
0.3.2 pominięty Został utworzony, ale nigdy nie wydany
0.3.3 2007-09-12[4] poprawa jądra i win32k
0.3.4 2008-01-22[5] Przepisanie Obsługi rejestru, Klient pulpitu zdalnego i Plug & Play.
0.3.5 2008-06-30[6] drobne poprawki błędów
0.3.6 2008-08-06[7] wsparcie RTL
0.3.7 2008-11-04[8] Ulepszenia x86-64; MSVC, nowe stosy
0.3.8 2009-02-04 Wprowadzono obsługę PSEH i obsługę HDD z wieloma partycjami w LiveCD
0.3.9 2009-04-26[9] 24MB RAM minimalnej pamięci, szybsze mapowanie hiperprzestrzeni, początkowa obsługa dźwięku
0.3.10 2009-07-05[10] Początkowa obsługa SATA, obsługa klawiatury/myszy USB, klon Painta, początkowe wsparcie MSVC
0.3.11 2009-12-16[11] Przepisanie Kdcom; Czcionki chińskie/koreańskie; aktualizacje zgodności; ulepszenia systemu dźwiękowego
0.3.12 2010-10-20[12] Przepisanie obsługi pułapki; przepisywanie timera i obsługi wiadomości; Obsługa NMI; Obsługa SxS(ang.); częściowe wsparcie EMS(ang.)
0.3.13 2011-03-22[13] Poprawki w Menedżerze Pamięci; ulepszona obsługa SATA; naprawione problemy graficzne;
0.3.14 2012-02-07[14] Interfejs ACPI jest domyślnie włączony; Wsparcie WiFi (nieszyfrowane i WEP); obsługa motywów; Nowy sterownik TCP/IP (LwIP); Kompatybilność z MSVC; Wsparcie DMA Scatter/Gather(ang.); Przepisanie powłoki shell32.
0.3.15 2013-05-30[15] Częściowa obsługa USB 2.0 (HID i nośniki danych), poprawa wsparcia SATA 1,2,3, pierwsza wersja z działającym AHCI
0.3.16 2014-02-06[16] Wsparcie dla skórek interfejsu graficznego Windows, przepisany CSRSS oraz pierwszy etap przepisywania shell32 nowe sterowniki karty sieciowej RTL8139, obsługa nowszych wersji QEMU
0.3.17 2014-11-05[17] Włączenie NTVDM, nowa powłoka shell32, liczne poprawki regresji i błędów
0.4.0 2016-02-16[18] W pełni działające USB 2.0; obsługa dysków SATA; wsparcie dla systemu plików ext2 w trybie zapisu i odczytu oraz NTFS w trybie odczytu, usprawniono grafikę 2D, 3D oraz wsparcie dla dźwięku
0.4.1 2016-05-17[19] Dodano obsługę Btrfs, poprawiono powłokę (Shell), naprawiono błędy obsługi USB, dodano obsługę folderów współdzielonych dla maszyn wirtualnych
0.4.2 2016-08-16[20] Poprawiono obsługę Btrfs, ReiserFS, UFS/FFS i extended file system (ext2, ext3); dodano obsługę .NET Framework 2.0 i 4.0; dalsze poprawki powłoki (shell)
0.4.3 2016-11-16[21] Przepisanie biblioteki WINSOCK Wstępne wsparcie dla Sekcji; Poprawki błędów
0.4.4 2017-02-16[22] Początkowa obsługa stosu drukowania; drobne poprawki w Czcionkach;Poprawki błędów
0.4.5 2017-05-18[23] Poprawione wyświetlanie czcionek i metryk czcionek; Poprawki w: Jądrze i Sterownikach; Microsoft Office 2010 przetestowany jako działający
0.4.6 2017-09-01[24] Poprawki w tzw. Dual-boot; ulepszona obsługa Kompozycji; dodanie sterownika: NFS; Poprawki w: jądrze i systemie plików
0.4.7 2017-12-06[25] Ulepszona wersja menedżera aplikacji RAPPS; implementacja paska narzędzi „Szybkie uruchamianie” w eksploratorze; poprawki błędów w sterownikach systemu plików; Ulepszenia w: RDBSS/RXCE +wsparcie NFS
0.4.8 2018-04-14[26] Powiadomienia balonowe, Obszar powiadomień; autouzupełnianie powłoki(shell); nowy sterownik: NTFS; raportowanie zrzutu awaryjnego i eksperymentalna obsługa oprogramowania NT6+
0.4.9 2018-07-23[27] ReactOS is (again) self-hosting.
0.4.10 2018-11-06[28] Wsparcie dla uruchamiania z systemu plików BTRFS; poprawki błędów
0.4.11 2019-03-04[29] Sterowniki do "Zarządzania baterią"(ikona znajduje się na pasku zadań, w prawym dolnym rogu ekranu, obok zegara);Wsparcie dla aktualizacji istniejącej instalacji ReactOS; Poprawiona obsługa SATA
0.4.12 2019-09-23[30] Ulepszenia jądra (KERNEL), Przyciąganie okien (window snapping), ulepszenia czcionek, sterownik Intel e1000 NIC, biblioteki DLL trybu użytkownika, nowe kompozycje/motywy
0.4.13 2020-04-09[31] Nowy stos USB, Zoptymalizowany sterownik FAT od FreeLoadera, nowe oprogramowanie: Menedżer Ułatwień dostępu
0.5.0 bd.
1.0.0 bd.

Składniki[edytuj | edytuj kod]

Aplikacje[edytuj | edytuj kod]

Polecenia[edytuj | edytuj kod]

ReactOS wspiera wszystkie polecenia z powłoki systemu Windows i umożliwia już pełni kompatybilne pisanie programów wsadowych. Twórcy zapewniają również własne implementacje i poprawki niektórych poleceń a cały ich spis można znaleźć na oficjalnym repozytorium[32].

Oprogramowanie[edytuj | edytuj kod]

Obecnie jądro ReactOS jest w miarę stabilne. Wiele elementów API jest gotowych do zaawansowanego rozwoju, gotowy jest także podstawowy interfejs graficzny. ReactOS posiada program ReactOS Explorer, który tak jak Explorer pod systemami Windows jest podstawową powłoką dla ReactOS. Na jego bazie zbudowana została prosta przeglądarka internetowa.

Wraz z kolejnymi wersjami, ReactOS zbliża się coraz bardziej do pełnej kompatybilności z API Microsoft Windows oraz DirectX. Lista działających pod nim programów Win32 cały czas się poszerza, działa coraz więcej programów, od prostych, takich jak Notatnik do bardziej rozbudowanych aplikacji użytkowych (np. OpenOffice.org) i gier (gry na silniku Unreal czy Quake).

Zgodność[edytuj | edytuj kod]

ReactOS i jego składniki w większości są w pełni zgodne z ich odpowiednikami w systemach Microsoft Windows. Przekonać się o tym można chociażby podmieniając comctrl.dll w Windows na ten wyciągnięty z ReactOS – efekt tego będzie taki, że będziemy mieli w Windows inaczej wyglądające okno wyboru plików, lecz nie zmieni ono swoich funkcji. Równie dobrze można podmienić całą powłokę Windows (explorer.exe oraz dwie biblioteki z ROS: notifyhook.dll i gdiplus.dll) – otrzymamy obsługę wielu pulpitów. Zgodność (ale już nie zawsze) jest również zachowywana w drugą stronę.

Sprzęt[edytuj | edytuj kod]

Sieć[edytuj | edytuj kod]

Częściowo działa obsługa sieci. Dodano kilka sterowników kart sieciowych, np. RTL8139, dzięki czemu można się łączyć z Internetem i korzystać z programów typu ping, finger czy klientów FTP, SSH i Telnet (PuTTY), mimo że pozostaje wiele do zrobienia w kwestii implementacji TCP/IP. Od wersji 0.3.10 pojawiła się możliwość uruchomienia przeglądarek opartych na silniku Gecko, takich jak Firefox, Mozilla Seamonkey czy K-Meleon.

Lista przetestowanych kart sieciowych i ich aktualny stan wsparcia w ReactOS [1]

Grafika[edytuj | edytuj kod]

Lista przetestowanych kart graficznych i ich aktualny stan wsparcia w ReactOS [2]

Kontrolery I/O[edytuj | edytuj kod]

Lista przetestowanych kontrolerów I/O i ich aktualny stan wsparcia w ReactOS [3]

Lista obsługiwanych kontrolerów pata/sata sterownika wykorzystanego przez developerów ReactOS [4]

Obsługa myszy, klawiatur oraz kart flash opartych na złączu USB realizowana jest przez BIOS (dane z dnia 1 października 2009).

Platformy sprzętowe[edytuj | edytuj kod]

Minimalne wymagania sprzętowe ReactOS-a:

ReactOS jest lub będzie portowany[33] na takie platformy jak

Przypisy[edytuj | edytuj kod]

  1. Za jedną z odpowiedzi w FAQ, na stronie projektu – www.reactos.org
  2. ReactOS 0.3.0 Released!, reactos.org [dostęp 2020-05-19] (ang.).
  3. ReactOS 0.3.1 Released, reactos.org [dostęp 2020-05-19] (ang.).
  4. ReactOS 0.3.3 Released!, reactos.org [dostęp 2020-05-19] (ang.).
  5. ReactOS 0.3.4 Released, reactos.org [dostęp 2020-05-19] (ang.).
  6. ReactOS 0.3.5, reactos.org [dostęp 2020-05-19] (ang.).
  7. ReactOS 0.3.6, reactos.org [dostęp 2020-05-19] (ang.).
  8. ReactOS 0.3.7, reactos.org [dostęp 2020-05-19] (ang.).
  9. ReactOS 0.3.9 Released, reactos.org [dostęp 2020-05-19] (ang.).
  10. ReactOS 0.3.10 Released, reactos.org [dostęp 2020-05-19] (ang.).
  11. ReactOS 0.3.11 Released, reactos.org [dostęp 2020-05-19] (ang.).
  12. ReactOS 0.3.12 Released, reactos.org [dostęp 2020-05-19] (ang.).
  13. ReactOS 0.3.13 Released, reactos.org [dostęp 2020-05-19] (ang.).
  14. ReactOS 0.3.14 Released, reactos.org [dostęp 2020-05-19] (ang.).
  15. ReactOS 0.3.15 Released, reactos.org [dostęp 2020-05-19] (ang.).
  16. ReactOS 0.3.16 Released, reactos.org [dostęp 2020-05-19] (ang.).
  17. ReactOS 0.3.17 Released, reactos.org [dostęp 2020-05-19] (ang.).
  18. ReactOS 0.4.0 Released, reactos.org [dostęp 2020-05-19] (ang.).
  19. ReactOS 0.4.1 Released, reactos.org [dostęp 2020-05-19] (ang.).
  20. ReactOS 0.4.2 Released, reactos.org [dostęp 2020-05-19] (ang.).
  21. ReactOS 0.4.3 Released, reactos.org [dostęp 2020-05-19] (ang.).
  22. ReactOS 0.4.4 Released, reactos.org [dostęp 2020-05-19] (ang.).
  23. ReactOS 0.4.5 Released, reactos.org [dostęp 2020-05-19] (ang.).
  24. ReactOS 0.4.6 released, reactos.org [dostęp 2020-05-19] (ang.).
  25. ReactOS 0.4.7 released!, reactos.org [dostęp 2020-05-19] (ang.).
  26. ReactOS 0.4.8 released!!, reactos.org [dostęp 2020-05-19] (ang.).
  27. ReactOS 0.4.9 released, reactos.org [dostęp 2020-05-19] (ang.).
  28. ReactOS 0.4.10 released, reactos.org [dostęp 2020-05-19] (ang.).
  29. ReactOS 0.4.11 released, reactos.org [dostęp 2020-05-19] (ang.).
  30. ReactOS 0.4.12 released, reactos.org [dostęp 2020-05-19] (ang.).
  31. ReactOS 0.4.13 released, reactos.org [dostęp 2020-05-19] (ang.).
  32. reactos/reactos, GitHub [dostęp 2020-09-06] (ang.).
  33. ReactOS ports – ReactOS

Zobacz też[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]

Strony oficjalne: