Cygwin yra Microsoft® Windows™ programa, kuri standartinį Windows™ apvalkalą pakeičia tokiu, kuris labai panašus į UNIX® įrenginį. Programa oficialiai pažymėta kaip UNIX® panaši, nes ji visiškai pagrįsta Windows™, o ne standartine UNIX® versija. Cygwin leidžia vartotojui turėti visišką prieigą prie Windows™ funkcijų, programų ir paslaugų; tai tiesiog pakeičia aplinką, naudojamą jiems pasiekti. Ši programa yra nemokama ir atvirojo kodo.
Vartotojo sąveikos sąsaja kompiuteryje vadinama įvairiais pavadinimais. Daugeliu atvejų tai vadinama grafine vartotojo sąsaja (GUI). Tai įprastas tokių programų kaip Microsoft® Windows™ arba Mac OS™ pavadinimas. Šiose programose yra paveikslėlių ir vaizdų, kurie sudaro didžiąją ekrano dalį; apskritai vienintelis tekstas yra etiketės ir vartotojo įvesta informacija.
Mažiau paplitęs, bet labiau techninis pavadinimas yra apvalkalas. Apvalkalas yra kompiuterio programa, kuri apgaubia procesą, kad vartotojai galėtų su juo sąveikauti. Operacinių sistemų atveju apvalkalas apsivynioja aplink kompiuterio branduolį, suteikdamas prieigą prie žemo lygio funkcijų.
Kai kuriose kompiuterių sistemose yra emuliatorių. Kai šios programos veikia, jos sukuria aplinką, panašią į bet kurią kitą sistemą; tada toje aplinkoje veikia kitos programos. Pavyzdžiui, „Mac OS™“ veikia emuliavimo sistema, leidžianti naudoti tam tikrą „Windows™“ programinę įrangą. Emuliatorius iš esmės apgauna programą, manydamas, kad ji yra ten, kur ji turėtų būti.
Cygwin turi daug GUI funkcijų – apvalkalą ir emuliatorių, bet nėra nė viena iš trijų. „Cygwin“ sukuria į UNIX® panašią aplinką standartiniame „Windows™“ kompiuteryje. Tai daugiau nei emuliacija, bet mažiau nei visa operacinė sistema. Tai sukuria apvalkalą, kuris apgaubia kompiuterio aparatinę įrangą ir daugumą „Window™“ funkcijų. Galiausiai, jame yra į UNIX® panaši GUI, skirta sąveikai su įrenginiu ir įdiegtomis programomis.
Ši programa pirmiausia naudojama kaip programuotojo sąsaja. „Windows™“ ir „UNIX®“ funkcijų derinys suteikia programuotojams prieigą prie svarbių funkcijų, tačiau vis tiek gali paleisti daugybę „Windows™“ programų. Nors jis naudojamas ne programuojant, jie yra daug rečiau paplitę dėl kai kurių „Cygwin“ greičio ir suderinamumo problemų.
Cygwin yra atvirojo kodo programa, kurią labai palaiko Red Hat®. Atvirojo kodo programos yra nemokamos bet kuriam vartotojui, norinčiam jomis naudotis. Programos šaltinio kodas yra prieinamas, jei kas nors norėtų sukurti pagrindinio kodo papildymus ar pakeitimus. Be to, Red Hat® siūlo mokamas paskatas programuotojams, norintiems kurti didelius programos pakeitimus ar naujas pagrindines funkcijas.