making the command line great again - qcon€¦ · 07-03-2018 · microsoft, windows, windows...
TRANSCRIPT
![Page 1: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/1.jpg)
Making the Command Line Great Again
QCon London March 7, 2018
Rich Turner
Sr. Program Manager
@richturn_ms
Tara Raj
Program Manager
@tara_msft
![Page 2: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/2.jpg)
@tara_msft @richturn_ms 🔗 https://aka.ms/learnwsl
Background – Linux on Windows
Developer Landscape
• Bash
• Linux tools
• Linux-first tools
Problem
• Assume environment behaves like Linux
Solution
• Linux tools on Windows 10
![Page 3: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/3.jpg)
@tara_msft @richturn_ms 🔗 https://aka.ms/learnwsl
Linux Tools on Windows
• The Windows Subsystem for Linux
• Important Dev Environment Tools
• In-box Linux Tools
![Page 4: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/4.jpg)
@tara_msft @richturn_ms 🔗 https://aka.ms/learnwsl
Windows Subsystem for Linux (WSL)
• Lets developers run unmodified, “native” Linux environments
• Without the overhead of a VM
• Via the command line
![Page 5: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/5.jpg)
@tara_msft @richturn_ms 🔗 https://aka.ms/learnwsl
Wow!
• WSL is only ~24 months old!• 2016-04: Unveiled during Build 2016
• 2016-04: First Win10 Insiders build
• 2016-08: Shipped in Win10 Anniversary Update
• 2017-03: HUGE improvements in Creators Update
• 2017-09: More BIG improvements in Fall Creators Update (FCU)
• 2018-Spring: More sophistication
• Reception has been AMAZING!
![Page 6: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/6.jpg)
How does WSL work?
• NO VM’s!
• Genuine Linux ELF64 binaries loaded into lightweight “PicoProcesses”
• WSL exposes Linux-compatible System Call Interface (SCI) & calling convention• Component of NT Kernel
• Utilizes existing NT Kernel API’s• Shares network, storage, IO, etc. with
Windows host
User-
mode
NT K
ern
el
Pico Process
Bash, git, Ruby, apt, etc.
Windows Subsystem for Linux (WSL)
exit fork read write …
…
Storage Net IO Etc.
![Page 7: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/7.jpg)
Distros in the Windows Store
• WSL is “just the kernel & OS bits”
• Distro’s come from the Store
• Fast & reliable download & installation
• Simple servicing
• Install multiple distros side-by-side!
• Ubuntu
• openSUSE & SLES
• Others (launched this week!)
• Run simultaneously!• Tiny footprint vs. VM’s
![Page 8: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/8.jpg)
Demo – Distros in the store & Running Ubuntu on WSL
![Page 9: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/9.jpg)
@tara_msft @richturn_ms 🔗 https://aka.ms/learnwsl
Background Task Support
• WSL processes continue running after console windows are closed
• Great for running websites & services in background• Site generator/host - Node/Jekyll/Ruby/.NETCore/Python/etc.
• Websites & services - httpd/lighttpd/etc.
• Databases - MySQL/MariaDB/Redis/etc.
• sshd
![Page 10: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/10.jpg)
Demo – Interop & Background Tasks
![Page 11: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/11.jpg)
Other Features
• Wslpath
• DrvFS case sensitivity
• WSLENV
• wsl.conf
• AF_UNIX and AF_UNIX interop
![Page 12: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/12.jpg)
Demo – Spring 2018 New WSL Features
![Page 13: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/13.jpg)
WSL in your Dev Environment
• VS Code
• Console
![Page 14: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/14.jpg)
Demo – VS Code + WSL with Node.js
![Page 15: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/15.jpg)
@tara_msft @richturn_ms 🔗 https://aka.ms/learnwsl
Console Improvements
• Lots of bug fixes & improvements
• Glorious 24-bit TrueColor
• Improved default palette
• Improved VT support• vim, emacs, tmux, mc, etc.
• Mouse Support!
• Accessibility• Narrator navigation & read-
out
• “The Grand Overhaul” continues…
![Page 16: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/16.jpg)
Console demo
![Page 17: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/17.jpg)
What’s Next?
![Page 18: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/18.jpg)
@tara_msft @richturn_ms 🔗 https://aka.ms/learnwsl
What’s next?
• More!
• More & deeper SYSCALLS!• Prioritized based on feedback &
telemetry
• More disk perf improvements
• More networking improvements
• More integration & interop • VS code integration• Docker integration
• More Console improvements
To Infinity
And Beyond!
![Page 19: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/19.jpg)
Thank You
Tara Raj
@tara_msft
Rich Turner
@richturn_ms
Command Line Blog
https://aka.ms/cliblog
Learn WSL
https://aka.ms/learnwsl
Docshttps://aka.ms/wsldocs
Git Hub (Issues)
https://github.com/Microsoft/WSL
https://github.com/Microsoft/Console
UserVoice (Feature Asks)
http://aka.ms/winbashuv© 2015 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or
other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft
must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information
provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
![Page 20: Making the Command Line Great Again - QCon€¦ · 07-03-2018 · Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks](https://reader033.vdocuments.net/reader033/viewer/2022050113/5f4a45d00b41cb13a8192752/html5/thumbnails/20.jpg)