Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minor Config, Compare, and FAQ updates #1129

Merged
merged 7 commits into from
Mar 19, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto

# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.c text
*.h text

# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf

# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
29 changes: 25 additions & 4 deletions .openpublishing.publish.config.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,23 +17,44 @@
"template_folder": "_themes"
}
],
"notification_subscribers": [],
"notification_subscribers": [
"mattwoj@microsoft.com"
],
"sync_notification_subscribers": [],
"branches_to_filter": [],
"git_repository_url_open_to_public_contributors": "https://github.com/MicrosoftDocs/wsl",
"git_repository_branch_open_to_public_contributors": "master",
"skip_source_output_uploading": false,
"need_preview_pull_request": true,
"contribution_branch_mappings": {},
"dependent_repositories": [
{
"path_to_root": "_themes",
"url": "https://github.com/Microsoft/templates.docs.msft",
"branch": "master",
"branch_mapping": {}
},
{
"path_to_root": "_themes.pdf",
"url": "https://github.com/Microsoft/templates.docs.msft.pdf",
"branch": "main",
"branch_mapping": {}
}
],
"branch_target_mapping": {},
"need_generate_pdf_url_template": false,
"branch_target_mapping": {
"live": [
"Publish",
"Intellisense",
"Pdf"
]
},
"need_generate_pdf_url_template": true,
"targets": {
"pdf": {
"template_folder": "_themes.pdf"
}
},
"docs_build_engine": {
"name": "docfx_v3"
}
}
}
4 changes: 2 additions & 2 deletions WSL/about.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,9 @@ Individual Linux distributions can be run with either the WSL 1 or WSL 2 archite

* [Create a user account and password for your new Linux distribution](./user-support.md)

* [Read Frequently Asked Questions](./faq.md)
* [Read Frequently Asked Questions](./faq.yml)

* [Read Frequently Asked Questions about WSL 2](./wsl2-faq.md)
* [Read Frequently Asked Questions about WSL 2](./wsl2-faq.yml)

* [Troubleshooting](./troubleshooting.md)

Expand Down
12 changes: 5 additions & 7 deletions WSL/compare-versions.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ Feature | WSL 1 | WSL 2
--- | --- | ---
Integration between Windows and Linux| ✅|✅
Fast boot times| ✅ | ✅
Small resource foot print| ✅ |✅
Small resource foot print compared to traditional Virtual Machines| ✅ |✅
Runs with current versions of VMware and VirtualBox| ✅ | ✅
Managed VM| ❌ | ✅
Full Linux Kernel| ❌ |✅
Expand Down Expand Up @@ -54,15 +54,15 @@ You can also use windows commands inside WSL's Linux [Terminal](https://en.wikip
WSL 2 is only available in Windows 10, Version 1903, Build 18362 or higher. Check your Windows version by selecting the **Windows logo key + R**, type **winver**, select **OK**. (Or enter the `ver` command in Windows Command Prompt). You may need to [update to the latest Windows version](ms-settings:windowsupdate). For builds lower than 18362, WSL is not supported at all.

> [!NOTE]
> WSL 2 will work with [VMware 15.5.5+](https://blogs.vmware.com/workstation/2020/05/vmware-workstation-now-supports-hyper-v-mode.html) and [VirtualBox 6+](https://www.virtualbox.org/wiki/Changelog-6.0). Learn more in our [WSL 2 FAQs.](./wsl2-faq.md#will-i-be-able-to-run-wsl-2-and-other-3rd-party-virtualization-tools-such-as-vmware-or-virtualbox)
> WSL 2 will work with [VMware 15.5.5+](https://blogs.vmware.com/workstation/2020/05/vmware-workstation-now-supports-hyper-v-mode.html) and [VirtualBox 6+](https://www.virtualbox.org/wiki/Changelog-6.0). Learn more in our [WSL 2 FAQs.](./wsl2-faq.yml#will-i-be-able-to-run-wsl-2-and-other-3rd-party-virtualization-tools-such-as-vmware--or-virtualbox-)

## What's new in WSL 2

WSL 2 is a major overhaul of the underlying architecture and uses virtualization technology and a Linux kernel to enable new features. The primary goals of this update are to increase file system performance and add full system call compatibility.

- [WSL 2 system requirements](./install-win10.md#step-2---check-requirements-for-running-wsl-2)
- [Update from WSL 1 to WSL 2](./install-win10.md#set-your-distribution-version-to-wsl-1-or-wsl-2)
- [Frequently Asked Questions about WSL 2](./wsl2-faq.md)
- [Frequently Asked Questions about WSL 2](./wsl2-faq.yml)

### WSL 2 architecture

Expand Down Expand Up @@ -90,10 +90,6 @@ Linux binaries use system calls to perform functions such as accessing files, re

- Any updates to the Linux kernel are immediately ready for use. (You don't have to wait for the WSL team to implement updates and add the changes).

### WSL 2 uses a smaller amount of memory on startup

WSL 2 uses a lightweight utility VM on a real Linux kernel with a small memory footprint. The utility will allocate Virtual Address backed memory on startup. It is configured to start with a smaller proportion of your total memory that what was required for WSL 1.

## Exceptions for using WSL 1 rather than WSL 2

We recommend that you use WSL 2 as it offers faster performance and 100% system call compatibility. However, there are a few specific scenarios where you might prefer using WSL 1. Consider using WSL 1 if:
Expand All @@ -102,6 +98,8 @@ We recommend that you use WSL 2 as it offers faster performance and 100% system
- If you will be using your WSL Linux distribution to access project files on the Windows file system, and these files cannot be stored on the Linux file system, you will achieve faster performance across the OS files systems by using WSL 1.
- A project which requires cross-compilation using both Windows and Linux tools on the same files.
- File performance across the Windows and Linux operating systems is faster in WSL 1 than WSL 2, so if you are using Windows applications to access Linux files, you will currently achieve faster performance with WSL 1.
- You have strict memory requirements
- WSL 2's memory usage grows and shrinks as you use it. When a process frees memory this is automatically returned to Windows. However, as of right now WSL 2 does not yet release cached pages in memory back to Windows until the WSL instance is shut down. If you have long running WSL sessions, or access a very large amount of files, this cache can take up memory on Windows. We are tracking the work to improve this experience on [the WSL Github repository issue 4166](https://github.com/microsoft/WSL/issues/4166).

> [!NOTE]
> Consider trying the VS Code [Remote WSL Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-wsl) to enable you to store your project files on the Linux file system, using Linux command line tools, but also using VS Code on Windows to author, edit, debug, or run your project in an internet browser without any of the performance slow-downs associated with working across the Linux and Windows file systems. [Learn more](tutorials/wsl-vscode.md).
Expand Down
Loading