admin 管理员组文章数量: 887006
文章目录
- Ubuntu子系统概述
-
- 什么是子系统
- WSL介绍
- 双系统、虚拟机以及子系统的对比
- 安装Ubuntu子系统
-
- 在Windows10下开启WSL
- 安装Ubuntu
- 配置和运行Ubuntu
- 新环境和新问题
-
- WSL2的开启
- Ubuntu子系统的迁移
- IP地址的问题
- 在子系统中访问Windows10下的文件
- 用windows资源管理器访问子系统文件
- vscode远端访问
- 配合wsl-terminal使用效果更佳
- 其它
- 总结
Ubuntu子系统概述
什么是子系统
这里先引入一个概念,WSL(Windows Subsystem for Linux)即windows下的Linux子系统,后面一个小节会详细介绍WSL的概念,Ubuntu子系统的实现即基于WSL。安装Ubuntu子系统可以在Windows上引入一个完整的Ubuntu终端环境,可以使用Linux环境下的功能和应用而不用离开Windows。其使用界面如下图所示:
每天的第一次开启会展示此系统的详细信息,比如进程数,硬盘使用情况,内存使用情况,IP地址等等,当然也显示了我这有一个僵尸进程。不慌,问题不大。
WSL介绍
源引自百度百科
Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层,它是由微软与Canonical公司合作开发。WSL基于Windows NT内核虚拟了Linux内核接口,其能够运行大部分的Linux软件,但图形化界面无法运行,所以我们看到的Ubuntu子系统只提供了一个终端环境。
Windows Subsystem for Linux 包含内核态驱动(lxss.sys和 lxcore.sys),以协调Linux系统调用的请求与Windows NT内核。驱动不包含Linux内核代码,但是是一个全新实现的Linux兼容的内核接口。在原生的Linux上,用户态程序请求一个系统调用,系统调用请求由Linux内核处理。在WSL,当一个系统调用由同一个可执行文件请求时,Windows NT内核把请求发送给lxcore.sys。 当可能时,lxcore.sys将Linux系统调用翻译成等价的Windows NT的调用,由它来完成繁重的工作。当没有可能的等价转换时,Windows内核态驱动需要直接处理请求。比如说,Linux中的fork()系统调用没有直接的等价的windows版本。当一个fork系统调用由Windows Subsystem for Linux产生时,lxcore.sys需要做一些复制进程的准备工作,然后调用Windows NT内核APIs来产生一个进程来正确实现fork操作,完成为新进程复制额外的数据。
此外WSL也提供了两种文件系统,VolFs 和 DriveFs,VolFs提供了完整的Linux文件系统的特性,包括符号链接和权限管理等;DriveFs兼容Windows下的文件格式,所有的Windows磁盘使用DriveFs挂载在/mnt/目录下。
双系统、虚拟机以及子系统的对比
接下来对比以上三种在一台电脑上使用多种操作系统的方式,我将主要从安装难度和使用体验上来进行对比分析。
首先来看双操作系统,安装双操作系统需要到官网下载镜像,备好U盘或者光驱来作为启动媒介,然后通过BIOS界面进入到系统安装。整个安装流程十分复杂且耗时比较长,但其使用体验无疑是最强的,因为其拥有完整的OS环境、硬件资源,仅就使用上来说和操作单一系统是一样
版权声明:本文标题:windows10下使用Ubuntu子系统 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1733928626h1643491.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论