从开发者角度玩Windows 11

从开发者角度玩Windows 11今天Windows11正式发布,有新的界面,有新的WindowsStore,也有新的交互,相信不少小伙伴都已经安装了Windows11或从各大媒体了解到相关的信息。作为开发者,或者你和我一样更关注Windows11给开发者带来了什么新的体验和提升。一.安装Windows11依赖于TPM2.0,什么是TPM呢?TPM技术旨在提供基于硬件的与安全性相关的功能。TPM芯片是一个安全的加密处理器,有助于执行生成、存储和限制加密密钥的使用等操作。TPM芯片包含多重物理安…

大家好,又见面了,我是你们的朋友全栈君。

从开发者角度玩Windows 11

 今天Windows 11 正式发布,有新的界面,有新的Windows Store,也有新的交互,相信不少小伙伴都已经安装了Windows 11或从各大媒体了解到相关的信息。 作为开发者,或者你和我一样更关注Windows 11给开发者带来了什么新的体验和提升。

一. 安装

从开发者角度玩Windows 11

 Windows 11 依赖于TPM 2.0 ,什么是TPM呢?TPM技术旨在提供基于硬件的与安全性相关的功能。 TPM 芯片是一个安全的加密处理器,有助于执行生成、存储和限制加密密钥的使用等操作。TPM 芯片包含多重物理安全机制,具有防篡改功能,恶意软件无法篡改TPM的安全功能。使用 TPM 技术的一些主要优势是您可以:

1.生成、存储和限制使用加密密钥。

2.通过使用 TPM 的唯一 RSA 密钥,将 TPM 技术用于平台设备身份验证,该密钥已刻录到自身中。

3.通过采取和存储安全措施帮助确保平台完整性。

从开发者角度玩Windows 11

 相信这10年有不少开发者用上了macOS的电脑,但当要用一些Visual Studio 或者对应的开发时,都会通过虚拟化VM Fusion / Parallels Desktop 安装Windows 。那VM Fusion 和Parallels Desktop支持TPM 2.0 了吗?答案是肯定的,只要你的macOS电脑是2017年后发布的,都可以通过最新的VM Fusion / Parallels Desktop 开启TPM 2.0 来安装Windows 11 。请看以下视频:

Windows 11 小技巧- Parallels Desktop 17安装Windows11

Windows 11 小技巧- VM Fusion安装Windows11

如果你想了解更多TPM 2.0 以及相关技术,可以扫描以下二维码或者浏览器输入该地址受信任的平台模块技术概述 (Windows) – Microsoft 365 Security | Microsoft Docs 获取。  

从开发者角度玩Windows 11

 

二. 通过Windows Package Manager安装和维护软件以及相关环境

安装好Windows 11 后,你可能需要为系统安装常用的工具,例如安装Visual Studio Code,Google Chrome ,VLC Player 等应用。以往你可能需要自己去各大网站上安装。 如果你曾经使用Linux, 你可以通过命令行方式用apt安装和维护很多的库和软件。在Windows 11 下你也可以通过Windows Package Manager在命令行下安装和维护软件。在Windows 11 安装完成后,去Windows Store 更新好App Installer你就可以在命令行通过winget来安装和维护Windows的应用程序了。

从开发者角度玩Windows 11

Windows Package Manager是一个综合的程序包管理器解决方案,由一个命令行工具和一组用于在 Windows 10 上安装应用程序的服务组成。开发人员可以使用 winget 命令行工具发现、安装、升级、删除和配置特选应用程序集。 安装后,开发人员可以通过 Windows 终端、PowerShell 或命令提示符访问 winget。

例如你要安装 .NET Core 的环境你可以直接通过以下方式完成

1 命令行输入以下命令,查找.NET 相关的库

winget search .net

 执行成功后,会列出和.net相关的程序包

从开发者角度玩Windows 11

2.通过命令行安装.NET 

winget install Microsoft.dotnet -e 

 你可以通过winget 直接安装.NET Core稳定版本的5.x系列,也可以安装预览版本的.NET 6

从开发者角度玩Windows 11

更多winget的操作可以观看以下小视频

Windows 11 小技巧- winget安装和维护应用程序

如果你想了解更多Windows Package Manager 相关技术,可以扫描以下二维码或者浏览器输入该地址Windows 程序包管理器 | Microsoft Docs 获取。

从开发者角度玩Windows 11

三.  在Windows下玩Linux桌面应用 

WSL 经过几年的发展,已经是一个Windows下不少开发人员做云原生应用的必备环境,你可以在上面写各种语言,各种后端框架,也可以完成容器和k8s的部署,在Windows 11下更进一步,直接支持Linux桌面应用,你可以通过apt直接安装各式各样的Linux桌面应用,如VLC Player , Visual Studio Code 等,而且你没需要做额外的工作,只需要执行sudo apt install+相关应用名,就可以快速安装Linux的桌面应用。

例如你要再WSL下安装Linux下很受欢迎的Gimp,具体操作如下:

1. 在Windows 11直接用Windows Terminal打开WSL, 通过apt安装gimp

sudo apt install gimp

从开发者角度玩Windows 11

 2. 安装成功后,在命令行直接输入gimp,就可以直接启动Gimp应用了

gimp

从开发者角度玩Windows 11

更多内容可以观看以下视频:

Windows 11 小技巧- WSL开启Linux桌面应用

如果你想了解更多在Windows 11 下玩Linux 桌面应用的相关内容,可以扫描以下二维码或者浏览器输入该地址使用 WSL 运行 Linux GUI 应用 | Microsoft Docs 获取。   

