Sanal Makineler vs Cygwin


Yanıtlar:


20

Sanal makineler ve Cygwin iki farklı soruyu cevaplıyor.

Sanal makineler, aynı anda birden fazla işletim sistemi çalıştırmak istediğinizde kullanılır. İki donanım satın alma masrafı olmadan iki bilgisayara sahip olmak gibidir.

Cygwin, Windows'a bir dizi Unix aracı vermeyi amaçlamaktadır, böylece Unix meraklıları Windows'u daha etkili bir şekilde kullanabilir (Cygwin'in bunu gerçekten iyi yapmadığını iddia etsem de) ve Windows'tan daha büyük özelliklere sahip bazı araçlar sağlamak kendi başına sağlar. Cygwin'in "linux benzeri bir ortam" sağlayan karakterizasyonunun özellikle doğru olduğunu düşünmüyorum. (Cygwin aslında Windows için daha eksiksiz bir POSIX geliştirme ortamı sağlamayı amaçlamaktadır ve bunu yaparken bir dizi yardımcı program sağlar. Bununla birlikte, son kullanıcılar için sonuç, yalnızca araçlar sağlamasıdır.)

Aslında biraz üçüncü seçeneğin var, Kooperatif Linux Aslında düşünüyorum yapar Windows içinde Linux benzeri bir ortam sağlar. Aslında Linux çekirdeğini Windows içinde bir işlem olarak çalıştırır. Onun altında çalışan bazı dağıtımlar vardır; ve Linux akla geliyor. Bu sistemlerle, aslında sanal bir makineden daha Windows ortamınızla daha doğrudan etkileşime girebilecek bir Linux ortamına sahipsiniz.


2
Cygwin bir grup yardımcı program olmak aslında sadece bir yan etkidir. Her şeyden önce, kullanıcı için değil, yazılım için Linux benzeri bir ortam olarak tasarlanmıştır, bu nedenle emülasyona sarılmış uygun API'lara sahipsiniz. CoLinux ile Linux çekirdeği, bir işlem olarak değil, Windows çekirdeğinin içinde bir aygıt sürücüsü olarak çalışır.
Joey

3
Ben sadece windows dosyaları üzerinde çalışmak için iyi bir kabuk olması için cygwin yükleyin. Bulmadan kaybolurdum, grep, sed ve bu ilk.
Nifle

1
@Johannes: coLinux web sayfası "coLinux tüm Linux süreçleri için her zaman ana işletim sisteminin yalnızca bir işlemini kullanır, zamanlamalarını, kaynaklarını ve hatalarını özel olarak yönetir" diyor. AFAICR, bir sürücü olarak değil, bir hizmet olarak çalışır.
wfaulk

4

Hala sanal bir makinede sıkışmak yerine Windows kutusundaki dosyalar üzerinde çalışmak istediğiniz rsync gibi Unix araçlarını çalıştırmak için kullanışlıdır. Daha sonra araçlarla işleri başlatmak için Windows zamanlayıcısını da kullanabilirsiniz.


1
Yine de cygwin kurmak yerine yerli yapıları tercih ederim.
Joey

2
Yine de yerel yapılarda her şey mevcut değildir.
quack quixote

2

Bildiğim kadarıyla Cygwin farklı bir kavram. Sanal makinenin aksine, Linux makinesini Linux ortamında / katmanını taklit eden bir DLL sağlar, bu da Windows makinesinde linux programını çalıştırabilir ve oluşturabilir. Örneğin, yalnızca kaynak kodu olarak dağıtılan ve yerleşik Linux sisteminde kullanılmak üzere tasarlanmış bir kitaplık kullanmak istiyorsanız, bu kitaplığı Visual Studio'da kullanmak isterseniz ne olur? VS'yi Linux bağımlılıklarına bağlı olduğu için oluşturmak için kullanamazsınız, bu nedenle bu durumda Cygwin'e ihtiyacınız vardır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.