微软升级 WSL Window Subsystem for Linux Win10系统自带Linux
在设计之初,微软就允许类似于Win32这种子系统运行于windows NT内核之上,它可以为上层应用提供编程接口,同时避免应用去实现内核里的一些调用细节。NT内核的设计在最开始就可以支持POSIX,OS/2和win32子系统。
早先的子系统是用户态模块的实现,它封装了NT系统的系统调用为应用程序提供编程接口。所有的应用程序都是PE/COFF(一些为子系统封装NT系统调用的库和服务)可执行的。当一个用户态的程序启动的时候,启动器就会基于可执行的头部去引用适当的子系统来满足应用程序的依赖。
后来版本的子系统替换掉了POSIX层,由用户态组件提供了Subsystem for Unix-based Applications (SUA),满足:
进程和信号管理
终端管理
系统服务请求和进程间通信

SUA的主要目的是为了鼓励应用程序移植到Windows上能尽量少的重写。这已经通过实现POSIX用户态API达到了。考虑到这些组件是用户态实现,很难跟内核态的系统调用(比如fork())在语义上和效率上完全相对应。因为这种模式需要程序重新编译,它需要持续的功能移植,维护也是负担。
随着时间的演变,这些早先的子系统都退出历史舞台了。但是因为WIndows NT内核的架构允许新的子系统环境,我们就基于这领域的原始积累进行扩展,发展Windows Subsystem for Linux。
对开发者而言,Linux的命令行操作在生产环境必不可少,毕竟服务器系统基本上是Linux系统,而在我天朝使用Windows开发或者工作又是很普遍的,公司甚至有人特意买Mac特意装Windows系统,而win10这个升级让你不用再麻烦的去使用优盘什么装个双系统,也不用搞个耗内存又慢的虚拟机,由于Linux系统众多优良特性,微软终于舍得开放一点了,在他的win10 系统中加入了Linux子系统,详细教程如下!
Windows 10是微软第三代NT团队的力挽狂澜之作,大刀阔斧地改造革新,目标是重塑Windows(Reinvent Windows)!在众多新特征中,Linux环境子系统(WSL)无疑是最具开创性和最拉风的一个。
下面教程亲测可用
1启用WSL

2通过“Turn Windows features on or off”打开WSL功能

方法2:使用管理员方式打开Powershell然后运行如下命令,完成之后根据提示 重启电脑:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
3启用windows bash

4安装ubuntu
有了上面的基本运行环境就可以运行Linux应用程序了么?不是的,还需要安装Linux系统,包括系统程序、库文件和必要的工具程序。不过不用担心,微软已经和Canonical(Ubuntu背后的公司)合作准备好了一个特殊版本的Ubuntu,称为Ubuntu On Windows(以下简称UoW)。第一次启动Bash Launcher时,它就会提示安装UoW,安装完成后,你可以设置Linux系统用户和密码,这和你的Windows系统密码没有半毛钱关系。

方法2:你也可以在Windows store中免费获取你想要的Linux系统,前提是你的Windows build 在16215及以上,给出2个链接
ubuntu
OpenSUSE
SLES
安装可能问题: Installation failed with error 0x80070003
The Windows Subsystem for Linux 只能在你的C盘上运行,你需要设置Settings -> Storage -> More Storage Settings: Change where new content is saved
5安装其它应用

6这是我自己配好的仅供参考!
安装完成的ubuntu

启动可能问题:Installation failed with error 0x8007007e,检查你的Windows版本确保在16215或者更高,其次检查WSL是否已经开启。
安装完成的Linux目录在window下的目录!

7 新增:如果不能安装 请使用VPN 去下载,不然很大几率会在下载界面不动一直下载失败
8 安装完成后进入WSL环境 win+R(Windows 运行命令) 输入 bash然后如图 或者直接cmd输入 bash如图



