Microsoft에서 발표한 WSL은 Windows 운영체제에서 경량화된 가상화 기술을 사용하여 Linux 운영 체제를 구동할 수 있도록 해 주는 기술이다. 커널(Kernel)이라 부르는 Windows의 내부 시스템 기술을 이용하여 Linux을 구동시킬 수 있으며, 경량화 되었기 때문에 심지어 Windows10 Home Edition에서도 작동한다.
만약 WSL이 없는 세상에서 리눅스를 윈도우 환경에서 개발해야한다면 귀찮은 일이 생기고 만다.
가상머신을 만들고 가상환경에서 리눅스를 설치해야하기 때문이다.
WSL은 윈도우환경에서 리눅스를 사용하기 위한 도구로 생각하는것이 좋다. 가상머신을 통해 느린 리눅스를 사용하거나, 리눅스를 따로 설치하여 부팅 때 OS를 선택하여 사용하는 방식보다 훨씬 빠르고 효율적이다. 속도는 VM보다 빠르고, 재부팅을 해야 할 필요가 없어진다.
docs.microsoft.com
WSL2는 기존과 다른 VM 환경을 가지고 있다. WSL1에서 Linux의 System Call을 Windows API로 변환하는 구조였다고 하면, WSL2에서는 윈도우즈에 리눅스 커널을 아얘 올려버렸다고 한다.
WSL1이 윈도우의 api를 이용하기 위해 변환과정을 거쳤기 때문에, 속도가 느려지며 일부 api는 변환이 불가능 하였다고 한다. 하지만, WSL2는 linux 커널을 포함하고 있기 때문에, linux의 모든 api를 지원한다.
WSL 2는 Windows 10, 버전 1903, 빌드 18362 이상에서만 사용할 수 있다. 물론 Windows 11 에서도 사용가능하다!