Wcześniej korzystałem z Windows SFU tylko w systemie Windows 2008, ale sądzę, że jest oparty na Interix. Czasami grałem z cygwinem, ale nie w dużej ilości, więc proszę, popraw mnie, jeśli powiem coś wyraźnie złego.
- Uniksowy charakter: Interix wygrywa ten. Środowisko wydaje się znacznie bardziej „kompletne”. Nie jestem pewien, jak to ująć. Interix działa obok podsystemu win32, gdzie cygwin działa na nim. Tak więc interix jest „obywatelem pierwszej klasy” w jądrze jądra systemu Windows. Rzeczy takie jak
ps
i df
działają dobrze.
- Wydajność: nie wykonując żadnych większych testów wydajności, sądzę, że Interix też to wygrywa. Znowu działa na niższym poziomie. Nie używasz tylko aplikacji Win32 z dołączoną biblioteką DLL kompatybilną z POSIX.
- Pakiety / losowe oprogramowanie: Cygwin wygrywa to z dwóch powodów. Po pierwsze, cygwin jest znacznie lepiej znany. Wiele oprogramowania Unixy będzie obsługiwać jego dziwactwa. Możesz również bardzo łatwo zainstalować rzeczy z instalatora GUI. Interix (jak sądzę) nie ma w sobie czegoś takiego. Jasne, możesz coś pobrać, skompilować za pomocą gcc (co, jak sądzę, możesz wstępnie zainstalować) i modlić się, aby działało, ale to trochę jak przeniesienie oprogramowania do dowolnego innego losowego wariantu Uniksa (takiego jak Solaris lub AIX) - niektóre wszystko będzie działać, inne będą próbowały odgryźć twoją nogę i mordować twoje dzieci.
- Integracja z aplikacjami i narzędziami Windows: Szczerze mówiąc, oba są do bani. Jeśli masz, powiedzmy, serwer Apache działający w cygwin lub Interix, to na pewno będzie on mógł komunikować się przez TCP z programami Win32, ale to w miarę możliwości. Od wewnątrz interix, wierzę, że możesz zabijać programy Win32 i wyświetlać je za pomocą ps, nie jestem pewien, czy możesz to zrobić z cygwin. W obu przypadkach możesz użyć menedżera zadań Windows do zabijania rzeczy.
- Integracja z maszynami wirtualnymi: adresowanie przykładu udostępniania katalogu domowego, a następnie tak. Możesz użyć do tego samby i uważam, że NFS działa również na Interixie dla czegoś bardziej uniksowego. Nie znajdziesz jednak żadnych ładnych graficznych interfejsów użytkownika ani niczego, co byłoby dla Ciebie przydatne. Zarówno cygwin, jak i Interix umożliwiają dostęp do zwykłych systemów plików.
- Rozmiar bazy użytkowników: Cygwin wygrywa tutaj, powiedziałbym. Bardzo trudno było znaleźć rzeczy, które zostały przetestowane i opracowane do pracy na Interixie, gdzie jak większość rzeczy open source zdawało się wspierać cygwin jako platformę kompilacji.
Jeśli masz kopię systemu operacyjnego Windows, która będzie obsługiwać Interix (jak już wspomniałeś, edycję Enterprise, Ultimate lub Server Server), nie zaszkodzi dać jej szansę. Jest to bardzo kompletne środowisko do odczuwania. Cygwin, jak powiedziałeś, działa na wszystkim i jest lepiej znany i lepiej obsługiwany, ale czuję się trochę jak brudny hack. Jednak niektórzy ludzie używają go regularnie.
/ * meta note - Nienawidzę, że komentarze są tak krótkie * /
W większości zgodziłbym się z andrews z kilkoma komentarzami. Zamieniłem wiele systemów uniksowych na SUA / SFU (nie, nie są one takie same, ale są zamknięte) pod Windows.
źródło
Nie mogę skomentować odpowiedzi JimB, więc poradzę sobie tutaj, w szczególności punkt dotyczący integracji z systemem Windows. Cygwin oparty na Win32 zamiast działać we własnym podsystemie, choć wolniejszy, zapewnia znacznie lepszą integrację z Windows. Pozwala nawet na używanie interfejsów API Windows i UNIX w tym samym programie, co umożliwia takie rzeczy jak serwer Cygwin X lub terminal mięty.
„Ps” Cygwina wyświetla listę procesów Windows, jeśli dasz jej opcję -W, a „zabij -f” je zabije. Programy systemu Windows można wywoływać z poziomu Cygwin i podłączać razem z programami Cygwin przy użyciu wszystkich zwykłych mechanizmów, takich jak potoki. (Nie wiem, czy to możliwe w Interix.)
Obsługiwane są ścieżki w stylu Windows, zarówno z ukośnikami do przodu, jak i do tyłu. Cygwin 1.7 ustawił UTF-8 jako domyślny zestaw znaków, a nazwy plików UTF-16 systemu Windows są automatycznie tłumaczone, dlatego nazwy plików w dowolnym języku są poprawnie wyświetlane w Cygwin. Nie wiem, co robi tutaj Interix, ale nie znalazłem żadnych dowodów na to, że obsługuje Unicode.
Inne funkcje integracji obejmują narzędzie „cygstart” do otwierania pliku tak, jakbyś kliknął go dwukrotnie w Eksploratorze, oraz urządzenie / dev / clipboard do uzyskiwania dostępu do schowka Windows.
źródło
Pozwól, że podzielę się swoimi doświadczeniami z instalowaniem Interix dla Windows 7.
Nasza podróż zaczyna się od niejasnej strony systemu Windows Server 2008.
Tutaj odkryjesz, że nie jest już nawet nazywany Interix, ale Podsystem dla aplikacji opartych na Uniksie lub SUA . Następnie z komentarza użytkownika zauważysz, że SUA jest dostępna tylko w systemie Windows 7 Ultimate lub Enterprise. Nigdzie nie wspomniano o tym w artykule. Po zainstalowaniu „podsystemu” zdasz sobie sprawę, że w menu Start są to tylko 2 skróty.
Teraz dochodzisz do prawdziwego zła. Kliknij skrót do pobierania, aby przejść do strony pobierania.
Tutaj mamy 3 dostępne pliki do pobrania. Pliki te mają ponad 400 MB, a od tego momentu mają ponad 4 lata . Ponadto nie mamy żadnych opcji pobierania niestandardowych pakietów, niektórych części itp. Uświadomisz sobie, że ten link jest w rzeczywistości dla systemu Vista, a nie dla systemu Windows 7, i będziesz musiał przeszukać Internet, aby znaleźć stronę systemu Windows 7 . W tym momencie się poddałem.
Cygwin
Wejdź na cygwin.com . Pobierz cygwin.com/setup-x86.exe . Ten plik ma rozmiar 714 KB . Uruchom podstawową instalację, a zobaczysz, że zajmuje to około 2 minut .
Następnie możesz ponownie użyć instalatora dla wielu innych pakietów zgodnie z własnymi preferencjami. Morał tej historii jest to, że Cygwin dba o użytkownika .
źródło
Unikalne „odczucie” jest dość subiektywne. Mój głos dotyczy CygWin, ponieważ ma on serwer CygWin / X Xwindows ze wszystkimi niezbędnymi funkcjami. SFU otrzymało podstawowe narzędzia X11, ale było za mało i za późno. Wiele (w tym ja) zostało wprowadzonych do CygWin przez potrzebę posiadania serwera X11. Pod względem kompletności CygWin jest również lepiej pozycjonowany, ponieważ jest oprogramowaniem typu open source i jest do niego przeniesione wiele programów licencjonowanych GNU lub GPL. Widziałem kilka komercyjnych produktów dla CygWin, podczas gdy widziałem tylko jeden produkt wymagający usług UNIX dla Windows NT i od tego czasu żaden. YMMV.
Dostępność pakietujest wyraźną wygraną dla CygWin, na którą wpływa kilka czynników: - niższy koszt wejścia: „dowolny Windows” z CygWin vs. licencja klasy serwerowej dla SFU / SUA. Niektóre funkcje są dostępne w wersjach pulpitu systemu Windows, ale w droższych odmianach i bez komponentów serwera; - open source vs. zamknięte źródło i, co ważniejsze, publicznie dostępna dokumentacja. W przeszłości nawet lista poleceń i udostępnione interfejsy API były dostępne tylko dla subskrybentów MSDN i niewiele lub brakowało informacji na stronie Microsoft. Natomiast zestaw narzędzi GNU był dobrze udokumentowany i dostępny zarówno w Internecie, jak i jako strony podręcznika; - zmiany nazewnictwa i implementacji są mylące. Wczesne wersje korzystały z zestawu narzędzi MKS, który został później porzucony.
Wydajność - można argumentować, że Interix jest bliżej jądra i dlatego cieszy się krótszą ścieżką uruchamiania kodu. Prawdziwe pytanie brzmi: ile i czy to ma znaczenie? W przypadku większości programów różnica wynosi kilka procent i jest nieistotna. Oczywiście można przywołać sztuczny przykład z ciężkimi wejściami / wyjściami. Wolałbym umieścić takie obciążenia na macierzystym systemie UNIX, ponieważ byłoby to szybsze niż zarówno rodzime dodatki do systemu Windows, jak i dodatki do systemu UNIX na Windows. Wielu migrowało z Windowsa do UNIXa wraz ze wzrostem obciążenia, podczas gdy nie znam żadnego przykładu konwersji z CygWin na Interix (lub odwrotnie). Poszukiwana jest kompatybilność z UNIX, a nie wydajność UNIX, dlatego umieściłem ją na końcu listy.
źródło