ReactOS — Вікіпедія

ReactOS
ReactOS 0.4.7
Розробник ReactOS Foundation
Написано на C, C++
Робочий стан Альфа
Вихідна модель Відкритий
Останній випуск 0.4.14 / 16 вересня 2021
Репозиторій
Мови англійська, німецька, італійська, китайські мови та російська
Тип ядра Гібридне ядро
Інтерфейс
користувача
Графічний інтерфейс користувача
Ліцензія GNU General Public License та інші
http://www.reactos.org/

ReactOS — це операційна система, що розробляється в рамках проєкту з відкритими кодами, сумісна на двійковому рівні з прикладними програмами та драйверами лінійки ОС Windows NT. У цей час проєкт перебуває на alpha стадії розробки, хоча деякі цілі проєкту і віхи вже досягнуто. ReactOS ліцензована під GPL.

Історія[ред. | ред. код]

Близько 1996, група розробників почали проєкт під назвою FreeWin95, метою якого було створення операційної системи, клону Windows 95. Проєкт застряг на дискусії про дизайн системи. На кінець 1997, проєкт все ще не мав результатів. Члени проєкту вимагали переглянути проєкт, і мета проєкту була замінена на Windows NT, а назва проєкту — на ReactOS. Проєкт ReactOS був розпочатий з розробки ядра і базових драйверів в лютому 1998.

На даний час ReactOS має за мету домогтись сумісності з Windows XP/2003 а не з старим NT 4.[1]

Функціональність[ред. | ред. код]

Станом на липень 2009 року ядро ReactOS досить стабільне, багато API реалізовано для високорівневої розробки і є базовий GUI. Особливістю ReactOS є Провідник ReactOS, який є базовою оболонкою для ReactOS, схожою на Провідник Windows.

З 2006 року проєкт перебуває у фазі alpha (до цього — pre-alpha), тому ReactOS ще зарано рекомендувати для повсякденного використання. Починаючи з версії 0.2, ReactOS може запускати багато Win32-додатків, як стандартні для Windows (текстовий редактор Notepad, редактор реєстру Regedit, командний інтерпретатор cmd), так і написані поза межами Microsoft (наприклад, текстовий процесор AbiWord, ігри Quake, Quake II и клон гри Minesweeper, що використовує Wine). Але через відсутність спонсора і невелику команду розробників активність проєкту не дуже висока. Перехід на стадію бета заплановано у версії 0.5

Історія версій[ред. | ред. код]

