October 06, 2008

Mono 2.0 lets .Net apps run on Linux

Cross-platform technology backs .Net Framework 2.0

Mono 2.0, an open-source runtime enabling .Net-based applications to run on Linux, Mac OS X, and Unix, is being released Monday, featuring capabilities for a number of .Net technologies.

Considered a major upgrade, the open source Mono 2.0 runtime leverages Microsoft's .Net Framework 2.0 programming model. With Mono, developers can build desktop and server applications using Microsoft-based environments and deploy them across multiple platforms, including Windows. Novell is leading the Mono effort.

"The existing apps you build on Windows, you can now run those applications on Linux or MacOS 10. Different people have different reasons for doing so," such as platform consolidation, said Miguel de Icaza, vice president of developer platforms at Novell and Mono project maintainer.

Mono 2.0 supports the C# 3.0 language and LINQ (Language Integrated Query) for querying of data across databases, objects, and XML content, de Icaza said. Also, users can move over server applications built for .Net and client applications built with Windows Forms.

Version 2.0 of Mono, however, lacks support for key .Net 3.0 and .Net 3.5 APIs, specifically Windows Communication Foundation, Windows Workflow Foundation, and Windows Presentation Foundation. These are not currently supported because they were not amongst the most requested technologies sought by early users of Mono, de Icaza said.

"We don't support them because we haven’t developed those pieces yet," he said. Work on WCF support is planned for next year.

Also featured in Mono 2.0 is MoMA (Mono Migration Analyzer), a tool to assess the readiness of Linux environments for migration of .Net applications.

Microsoft's reaction to Mono has been mixed, according to de Icaza. "I guess it depends on who you ask. In some cases, of course, they would rather have people stay on Windows," he said. Microsoft is working with de Icaza and Novell on Moonlight, which will enable applications built for Microsoft's Silverlight browser plug-in to run on Linux. Moonlight 1.0, a more complete release than what has been available, is set to be released by the end of this month.

Mono is intended to help more applications be moved to Linux and help developers reach a larger market. "From our position, we want more developers to be able to start deploying their third-party applications on Linux. We want to enrich the Linux ecosystem," de Icaza said.

He estimated that 45 percent of applications will run on Mono 2.0 out of the box while 18 percent will require developers to spend a couple of weeks to make some changes due to operating system differences. About 20 percent will require significant work, taking about three to six months, if the application is tightly integrated with Windows, de Icaza said.

Current Mono user Mindtouch, maker of the Deki collaboration platform, opted for Mono because it sought to provide cross-platform solutions, said Aaron Fulkerson, Mindtouch founder and CEO.

"I think Mono is fantastic for us," he said. Mindtouch founders and many of the company's developers had worked at Microsoft and sought to leverage Windows-based development skills, he said. But .Net lacked platform independence.

"We very seriously considered going with Java and then [took] a good hard look at Mono," Fulkerson said. Mono was determined to be a "sufficiently mature technology to build on," he said.

"In fact, we developed our product and deployed solely on Mono and Linux up until this month," just now adding support for Windows, said Fulkerson.

The Mono 2.0 runtime is offered under the LGPL, while class libraries and compilers are available via the MIT X11 license.

Mono was built using Microsoft documentation pertaining to the .Net engine and languages, which are ISO standards, de Icaza said. Work on Mono 2.0 has been going on for about two-and-a-half years. The Mono project itself was begun in 2001.

Paul Krill is an editor at large at InfoWorld.
Close

On Twitter now

Application development

Powered by Twitter

White Paper

D2D Virtual Tape Library Replication Primer

This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.

Download now »

White Paper

An Alternative to Virtualization for Datacenter Cost Savings

Server virtualization is a popular option for dealing with mounting datacenter costs. Another equally promising approach is the use of an Application Delivery Controller. Citrix NetScaler provides a low-cost way for organizations to reduce their server count and accrue cost savings from a reduction in space, cooling, power and personnel.

Download now »

White Paper

Why Your Firewall, VPN, and IEEE 802.11i Aren't Enough to Protect Your Network

The emergence of WLANs has created a new breed of security threats to enterprise networks.

Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation

Download now »

White Paper

Bringing the Edge to the Data Center

Effectively address data protection challenges, implementing solutions that help store and protect business–critical data while cutting costs and improving efficiency and reliability.

Download now »

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Developer World Newsletter

Receive a weekly roundup about the art and science of software development.

©1994-2009 Infoworld, Inc.