Je n'ai utilisé Windows SFU que sur Windows 2008 auparavant, mais je crois que cela est basé sur Interix. J'ai joué avec cygwin à l'occasion, mais pas énormément, alors quelqu'un s'il vous plaît corrigez-moi si je dis quelque chose de mal ici.
- Sensation Unix: Interix gagne celui-ci. L'environnement semble beaucoup plus "complet". Je ne sais pas comment le dire. Interix côtoie le sous-système win32, où as cygwin s'exécute par-dessus. Ainsi, interix est un "citoyen de première classe" dans le pays du noyau Windows. Des choses comme
ps
et df
fonctionnent bien.
- Performance: N'ayant fait aucun test de performance majeur, je suppose qu'Interix gagne aussi. Encore une fois, cela fonctionne à un niveau inférieur. Vous n'exécutez pas uniquement des applications Win32 avec une DLL de compatibilité POSIX liée.
- Packages / logiciels aléatoires: Cygwin remporte celui-ci pour deux raisons. Premièrement, cygwin est bien mieux connu. Beaucoup de logiciels Unixy prendront en charge ses bizarreries. Vous pouvez également installer des choses très facilement à partir du programme d'installation de l'interface graphique. Interix n'a (je crois) rien de tel intégré. Bien sûr, vous pouvez télécharger quelque chose, le compiler en utilisant gcc (que je pense que vous pouvez obtenir préconstruit) et prier pour que cela fonctionne, mais c'est un peu comme le portage d'un logiciel vers toute autre variante aléatoire d'Unix (comme Solaris ou AIX) - certains les choses vont marcher, d'autres vont essayer de vous mordre la jambe et de tuer vos enfants.
- Intégration avec les applications et les outils Windows: pour être honnête, les deux sont un peu nul. Si vous avez, par exemple, un serveur Apache fonctionnant à l'intérieur de cygwin ou Interix, alors bien sûr, il va pouvoir communiquer via TCP avec des programmes Win32, mais c'est à peu près aussi loin que cela va. De l'intérieur d'Interix, je crois que vous pouvez tuer les programmes Win32 et les lister en utilisant ps, je ne sais pas si vous pouvez le faire avec cygwin. Avec les deux, vous pouvez utiliser le gestionnaire de tâches Windows pour tuer des choses.
- Intégration avec les machines virtuelles: répondre à votre exemple de partage d'un répertoire personnel, alors oui. Vous pouvez soit utiliser samba pour cela, et je crois que NFS fonctionne aussi sur Interix pour quelque chose de plus unixy. Vous ne trouverez cependant pas de belles interfaces graphiques ou quoi que ce soit pour faire le travail pour vous. Cygwin et Interix vous permettent d'accéder à vos systèmes de fichiers habituels.
- Taille de la base d'utilisateurs: Cygwin gagne ici, je dirais. Il était très difficile de trouver des choses qui avaient été testées et développées pour fonctionner sur Interix, où la plupart des choses open source semblaient prendre en charge cygwin comme plate-forme de compilation.
Si vous avez une copie d'un système d'exploitation Windows qui prendra en charge Interix (comme vous l'avez dit, une édition Enterprise, une édition Ultimate ou une édition Server), ce n'est pas un inconvénient de l'essayer. C'est un environnement de sensation très complet. Cygwin, comme vous l'avez dit, fonctionne sur tout et est mieux connu et mieux pris en charge, mais me semble un peu comme un hack sale. Certaines personnes l'utilisent cependant régulièrement.
/ * meta note - Je déteste que les commentaires soient si courts * /
Je suis principalement d'accord avec la réponse d'Andrews avec quelques commentaires. J'ai remplacé de nombreux systèmes Unix par SUA / SFU (non, ils ne sont pas identiques mais proches) sous Windows.
la source
Je ne peux pas commenter la réponse de JimB, alors abordez-la ici, en particulier le point sur l'intégration de Windows. Cygwin étant basé sur Win32 au lieu de s'exécuter dans son propre sous-système, bien que plus lent, offre une intégration Windows beaucoup plus importante. Il permet même d'utiliser les API Windows et UNIX dans le même programme, ce qui permet des choses comme le serveur Cygwin X ou le terminal mintty.
Le «ps» de Cygwin répertorie les processus Windows si vous lui donnez l'option -W, et «kill -f» les tuera. Les programmes Windows peuvent être invoqués depuis Cygwin et connectés avec les programmes Cygwin en utilisant tous les mécanismes habituels tels que les tuyaux. (Je ne sais pas si c'est possible dans Interix.)
Les chemins de style Windows, avec des barres obliques avant et arrière, sont pris en charge. Cygwin 1.7 a fait d'UTF-8 le jeu de caractères par défaut, et les noms de fichiers UTF-16 de Windows sont automatiquement traduits, ainsi les noms de fichiers dans n'importe quelle langue s'affichent correctement dans Cygwin. Je ne sais pas ce que fait Interix ici, mais je n'ai trouvé aucune preuve qu'il supporte Unicode.
Les autres fonctionnalités d'intégration incluent l'utilitaire «cygstart» pour ouvrir un fichier comme si vous l'avez double-cliqué dans l'Explorateur, et le périphérique / dev / clipboard pour accéder au presse-papiers de Windows.
la source
Permettez-moi de partager mon expérience d'installation d'Interix pour Windows 7.
Notre parcours commence sur une page obscure pour Windows Server 2008.
Ici, vous découvrirez qu'il ne s'appelle même plus Interix, mais Subsystem for Unix-based Applications or SUA . Ensuite, vous remarquerez uniquement à partir d'un commentaire d'utilisateur que SUA n'est disponible que pour Windows 7 Ultimate ou Enterprise. Cela n'est mentionné nulle part dans l'article. Après avoir installé le "sous-système", vous vous rendrez compte qu'il n'y a pas plus de 2 raccourcis dans votre menu de démarrage.
Maintenant, vous arrivez au vrai mal. Cliquez sur le raccourci pour Télécharger et vous serez redirigé vers la page de téléchargement.
Ici, nous avons 3 fichiers disponibles à télécharger. Ces fichiers font tous plus de 400 Mo, et à ce jour plus de 4 ans . De plus, nous n'avons aucune option de télécharger des packages personnalisés, certaines parties, etc. Vous vous rendrez alors compte que ce lien est en fait pour Vista et non pour Windows 7, et devrez rechercher sur Internet pour trouver la page Windows 7 . À ce stade, j'ai abandonné.
Cygwin
Accédez à cygwin.com . Téléchargez cygwin.com/setup-x86.exe . Ce fichier fait 714 Ko . Exécutez une installation de base et vous verrez que cela prend environ 2 minutes .
Après cela, vous pouvez réutiliser le programme d'installation pour de nombreux autres packages selon vos préférences. La morale de l'histoire est que Cygwin se soucie de l'utilisateur .
la source
La "sensation" de type UNIX est assez subjective. Mon vote va avec CygWin car il a un serveur CygWin / X Xwindows avec toutes les fonctionnalités nécessaires. SFU a obtenu les outils de base du X11 mais c'était trop peu et trop tard. Beaucoup (y compris moi) ont été initiés à CygWin par la nécessité d'avoir un serveur X11. En termes d'exhaustivité, CygWin est également mieux positionné car il est open source et de nombreux logiciels sous licence GNU ou GPL y sont portés. J'ai vu peu de produits commerciaux pour CygWin alors que je n'ai vu qu'un seul produit nécessitant les services UNIX pour Windows NT et aucun depuis. YMMV.
Disponibilité du packageest une victoire évidente pour CygWin influencée par plusieurs facteurs: - coût d'entrée inférieur: le "tout Windows" avec CygWin vs licence de classe serveur pour SFU / SUA. Certaines fonctionnalités sont disponibles pour les versions de bureau de Windows mais des variétés les plus chères et sans les composants du serveur; - open source vs source fermée et, plus important encore, documentation disponible gratuitement. Dans le passé, même la liste des commandes et les API fournies n'étaient disponibles que pour les abonnés MSDN et peu ou pas d'informations étaient disponibles sur le site Microsoft. En revanche, le jeu d'outils GNU était bien documenté et disponible à la fois en ligne et en tant que pages de manuel; - les changements de nom et d'implémentation prêtent à confusion. Les premières versions utilisaient la boîte à outils MKS qui a ensuite été abandonnée.
En termes de performances, on peut affirmer que l'Interix est plus proche du noyau et bénéficie ainsi d'un chemin d'exécution de code plus court. La vraie question est de savoir combien et est-ce important? Pour la plupart des programmes, la différence est de quelques pour cent et est négligeable. Un exemple artificiel avec des E / S lourdes peut être évoqué, bien sûr. Je préférerais mettre de telles charges sur UNIX natif car ce serait plus rapide que les modules complémentaires Windows natifs et UNIX au-dessus de Windows. Beaucoup ont migré de Windows vers UNIX avec l'augmentation de la charge alors que je ne connais aucun exemple de conversion de CygWin vers Interix (ou vice versa). C'est la compatibilité UNIX qui est recherchée et non les performances UNIX, donc je mets cela à la fin de la liste.
la source