Версія Дата Примітки
0.1.0 [Архівовано 25 серпня 2006 у Wayback Machine.] 2 лютого 2003 Перша версія, що встановлюється з CD, ще без графічного інтерфейсу. Доступно кілька інструментів командного рядка. Операції з файлами (такі як копіювання і видалення) функціонують ненадійно.
0.2.0 [Архівовано 25 серпня 2006 у Wayback Machine.] 25 січня 2004 Дебют графічного інтерфейсу, що базується на Провіднику Windows і панелі задач. Може запускати багато Win32 програм, у тому числі Notepad (стандартний текстовий редактор), Regedit (редактор реєстру), cmd (командний інтерпретатор) кілька інших застосунків (таких як AbiWord) та ігри (такі як Quake і Quake II і Wine клон гри Minesweeper). Дуже нестабільна.
0.2.2 [Архівовано 25 серпня 2006 у Wayback Machine.] 28 квітня 2004 Поліпшення в графічному інтерфейсі і його стабільності.
0.2.5 [Архівовано 25 серпня 2006 у Wayback Machine.] 5 січня 2005 Більш стабільне ядро і багато маленьких поліпшень. Є підтримка звуку, що працює для деяких карт і достроково додано код для роботи мережі. Було продемонстровано скріншот текстового браузера Lynx, що відображає сторінку, хоча все ще потрібна певна доробка. Також додана підтримка для файлової системи Ext2 (ці вихідні коди ще не включені до складу основної гілки) і системного завантажника GRUB, дозволяючи ReactOS співіснувати з розділами Linux.
0.2.6 [Архівовано 1 жовтня 2006 у Wayback Machine.] 10 квітня 2005 Запускаються Dillo, miRC, і DCOM компоненти браузера Mozilla Firefox (такі як двигун рендерингу Gecko). Як ви можете бачити на знімку зверху, частково працює OpenOffice.org (версії 1.x). Крім того вперше також запускаються деякі великі ігри (Deus Ex, Unreal Tournament) за допомогою програмного рендерингу.
0.2.7 [Архівовано 23 травня 2006 у Wayback Machine.] 21 серпня 2005 Вирівнювання структури файлів заголовків з Windows. Оголошується мета сумісності з новішою Windows (2000 SP4, замість NT 4).
0.2.8 [Архівовано 28 серпня 2006 у Wayback Machine.] 30 жовтня 2005 Важливі підготовчі кроки до робочого USB, інсталяції програм і ліквідація декількох помилок графічного інтерфейсу. USB 'запозичується' з Cromwell. Розпочато роботу над Plug&Play.
0.2.9 [Архівовано 22 серпня 2006 у Wayback Machine.] 22 грудня 2005 Поліпшене розпізнавання устаткування і ACPI, значно покращена підтримка API.
0.3.0 [Архівовано 12 березня 2007 у Wayback Machine.] 28 серпня 2006 Повна підтримка мережевого стека TCP/IP та значно покращена підтримка Plug&Play
0.3.1 [Архівовано 12 березня 2007 у Wayback Machine.] 10 березня 2007 Розпочата робота по переписуванню деяких модулів ядра, HAL, завантажника FreeLdr. Оновлені і додані переклади (в тому числі і українські). Оновлені шрифти DejaVu до версії 2.13 Доданий новий застосунок Download! для завантаження і установки вільних програм.
0.3.3 [Архівовано 12 березня 2007 у Wayback Machine.] 12 вересня 2007 Версія 0.3.2 була пропущена через серйозні проблеми із старими несумісними драйверами. В новій версії усунено дуже багато помилок, система стала суттєво стабільнішою в порівнянні з минулими версіями. Більшість основних модулів стали сумісними з NT5, ядро поліпшено і наблизилось в багатьох областях до NT 5.2. Розпочата повна переробка підсистеми Win32. Відбулись поліпшення в багатьох базових застосунках і аплетах панелі керування.
0.3.4 [Архівовано 16 листопада 2008 у Wayback Machine.] 22 січня 2008 Підтримка інструкцій SSE / SSE2. Новий драйвер клавіатури і миші, що підтримує (Plug and Play). Покращення бібліотеки gdi32 в плані сумісності з Windows та ін.
0.3.5 [Архівовано 23 листопада 2008 у Wayback Machine.] 30 червня 2008 Оновлений завантажувач (freeloader). Шрифти замінені на більш сумісні метрично та ін.
0.3.6 [Архівовано 23 листопада 2008 у Wayback Machine.] 6 серпня 2008 Зменшення необхідної завантажувачу FreeLdr пам'яті для завантаження ReactOS. Можливість вивантаження драйверів. Виправлення помилок і усунення витоків пам'яті в мережевому стеку та ін.
0.3.7 [Архівовано 15 листопада 2008 у Wayback Machine.] 4 листопада 2008 Початок роботи над підтримкою компілятора MSVC. Покращення підртимки архітектури x86-64. Покрашення роботи і виправлення підсистем ядра: Configuration Manager, IO Manager, KE, Memory Manager, Object Manager, Process Manager. Усунення витоку пам'яті і збільшення функціональності мережевого стека.
0.3.8 [Архівовано 10 березня 2013 у Wayback Machine.] 4 лютого 2009 Виправлення помилок і покращення в базових сервісах ядра (напр. реєстр, процедури сисемної інформації, примітиви синхронізації, такі як guarded mutex, підтримка вводу-виводу та ін.). Дано старт ініціативі щодо виправлення останніх двох модулів ядра, що дають найбільше проблем: Менеджер Пам'яті, підтримка кешування і API драйверів файлових систем, і іншого коду, що залежить від Mm. Впровадження нового механізму Переносної Структурованої Обробки Винятків (скорочено PSEH 2.0), який набагато ближчий синтаксично до SEH, що реалізується компілятором. Виправлено декілька досить старих помилок (таких, як проблеми з роботою LiveCD за наявності жорсткого диска з кількома розділами, відображення графіка завантаження процесора в менеджері завдань). Виправлені різні проблеми відмальовки GDI. Реалізована мінімальна open-source версія протоколу KernelDebugger, що дозволяє використовувати базову функціональність налагоджувача MS WinDbg. Покращення в бібліотеках CRT та RTL. Вирішено ряд проблем в системних драйверах: NPFS, CDFS, FASTFAT, FS_REC, SCSIPORT. Покращення відео-драйвера для кращої підтримки реального заліза. Продовження роботи над підсистемою Win32. Продовження роботи над підтримкою MSVC. Виправлення в інструментарії для збирання (також в рамках роботи з підтримки MSVC). Обновлені до останніх версій спільні з Wine базові утиліти та компоненти.
0.3.9 [Архівовано 4 квітня 2013 у Wayback Machine.] 26 квітня 2009 Зменшені мінімальні вимоги пам'яті до 32Mb. Теоретично, в наш час[коли?] ReactOS може бути встановлений при наявності 24Mb пам'яті і запущений з лише 20Mb. В ядрі реалізований новий, більш швидкий інтерфейс відображення гіперпростору (Hyperspace Mapping Interface), що дало приріст швидкості понад 300 %. Покращення в перевірці безпеки в Менеджері Об'єктів в ядрі збільшує продуктивність на 500 %. Це особливо помітно при роботі з реєстром чи великими файлами. Вирішені різні проблеми NDIS і AFD, що збільшило сумісність з драйверами мережних карт та зміцнило мережевий стек. Попередня підтримка звуку через новий сервіс Kernel Streaming. Тепер стало можливим використати драйвер ac97 через нову бібліотеку Port Class щоб слухати музику через winamp. Велика кількість роботи була зроблена над командним рядком щоб зробити його більш сумісним. Тепер він може виконувати складні сценарії (скрипти), включаючи наше Середовище Збирання (Build Environment). Багато поліпшень в частині GDI, яка працює в режимі ядра, покращили роботу графічного рушія у межах усієї кольорової гами. Синхронізація більшості usermode DLLs від Wine.
0.3.10 [Архівовано 2 вересня 2013 у Wayback Machine.] 5 червня 2009 Усунена нездатність працювати з розділами розміром більше 8Gb. Додана можливість установки на будь-який з чотирьох основних розділів. Первинна підтримка контролерів SerialATA та розширена підтримка ATA

