ReactOS

TechPedia

개요

ReactOSMicrosoft Windows의 내부 구조를 목표로 Windows NT 아키텍처를 오픈소스로 재구현한 자유 운영체제이다. 외형과 동작 방식이 Windows 2000Windows XP와 유사하며, 기존 Windows용 소프트웨어 및 드라이버와의 호환을 목표로 한다.

ReactOS는 1996년 시작된 오픈소스 운영체제 프로젝트로, 기존 Windows 생태계의 독점성을 해소하기 위해 만들어졌다. 현재까지 C (프로그래밍 언어), C++로 작성된 커널 및 사용자 공간 전반이 Windows NT 계열 구조와 동일한 원리를 따른다.

ReactOS의 목표는 “Windows 없이 Windows 애플리케이션을 실행하는 것”이다. 이를 위해 Wine 프로젝트와 연동하여 사용자 모드 API를 호환시키며, 하드웨어 드라이버는 실제 Windows용 .SYS 드라이버를 직접 로드할 수 있다.

역사

  • 1996년 – 프로젝트 시작 (이전 명칭: FreeWin95)
  • 1998년 – ReactOS로 이름 변경, Windows NT 호환 목표 확립
  • 2004년Wine과의 협력으로 Win32 서브시스템 호환성 향상
  • 2017년 – ReactOS 0.4.6, USB 및 SATA 안정화
  • 2021년 – ReactOS 0.4.14 릴리스, SMB 네트워크 지원
  • 2025년 – ReactOS 0.5.x 개발 중 (NT 6.x 구조 통합 예정)

기술적 구조

ReactOS는 Windows NT 5.x (Windows 2000/XP) 기반의 내부 구조를 따른다. 커널, HAL, Executive, User 모듈 등 대부분의 계층이 NT 구조를 모방하여 작성되었다.

  • 커널 – ReactOS NT 커널 (NT 5.x 구조 기반)
  • 하드웨어 추상화 계층 (HAL) – NT 커널 호환 설계
  • 파일 시스템 – FAT32, NTFS(읽기 전용), Btrfs(시험적)
  • API – Win32, GDI, USER32, KERNEL32, NTDLL 등 완전 재구현
  • 그래픽 시스템 – GDI32, DirectDraw, Direct3D (Wine D3D Wrapper)
  • 드라이버 – Windows XP/2003용 NT 드라이버(.SYS) 호환
  • 부트로더 – FreeLoader (GRUB 유사 구조)
  • 레지스트리 – Windows 호환 구조 (SYSTEM, SOFTWARE 하이브)

Wine과의 관계

ReactOS는 Wine 프로젝트와 긴밀히 협력하며, Win32 API, DirectX, COM 등 고수준 라이브러리 대부분을 Wine에서 가져온다. Wine은 사용자 모드 API를, ReactOS는 커널 및 시스템 수준을 담당한다. 이 협력 덕분에 ReactOS는 기존 Windows용 소프트웨어를 높은 호환성으로 실행할 수 있다.

특징

  • NT 커널 호환성 – Windows NT 5.x 구조를 거의 완벽히 재현
  • 드라이버 호환성 – 실제 Windows용 드라이버(.SYS) 직접 사용 가능
  • GUI 유사성 – Windows 2000/XP 스타일의 탐색기 인터페이스
  • 개방성 – 완전 오픈소스 (GPL 라이선스)
  • 경량성 – 최소 사양: 500MB 디스크, 64MB RAM
  • 이식성 – x86, x86-64, ARM, ARM64 포팅 진행 중

한계

ReactOS는 아직 정식 안정화 버전(R1)에 도달하지 않았다. 일부 드라이버, USB 장치, 최신 그래픽 카드 등에서 불안정성이 존재하며, NT 6.x(Windows Vista 이상) API의 지원은 제한적이다.

개발 상태

ReactOS는 전 세계 자원봉사 개발자들에 의해 GitHub와 JIRA를 통해 공개 개발 중이다. 개발 리포지토리는 reactos/reactos에서 확인할 수 있다. 빌드 시스템은 CMake 기반이며, Visual StudioGCC를 모두 지원한다.

구조 다이어그램

계층 구성 요소
사용자 모드 Win32, Wine API, CSRSS, Explorer Shell
시스템 서비스 Winlogon, Services.exe, LSASS, Registry, Object Manager
커널 모드 Executive, NTOSKRNL, I/O Manager, Memory Manager, HAL
하드웨어 CPU, GPU, Network, Disk, Input

ReactOS와 Windows NT의 비교

항목 Windows NT (5.x) ReactOS
커널 NTOSKRNL (Microsoft) ReactOS Kernel (오픈소스)
라이선스 독점 GPL 2.0
API 구현 Win32, Native API Win32 (Wine 연동), Native API
드라이버 호환 완전 호환 XP/2003 수준 호환
GUI Explorer Shell ReactOS Explorer (재구현)
개발 언어 C, C++ C, C++

라이선스

  • ReactOS는 GPL 2.0 라이선스로 배포된다.
  • 소스 코드와 리소스는 자유롭게 수정·배포할 수 있다.
  • Windows의 상표와 로고는 Microsoft의 자산이며 ReactOS와는 무관하다.

관련 프로젝트

같이 보기

참고 문헌

  • ReactOS 공식 사이트 – ReactOS.org
  • GitHub – reactos/reactos
  • “ReactOS Development Roadmap”, ReactOS Foundation (2024)
  • “How ReactOS Works” – OSNews, 2022
  • “ReactOS and Wine Integration”, ReactOS Dev Conference (2023)