从开发者角度玩Windows 11

四. 在WSL下直接应用本地GPU算力,为你的人工智能应用提速 

WSL 已经让很多开发人员用于云原生开发,但如果你像我每天要完成人工智能应用的开发,会一直希望能加上GPU算力,这样就不需要再去安装一台Linux的机器去做人工智能的工作了(毕竟很多的人工智能场景都是在Linux下完成的)。这次Windows 11 不仅支持了Linux的桌面应用,更提供了GPU算力支持,这也让开发人员可以在一台Windows 的设备上完成更多的开发工作了。(新一代的Surface Laptop Studio就是朝着这个方向发展的)。

从开发者角度玩Windows 11

1. 准备工作,必须更新你的Nvidia 驱动到510.06,下载地址CUDA on WSL | NVIDIA Developer

ps:安装完后建议重启一次电脑

2. 通过WSL按顺序执行如下命令 

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin

sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600

wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb

sudo dpkg -i cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb

sudo apt-key add /var/cuda-repo-wsl-ubuntu-11-4-local/7fa2af80.pub

sudo apt-get update

sudo apt-get -y install cuda

sudo apt install -y cuda-toolkit-11-4

3. 验证方式如下:

cd /usr/local/cuda-11.4/samples/4_Finance/BlackScholes

sudo make BlackScholes

 ./BlackScholes

如果配置成功,结果如下:

从开发者角度玩Windows 11

 这样你的WSL就支持GPU训练了,你现在可以通过Nvidia Docker 或Tensorflow/PyTorch完成你的人工智能应用。

4. 别忘记安装cuDNN 对应cuda 11.4 请下载cuDNN 8.2.x对应的Ubuntu 20.04 Runtime deb版本(下载地址cuDNN Archive | NVIDIA Developer

从开发者角度玩Windows 11

下载完后,执行如下命令

sudo dpkg -i libcudnn8_8.2.2.26-1+cuda11.4_amd64.deb

echo 'export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":/usr/local/cuda-11/lib64' >> ~/.zshrc
 
echo 'export PATH="$PATH":/usr/local/cuda/bin' >> ~/.zshrc

这个时候,你就可以结合TensorFlow/PyTorch 进行机器学习的训练了。(机器学习环境配置请参考轻松搭建机器学习/深度学习开发环境_Kinfey-CSDN博客)

在WSL 利用GPU 训练,请看以下视频:

Windows 11 小技巧- WSL运行本地GPU算力

如果你想了解更多关于WSL 本地GPU算力的相关知识,可以扫描以下二维码或者浏览器输入该地址WSL 中的 GPU 加速 ML 训练 | Microsoft Docs 获取。  

从开发者角度玩Windows 11

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137944.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Kali安装教程(VMWare)

    Kali安装教程(VMWare)1.下载镜像及相关1.1下载镜像文件下载链接:https://www.kali.org/downloads/选择自己需要的版本下载,根据经验先下载种子文件(torrent)再用迅雷下载网速是最有保证的。1.2kali各版本说明Kali2.0使用Linux4.0内核,基于Debian8(DebianJessie)Kali—默认版本,Gnome3桌面,我一直对Gn…

    2022年5月7日
    67
  • cshtml折叠

    cshtml折叠折叠效果折叠代码//#region说明functionmyfunction(){}//#endregion

    2022年6月29日
    31
  • 解决方案:VS2017 无法打开源文件 stdio.h main.h 等头文件[通俗易懂]

    解决方案:VS2017 无法打开源文件 stdio.h main.h 等头文件[通俗易懂]问题描述:在VS2017中运行解决方案是有错误:“E1696 无法打开源文件“stdio.h” ”…原因:这种问题一般发生在该项目代码是在网上下载而来的情况,或者电脑重装新的系统等情况,导致电脑系统与该项目生成时所采用的windowsSDK不同,从而在默认的位置(已发生变化)找不到许多源文件。解决方案:1.在C++项目处(示例为“Fibonacci”),鼠标右击,弹出的菜…

    2022年6月16日
    78
  • java数组的声明_Java数组定义常用方法[通俗易懂]

    java数组的声明_Java数组定义常用方法[通俗易懂]Java数组定义常用方法Java中的数组、是一种简单的线性数据存储结构、他用牺牲自动扩展大小来换取与集合相比的唯一优势——查询效率的提升。Java中的数组有什么类型?我们要怎么定义这些数组呢?下面跟yjbys小编一起来学习Java数组定义常用方法吧!java中有两种数据类型:a)引用类型b)基础类型其中基础类型又有两种:b1)数值类型b2)及布尔类型。数组——也为java的一个数据类型、归类为引用…

    2022年6月2日
    43
  • linux 主机支持远程唤醒_LINUX 远程开机

    linux 主机支持远程唤醒_LINUX 远程开机linux远程开机1、主机bios设置支持lan启动2、查看机器是否支持服务器远程唤醒ethtooleth0Settingsforeth0:Supportedports:[TPMII]Supportedlinkmodes:10baseT/Half10baseT/Full100baseT/Half100baseT/FullSupportsauto-negotiat…

    2022年6月2日
    35
  • integer转string java_Integer转换为String类型[通俗易懂]

    integer转string java_Integer转换为String类型[通俗易懂]在学习泛型时,遇到了一个小问题:Integeri=2;Strings=(String)i;Integer类型转换为String类型,本来想直接用强制转换,结果报错:Exceptioninthread”main”java.lang.ClassCastException:java.lang.Integercannotbecasttojava.lang.String经过…

    2022年10月24日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号