Первинна підтримка USB клавіатур та мишок. Значно покращена підтримка мережевих карт (20 різних мережевих карт були успішно випробувані). Підвищена стабільність мережі. Було введено клон додатка MS paint. Первинна підтримка компіляції для MSVC. Кращий перерозподіл використання системних ресурсів. Синхронізація більшості usermode DLLs від Wine та деякої частини коду підсистеми Win32, яка є спільною з Wine.

0.3.11 [Архівовано 4 березня 2016 у Wayback Machine.] 16 грудня 2009 Переписана kdcom kernelmode бібліотека, яка стала більш сумісною з версією від Microsoft. Це дозволяє покращити вбудовану підтримку WinDbg. В інструменти для збирання була додана підтримка завантажуваних з затримкою dlls, що забезпечує можливість затримки завантаження для відвантажених бібліотек. Додана підтримка китайського та корейського шрифтів. Написаний новий обробник для установки та отримання загальносистемних параметрів (дивіться SystemParametersInfo API), тепер роблячи його більш завершеним та сумісним з реалізацією в Windows. Покращена підтримка різних програм включаючи Opera, OpenOffice, Firefox 3.5, VLC1.1 та Skype. Для розваги, була додана гра Солітер Павук. Синхронізація більшості usermode DLLs від Wine та деякої частини коду підсистеми Win32, яка є спільною з Wine.

Майбутнє[ред. | ред. код]

У найближчих планах випуск нової версії 0.3.14 (має з'явитися у 2011 році) а після неї перехід на серію релізів 0.4.х. Ця серія релізів буде останньою серією альфа-версій ReactOS. Починаючи з версії 0.4 ReactOS буде підтримувати мережевий протокол SMB, програмне вимкнення та перезавантаження комп'ютера, всі драйвери, написані для ReactOS будуть працювати в Windows, USB клавіатури і миші, з'явиться можливість встановлення системи на ext2 розділ. Також появиться працездатна версія нової користувацької оболонки (explorer).

Розробники ReactOS працюють над поліпшенням GUI, додаванням роботи мережі, мультимедіа, підтримки Plug&Play устаткування, підтримка Java і .NET (через Mono). Заготівки для підсистем DOS, OS/2 і POSIX також будуть зроблені, подібно до підсистем Windows NT.

Аудит вихідних кодів[ред. | ред. код]

З 8 березня 2006 триває аудит тобто перевірка розробниками ReactOS вихідних кодів ОС у зв'язку з підозрою одного з розробників у використанні коду, отриманного шляхом дизасемблювання Windows (див. його лист [Архівовано 4 червня 2012 у Archive.is]).

Станом на вересень 2007, аудит вихідних кодів завершено на 99.5%.

Локалізація[ред. | ред. код]

ReactOS з українським інтерфейсом

ReactOS локалізується на багато мов. Станом на 2007 рік існують переклади принаймні однієї частини ОС на такі мови: бенгальську, болгарську, валлонську, голландську, грецьку, данську, есперанто, індонезійську, іспанську, італійську, каталонську, китайську, корейську, литовську, німецьку, норвезьку, польську, португальську, російську, румунську, словацьку, словенську, тайську, турецьку, угорську, українську, фінську, французьку, чеську, шведську, японську.

На даному етапі існують проблеми з підтримкою мов з нелатинськими алфавітами і не реалізовано перемикач розкладок клавіатури. Однак українська розкладка реалізована.

Пов'язані проєкти[ред. | ред. код]

ReactOS співпрацює з проєктом Wine стосовно динамічних бібліотек (DLL), більшість яких може бути спільною у ReactOS і Wine.

Вимоги до устаткування[ред. | ред. код]

Оскільки ReactOS все ще на альфа-стадії розробки, рекомендовано працювати під управлінням програмного забезпечення, що емулює вищезгадані апаратні засоби, наприклад Virtual PC, VMware, QEMU або Bochs, однак його використання пов'язане із втратою продуктивності (тобто швидкості роботи).

Встановлення[ред. | ред. код]

Стандартна процедура встановлення ReactOS з CD нагадує перший етап встановлення Microsoft Windows NT версій 3-5.

Також доступні LiveCD кожної офіційної версії та скомпільованої збірки релізів зі стовбура SVN.

Крім того, можна встановити ReactOS без CD, зкомпілювавши її з вихідних кодів у вказану папку.

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. http://www.reactos.org/uk/newbies.html[недоступне посилання з червня 2019]

Посилання[ред. | ред. код]

Офіційна сторінка[ред. | ред. код]

Wine[ред. | ред. код]

Українські ресурси[ред. | ред. код]