在调试器里看Windows 10的Linux子系统

本文介绍了如何在Windows 10上启用和安装Linux子系统WSL,包括启用开发者模式、打开WSL功能,并探讨了WSL的组件,如LxssManager服务和Linux子系统驱动。作者还展示了安装Ubuntu的过程,以及如何在WSL中安装其他应用。文章进一步探讨了如何在调试器中观察Linux实例的创建过程,涉及最小进程和Pico进程的概念,并提供了调试WSL的技巧。
摘要由CSDN通过智能技术生成

作者简介:张银奎,《软件调试》和《格蠹汇编》作者,爱写书与代码,以调试各类软件和分享调试技术为乐(微博@格友-张银奎)。
本文为CSDN首发原创文章,未经允许不得转载

Windows 10是微软第三代NT团队的力挽狂澜之作,大刀阔斧地改造革新,目标是重塑Windows(Reinvent Windows)!在众多新特征中,Linux环境子系统(WSL)无疑是最具开创性和最拉风的一个。

启用WSL

在2016年3月30日开幕的Build大会上,微软向广大开发者宣布Windows 10将支持Linux应用。在2016年4月7号推送的 Windows 10 build 14328 fast ring中首次包含了WSL。在Windows 10的周年更新(Anniversary Update)中包含了相对完整的Beta版本。

值得说明的是,不是所有的Windows 10系统都能运行WSL,要满足两个基本要求:64位和Build号不低于14393.0(笔者使用的两个版本分别是14393.1198和14393.479)。

在满足上述条件的Windows 10中,WSL也不是默认安装的,而是需要通过以下两个步骤来启用。

第一步是通过Settings -> Update and Security -> For developers打开开发者模式(参见图1)。
图片描述

图1 打开开发者模式

第二步是通过“Turn Windows features on or off”打开WSL功能(图2)。
图片描述

图2 打开WSL功能

点击图2所示的确定按钮后,Windows 10会安装WSL的组件,需要一点时间。安装完成后,要重启系统。重启后,在开始菜单区输入bash,如果看到图3所示的菜单项就代表WSL启用成功了。Bash是GNU旗下的命令处理器和外壳(shell)程序,包括Ubuntu在内的很多Linux发行版本和苹果macOS都使用它作为默认的控制台外壳和命令处理器。Windows 10中使用的就是Ubuntu版本的Bash。因此,WSL有时也被称为Bash on Ubuntu on Windows。

图片描述

图3 Bash on Ubuntu on Windows

启用WSL成功代表着在Windows系统中搭建好了运行Linux应用的基本环境,这个环境就是所谓的Windows Subsystem for Linux(WSL)。环境子系统是NT内核固有的机制,目的是可以在一个NT内核运行不同类型的应用程序。在支持WSL之前,有三种子系统:Windows子系统、OS/2子系统和POSIX子系统。

每个子系统通常都有一个子系统服务进程和一个内核态驱动,对于Windows子系统,分别是著名的CSRSS.exe和Win32K.sys。对于WSL,它的组成主要有以下几个部分:

  • 以系统服务形式运行的子系统服务进程LxssManager

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值