News

From Build 2016: Windows 10 Anniversary Update Will Have Bash

Microsoft adds native support for the Linux-based Bash command-line shell in Windows update coming this summer.

On day one of the Microsoft Build conference, Microsoft Director of the Windows Developer Platform Kevin Gallo announced that the Windows Anniversary Update, expected to go live this summer, will include the Linux-based Bash command line shell. The addition gives Windows developers access to a large community of open source, command line tools.

"This is not a VM. This is not cross-compiled tools. This is native," said Gallo during the keynote, adding that developers can download the Bash shell for Windows 10 directly from the Windows Store.

To enable native Bash support, Microsoft created the Windows Subsystem for Linux (WSL), which resides in the Windows kernel and hosts an Ubuntu user-mode image from Canonical. The arrangement allows Windows developers to natively run Bash scripts and popular Linux command-line tools, such as awk, grep and sed. WSL also enables access to the Windows file system, allowing developers to access files using both Windows or Linux tools.

Microsoft Senior Program Manager Rich Turner, during a Build conference presentation on Bash and WSL, said the team went "completely crazy" in developing its solution.

"We have actually taken the Linux user-mode code from Ubuntu and we built a subsystem into Windows, into the Windows kernel, to expose an interface that looks to all intents and purposes like Linux to a Linux user-mode," Turner said. "So we've integrated Windows and the Linux user-mode code to run smoothly on Windows."

Al Hilwa, program director for software development research at IDC, says the Bash release is part of a broad effort to cast Microsoft as a leader in cross-platform development.

"Microsoft wants its tools for developers to be what Office is for knowledge workers," Hilwa wrote after the announcement. "That is they want to be the number one tool-chain for cross-platform development, mobile, cloud, everything."

Attendees at the Build conference seemed to approve. When Gallo announced Bash support during his keynote address, the audience responded with a cheers and applause.

"The ultimate aim is to make Windows machines more capable for developers who are increasingly expecting the same stack on desktop and cloud to support their DevOps workflows," Hilwa said.

About the Author

Michael Desmond is editor in chief of MSDN Magazine, Microsoft’s flagship publication for software developers working with Microsoft tools and technologies. A 20-year veteran in IT and technology publishing, Desmond was an editor at PC World magazine for six years before launching an editorial consultancy that did work for leading technology firms like IBM, Intel and Sun Microsystems.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube