Click here to learn
about this Sponsor:
Home  |  News  |  Articles  |  Forum

  Home arrow Windows For Devices Articles arrow Understanding Microsoft's new, simplified Shared Source licenses

Understanding Microsoft's new, simplified Shared Source licenses
By Doug

Rate This Article: Add This Article To:

OverviewOver the past 5 years, more than 80 technologies have been made available through Microsoft's Shared Source Initiative. Additionally, more than 600 non-Microsoft technologies have been released under a Shared Source license. Like most organizations dealing with the licensing of source code, Microsoft has utilized a range of approaches regarding the rights associated with a given...

source code release. This has resulted in a variety of source code licenses being used for Microsoft source code releases.

Based on the experience gained through Shared Source, Microsoft has drafted three simplified licenses for future Shared Source releases. These licenses have the following attributes:
  • Short and easy to understand -- The new licenses are typically shorter than a typewritten page and are easy to read and understand.

  • Effective and modern -- Although simple, the licenses are designed to be effective and to reflect modern best practices in source code licensing.

  • Efficient -- By using three simplified licenses, Microsoft will be able to streamline its own internal source code release process, which will allow for more rapid Microsoft source code releases.

  • Ecosystem-friendly -- Using three simple and well-understood licenses help to simplify source code sharing throughout Microsoft's various software ecosystems, and help to avoid excessive license proliferation.
These new licenses represent a broad spectrum of approaches needed to facilitate an ever-growing, rich set of technologies for release.

The three licenses are:
  • Microsoft Permissive License (Ms-PL) -- The Ms-PL is the least restrictive of the Microsoft source code licenses. It allows you to view, modify, and redistribute the source code for either commercial or non-commercial purposes. Under the Ms-PL, you may change the source code and share it with others. You may also charge a licensing fee for your modified work if you wish. This license is most commonly used for developer tools, applications, and components.

  • Microsoft Community License (Ms-CL) -- The Ms-CL is a license that is best used for collaborative development projects. This type of license is commonly referred to as a reciprocal source code license and carries specific requirements if you choose to combine Ms-CL code with your own code. The Ms-CL allows for both non-commercial and commercial modification and redistribution of licensed software and carries a per-file reciprocal term.

  • Microsoft Reference License (Ms-RL) -- The Ms-RL is a reference-only license that allows licensees to view source code in order to gain a deeper understanding of the inner workings of a Microsoft technology. It does not allow for modification or redistribution. This license is used primarily for technologies such as development libraries.
Source code licensing is an inherently complex topic. There are many possible permutations or interpretations of any given license. It is not our intent to redefine all source code licensing, rather to simplify the approach taken by Microsoft.

Microsoft supports the right of a developer to make use of any license and highly recommends that you get appropriate legal advice regarding your choice of source code license.

Microsoft Permissive License (Ms-PL)

The Microsoft Permissive License (Ms-PL) is the least restrictive of the Microsoft source code licenses. It allows you to view, modify, and redistribute the source code for either commercial or non-commercial purposes. Under the Ms-PL, you may change the source code and share it with others. You may also charge a licensing fee for your modified work if you wish.

The copyright and patent grants are both royalty free, meaning that you do not have to pay anything to Microsoft to make use of the source code. There is no obligation for you to publish any changes you make in either binary or source code form. You do need to keep any notices in the code for copyright, patent, trademarks, or for any other forms of attribution.

Microsoft has created a limited version, the Microsoft Limited Permissive License (Ms-LPL), of this license to be used for restricting usage to the Windows platform only. The platform restriction is a measure that Microsoft, as a commercial software provider, may choose for a particular source code release in order to enable positive interaction with Windows-based developers. This version of the license will be employed on a case-by-case basis based upon commercial considerations.

Microsoft can not provide legal advice on the use or implications of this license. We recommend that you get appropriate legal advice before making source licensing decisions.

Microsoft Community License (Ms-CL)

The Microsoft Community License (Ms-CL) is a license that is best used for collaborative development projects. This type of license is commonly referred to as a reciprocal source code license and carries specific requirements if you choose to combine Ms-CL code with your own code. Nearly all current reciprocal licenses are based on the act of distribution to trigger their terms. The Ms-CL seeks to apply the reciprocal terms in a commercially reasonable fashion and to give developers clear guidance as to when the Ms-CL's reciprocal provisions come into play.

