写点什么

微软生物学基金会发布 Mono 兼容性报告

  • 2010-08-14
  • 本文字数:1050 字

    阅读完需:约 3 分钟

微软生物学基金会称自己是个“语言中立的生物信息学工具集,是微软.NET Framework 的扩展,最初面向基因组学领域的研究”。目前,它针对常见的生物信息学文件格式实现了一系列解析器;操纵 DNA、RNA 以及蛋白质序列的一系列算法;一套生物学 Web Services 连接器,比如 NCBI BLAST。

虽然微软研究院保证说这些工具会兼容于第三方厂商,但人事问题阻碍了他们为支持 Silverlight 与 Mono 而制订的重构计划。 Michael Zyskowski 写到

在 MBF 的开发过程中,我们决定使用.NET 4.0,尤其是通过 Parallel Extensions 在序列比对与装配时充分发挥多核计算机的能量。SL4 的功能并不是那么容易搞懂,最后我们选择充分发挥.NET 4 特性的优势而不是像 Mono 或 SL4 这种只关注某一部分特性的框架。我们打算将框架重构为一个面向 MBF v1 各个版本的子程序集,进而实现 SL4 的兼容性(还有.NET 4.0 Client Profile 子集)。 但遗憾的是,过去几个月,有几个核心开发者离开了我们,因此我们不得不做出妥协。其中一个决定就是将库重构为 Client Profile、Silverlight4 与完整的.NET 4.0 程序集的计划推后。这是继 6 月份 MBF v1 最终版发布后我们所面临的第一要务。但我们希望社区能够继续探究、实现原型、甚至提交代码来完成这个目标。该项目的美好之处在于我们希望社区能够促进平台的不断发展,不必再依赖微软就能实现这一切,这非常重要。

虽然还需要进行很多测试,但由 Mono Migration Analyzer 所检测出的兼容性问题已经非常少了。具体问题有:

  • 有两个地方调用了 CredentialCache.DefaultCredentials 。它只用于 NTLM、协商以及基于 Kerberos 的认证。这样,如果没有调用的话就可以忽略掉了。但如果需要他们,目前还没有什么好的解决方法。
  • Assembly.GetName(Boolean) 调用了 4 次,在对程序集进行 shadow copy 时修改 Assembly.CodeBase 的工作是很无聊的事情。
  • 与安全相关的另一个特性是来自于 Windows Communication Foundation 的 HttpTransportSecurity.ClientCredentialType 。由于它只用于通过 WCF 调用 Web Services,因此在 Mono 赶上来时需要使用其他的 Web Services 层。
  • 在一个扩展包中对 Win32 函数 GetTickCount 调用了多次。它仅仅会返回自系统上一次启动以来所经历的秒数,因此很奇怪 Mono 没有为 Linux 与 OS X 实现一个转换层。

总而言之,实现 Mono 版本的工作量并不太大。但遗憾的是,实现 Silverlight 版本就不那么轻松了,因为它与.NET 4.0 相差太多,最终也不会实现完全的兼容性。

查看英文原文: Mono Compatibility Report for Microsoft Biology Foundation

2010-08-14 13:191512
用户头像

发布了 88 篇内容, 共 270.2 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

Java—基础容器

武师叔

6月月更

APICloud 5月SDK发版说明

YonBuilder低代码开发平台

App 低代码 APICloud 可视化开发

Spark ShuffleManager

丛培欣

大数据 spark

Flutter在数字生活的发展与天翼云盘落地实践

flutter 架构 混合应用开发 移动开发 客户端

华为云鲲鹏DevKit代码迁移实战

乌龟哥哥

6月月更

【6.3-6.10】精彩博文回顾

InfoQ写作社区官方

优质创作周报

ServerLess Aws Lambda攻击与横向方法研究

火线安全

云安全

Linux 之父亮相,OpenCloudOS 社区开放日来了

腾讯安全云鼎实验室

新思科技在《 2022 年 Gartner® 应用安全测试关键能力报告》中表现优异 在五个常见用例中荣获最高分

InfoQ_434670063458

新思科技 Gartner 应用安全测试

图像搜索是什么

Geek_e369a5

图像搜索 图像搜索是什么

一文带你了解J.U.C的FutureTask、Fork/Join框架和BlockingQueue

华为云开发者联盟

Java 开发 华为云

改变世界的开发者丨玩转“俄罗斯方块”的瑶光少年

华为云开发者联盟

人工智能 华为云 俄罗斯方块

攻防演练 | 网络安全“吹哨人”:安全监控

青藤云安全

网络安全 主机安全 攻防演练

李飞飞:我更像物理学界的科学家,而不是工程师|深度学习崛起十年

OneFlow

人工智能 深度学习 李飞飞 ImageNet

传统企业在进行信息化升级的过程中,如何做好信息化顶层设计

BeeWorks

APICloud可视化开发丨一键生成专业级源码

YonBuilder低代码开发平台

App 低代码 可视化 APICloud 移动端开发

如何使用物联网低代码平台进行工作表管理?

AIRIOT

低代码 物联网 低代码开发平台

Vue-5-模板语法-2

Python研究所

前端 6月月更

仅需三步学会使用低代码ThingJS与森数据DIX数据对接

ThingJS数字孪生引擎

可视化 数字孪生

第二届征文大赛开奖啦!速来领奖!

InfoQ写作社区官方

热门活动 初夏征文

为什么要开发分布式操作系统

LAXCUS分布式操作系统

分布式计算 分布式存储 超算 云边端协同 分布式操作

数据的软删除—什么时候需要?又如何去实现?

Geek_rze78a

6月月更

很流行的状态管理库 MobX 是怎么回事?

岛上码农

flutter ios 安卓开发 跨平台开发 6月月更

掌握高性能计算前,我们先了解一下它的历史

华为云开发者联盟

华为云 高性能计算 处理器

搭建在线帮助中心,轻松帮助客户解决问题

小炮

APICloud可视化开发新手图文教程

YonBuilder低代码开发平台

App APICloud 低代码开发 移动端开发 可视化开发

首批!青藤通过信通院CWPP能力评估检验

青藤云安全

网络安全 主机安全 信通院

推开混合云市场大门,Lenovo xCloud的破局之道

脑极体

【愚公系列】2022年06月 面向对象设计原则(五)-接口隔离原则

愚公搬代码

6月月更

flutter系列之:UI layout简介

程序那些事

flutter 程序那些事 6月月更

2022 年 DevOps 路线图|Medium

观测云

微软生物学基金会发布Mono兼容性报告_.NET_Jonathan Allen_InfoQ精选文章