如果你需要在Windows平台下做Linux相关的实验,那下面几种方案可以提供思路
1. Cygwin/gcc
2. 虚拟机
3. xshell+远程Linux服务器
4. Windows的子系统 WSL
5. 在线编译器
1.Cygwin/gcc
CygWin/gcc,其实这是两个东西。CygWin是一个让Windows拥有Unix-like环境的软件。而gcc就是安装在CygWin上的编译器。
CygWin/gcc与MinGW的最大区别在于:使用CygWin/gcc可以在Windows下调用unix-like的API,(如fork,spawn,signals,select,sockets等)。也就是说Cygwin是运行在Windows下的,但是她使用的是Unix-like系统的函数和思想。由于这个区别,导致的结果就是用CygWin/gcc编译出来的程序可以无缝的运行在*nix环境下。但是如果调用了unix特有的API函数,在windows环境下不能正常运行,如果想在windows下正常运行的,就必须依赖cygwin1.dll,速度上会有些影响。
而用MinGW编译出来的程序,如果源代码里面调用了unix环境的API,则MinGW会把这些对UNIX的API调用翻译成win32下等价的形式。同时这个程序是不能在windows下运行的。
说白了,如果你是想在windows环境下开发linux运行程序,那么CygWin/gcc是你的不二之选。
Cygwin的下载和安装网上有教程
2.虚拟机
可以选择在Windows下安装Linux虚拟机来搭建实验环境,常用的虚拟机有VMware、Oracle的Virtual Box还有微软的Hyper-V(win10专业版自带Hyper-V)。
3.xshell+远程Linux服务器
可以在各大云厂商的平台下去租一个Linux服务器,然后在Windows下通过xshell或SecureCRT等SSH链接工具远程登录云上的Linux服务器。
4.Windows的子系统 WSL
Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu 14.04 "Trusty Tahr"映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。
WSL现在有两个版本,WSL1和WSL2。可以配合Windows Terminal使用。
WSL1靠翻译System Call来模拟Linux内核的,WSL1的机制总体上是在运行时将Linux System Call翻译为NT API调用,从而在NT内核基础之上模拟实现Linux内核。
WSL2将Linux内核塞到一个轻量级的虚拟机(Virtual Machine,VM)中运行,使用过程与WSL1保持一致,VM的启动、管理都藏在背后。
5.在线编译器
你如果不想倒腾安装 Linux,可以在线上编译平台上去做相关实验,也是很方便的。
在线编译器
本文介绍了在Windows平台上进行Linux环境开发的五种方案:Cygwin/gcc提供Unix-like环境,虚拟机(如VMware、VirtualBox、Hyper-V)创建独立Linux系统,xshell连接远程Linux服务器,Windows Subsystem for Linux (WSL)实现轻量级Linux环境,以及使用在线编译器进行便捷开发。每种方案都有其特点和适用场景。
728

被折叠的 条评论
为什么被折叠?