Developers often have a range of architectural options at their disposal when crafting a particular product or solution. They frequently have the option to design a larger work as a series of separate files or components that communicate with each other at runtime on the end user's computer, as opposed to one monolithic piece of code that is distributed to the end user as a single file. Although these architectural differences may not be obvious to the end user, they may have significant licensing implications for you as the developer, particularly if you use Ms-CL code in creating the larger work. The Ms-CL (like the Mozilla Public License) works on a "file-by-file" basis. This means that if you use some Ms-CL code in a particular file then the entire file that contains the Ms-CL source code (including any other code in that file, no matter who wrote it), must be redistributed in source code form under the terms of the Ms-CL. On the other hand, for any files in your larger work that contain no Ms-CL code, you are free to license those files under the terms of your choice. This is true regardless of how these "non-Ms-CL" files interact with or communicate with the Ms-CL files at runtime. In other words, if you release code under the Ms-CL and someone includes it in a file in their project (and then distributes their project to others), they must distribute under the Ms-CL anything that is in the specific file that contains your original work. While this file-by-file threshold might at first seem arbitrary, it has the benefit of being an easy to interpret, bright line rule.

Thus, the intent of the reciprocal license is to use licensing as a mechanism to keep certain community-based code "in the community," while allowing companies to commercialize and license (under terms of their choice) their "value add" code that interacts with the community-based code.

The copyright and patent grants are both royalty free, meaning that you do not have to pay anything to Microsoft to make use of the source code. You do need to keep any notices in the code for copyright, patent, trademarks, or for any other forms of attribution.

Microsoft has created a limited version, the Microsoft Limited Community License (Ms-LCL), of this license to be used for restricting usage to the Windows platform only. The platform restriction is a measure that Microsoft, as a commercial software provider, may choose for a particular source code release in order to enable positive interaction with Windows-based developers. This version of the license will be employed on a case-by-case basis based upon commercial considerations.

Microsoft can not provide legal advice on the use or implications of this license. We recommend that you get appropriate legal advice before making source licensing decisions.

Microsoft Reference License (Ms-RL)

The Microsoft Reference License (Ms-RL) is the most restrictive of the Microsoft source code licenses. The license prohibits all use of source code other than the viewing of the code for reference purposes. The intent of this license is to enable Microsoft to release, for review purposes only, more sensitive intellectual property assets.

The most common use of this license will be with developer libraries where modification is not a requirement for making use of the source code. In these cases, the importance of transparency is based on the need for developers to more deeply understand the inner workings of a specific set of technology. In doing so, the developers will be more effective in writing software that makes use of the shared library.

The copyright and patent grants are both royalty free, meaning that you do not have to pay anything to Microsoft to make use of the source code. The license limits the source code release to use on the Windows platform only.

Microsoft can not provide legal advice on the use or implications of this license. We recommend that you get appropriate legal advice before making source licensing decisions.


The above article is Copyright (c) 2005 Microsoft Corp. All rights reserved. Reproduced by WindowsForDevices.com with permission.


Impact to Windows CE Shared Source and Shared Platforms?


In terms of impact to Microsoft's Windows CE Shared Source and Shared Platforms initiatives, Windows Embedded product manager Nic Sagez told WindowsForDevices.com that these programs are not migrating to the new licenses any time soon. However, Sagez did not rule out the possibility of a longer term change, based on customer feedback and market requirements.


Further Information About Microsoft Shared Source


The following resources at Microsoft.com provide further details on the company's newly updated Shared Source initiative and licenses:

Other Related Stories




Discuss Understanding Microsoft's new, simplified Shared Source licenses
 
>>> Be the FIRST to comment on this article!
 
 
 
>>> More Windows For Devices Articles Articles          >>> More By Doug
 



Windows XP for Embedded Applications
This white paper describes the benefits of using Windows XP when developing embedded applications.

A Manager's Guide to Selecting a Mobile Device Operating System
This white paper offers a comparative review of Microsoft Windows CE and Windows Mobile.

Visual Basic 6.0 to .NET Migration
This paper focuses on the methodology and techniques which Infosys (Microsoft Technology Center) has developed for migrating VB 6.0 Applications to .NET. Our approach ensures a smooth, cost effective, and efficient migration.

