ReactOS是什么

Fanly 问答 2020-07-16 09:37:24 阅读(...)

ReactOS 是一款是开源、自由的基于 Windows NT 架构的开源操作系统,旨在实现和 NT 与 Windows 操作系统二进制下的完全应用程序和驱动设备的兼容性,通过使用类似构架和提供完全公共接口。

ReactOS开源、自由的 Windows NT 系列克隆操作系统,保持了与 Windows 的系统级兼容性。

ReactOS

ReactOS 是一款基于 Windows NT 架构的开源操作系统,旨在实现和 NT 与 Windows 操作系统二进制下的完全应用程序和驱动设备的兼容性,通过使用类似构架和提供完全公共接口。

截至 2018 年 12 月,ReactOS 仍然被认为是 alpha 软件,功能不完整但许多 Windows 应用程序已经运行(例如 Adobe Reader 6.0,OpenOffice 等),因此开发人员仅建议用于评估和测试目的。

1996 年,一群自由软件开发者开始了一个名为 FreeWin95 的项目,旨在重新实现 Windows 95。但当时对该操作系统仅限于讨论而没有实质性进展。

虽然对于 FreeWin95 项目期待很高,但直到 1997 年末,项目还没有公开发布任何版本,于是项目协调员 Jason Filby 联合大家重振该项目并起了一个新名称 “ReactOS” ,并计划重新实现 Windows NT。1998 年 2 月 ReactOS 项目正式启动,开始开发系统内核和基本的驱动程序。

为了避免版权起诉,ReactOS 必须明确地完全区分并且不衍生于 Windows,这是一个需要非常谨慎工作的目标。2006 年 1 月 17 日,Hartmut Birr 在 ReactOS 开发者邮件列表中指出 ReactOS 包含有反编译的 Windows 源码。因此开发者暂时禁止非开发者进入系统。鉴于 ReactOS 是开放源码软件,此举引起开放源码社群的不满。ReactOS 的贡献者没受当时的举动影响。

ReactOS 主要用 C 语言进行编写,另外包含一些用 C ++ 编写的元素,如 ReactOS Explorer 和声音栈。该项目使用 MinGW 和 Visual Studio 进行编译。

ReactOS 和 Wine 项目共享本机运行二进制 Windows 软件的目标,因此可以共享许多依赖项和开发。 ReactOS 使用 Wine 项目的一部分,以便它可以从 Wine 在实现 Win32 API 方面的进展中受益。虽然由于体系结构的不同,Wine 的 NTDLL,USER32,KERNEL32,GDI32 和 ADVAPI32 组件不能由 ReactOS 直接使用,但代码片段和其他部分可以在两个项目之间共享。不过内核由 ReactOS 单独开发,因为 Wine 依赖于现有的类 Unix 内核。

ReactOS 项目组宣布,他们已聘请 Victor Perevertkin 在接下来的 3 个月全职从事 ReactOS 存储相关的开发工作。ReactOS 有”开源 Windows”之称,不过其在存储方面的技术水平长期而来相对于其他模块而言,一直处于不太理想的状态。这也是促使他们聘请全职开发者在存储及相关领域进行改进的主要原因。

自 2018 年以来,Victor 一直是各种 ReactOS 组件的主要贡献者。他在 GSoC 首次亮相时为 ReactOS 编写的 Btrfs 引导扇区代码就已深入到内核领域,后来负责管理新 USB 堆栈的集成,最近在为 ReactOS 向新的编译器工具链的重大升级做准备时,几乎接触到了 ReactOS 的所有部分。

在合同期间内,Victor 将主要从事存储相关的开发工作,这是 ReactOS 中长期被忽视的一块。他计划最终将 scsiport 转换为支持即插即用(Plug & Play)的驱动程序,并在此过程中修复内核即插即用的 bug,从而改进 USB 存储支持和对 Windows 存储驱动程序的兼容性。

如果时间允许,延伸目标包括继续他之前的工作,将谷歌的内核内存错误检测工具 Address Sanitizers 集成到 ReactOS 中,并修复通过启用 APIC 的 HAL 进行引导时存在的问题。

ReactOS 项目组此次招聘行为对项目而言也是一个重要的里程碑,因为持续收到的捐助终于能够让他们以接近市场价格的价格雇佣一名全职开发者。

0个人收藏 收藏

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • Vue 框架 Vue framework

    Vue框架的优点是什么

    vue框架的优点是简单易学;灵活高效;双向数据绑定,通过MVVM思想实现数据的双向绑定,让数据操作更简单;组件化开发,Vue.js通过组件,把一个单页应用中的各种模块拆分到单独的组件中,实现了html的封装和重用;极大解放DOM。操作。
  • Google Flutter

    Flutter是什么

    Flutter是Google开源的构建用户界面(UI)工具包,帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台。Flutter 开源、免费,拥有宽松的开源协议,适合商业项目。
  • Vuex

    Vuex是什么

    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具。
  • kbone

    kbone是什么

    kbone 是一个致力于微信小程序和 Web 端同构的解决方案。使用一定的性能损耗来换取更为全面的 Web 端特性支持。实现了一个适配器,在适配层里模拟出了浏览器环境,让 Web 端的代码可以不做什么改动便可运行在小程序里。
  • 纳米技术 nanotechnology

    纳米技术是什么

    纳米技术(nanotechnology)是用单个原子、分子制造物质的科学技术,研究结构尺寸在1至100纳米范围内材料的性质和应用。
  • 串流处理是什么

    串流处理是什么

    串流处理是一种计算机编程范式,相当于数据流编程,事件流处理,和反应式编程,其允许一些应用更容易地利用了有限形式的并行处理。