Quelles sont les différences entre Windows Bash et Cygwin?

51

Quelles sont les différences entre Windows Bash et Cygwin? La nouvelle mise à jour de Windows avec "linux" bash est nouvelle, mais quelles différences y a-t-il entre Cygwin et les autres?

    
posée Martijn van Wezel 18.08.2016 - 17:36
la source

2 réponses

54

Cygwin est un excellent outil si vous souhaitez vivre entièrement sous Windows et que vous souhaitez piloter / automatiser des tâches Windows avec des scripts bash. Cependant, Cygwin ne parvient pas à exécuter des fichiers binaires Linux non modifiés.

C'est là que WSL intervient:

Le sous-système Windows pour Linux (WSL) est une nouvelle couche du noyau Windows qui vise à fournir un degré élevé de compatibilité avec le noyau Linux ABI. Cela permet aux binaires Linux ELF64 natifs non modifiés de s'exécuter sur WSL.

C'est ainsi que WSL peut exécuter une véritable distribution utilisateur-Ubuntu, ainsi que tous les paquets que vous téléchargez depuis des paquets apt-get ou .deb, sans aucune modification.

Le but de WSL est de permettre aux développeurs travaillant sur Windows d’exécuter de nombreux outils et de travailler sur de nombreux projets, qui dépendent des binaires, fonctionnalités, comportements, disposition du système de fichiers, modèle de processus, etc. de Linux.

Bien que WSL soit encore au début de son implémentation, nous travaillons dur pour améliorer l’ampleur et la profondeur de nos implémentations syscall afin d’améliorer régulièrement la capacité de WSL à exécuter un ensemble toujours plus grand d’outils et à prendre en charge un nombre croissant de Ruby. Java, nœud, etc. packages et projets.

Mise à jour: 2017-09-07

Depuis l’écriture de ce qui précède, nous avons mis à jour Windows 10 Creators Update qui améliore la compatibilité de WSL avec BEAUCOUP d’outils que vous souhaitez / devez exécuter.

Le développement s’est également poursuivi sans relâche et nous avons expédié les builds de Win10 Insiders au cours des derniers mois avant la livraison de la mise à jour des créateurs d’automne (FCU) en octobre 2017.

Dans FCU, nous ajoutons la possibilité d’installer et d’exécuter plusieurs distributions côte à côte: Ubuntu, openSUSE et SLES sont actuellement disponibles, avec Fedora et d’autres en route. WSL prend également en charge les communications série USB et le montage de périphériques de stockage USB et de réseaux, ainsi que d’autres améliorations de nos systèmes d’appel, ce qui améliore la compatibilité avec davantage d’outils.

HTH.

    
réponse donnée Rich Turner 19.08.2016 - 02:12
la source
12

Sous-système Windows pour Linux

J'utilise WSL sous Windows 10 depuis quelques mois. Enfin, je peux démarrer Windows pour le jeu et toujours accéder à l'invite bash et exécuter CLI et de nombreux programmes d'interface graphique. Il existe des limitations telles qu'aucun des répertoires virtuels Linux Kernel connus. La planification est nécessaire pour partager le même script bash entre Ubuntu et WSL sur un ordinateur à double démarrage.

Il y a beaucoup de choses que je voudrais voir améliorées, mais je peux les vivre telles quelles pendant environ un an.

Source fermée

Une chose à retenir est que MS est un système fermé et que vous n’avez pas la possibilité que des tiers écrivent des mises à jour comme vous le faites sous Linux. Mais tout compte fait, vous achetez un nouvel ordinateur portable et il est livré avec Windows 10 de toute façon, vous pouvez donc dire qu'il est "gratuit" au moins:)

Cygwin est contrôlé par Red Hat Linux, qui n’est pas exactement connu pour les distribuer gratuitement. Leur distribution Linux "gratuite" Fedora semble être un "terrain d'essai" pour certains.

Cycles de maintenance

Cygwin a 15 ans de mises à jour. Notable est le même chef de projet a été en place depuis 2003. Il y a beaucoup de mainteneurs à plein temps et beaucoup plus de contributeurs bénévoles.

WSL fournit des mises à jour majeures deux fois par an chaque printemps et chaque automne. Des mises à jour mineures hebdomadaires sont disponibles pour ceux figurant sur la liste d'abonnement des développeurs. Bien que Microsoft dispose de ressources pour lancer des milliers de personnes dans le développement WSL, il apparaît que vous pouvez compter le membres de l'équipe avec vos doigts.

Problèmes de vitesse

Vous verrez beaucoup de plaintes concernant la vitesse WSL. Par exemple, la peinture à l'écran prend beaucoup plus de temps sous Windows 10 qu'avec Ubuntu 16.04, ce qui signifie que vous pouvez réellement voir le curseur bouger dans Windows 10:

Il faut environ 5 secondes à l’écran de démarrage WSL Bash pour peindre. En comparaison, il faut environ 1 1/2 seconde pour le même écran de démarrage dans Ubuntu 16.04:

Cygwin a sa propre part de vitesse plaintes avec bash .

Annonce originale ci-dessous pour référence historique.

La réponse ici est 1 an, donc je pense qu'une petite mise à jour est en ordre. Avec Windows 10 Home, si il s'agit de Windows 32 bits, cela signifie qu’il n’exécutera pas le sous-système Ubuntu / Windows 64 bits comme Microsoft nous le dit ici: ( sous-système Windows Linux dans Win10 HOME BASIC ).

C'est comme un rêve devenu réalité avec Ubuntu sous Windows avec son support de jeu supérieur pour nVidia, mais avant d’acheter un nouvel ordinateur portable (ou utilisé), assurez-vous qu’il a Windows 10 64 bits et non 32 bits version si vous voulez lancer Ubuntu / Linux en mode natif sous Windows. Sur les sites Web MS, ils font en réalité référence à l'édition Windows Anniversary comme condition préalable à l'exécution de Windows Subsystem for Linux.

Cependant, si vous ne voulez pas débourser plus de 200 $ pour Windows 10 et que vous avez un ordinateur portable plus ancien fonctionnant sous Windows 8.1 64-bit, et que vous avez un ordinateur portable encore plus ancien exécutant Windows Vista 64 bits, alors Cggwin est la réponse.

Cygwin prend en charge plus de versions de Windows que leurs listes de sites Web :

  

On peut s’attendre à ce que Cygwin fonctionne sur toutes les versions modernes de   Les fenêtres. Etat Janvier 2016 cela comprend Windows Vista, Windows   Server 2008 et toutes les versions ultérieures de Windows à Windows 10 et   Windows Server 2016. La version 32 bits de Cygwin s'exécute également dans le   Environnement WOW64 32 bits sur les versions 64 bits de Windows, le   Version 64 bits bien sûr que sur Windows 64 bits.

     

Gardez à l’esprit que Cygwin peut faire autant que le système d’exploitation sous-jacent   les soutiens. Pour cette raison, Cygwin se comportera différemment et exposera   différentes limitations, sur les différentes versions de Windows.

    
réponse donnée WinEunuuchs2Unix 06.09.2017 - 01:29
la source

Lire d'autres questions sur les étiquettes