Mobile Device Security: Securing the Handheld, Securing the Enterprise
This whitepaper identifies security threats to corporate data on mobile devices and details how mobile devices can become a "backdoor" to the enterprise.

Mobile Device Security: The Eight Areas of Risk
It's common knowledge that adding mobile devices to your network increases security risks. There are multiple facets to mobile security, all of which should be paid close attention to. This E-Guide presents a more in depth look into the eight key areas of securing wireless devices.

Quality Assurance and .NET
This paper discusses best practices for functional, regression and load testing of .NET applications.

SCADA Security in Integrated Networks
As businesses leverage their SCADA systems by integrating them into the business networks, they must also assure the security of the SCADA system.

The Advantages of Small Form Factor HMI
HMIs have mutated and changed with new requirements, and they have become more flexible and capable. And while they've been doing that, they've become smaller and more useful.

9 Critical Requirements for Web Application Security
Learn why your Web applications expose dangerous security breaches and what’s required to effectively protect your Web applications and the sensitive information behind them.

Got a HOT tip?   please tell us!
Free weekly newsletter
Enter your email...
Click here for a profile of each sponsor:
PLATINUM SPONSORS
(Become a sponsor)

ADVERTISEMENT
(Advertise here)

Updated! The latest Windows-powered...

mobile phones!

other cool
gadgets

HOT TOPICS
Microsoft targets PNDs with new embedded OS
Microsoft tips .NET MF 3.0 highlights
Microsoft previews Windows Embedded Standard
Microsoft offers free Windows CE 6.0 textbook
Microsoft renames embedded operating systems
Microsoft unveils Windows Mobile 6.1
New Atom models target low-cost PCs
REFERENCE GUIDES
Windows Device Showcase
Intro to Windows Embedded
Intro to Shared Source
Real-time Windows Embedded
Windows Embedded books
Join our Windows Embedded discussion forums:
Windows XP Embedded
Windows CE
Windows Mobile


Windows Embedded developer newsgroups
Windows CE
XP Embedded
PocketPC
Smartphone

Microsoft's Windows Embedded resources
Embedded dev center
Mobile dev center
Windows CE tutorials
XP Embedded tutorials
Windows Embedded seminars
Windows Embedded application categories
3rd-party partners


BREAKING NEWS

• Pico-ITX PC takes to the road and the skies
• Thin client offers legacy ports
• Boards add watchdog functionality to PC/104-Plus systems
• 11.6-inch netbook has AMD processor
• Microsoft planning riposte to Google's "Chrome OS"?
• Embedded student competition winner is buggy (on purpose)
• Asus preps convertible netbooks
• Media-savvy reference design sports touchscreen, DVB-H
• Sony joins the netbook fray
• 2010 Census kicks off with Windows Mobile
• Sprint offers 99-cent netbook
• SODIMM module has industrial focus
• Microsoft picks finalists in Embedded Development competition
• Cortex-A8 SBCs target signage and kiosks
• Student competition offers a different kind of fireworks


MOST POPULAR (last 90 days)
• "Netbook" uses Intel's Atom N270
• Windows CE takes on Linux in low-end netbooks
• HTC ups Touch resolution
• Microsoft unleashes new embedded OS
• Windows Mobile phone gets 800 x 480 display
• HTC spins WiMAX phone?
• Smart camera sports Atom
• Dual-core AMD netbook gets rave review
• Windows Mobile 7 "delayed"
• GPS phone uses new Marvell "Tavor" chip
MOST POPULAR (Classics from the vault)
Windows XP Embedded USB boot
Troubleshooting Windows XPe's blue screen "Stop 0x0000007B" error
Asus reveals $190 mini notebook
Windows Mobile 6 SDKs available for download
Windows Mobile VPN client plays with Cisco
HTC adds GPS to Windows Mobile Touch line
Microsoft unveils Windows Mobile 6.1
Guide to HTC's Windows Mobile smartphone platforms
• HTC releases Touch Diamond ROM upgrade
Customizing Windows XP Embedded thin clients

Also visit our sister sites:

Sign up for WindowsForDevices.com's...


Or, follow us on Twitter...