Czy wraz z pojawieniem się oprogramowania maszyn wirtualnych , takich jak VirtualBox , VMWare , Parallels itp., Cygwin jest przydatny na platformie Windows, aby zapewnić środowisko podobne do systemu Linux?
Czy wraz z pojawieniem się oprogramowania maszyn wirtualnych , takich jak VirtualBox , VMWare , Parallels itp., Cygwin jest przydatny na platformie Windows, aby zapewnić środowisko podobne do systemu Linux?
Odpowiedzi:
Maszyny wirtualne i Cygwin odpowiadają na dwa różne pytania.
Maszyny wirtualne są przeznaczone do jednoczesnego uruchamiania wielu systemów operacyjnych. To jak posiadanie dwóch komputerów bez kosztów zakupu dwóch zestawów sprzętu.
Cygwin ma na celu udostępnienie Windowsowi wielu narzędzi uniksowych, aby maniacy uniksowi mogli efektywniej korzystać z systemu Windows (chociaż twierdzę, że Cygwin nie radzi sobie tak dobrze), a także zapewnić niektóre narzędzia, które mają więcej funkcji niż Windows zapewnia na własną rękę. Nie sądzę, aby charakterystyka Cygwin zapewniająca „środowisko podobne do linuksa” była szczególnie dokładna. (Cygwin ma na celu zapewnienie bardziej kompletnego środowiska programistycznego POSIX dla systemu Windows, a tym samym zapewnia szereg narzędzi. Końcowym rezultatem dla użytkowników końcowych jest to, że zapewnia jedynie narzędzia).
Jest rzeczywiście rodzaj trzeciej opcji Cooperative Linux , który myślę, że rzeczywiście ma zapewnić Linux-jak środowisko w systemie Windows. W rzeczywistości działa jądro Linuksa jako proces w systemie Windows. Istnieje kilka dystrybucji, które działają pod nim; i przychodzi mi na myśl Linux . Z tymi systemami faktycznie masz środowisko Linux, które może bardziej bezpośrednio współdziałać ze środowiskiem Windows niż maszyna wirtualna.
Nadal jest użyteczny do uruchamiania narzędzi uniksowych, takich jak rsync, które chcesz obsługiwać na plikach w systemie Windows, a nie utknąć na maszynie wirtualnej. Możesz także użyć harmonogramu systemu Windows do uruchamiania zadań za pomocą narzędzi.
Jeśli chodzi o mnie, Cygwin to inna koncepcja. W przeciwieństwie do maszyny wirtualnej udostępnia bibliotekę DLL, która emuluje środowisko / warstwę systemu Linux, która może uruchamiać i budować program Linux na komputerze z systemem Windows. Na przykład, jeśli chcesz użyć biblioteki, która jest dystrybuowana tylko jako kod źródłowy i jest przeznaczona dla wbudowanego systemu Linux, co jeśli chcesz korzystać z tej biblioteki w Visual Studio? Nie można użyć VS do zbudowania go, ponieważ opiera się on na zależnościach Linuksa, więc w tej sytuacji potrzebujesz Cygwina.