Cygwin je program Microsoft® Windows™, ki nadomešča standardno lupino Windows™ s tisto, ki je zelo podobna napravi UNIX®. Program je uradno označen kot podoben UNIX®, saj v celoti temelji na sistemu Windows™ in ne na standardni različici UNIX®. Cygwin uporabniku omogoča popoln dostop do funkcij, aplikacij in storitev Windows™; preprosto spremeni okolje, ki se uporablja za dostop do njih. Ta program je brezplačen in odprtokoden.
Uporabniški vmesnik za interakcijo na računalniku ima veliko različnih imen. V večini primerov se imenuje grafični uporabniški vmesnik (GUI). To je običajno ime za programe, kot sta Microsoft® Windows™ ali Mac OS™. Ti programi imajo slike in slike, ki sestavljajo večino zaslona; na splošno so edino besedilo oznake in informacije, ki jih vnese uporabnik.
Manj pogosto, a bolj tehnično, ime je lupina. Lupina je računalniški program, ki se ovije okoli procesa, da uporabnikom omogoči interakcijo z njim. V primeru operacijskih sistemov se lupina ovije okoli jedra računalnika in omogoči dostop do nizkonivojskih funkcij.
Nekateri računalniški sistemi vsebujejo emulatorje. Ko se ti programi izvajajo, ustvarijo okolje, ki je podobno nekemu drugemu sistemu; potem se v tem okolju izvajajo drugi programi. Mac OS™ na primer izvaja emulacijski sistem, ki mu omogoča uporabo nekatere programske opreme, ki temelji na sistemu Windows™. Emulator v bistvu zavede program, da misli, da je tam, kjer naj bi bil.
Cygwin ima številne funkcije GUI – lupino in emulator – vendar ni nobena od teh treh. Cygwin ustvari okolje, podobno UNIX®, na standardnem računalniku Windows™. Je več kot emulacija, a manj kot celoten operacijski sistem. Ustvarja lupino, ki zajame strojno opremo računalnika in večino funkcij Window™. Nazadnje zagotavlja UNIX® podoben GUI za interakcijo z napravo in nameščenimi aplikacijami.
Ta program se uporablja predvsem kot vmesnik programerja. Mešanica funkcij Windows™ in UNIX® omogoča programerjem dostop do pomembnih funkcij, hkrati pa lahko zaženejo številne aplikacije Windows™. Čeprav se uporablja zunaj programiranja, so veliko manj pogoste zaradi nekaterih težav s hitrostjo in združljivostjo, ki so prisotne v Cygwinu.
Cygwin je odprtokodni program, ki ga močno podpira Red Hat®. Odprtokodni programi so brezplačni za vse uporabnike, ki jih zanima njihova uporaba. Izvorna koda za program je na voljo v primeru, da želi kdo ustvariti dodatke ali spremembe osnovne kode. Poleg tega Red Hat® ponuja plačane spodbude programerjem, ki jih zanimajo velike spremembe ali nove pomembne funkcije programa.