Душа Linux: Coreutils
Автор: YouTux Channel
Загружено: 2025-11-01
Просмотров: 5226
00:00 Вступление
10:49 Rust: миф и реальность – что на самом деле означает переписать Coreutils
10:54 1. Реальной проблемы нет
12:04 2. Совместимость с POSIX — это святое
12:44 3. Стоимость поддержки увеличивается, а не уменьшается
13:29 4. Rust добавляет абстракцию там, где нужна прозрачность
14:24 5. Производительность не главное
15:09 Заключение
Давайте углубимся в историю Coreutils и завершим несколькими честными размышлениями.
Ссылки и источники
Проект GNU и Coreutils
*«Манифест GNU» (1985)*
Автор: Ричард Столлман
Ссылка: https://www.gnu.org/gnu/manifesto.html
Изначальная причина создания GNU
*Документация по GNU Coreutils*
Разработчики: Джим Мейеринг, Патрик Брэди, Пол Эггерт
Ссылка: https://www.gnu.org/software/coreutils/
Официальная документация и история проекта
*«Gnulib: Библиотека переносимости GNU» (2007)*
Автор: Бруно Хайбле
Подробности о переносимости POSIX
Стандарт POSIX
*IEEE Std 1003.1-2017 (POSIX.1-2017)*
Ссылка: https://pubs.opengroup.org/onlinepubs...
Стандарт, регулирующий поведение coreutils
*"Единая спецификация UNIX"*
The Open Group
Кроссплатформенная совместимость
Безопасность и CVE
*Национальная база данных уязвимостей (NVD)*
Ссылка: https://nvd.nist.gov/
Поиск: "GNU coreutils CVE"
Конкретные примеры:
CVE-2016-2781 (chroot)
CVE-2017-18018 (sort)
CVE-2019-1010024 (basename)
Демонстрирует, что ошибки существуют, но встречаются редко и быстро исправляются
Безопасность памяти и Rust
*"Rust: язык для безопасного системного программирования" (2015)*
Авторы: Аарон Турон, Николас Д. Мацакис
Оригинал Причины использования Rust
*«Безопасно ли использование Rust разработчиками программного обеспечения?» (2020)*
Авторы: Ана Нора Эванс и др.
Опубликовано в: ICSE 2020
Эмпирический анализ использования Rust
*«Бесстрашный параллелизм: безопасность памяти без сборки мусора» (2015)*
Авторы: Аарон Турон и др.
Rust разработан для многопоточности, а не для простых программ.
Временная надёжность и поддерживаемость
*«Технический долг: от метафоры к теории и практике» (2012)*
Авторы: Кэролин Симан, Юэпу Го
Стоимость поддержки с течением времени
*«Долгосрочное обслуживание программных систем» (2016)*
Автор: Диомидис Спинеллис
Временная надёжность устаревших систем
*«Старение программного обеспечения» (1995)*
Автор: Дэвид Лорге Парнас
Опубликовано в: ICSE 1995
Почему одно ПО хорошо стареет, а другое — нет
Тестирование производительности и производительность
*«Анализ производительности утилит Linux» (различные)*
Репозиторий бенчмарков uutils
Ссылка: https://github.com/uutils/coreutils/t...
Прямые сравнения GNU против uutils
*«Понимание узких мест производительности ввода-вывода» (2019)*
Авторы: Разные (документация ядра Linux)
Демонстрирует, что узким местом является ввод-вывод, а не язык.
Совместимость с POSIX
*«Тестирование на соответствие POSIX» (2018)*
The Open Group
Требования к соответствию POSIX
*Отслеживание соответствия POSIX с помощью uutils*
Ссылка: https://github.com/uutils/coreutils/i...
Документирует существующие различия
---
*GNU и Coreutils:*
https://www.gnu.org/gnu/manifesto.html
https://www.gnu.org/software/coreutils/
*Стандарт POSIX:*
https://pubs.opengroup.org/onlinepubs...
*Безопасность База данных:*
https://nvd.nist.gov/
*Проект Rust:*
https://github.com/uutils/coreutils
*Репозиторий бенчмарков:*
https://github.com/uutils/coreutils/t...
*Отслеживание соответствия POSIX:*
https://github.com/uutils/coreutils/i...
Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: