|
|
Community > ReactOS Newsletter Archive > ReactOS Newsletter: 时事通讯 60 期时事通讯 60 期by Z98 on 2009-06-12 RBuild 和 MSVC要让 ReactOS 能够使用微软的编译器中构建出来一直以来都是在数位 ReactOS 开发者的希望列表之中,可是没有人真的愿意去处理那个 RBuild 已经转型成现在巨大的模样了。KJK::Hyperion 已经决定他的理智足以挨过整个旅程并且已经花了一些时间才能够成功的使用一个非 GCC 的编译器。目前为止,他的添加将允许 RBuild 检测出 VC++ 编译器的存在,无论是通过Visual Studio,其中一个SDK,或者是 WDK 的方法。之后它就开始编译,但是却几乎立即失败。在为 GCC 和 MSVC 里编程时,那里有个微妙以及重大的差别,我们必须先在代码库里搞定它们的差别才能够成功的编译它们。不止是这样,因为 ROS 是个操作系统,许多应用程序编译器视为理所当然的必须被复制。这些复制已经为GCC 完成,但不是MSVC。下一步是通过微软的链接器要如何获得所有已被编译的对象来链接在一起,而这是KJK 并还未前来整理这个问题。他必须提供的选项显然的将与 GCC 有所不同,所以这需要耗费他一些力气才能将其翻译过来。另一个问题是他的用词方面确实过于复杂和技术化,所以至少在稍后才会稍微提起。至于现在,剩余的开发者将需要尝试使用 MSVC 来构建 ReactOS 并修正任何所出现的语法问题。 top驱动程序倒退测试目前 ReactOS 使用 Wine 测试以确保东西不会在用户模式中的东西出现问题,但是在内核和驱动程序方面却没有任何测试机制。当调查一个关于重新载入驱动程序的问题时,Michael Martin 决定将某些驱动程序所使用的功能集合在一起以供测试。问题最终是将安全性检查给倒置了,这不幸的是非常容易犯下的错误但是查找时却很令人感到反感。为了尝试并且避免这类问题在未来的日子里发生以及未被发现,Michael 目前就编写了两个驱动程序以便测试所创建的设备,载入和取消载入驱动程序,以及几个其他内核模式的功能。他也为此做出几个提交以便修正在他的测试里所揭发在 DRIVER_OBJECT 结构里缺失、不正确设置的标记。 除了这两个驱动程序,Michael 也打算编写一个应用程序以便使得评估测试的结果更加容易。这些测试基本上是在内核模式里进行,导致调试和审阅的难度会比起 Wine 来的高。 top声音倒退自从那么一丁点的,ReactOS 有了最起码的声音支持,突然之间就将它消失而这是因为对象管理器的一个错误。Johannes Anderwald 一直都在处理混合器的支持,将能允许控制所播放的声量。所有的声卡至少在 Windows 里有关联两个子设备,其中一个是处理所捕获并且渲染输出的声音而另一个是处理混合的部分。原先 ReactOS 只能完成首个部分并且 Johannes 正在尝试一并处理第二个部分。问题却是对象管理器的一个错误却搞砸了初始注册的子设备。这从而导致它们的辨别已经设置为 NULL(没有任何数值,不是 0、空格)。显然的,系统就因此无法识别它们之间也无从转接相应的信息和命令。Johannes 已经成功的破解它,尽管他公开承认这个破解可能会在未来的日子里将反咬他一口。我们只希望对象管理器的一个错误能够尽快的修正,然后他就能够恢复正确的实现声音的支持。 top感谢您 Andrew GreenwoodAndrew 最近宣布他在本工程里辞职,因为他认为他已经没有多少地方能够再给予贡献了。尽管如此,他之前的杰作已经被 Johannes 妥善地利用因为它提供声音系统用户模式的部分。Andrew 也在今年的 FOSDEM 付出了许多心血,包括商业名片卡并且合并我们所分发的混合启动、LiveCD 光盘。然后那里也有视频能够作为好些开发者的理智性。我们代表本工程真心希望 Andrew 在未来的目标里祝他最好的并且十分感谢他所做的贡献。 top |