微软升级 WSL Window Subsystem for Linux Win10系统自带Linux的更多相关文章
- Win10系统自带输入法的人机交互设计
过了寒假回校以后,我的电脑重装了系统,为了提升系统运行的速度,自己装了一个内存条同时对硬盘进行了重新的分区,对电脑内的文件也进行了重新的整理,电脑的运行速度提高了很多.老多同学都说win10系统好用, ...
- 酷!微软发布新终端工具,Win 10 将自带 Linux 内核
原创:技术最前线(id:TopITNews) 北京时间 5 月 7 日,2019 年微软 Build 开发者大会在雷德蒙德召开.今年大会上亮点很多,本文汇总一些和开发者相关的内容. 1. Window ...
- Win10系统如何安装Linux Mint
导读 随着windows10系统免费升级期限的靠近,越来越多朋友都将自己的电脑系统升级到了win10正式版.今天,小编就要在这里为大家分享Windows10系统安装Linux Mint的方法,希望能够 ...
- 如何在win10系统上安装linux子系统
对于软件开发人员来说,linux基本上是一个绕不过去的槛. 因为工作经常要用到linux,电脑用纯linux还是windows + 虚拟机装linux,我一直纠结. 如果装个纯linux,则一些win ...
- 关于win10系统自带浏览器IE11的JQuery使用问题
<!DOCTYPE html> <html> <head lang="en"> <meta charset="utf-8&quo ...
- 【解决方法】安装Win7和linux双系统后,linux报错“无法分配所提交的分区 not enough free space on disks”问题,以及win7无法启动“BootMGR image is corrupt....”问题
近日,在笔记本上重装了Win7 企业版(64位)后,想装个linux双系统,于是开始安装 centOS 6.2(光盘安装) 硬盘分了一个主分区(c盘),一个扩展分区(3个逻辑分区:d,e,f盘),然后 ...
- win10系统自带的浏览器ME如何将网页转成PDF
不多说,直接上干货! 很多用户都已经开始玩上win10了,补充玩玩一些技巧,当作小灶. 不多废话,在windows 10网页是可以保存为pdf格式.具体如下: 欢迎大家,加入我的微信公众号:大数据躺过 ...
- Linux卸载系统自带的JDK
安装Linux后,一般系统都会自带openjdk,我们开发中都需要自己安装,所以需要卸载之前的,以CentOS为例,卸载方法如下: 首先执行命令查看存在哪些已安装的包 rpm -qa | grep j ...
- linux修改系统时间和linux查看时区、修改时区的方法
一.查看和修改Linux的时区 1. 查看当前时区命令 : "date -R" 2. 修改设置Linux服务器时区方法 A命令 : "tzselect" 方法 ...
随机推荐
- Vue引入远程JS文件
问题 最近在使用 Vue 做东西,用到钉钉扫描登录的功能,这里需要引入远程的 js 文件,因为 Vue 的方式跟之前的不太一样,又不想把文件下载到本地应用,找了一下解决的方法,貌似都需要引入第三方的库 ...
- removeEntry
void VCGantt::removeEntry() { QModelIndexList selectedIndexes = ganttViewCommon->selectionModel() ...
- VCTravel
#pragma once #include <osgViewer/Viewer> #include <osgViewer/ViewerEventHandlers> #inclu ...
- java递归删除目录下所有内容
java递归删除目录下所有内容 private static boolean deleteDir(File dir) {if (dir.isDirectory()) { String[] ...
- Qt编写自定义控件51-可输入仪表盘
一.前言 这个控件是近期定制的控件,还是比较实用的控件之一,用户主要是提了三点需求,一点是切换焦点的时候控件放大突出显示,一点是可直接输入或者编辑值,还有一点是支持上下键及翻页键和鼠标滚轮来动态修改值 ...
- Apache配置日志切割
随着网站的访问越来越大,WebServer产生的日志文件也会越来越大,如果不对日志进行分割,那么只能一次将大的日志(如Apache的日志)整个删除,这样也丢失了很多对网站比较宝贵的信息,因为这些日志可 ...
- jQuery动态创建html元素的常用方法汇总
在使用jQuery进行WEB程序设计的时候非常有用.分享给大家供大家参考.具体方法如下: 一般来说,可以通过以下几种方式动态创建html元素: 1.使用jQuery创建元素的语法 2.把动态内容存放到 ...
- Linq to sql中继承类映射转换问题
类型为的数据成员“Int32 VTOUID”不是类型的映射的一部分.该成员是否位于继承层次结构根节点的上方? 想躲开Linq to sql中问题限制可真是不容易: http://www.makaido ...
- sonar:windows重启sonar
登录后操作
- SMOS数据产品介绍与下载方法
1. SMOS数据介绍 The Soil Moisture and Ocean Salinity (SMOS) 卫星是欧空局发射的一颗以探测地球土壤水含量以及海表盐度为目标的卫星,卫星所搭载的唯一载荷 ...
