Firma Red Hat opublikowała stabilną wersję pakietu Cygwin 3.4.0, który zawiera bibliotekę DLL do emulacji podstawowego API Linuksa w systemie Windows, umożliwiającą kompilację programów stworzonych dla Linuksa przy minimalnych zmianach. Pakiet zawiera również standardowe narzędzia Unix, aplikacje serwerowe, kompilatory, biblioteki i pliki nagłówkowe skompilowane do uruchomienia w systemie Windows.
Wydanie to wyróżnia się zakończeniem wsparcia dla 32-bitowych instalacji oraz warstwy WoW64, używanej do uruchamiania 32-bitowych programów w 64-bitowym systemie Windows. Ponadto zakończono wsparcie dla systemów operacyjnych Windows Vista i Windows Server 2008. W następnej wersji (3.5) planowane jest zakończenie wsparcia dla Windows 7, Windows 8, Windows Server 2008 R2 i Windows Server 2012. W Cygwin 3.5.0 będą wspierane tylko Windows 8.1, Windows 10, Windows 11, Windows Server 2012 R2, Windows Server 2016, Windows Server 2019 i Windows Server 2022.
Inne zmiany:
- Udostępniono możliwość wykonania z losowaniem przestrzeni adresowej (ASLR), która jest domyślnie włączona w DLL Cygwin.
- Usunięto specjalizowany handler plików z rozszerzeniem „.com”.
- Dodano kod do obsługi wywołania setrlimit(RLIMIT_AS).
- Dodano kod do obsługi masek sygnałów w /proc//status.
- Dodano obsługę opcji gniazd UDP_SEGMENT i UDP_GRO.
- Domyślnie ustawiono opcję „CYGWIN=pipe_byte”, dzięki której nienaformowane kanały działają w trybie bajtowym, a nie w trybie przesyłania wiadomości.
- W funkcjach wejścia zdefiniowanych w pliku nagłówkowym stdio.h wyłączono próby odczytu po osiągnięciu końca pliku (EOF), aby zbliżyć zachowanie do Linuksa.
- Podanie pustej ścieżki w zmiennej środowiskowej PATH jest teraz traktowane jako wskazanie na bieżący katalog, co odpowiada zachowaniu w Linuksie.
- Domyślne wartości FD_SETSIZE i NOFILE zostały zastąpione przez 1024 i 3200.
Źródło: opennet.ru
