Po ponad roku prac rozwojowych firma Red Hat opublikowała stabilne wydanie pakietu Cygwin 3.2.0, obejmującego bibliotekę DLL do emulacji podstawowego API Linux w systemie Windows, co pozwala kompilować programy stworzone dla Linuxa przy minimalnych zmianach. Pakiet zawiera również standardowe narzędzia Unix, aplikacje serwerowe, kompilatory, biblioteki oraz pliki nagłówkowe, zbudowane bezpośrednio do uruchamiania w Windows.
Główne zmiany:
- Przebudowano obsługę pseudokonsoli, która jest teraz aktywowana tylko podczas uruchamiania aplikacji nienależących do środowiska Cygwin.
- Dodano nowe API C11 do pracy z wątkami: call_once, cnd_broadcast, cnd_destroy, cnd_init, cnd_signal, cnd_timedwait, cnd_wait, mtx_destroy, mtx_init, mtx_lock, mtx_timedlock, mtx_trylock, mtx_unlock, thrd_create, thrd_current, thrd_detach, thrd_equal, thrd_exit, thrd_join, thrd_sleep, thrd_yield, tss_create, tss_delete, tss_get, tss_set.
- Do implementacji konsoli dodano nowy wątek do obsługi kombinacji klawiszy, takich jak Ctrl-Z (VSUSP), Ctrl-\ (VQUIT), Ctrl-S (VSTOP), Ctrl-Q (VSTART), a także sygnału SIGWINCH. Wcześniej te kombinacje i sygnał SIGWINCH były obsługiwane tylko podczas wywołania funkcji read() lub select().
- Do funkcji fchmodat() dodano ograniczoną obsługę flagi AT_SYMLINK_NOFOLLOW.
- Zapewniono rozpoznawanie gniazd AF_UNIX udostępnianych przez platformę Windows.
- Limit liczby procesów potomnych zwiększono z 256 do 5000 w systemach 64-bitowych oraz do 1200 w 32-bitowych.
Źródło: opennet.ru
