<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://camokathomelab.servebeer.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Cygwin</id>
	<title>Cygwin - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://camokathomelab.servebeer.com/mediawiki/index.php?action=history&amp;feed=atom&amp;title=Cygwin"/>
	<link rel="alternate" type="text/html" href="https://camokathomelab.servebeer.com/mediawiki/index.php?title=Cygwin&amp;action=history"/>
	<updated>2026-07-16T16:57:58Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://camokathomelab.servebeer.com/mediawiki/index.php?title=Cygwin&amp;diff=44406&amp;oldid=prev</id>
		<title>176.59.23.111: небольшие корректировки</title>
		<link rel="alternate" type="text/html" href="https://camokathomelab.servebeer.com/mediawiki/index.php?title=Cygwin&amp;diff=44406&amp;oldid=prev"/>
		<updated>2025-01-22T15:03:38Z</updated>

		<summary type="html">&lt;p&gt;небольшие корректировки&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Карточка программы}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Cygwin&amp;#039;&amp;#039;&amp;#039; (произносится {{IPA|/ˈsɪgwɪn/}})&amp;lt;ref&amp;gt;{{Cite web&lt;br /&gt;
 |url           = https://sourceware.org/legacy-ml/cygwin/2004-09/msg00702.html&lt;br /&gt;
 |title         = Re: How do you pronounce it?&lt;br /&gt;
 |author        = Larry Hall&lt;br /&gt;
 |lang          = en&lt;br /&gt;
 |datepublished = 2004-09-14&lt;br /&gt;
 |access-date   = 2024-07-20&lt;br /&gt;
 |url-status    = live&lt;br /&gt;
 |archive-url   = https://web.archive.org/web/20201128141955/https://sourceware.org/legacy-ml/cygwin/2004-09/msg00702.html&lt;br /&gt;
 |archive-date  = 2020-11-28&lt;br /&gt;
}}&amp;lt;/ref&amp;gt; — [[UNIX-подобная операционная система|UNIX-подобная]] среда и [[Оболочка операционной системы#Командный интерпретатор|оболочка командной строки]] для [[Microsoft Windows]]. Cygwin обеспечивает тесную интеграцию приложений, данных и ресурсов Windows с приложениями, данными и ресурсами UNIX-подобной среды. Из среды Cygwin можно запускать обычные приложения Windows, также можно использовать инструменты Cygwin из Windows.&lt;br /&gt;
&lt;br /&gt;
Cygwin состоит из двух частей: динамически подключаемой библиотеки ([[DLL]]) &amp;lt;code&amp;gt;cygwin1.dll&amp;lt;/code&amp;gt;, которая обеспечивает совместимость [[API]] и реализует значительную часть стандарта [[POSIX]], и огромной коллекции приложений, которые обеспечивают привычную среду UNIX, включая [[Командная оболочка UNIX|Unix shell]].&lt;br /&gt;
&lt;br /&gt;
Изначально Cygwin был разработан компанией [[Cygnus Solutions]], которую позднее приобрела [[Red Hat]]. Это [[свободное ПО]], опубликованное под [[GNU General Public License]] версии 2. В настоящее время Cygwin разрабатывается сотрудниками Red Hat, [[NetApp]] и множеством добровольцев. Поддерживаются языки: [[Си (язык программирования)|C]], [[C++]], [[Objective-C]], [[Фортран|Fortran]], [[Gambas]], [[Perl]], [[Python]], [[Ruby]], [[Tcl]], [[Ада (язык программирования)|Ada]], [[CLISP]], [[Scheme]], [[OCaml]], [[Пролог (язык программирования)|Prolog]], [[Self]] (Self/x86&amp;lt;ref&amp;gt;{{Cite web|url=http://www.gliebe.de/self/|title=Self/x86|lang=en|publisher=www.gliebe.de|access-date=2016-12-24|url-status=dead|archive-url=https://web.archive.org/web/20160710010114/http://www.gliebe.de/self/|archive-date=2016-07-10}}&amp;lt;/ref&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
Подобные функциональные возможности предлагала также и Microsoft в своём пакете [[Сервисы Microsoft Windows для UNIX|Services for UNIX]], включающем в себя подсистему [[Interix]], и &amp;#039;&amp;#039;Subsystem for UNIX-based Applications&amp;#039;&amp;#039; (в более новых версиях).&lt;br /&gt;
&lt;br /&gt;
== Описание ==&lt;br /&gt;
Cygwin представляет собой инструмент для портирования ПО UNIX в Windows и представляет собой библиотеку, которая реализует [[API|интерфейс прикладного программирования]] [[POSIX]] на основе системных вызовов [[Win32]]. Кроме того, Cygwin включает в себя [[GNU toolchain|инструменты разработки GNU]] для выполнения основных задач программирования, а также и некоторые прикладные программы, эквивалентные базовым программам UNIX. В [[2001 год]]у в Cygwin был включён пакет [[X Window System]].&lt;br /&gt;
&lt;br /&gt;
Кроме того, Cygwin содержит библиотеку [[MinGW]], позволяющую работать с библиотекой Microsoft MSVCRT ([[Windows API]]); библиотека MinGW менее требовательна к объёму оперативной и дисковой памяти, распространяется под более свободной [[лицензия|лицензией]] и может работать с любым программным обеспечением, но функциональные возможности спецификации POSIX реализованы в ней не так полно, как в Cygwin.&lt;br /&gt;
&lt;br /&gt;
Red Hat реализует библиотеку Cygwin под лицензией [[GNU GPL]], таким образом, её можно использовать только в программах, распространяемых под GPL. Для распространения программ, использующих библиотеку Cygwin под лицензией, отличной от GPL, необходимо приобретение лицензии у RedHat.&lt;br /&gt;
&lt;br /&gt;
На странице [http://cygwin.com/lists.html Cygwin Mailing Lists] можно подписаться на рассылку, посвящённую Cygwin.&lt;br /&gt;
&lt;br /&gt;
== История ==&lt;br /&gt;
Работа над проектом Cygwin была начата в [[1995 год]]у Стивом Чемберленом ({{lang-en|Steve Chamberlain}}), программистом Cygnus, заметившим, что Windows NT и Windows 95 используют в качестве формата объектных файлов формат [[COFF]]. К тому времени в GNU уже была реализована поддержка архитектуры [[x86]], [[COFF]], а также библиотека языка C newlib; таким образом, по крайней мере теоретически, не представляло затруднений получить из GCC [[кросс-компилятор]], который бы создавал исполняемые файлы Windows. Это оказалось несложным и на практике. Вскоре появился прототип.&lt;br /&gt;
&lt;br /&gt;
Следующим шагом было заставить компилятор работать в Windows, но для этого была необходима эмуляция многих функций Unix: к примеру, должен был работать [[скрипт]] [[GNU configure]]. Этот скрипт нуждается в оболочке типа [[bash]], которая, в свою очередь, требует наличия стандартных потоков ввода-вывода и системного вызова [[fork]]. Windows располагает подобными функциональными возможностями, и библиотека Cygwin лишь транслирует вызовы, исходящие от программ, управляя определёнными видами данных, такими как [[файловый дескриптор|файловые дескрипторы]].&lt;br /&gt;
&lt;br /&gt;
В [[1996 год]]у к проекту Cygwin присоединились и другие программисты, так как стало очевидным, что Cygwin сделает возможным использование инструментов Cygnus на системах с Windows (до этого намечалось использовать [[DJGPP]]). Этот вариант был особенно привлекательным, ведь кросскомпиляция могла бы производиться в трёх направлениях: можно было использовать мощную станцию Sun для сборки Windows-кросскомпилятора [[MIPS (архитектура)|MIPS]], что позволяло значительно экономить время. С [[1998 год]]а Cygnus предлагает пакет Cygwin в качестве самостоятельного продукта.&lt;br /&gt;
&lt;br /&gt;
== Интернационализация ==&lt;br /&gt;
До версии 1.7 Cygwin не имел поддержки [[Unicode]] и использовал только ANSI-варианты функций Win32; отсутствовала также и поддержка каких-либо кодировок, отличных от родных для Windows и OEM (так, в русскоязычной версии Windows Cygwin работала лишь с [[Windows-1251|CP1251]] и [[CP866]], но не с [[KOI8-R]], [[ISO 8859-5]], [[UTF-8]] или какими-либо другими.&lt;br /&gt;
&lt;br /&gt;
Начиная с версии 1.7, кодировкой по умолчанию является [[Unicode]] в форме [[UTF-8]] и, соответственно, по умолчанию используются [[Региональные настройки (программирование)|региональные настройки]] (locale в англ.) &amp;lt;code&amp;gt;C.UTF-8&amp;lt;/code&amp;gt;. При вызове функций Win32 Cygwin осуществляет трансляцию строк в кодировку UTF-16, [[Юникод в операционных системах семейства Microsoft Windows|используемую в системах Windows]]. Начиная с версии 1.7.2 Cygwin также может извлекать некоторую информацию из реестра Windows в соответствии с установками Language и Territory в региональных настройках.&lt;br /&gt;
&lt;br /&gt;
Другая проблема заключалась в том, что консоль Cygwin (подобно [[CMD.EXE]]) использовала кодировку OEM. Для обхода этого ограничения рекомендовалось запускать в Cygwin демоны [[rsh]]d или [[ssh]]d и использовать [[эмулятор терминала]] с полной поддержкой UTF-8, например [[PuTTY]] или MinTTY (входит в комплект Cygwin). Начиная с версии 2.0 в качестве консоли Cygwin штатно использует MinTTY, который работает в кодировке UTF-8, что позволяет выводить текстовую информацию в UTF-8 напрямую. Также терминал осуществляет трансляцию вводимой с клавиатуры информации в UTF-8, в соответствии с используемой национальной раскладкой.&lt;br /&gt;
&lt;br /&gt;
== Работа с кириллицей ==&lt;br /&gt;
В современных версиях Cygwin работа с русскими символами не требует дополнительных настроек. Символы кириллицы поддерживаются в нейтральных [[Региональные настройки (программирование)|региональных настройках]] &amp;lt;code&amp;gt;LANG=C.UTF-8&amp;lt;/code&amp;gt;, в том числе имена файлов, имена пользователей и данные реестра. Можно установить русскоязычные региональные настройки &amp;lt;code&amp;gt;LANG=ru_RU.UTF-8&amp;lt;/code&amp;gt;. При этом включатся русскоязычные сообщения (у некоторых программ), даты по-русски (LC_TIME) и другие региональные настройки.&lt;br /&gt;
&lt;br /&gt;
== Примечания ==&lt;br /&gt;
{{примечания}}&lt;br /&gt;
&lt;br /&gt;
== См. также ==&lt;br /&gt;
* [[Cygwin/X]]&lt;br /&gt;
* [[DJGPP]]&lt;br /&gt;
* [[MinGW]]&lt;br /&gt;
* [[GnuWin32]]&lt;br /&gt;
* [[Colinux|Cooperative Linux]]&lt;br /&gt;
* [[cwRsync]]&lt;br /&gt;
* [[Сервисы Microsoft Windows для UNIX]]&lt;br /&gt;
&lt;br /&gt;
== Ссылки ==&lt;br /&gt;
* [http://cygwin.com Cygwin Home]&lt;br /&gt;
* [http://cygwin.com/packages/ Cygwin Package Listings]&lt;br /&gt;
* [http://freshmeat.net/projects/cygwin/?topic_id=45%2C74 Cygwin page] на [[Freecode]]&lt;br /&gt;
* [http://cygnome.sourceforge.net/ CYGNOME] = cygwin + [[GNOME]]&lt;br /&gt;
* [http://kde-cygwin.sourceforge.net/ KDE-cygwin] = cygwin + [[KDE]]&lt;br /&gt;
* [https://web.archive.org/web/20060209022842/http://unxutils.sourceforge.net/ GNU utilities for Win32] — похожий проект по переносу утилит UNIX в Windows, но без эмуляции POSIX [[API]].&lt;br /&gt;
* [http://lifehacker.com/179514/geek-to-live--introduction-to-cygwin-part-i Geek to Live: Introduction to Cygwin, part I], [http://lifehacker.com/180690/geek-to-live--introduction-to-cygwin-part-ii-+-more-useful-commands part II], [http://lifehacker.com/181282/geek-to-live--introduction-to-cygwin-part-iii-+-scripts-packages-and-more part III] — Просто и доступно, объяснение установки, начала работы с Unix-like командной строкой&lt;br /&gt;
&lt;br /&gt;
[[Категория:Эмуляторы Unix]]&lt;br /&gt;
[[Категория:Свободное программное обеспечение только под Windows]]&lt;br /&gt;
[[Категория:Свободное программное обеспечение, написанное на Си]]&lt;br /&gt;
[[Категория:Свободное программное обеспечение, написанное на C++]]&lt;br /&gt;
[[Категория:Программное обеспечение с лицензией GNU GPL]]&lt;/div&gt;</summary>
		<author><name>176.59.23.111</name></author>
	</entry>
</feed>