The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск Cygwin 3.5.0, GNU-окружения для Windows

01.02.2024 16:33

Компания Red Hat опубликовала стабильный релиз пакета Cygwin 3.5.0, включающего DLL-библиотеку для эмуляции базового Linux API в Windows, позволяющую с минимальными изменениями собирать созданные для Linux программы. В пакет также входят непосредственно собранные для выполнения в Windows стандартные Unix-утилиты, серверные приложения, компиляторы, библиотеки и заголовочные файлы.

Выпуск примечателен прекращением поддержки Windows 7, Windows 8, Windows Server 2008 R2 и Windows Server 2012. Таким образом, в Cygwin 3.5.0 поддерживается только Windows 8.1, Windows 10, Windows 11, Windows Server 2012 R2, Windows Server 2016, Windows Server 2019 и Windows Server 2022.

Другие изменения:

  • Разрешён доступ к устройствам консолей (/dev/consN) из процессов, присоединённых к другим консолям или pty-терминалам. Изменение позволило обеспечить возможность запуска в консоли утилит GNU screen и tmux.
  • Добавлена утилита newgrp для изменения идентификатора группы в текущем сеансе.
  • В утилиту cygcheck добавлена поддержка поиска пакетов в дистрибутиве cygwin и получения информации о доступных и установленных пакетах.
  • В функции fnmatch и glob добавлена возможность указания классов символов при определении масок (например, "[:alnum:]', "[=a=]", "[.aa.]").
  • Добавлен каталог /dev/disk с подкаталогами "by-*", являющимися символическими ссылками на устройства дисков и дисковых разделов:
  • by-drive/DRIVE_LETTER -> ../../sdXN
  • by-label/VOLUME_LABEL -> ../../sdXN
  • by-id/BUSTYPE-[VENDOR_]PRODUCT_[SERIAL|0xHASH][-partN] -> ../../sdX[N]
  • by-partuuid/MBR_SERIAL-OFFSET -> ../../sdXN
  • by-partuuid/GPT_GUID -> ../../sdXN
  • by-uuid/VOLUME_SERIAL -> ../../sdXN
  • by-voluuid/MBR_SERIAL-OFFSET -> ../../sdXN
  • by-voluuid/VOLUME_GUID -> ../../sdXN
  • Добавлены файлы /proc/codesets и /proc/locales с информацией о поддерживаемых кодировках и локалях.
  • В функцию lseek добавлена поддержка флагов SEEK_DATA и SEEK_HOLE.
  • Реализованы новые функции close_range, fallocate, c8rtomb, c16rtomb, c32rtomb, mbrtoc8, mbrtoc16, mbrtoc32, posix_spawn_file_actions_addchdir_np и posix_spawn_file_actions_addfchdir_np.
  • Добавлено устройство /dev/mixer с реализацией звукового микшера.
  • В разделах NFS обеспечена поддержка FIFO-каналов.
  • Для SSD-накопителей включена автоматическая оптимизация разряжённых файлов, не зависящая от режима монтирования "sparse".
  • Значение RLIMIT_CORE по умолчанию выставлено в 0, при котором отключается генерация core-дампов и файлов с состоянием стека.

    1. Главная ссылка к новости (https://www.mail-archive.com/c...)
    2. OpenNews: Выпуск Cygwin 3.4.0, GNU-окружения для Windows
    3. OpenNews: Уязвимость в Git для Cygwin, позволяющая организовать выполнение кода
    4. OpenNews: Новая версия Cygwin 3.0, GNU-окружения для Windows
    5. OpenNews: Microsoft опубликовал WSL 2.0.0, прослойку для запуска Linux-приложений в Windows
    Лицензия: CC BY 3.0
    Короткая ссылка: https://opennet.ru/60535-cygwin
    Ключевые слова: cygwin
    При перепечатке указание ссылки на opennet.ru обязательно


    Обсуждение (48) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 16:40, 01/02/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Разрешён доступ к устройствам консолей (/dev/consN) из процессов, присоединённых к другим консолям или pty-терминалам. Изменение позволило обеспечить возможность запуска в консоли утилит GNU screed и tmux.

    Либо я что-то не понимаю, либо... короче, я сто лет юзаю msys2 и там tmux всегда работал

     
     
  • 2.8, Аноним (8), 17:33, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Держи плюс, приятель.

    Но по теме, msys и cygwin - это вроде проекты-конкуренты, не? (я не очень в теме)

     
     
  • 3.13, Аноним (13), 17:55, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Спс :) Да я тож хз, но мне казалось, что msys2 ющает сингвинские либы
     
     
  • 4.32, Аноним (32), 01:09, 02/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >мне казалось, что msys2 ющает сингвинские либы

    Не совсем. В репозиториях есть разные пакеты, которые зависит от типа рантайма, в котором это добро и запускается. Есть и с сигвиновскими либами, и напрямую скомпиленные под Винду, и даже варианты, собранные через компиляторы от самих мелкомягких (насколько я помню).

     
  • 4.42, Александр (??), 00:49, 03/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Когда-то давно msys отделились от cygwin из-за разных целей. Cygwin в максимальную совместимость, msys в меньшую монструозность. Я думаю с тех времён что-нибудь и осталось.
     
  • 3.52, Аноним (52), 16:02, 05/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    cygwin опирается на эмуляцию POSIX API под виндой. В нём работает mc, есть каталог /dev, alsa и X11. Что-то похожее на WSL1, только целиком в userspace.

    msys - это порт линуксовых программ в win32. Для coreutils, make, gcc много не надо. Вызов fork использовать нельзя, а вот open/read/write/close имеются в msvcrt.dll (со своими заморочками). Много чего и в msys "доэмулируется", но масштабы не такие как в cygwin (cygwin претендует на полноценная совместимость с POSIX и Linux).

    P.S. Чтобы понятнее - msys увидит файл C:\mydir\readme.txt (может и C:/mydir/readme.txt, но так и сама винда много где может), а cygwin увидит что-то типа /mnt/disk_c/mydir/readme.txt.

     

  • 1.2, banonymous (?), 16:47, 01/02/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Нет поддержки Windows XP? В топку!
     
     
  • 2.3, Аноним (3), 16:58, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я тоже считаю, что это полное безобразие.

    Кому он нужен такой?


    XP x64 прекрасно поддерживает сколько угодно памяти, а также полностью поддерживает unicode.

    А свои "инновации" ... придержите до лучших времён.

     
     
  • 3.5, Аноним (5), 17:18, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Объективно любой код тех времён максимально проблемный. Да-да, в то время как как раз и начали прозревать.
     
     
  • 4.7, Аноним (8), 17:31, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Мозг просит подробностей.
     
  • 4.9, Аноним (9), 17:37, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ты действительно считаешь, что в коде Win 12 меньше проблем чем в семерке?
     
     
  • 5.11, Аноним (5), 17:50, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Ты действительно считаешь, что в коде Win 12 меньше проблем чем в
    > семерке?

    Всё так. Я действительно считаю, что 12 менее уязвима для малвари и содержит меньше деструктивных багов, таких как рассыпание MFT. А так же 12 более производительна, работает с современным железом, и, не самое последнее, нормально подерживает юникод. Конечно же, современные технологии тоже. Ещё не деградирует так сильно при обновлениях, но это уже не актуально.

     
  • 3.39, Аноним (39), 16:58, 02/02/2024 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.29, _kp (ok), 22:27, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Даже простая работа, на уровне консольного приложения, в ХП, 7ке, и 10ке прилично отличается.
    И даже если без Цигвина желать приложение, то тут или не использовать весьма полезные новшества, или  писать херовое ПО под ОС начала века.
    Так, пока мы далеко в API не лезли, и речь была и простом консольном приложении.

    Очевидное решение ограничиться поддержкой Windows10+.
    (Про Win8.1 понятия не имею)

     

  • 1.10, Аноним (10), 17:38, 01/02/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я всё ещё не понимаю зачем нужен сабж? Почему не собрать нативно?
     
     
  • 2.12, penetrator (?), 17:52, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    я может что-то не понял, но разве нативный код не зависит от хидеров, который есть только в линухе? кто будет это транслировать в Win32 API?
     
     
  • 3.15, Аноним (5), 17:59, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > я может что-то не понял, но разве нативный код не зависит от
    > хидеров, который есть только в линухе? кто будет это транслировать в
    > Win32 API?

    mingw-w64 как раз и является прослойкой хидеров, сабж дополнительная либа-прослойка неэмулятора линукс и репозитории собранных файлов. Дело не в хидерах, а в недоступных апи в либц венды.

     
     
  • 4.33, penetrator (?), 06:01, 02/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    так хидеры фактически описывают таблицу экспорта, те же шары вид сбоку
     
     
  • 5.35, n00by (ok), 08:26, 02/02/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так в Windiws системные dll не экспортируют например mremap(). Вот Cygwin и эмулирует её через memcpy() (или уже передалали на резерв+коммит?)
     
     
  • 6.44, penetrator (?), 07:08, 04/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Так в Windiws системные dll не экспортируют например mremap(). Вот Cygwin и
    > эмулирует её через memcpy() (или уже передалали на резерв+коммит?)

    системные либы в винде вообще не экспотируют что-то типа mremap там везде паскалевская нотация и два варианта функций с уникодом и без (W / A), а еще STDCALL, там свое апи

    и ты вообще не туда полез, я говорю что заголовочные файлы для сишки "фактически" описывают таблицу экспорта конкретных либ, и сами по себе не имеют смысла

     
     
  • 7.47, n00by (ok), 10:58, 04/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    >> Так в Windiws системные dll не экспортируют например mremap(). Вот Cygwin и
    >> эмулирует её через memcpy() (или уже передалали на резерв+коммит?)
    > системные либы в винде вообще не экспотируют что-то типа mremap там везде
    > паскалевская нотация и два варианта функций с уникодом и без (W
    > / A), а еще STDCALL, там свое апи

    Не надо путать конвенцию вызова (Pascall там нет, в 32-х разрядной Windows была stdcall и в редких случаях fastcall) и предоставляемые системные сервисы (API).

    Ближайшим аналогом mmap() является NtMapViewOfSection() или обёртка над ней VirtualAllocEx() из Win32 API. То есть mmap() можно реализовать в заголовочном файле как inline функцию или макрос, транслятор выдаст рабочий exe-шник, при инициализации процесса он слинкуется с чем надо. C mremap() так просто не получится (работать будет, но не так быстро как в Linux).

    > и ты вообще не туда полез, я говорю что заголовочные файлы для
    > сишки "фактически" описывают таблицу экспорта конкретных либ, и сами по себе
    > не имеют смысла

    Не знаю, кто куда полез, но вот первое попавшееся "описание таблицы экспорта"

    #define malloc(foo) HeapAlloc(GetProcessHeap(), HEAP_NO_SERIALIZE, foo)

     
     
  • 8.50, penetrator (?), 19:33, 04/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    а в 64 битной по-другому ясно понятно define WINAPI __stdcall это... текст свёрнут, показать
     
     
  • 9.53, n00by (ok), 16:42, 05/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Да как бы не до смеху Набрать в поисковике windows 64 calling convention и пр... текст свёрнут, показать
     
     
  • 10.54, penetrator (?), 22:32, 05/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    из виндового SDK, там всегда был __stdcall в сырцах и для 32-битных функций и 64... текст свёрнут, показать
     
     
  • 11.55, n00by (ok), 07:53, 06/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не понимаю Будь добр и объясни, зачем ты мне это пишешь Напомню, что ты начал ... текст свёрнут, показать
     
  • 5.43, Александр (??), 00:51, 03/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Не совсем. Windows не совместим с POSIX. Cygwin и msis - это по сути POSIX подсистема и окружение.
     
     
  • 6.45, penetrator (?), 07:11, 04/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Не совсем. Windows не совместим с POSIX. Cygwin и msis - это
    > по сути POSIX подсистема и окружение.

    строго говоря до Windows 8 там была Microsoft POSIX subsystem, потом воткнули WSL

    но это вообще никак не связано с тем что я написал изначально

     
  • 2.14, Аноним (5), 17:56, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Я всё ещё не понимаю зачем нужен сабж? Почему не собрать нативно?

    Это неэмулятор линукса. Если какой-то софт поддерживает сборку без линукса, то, как правило, он оказывается менее функциональным в таком виде. И с кучей особенностей. В msys2 к примеру, всгда было разделение, что-то можно собрать "нативно", что-то только с прослойкой. А какой-то софт вообще можно собирать не гцц, а майкрософтовскими компиляторами.

     
     
  • 3.49, Аноним (49), 14:01, 04/02/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Начни читать отсюда https ru wikipedia org wiki POSIX Windows - это не UNIX-п... большой текст свёрнут, показать
     
     
  • 4.51, EULA (?), 07:17, 05/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Никто не мешает через Cygwin сменить права POSIX на файлы в NTFS или процессы, и в итоге System не будет иметь возможности что-то сделать с файлом или процессом.
     

  • 1.16, Mr.Who (?), 18:01, 01/02/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –4 +/
     
  • 1.17, Аноним (17), 18:07, 01/02/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Выпуск примечателен прекращением поддержки Windows 7

    И эти туда же. Ну и чем мешало? Опять красношапка со своим запланированным устареавнием. Ничему, что они касаются, доверять нельзя.

     
     
  • 2.18, Аноним (18), 18:22, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    В чем проблема обновить древнюю ОС? И что мешает поставить Linux в dual boot, и дальше пользоваться своим nero burning rom, и решать современные задачи?
     
     
  • 3.24, anonymous (??), 20:19, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    В том, что виндовс 7 используется как ось для виртуалки, чтобы с минимальными затратами оперативки запускать виндовс-онли программы. Раньше использовалась XP, которая жрала в три раза меньше памяти, но её софт перестал поддерживать.

    Новая ось в виртуалке нафиг не нужна.

     
     
  • 4.37, фф (?), 09:57, 02/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    а зачем вам в виртуалке цигвин? Нельзя обрабатывать ввод/вывод вин-онли программы на хосте?
     
  • 2.25, Аноним (25), 20:58, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    Windows 7 официально EoL с 14 января 2020, о чём MS заявила ещё в момент выпуска семёрки. Зачем проекту поддерживать то, что 4 года не поддерживается производителем? И как именно в этом виноват Ред Хат? Не говоря уже о том, что старые версии у тебя никто не отбирает и они дальше будут работать как работали.
     
     
  • 3.30, _kp (ok), 22:30, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если бы и "поддерживалось", то толку с того, у 7ки API прилично другое.
    И тут или забить на старое, или игнорировать новое. Выбор очевиден.
     
  • 3.46, penetrator (?), 07:13, 04/02/2024 [^] [^^] [^^^] [ответить]  
  • +/
    > Windows 7 официально EoL с 14 января 2020, о чём MS заявила
    > ещё в момент выпуска семёрки. Зачем проекту поддерживать то, что 4
    > года не поддерживается производителем? И как именно в этом виноват Ред
    > Хат? Не говоря уже о том, что старые версии у тебя
    > никто не отбирает и они дальше будут работать как работали.

    поддерживалась до 1 января 2023 года клиент, и 2024 года сервер 2008 R2, но все за денежку

     
  • 2.40, Аноним (39), 16:59, 02/02/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я вот чего не понимаю. Если вы сидите на системе пятнадцатилетней давности, чем вас не устраивает Cygwin пятнадцатилетней давности?
     

  • 1.19, AKTEON (?), 19:14, 01/02/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Зачем оно, если есть WSL, а там где его нет, теперь нет и Cygwin ??
     
     
  • 2.21, Аноним (21), 19:46, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >там где его нет, теперь нет и Cygwin

    Не дождетесь, все там есть. WSL нужен детям на ворованной винде.

     
     
  • 3.23, Аноним (23), 20:08, 01/02/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
      Чтобы что?
     
  • 3.31, Аноним (32), 01:04, 02/02/2024 [^] [^^] [^^^] [ответить]  
  • +3 +/
    >WSL нужен детям на ворованной винде.

    WSL спокойно работает из коробки даже в Windows Home Single Language. Ибо начиная ещё с Win10 18xx Hyper-V разделили на 2 части - "платформу виртуализации Windows" (виндовый аналог KVM/Xen), и непосредственно саму Hyper-V (теперь уже как аналог Virt-Manager для этой самой "платформы виртуализации"). И вот первое спокойно работает и на Windows Home, вместе с WSL, Docker Desktop, и прочими плюшками, из коробки, и на 100% легально.

     
     
  • 4.34, Аноним (34), 08:18, 02/02/2024 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Порой запускать виртуалку ради запуска небольших приложений не очень хорошая идея
     
     
  • 5.41, Аноним (39), 17:00, 02/02/2024 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Эта «виртуалка» пошустрее сабжа работает.
     

  • 1.20, Аноним (20), 19:25, 01/02/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Да установите уже Linux !
     

  • 1.27, turbodog (-), 21:26, 01/02/2024 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     
  • 1.38, Scalpi (?), 12:48, 02/02/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Так это  Red Hat разрабы, я то всё думал почему оно на моей машине не заводится. Теперь всё встало на свои места.
     
  • 1.48, Аноним (48), 11:06, 04/02/2024 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В винде давно есть WSL, Cygwin был нужен скорее на 7-ке.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру