ReactOS
ReactOS adalah sebuah proyek perangkat lunak yang bertujuan untuk mengembangkan sebuah sistem operasi yang kompatibel secara biner dengan perangkat lunak aplikasi dan device driver untuk keluarga sistem operasi Microsoft Windows NT 5.x dan yang lebih tinggi (Windows 2000 dan yang setelahnya). ReactOS merupakan salah satu perangkat lunak bebas yang menggunakan proses reverse engineering berupa clean room secara keseluruhan.
Perusahaan / pengembang | ReactOS Foundation |
---|---|
Diprogram dalam | C, C++ |
Keluarga | Microsoft Windows-like (Windows NT-like) |
Status terkini | Alpha |
Model sumber | Free and open source software |
Rilis perdana | 0.0.7 / 20 Juli 1998 |
Rilis stabil terkini | 0.4.10 / 6 November 2018 |
Rilis tak-stabil terkini | (daily) |
Repositori | |
Target pemasaran | Personal computing |
Ketersediaan bahasa | Multi-lingual |
Metode pemutakhiran | Re-Installation |
Dukungan platform | IA-32, x86-64 |
Kernel type | Hybrid |
Antarmuka bawaan | Graphical (ReactOS Explorer) |
Lisensi | GNU GPL, LGPL and BSD licenses[1] |
Situs web resmi | www |
Meskipun proyek tersebut sedang dalam tahapan alpha, banyak aplikasi Windows yang telah dapat berjalan dengan baik. Hal ini memang dikarenakan antarmuka dengan aplikasi yang digunakannya sebagian besar berbasiskan Wine yang dapat melakukan emulasi terhadap lingkungan kerja Microsoft Windows yang telah berjalan stabil di dalam sistem operasi UNIX. Kernel ReactOS sendiri ditulis dari awal.
ReactOS sebagian besar ditulis di dalam bahasa pemrograman C, dengan beberapa elemen, seperti ReactOS Explorer, ditulis di dalam bahasa C++. Komponen-komponen ReactOS tersedia secara bebas di bawah GNU General Public License (GNU GPL), GNU Lesser General Public License (GNU LGPL), dan juga BSD License.
Sejarah
Awal pengembangan
Sekitar tahun 1996, beberapa pengembang perangkat lunak bebas memulai sebuah proyek yang disebut sebagai FreeWin95, yang bertujuan untuk mengimplementasikan sebuah sistem operasi yang nantinya akan berupa kloning dari Windows 95. Proyek tersebut terhenti, pada saat diskusi tentang desain sistem tersebut.
Pada akhir tahun 1997, proyek tersebut masih belum merilis satu perangkat lunak pun. Para anggota proyek, yang dipimpin oleh Jason Filby yang bertindak sebagai koordinator, terpanggil untuk menghidupkan kembali proyek tersebut. Target proyek yang dibuat bukanlah membuat kloning Windows 95 seperti dahulu, tetapi Windows NT, dan nama proyek pun diubah menjadi ReactOS. Proyek ReactOS pun dimulai pada bulan Februari 1998, dengan dimulainya pengembangan kernel dan driver-driver dasar.
Banyak API dan ABI milik ReactOS siap untuk digunakan untuk pengembangan pada level yang lebih tinggi lagi, dan tentu saja kini telah tersedia GUI dasar yang bisa digunakan. ReactOS menawarkan ReactOS Explorer (ROSExplorer), sebuah shell yang mirip dengan Windows Explorer.
Warna | Maksud | Warna | Maksud |
---|---|---|---|
Merah | Rilis lama, dan tidak didukung lagi | Kuning | Rilis lama, tapi masih didukung oleh para pengembang |
Hijau | Rilis sekarang | Biru | Rilis yang akan datang |
Versi Sistem | Tanggal Rilis | Informasi mengenai rilis |
---|---|---|
0.2.0 | 2004-01-25 | Rilis pertama dengan GUI yang bisa bekerja. |
0.2.2 0.2.5 |
2004-04-27 2005-01-02 |
Hanya menawarkan perbaikan bug. |
0.2.8 | 2005-10-29 | Mampu mendeteksi VMWare dan menulis ulang CSRSS (Client-Server Runtime Subsystem) |
0.3.0 | 2006-08-27 | Versi pertama yang secara resmi mendukung jaringan. |
0.3.1 | 2007-03-10 | Menawarkan Download! Program Manager, dan memulai penulisan ulang terhadap kernel sistem operasi |
0.3.2 | skipped | Cabang dari ReactOS dibuat, tapi tak pernah dirilis |
0.3.3 | 2007-09-12 | Peningkatan terhadap kernel dan Win32k |
0.3.4 | 2008-01-22 | Penulisan ulang terhadap dukungan registry, Remote Desktop client, dan Plug and Play. |
0.3.5 | 2008-06-30 | Hanya menawarkan perbaikan bug. |
0.3.6 | 2008-08-06 | Dukungan terhadap huruf-huruf Right-to-Left (RTL) |
0.3.7 | 2008-11-04 | Meningkatkan dukungan terhadap x86-64; Microsoft Visual C, dan menawarkan stack yang baru. |
0.3.8 | 2009-02-04 | Pengenalan dukungan PSEH dan hard disk Multipartition dalam LiveCD |
0.3.9 | 2009-04-26 | 32MB Minimum RAM, Faster Hyperspace Mapping, Initial Sound Support |
0.3.10 | 2009-07-05 | Initial SATA Support, Dukungan untuk Keyboard/Mouse berbasis USB, Paint Clone, Initial MSVC[2] |
0.3.11 | 2009-12-16 | Penulisan ulang kdcom, Penambahan font Tiongkok/Korea, peningkatan kompatibilitas, peningkatan sistem suara |
0.3.12 | 2010-10-20 | Penulisan ulang trap handler, Penulisan ulang timer and message handling, Penambahan dukungan NMI, SxS, dan EMS (partial)[3] |
0.3.13 | 2011-03-22 | Penulisan ulang heap manager, ipeningkatan dukungan untuk SATA, fixed graphics issues[4] |
0.3.14 | 2012-02-07 | ACPI diaktifkan secara default, penambahan dukungan WiFi (unencrypted dan WEP), dukungan tema, driver TCP/IP baru (LwIP), kompatibilitas MSVC, dukungan operasi Scatter/Gather DMA, penulisan ulang shell32[5] |
0.3.15 | 2013-05-30 | Pemanbahan dukungan USB untuk tetikus, keyboard, dan perangkat penyimpanan; menulis ulang session management; dukungan AHCI dengan peningkatan 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 off results from the AutoHotKey application functionality test suite; Bugfixes based off running Driver Verifier on several bundled drivers[6] |
0.3.16 | 2014-02-06 | Penulisan ulang CSRSS, peningkatan dukungan tema, network card driver for the RTL8139, allowing ReactOS to support newer versions of QEMU out of the box |
0.3.17 | 2014-11-05 | Inclusion of an NTVDM; font improvements;bug fixes |
0.4.0 | 2016-02-16 | Peningkatan dukungan USB, tema dan shell File Explorer yang baru, dukungan untuk menjalankan ReactOS di VirtualBox dan VirtualPC, menambahkan dukungan baca/tulis untuk ext2, dukungan membaca NTFS, improved networking and WiFi setup, dukungan suara yang lebih baik |
0.4.1 | 2016-05-17 | Improved Activation Context, Btrfs support, improved Shell, USB bug fixes, support for Virtual Machine Shared Folders |
0.4.2 | 2016-08-16 | Improved Btrfs and extended file system support, ReiserFS and UFS/FFS, introduced .NET Framework 2.0 and 4.0 support, Shell fixes and improvements |
0.4.3 | 2016-11-16 | New winsock library, initial sections support, usual bug fixes |
0.4.4 | 2017-02-05 | Peningkatkan dukungan Microsoft Office suite, dukungan multibahasa dalam LiveCD, further socket library improvements dan perbaikan bug |
Proyek terkait
- ReactOS bekerjasama dengan proyek Wine, sehingga proyek ReactOS dapat mengambil keuntungan dari Wine dalam rangka mengimplementasikan Win32 API. Usaha-usaha tersebut memfokuskan diri pada Dynamic Link Library (DLL) milik Wine, yang dapat digunakan secara bersama-sama oleh ReactOS dan Wine.
- Proyek lainnya yang juga berkaitan adalah Samba TNG, yang mengimplementasikan banyak sekali layanan, seperti Local Security Authority Subsystem (
LSASS
), Security Account Manager (SAM
), NetLogon, dan juga Spooler Subsystem (SPOOLSS
).
- Proyek yang lebih lanjut lagi pada tingkat arsitektural adalah Unified Linux Kernel yang berniat untuk menjadi kompatibel secara biner dengan perangkat lunak aplikasi dan device driver yang dibuat untuk Microsoft Windows dan Linux. Kernel ini mengimpor semua fitur kunci dari kernel sistem operasi Windows ke kernel Linux agar membuat Linux dapat menjalankan aplikasi dan driver Windows.
- NDISWrapper diciptakan dari sebagian kecil dari kernel Windows NT di dalam kernel Linux sehingga memungkinkan untuk menjalankan driver Windows modern di dalam Linux. NDISwrapper terdiri dari API NTOSKRNL, kontrolir WDM dasar, dan satu set dari wrapper panggilan Windows seperti driver Wireless / NDIS / USB / PnP ke API Linux. NDISWrapper tidak terbatas hanya menjalankan NDIS driver, driver WDM lain juga dapat digunakan selama panggilan driver tidak dilaksanakan dengan menggunakan Windows API yang tidak diimplementasikan dalam NDISWrapper.
- Ada satu proyek terlepas dari NDISWrapper, Bill Paulus dari Wind River Systems mengembangkan sebuah sistem serupa, yang dikenal sebagai Project Evil atau The NDISulator, untuk FreeBSD. Telah sejak porting NetBSD, tetapi bukan OpenBSD, karena ada kebijakan anti-binary pada OpenBSD. The NDISulator tidak menawarkan beberapa fungsionalitas yang ditawarkan oleh ndiswrapper, seperti dukungan USB.
Kebutuhan perangkat keras
ReactOS dapat berjalan pada perangkat keras seperti di bawah ini:
- Arsitektur Intel x86
- Mikroprosesor Intel 32-bit (Intel 80486 atau mikroprosesor yang lebih baru)
- RAM 32 MB
- Hard disk IDE
- Partisi untuk booting harus diformat dengan FAT16/FAT32.
- Kartu grafis yang kompatibel dengan VESA 2.0
- Keyboard standar
- Mouse yang kompatibel dengan PS/2 atau Mouse serial yang kompatibel dengan Microsoft Mouse.
- Xbox (mengalami regresi)
- IBM PowerPC (hanya sampai awal proses boot)[7]
- ARM (tidak bekerja, pengembangan sedang berlangsung)[8]
- AMD64 (tidak bekerja, pengembangan sedang berlangsung)[9]
Sebagaimana diketahui, ReactOS juga dapat dijalankan pada perangkat lunak yang dapat melakukan simulasi atau virtualisasi terhadap perangkat keras di atas, seperti VMware, VirtualBox, QEMU dan Microsoft Virtual PC
Mengingat Windows NT 4.0 berjalan di atas mikroprosesor MIPS, Alpha AXP, dan PowerPC selain tentunya arsitektur Intel i386, sistem operasi yang diturunkan dari Windows NT seperti halnya Windows XP dan Windows Server 2003 telah di-port agar dapat berjalan di atas beberapa arsitektur, seperti AMD64, IA-32, dan IA-64, para pengembang ReactOS juga mulai memikirkan bagaimana caranya untuk meningkatkan portabilitas ReactOS. Sebagai contoh, dukungan terhadap varian IA-32, yang terdapat di dalam Xbox ditambahkan pada versi 0.2.5, dan usaha-usaha untuk mengembangkan ReactOS di atas PowerPC dan arsitektur Xen juga sedang di dalam proses.
Referensi
- ^ "General Presentation". OS Revolution. Diakses tanggal 2009-11-30.
- ^ "ReactOS 0.3.10 Released". ReactOS.org. Diakses tanggal 2009-10-04.
- ^ Holwerda, Thom (2010-10-20). "ReactOS 0.3.12 Released". OSNews. Diakses tanggal 2010-11-08.
- ^ 0.3.13 - ReactOS
- ^ 0.3.14 - ReactOS
- ^ 0.3.15 - ReactOS
- ^ "PowerPC". ReactOS Wiki. ReactOS. Diakses tanggal 2009-01-03.
- ^ "ARM Port". ReactOS. Diakses tanggal 2009-01-03.
- ^ "64bit Port". ReactOS. Diakses tanggal 2008-08-06.