LINUX.ORG.RU

Ядро Linux 5.14

 ,

Ядро Linux 5.14

0

1

После двух месяцев разработки Линус Торвальдс представил выпуск ядра Linux 5.14. Среди наиболее заметных изменений: новые системные вызовы quotactl_fd() и memfd_secret(), удаление драйверов ide и raw, новый контроллер приоритетов ввода/вывода для cgroup, режим планирования задач SCHED_CORE, инфраструктура для создания загрузчиков верифицированных BPF-программ.

В новую версию принято 15883 исправлений от 2002 разработчиков, размер патча - 69 МБ (изменения затронули 12580 файлов, добавлено 861501 строк кода, удалено 321654 строк). Около 47% всех представленных в 5.14 изменений связаны с драйверами устройств, примерно 14% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 13% связано с сетевым стеком, 3% - с файловыми системами и 3% c внутренними подсистемами ядра.

Основные новшества:

  • дисковая подсистема, ввод/вывод и файловые системы:
    • для cgroup реализован новый контроллер приоритезации ввода/вывода - rq-qos, который может управлять приоритетом обработки запросов к блочным устройствам, генерируемых участниками каждой cgroup. Поддержка нового контроллера приоритета добавлена в планировщик ввода/вывода mq-deadline;
    • в файловой системе ext4 реализована новая ioctl-команда EXT4_IOC_CHECKPOINT, принудительно сбрасывающая на диск все ожидающие транзакции из журнала и связанные с ними буферы, а также перезаписывающая используемую журналом область в хранилище. Изменение подготовлено в рамках инициативы по предотвращению утечек информации из файловых систем;
    • в Btrfs внесены оптимизации производительности: за счёт исключения лишнего журналирования расширенных атрибутов в процессе выполнения fsync производительность интенсивных операций с расширенными атрибутами увеличилась до 17%. Кроме того, при выполнении операций усечения, не затрагивающих экстенты, отключено выполнение полной синхронизации, что сократило время выполнения операции на 12%. В sysfs добавлена настройка для ограничения пропускной способности ввода/вывода при проверке ФС. Добавлены ioctl-вызовы для отмены операций изменения размера и удаления устройства;
    • в XFS переработана реализация буферного кэша, который переведён на выделение страниц памяти в пакетном режиме. Повышена эффективность работы кэша;
    • в F2FS добавлена опция для работы в режиме только для чтения и реализован режим кэширования сжатых блоков (compress_cache) для повышения производительности случайного чтения. Реализована поддержка сжатия файлов, отражённых в память при помощи операции mmap(). Для выборочного отключения сжатия файлов по маске предложена новая опция монтирования nocompress;
    • в драйвере exFAT проведена работа по улучшению совместимости с хранилищами некоторых цифровых камер;
    • добавлен системный вызов quotactl_fd(), который позволяет управлять квотами не через файл специального устройства, а через указание файлового дескриптора, связанного с файловой системой для которой применяется квота;
    • из ядра удалены старые драйверы для блочных устройств с интерфейсом IDE, на смену которым уже давно пришла подсистема libata. Поддержка старых устройств сохранена в полном объёме, изменения касаются только возможности использования старых драйверов, при использовании которых накопители именовались /dev/hd*, а не /dev/sd*;
    • из ядра удалён драйвер «raw», предоставляющий небуферизированный доступ к блочными устройствам через интерфейс /dev/raw. Указанная функциональность давно реализуется в приложениях при помощи флага O_DIRECT;
  • память и системные службы:
    • в планировщике задач реализован новый режим планирования SCHED_CORE, позволяющий управлять тем, какие процессы могут совместно выполнятся на одном ядре CPU. Каждому процессу может быть назначен cookie-индентификатор, определяющий область доверия между процессами (например, принадлежность одному пользователю или контейнеру). При организации выполнения кода планировщик может обеспечить совместное использование одного ядра CPU только для процессов, связанных с одним владельцем, что может использоваться для блокирования некоторых атак класса Spectre за счёт предотвращения выполнения в одном потоке SMT (Hyper Threading) заслуживающих и не заслуживающих доверия задач;
    • для механизма cgroup реализована поддержка операции kill, позволяющей разом завершить все привязанные к группе процессы (отправить SIGKILL), через запись «1» в виртуальный файл cgroup.kill;
    • расширены возможности, связанные с реагированием на выявление расщеплённых блокировок («split lock»), возникающих при доступе к невыровненным данным в памяти из-за того, что при выполнении атомарной инструкции данные пересекают две линии кеша CPU. Подобные блокировки приводят к значительному падению производительности, поэтому ранее яром предоставлялась возможность принудительного завершения приложения, вызвавшего блокировку. В новом выпуске добавлен параметр командной строки ядра «split_lock_detect=ratelimit:N», позволяющий определить общесистемный лимит интенсивности операций блокировки в секунду, после превышения которого любой процесс, ставший источником расщеплённой блокировки, вместо завершения будет принудительно остановлен на 20 мс;
    • в cgroup-контроллере пропускной способности CFS (CFS bandwidth controller), определяющим как много процессорного времени можно выделить каждой cgroup, реализована возможность определения лимитов, ограниченных заданным временем действия, что позволяет лучше регулировать нагрузки, чувствительные к задержкам. Например, установка значения cpu.cfs_quota_us в 50000 и cpu.cfs_period_us в 100000 даст возможность группе процессов каждые 100ms тратить 50ms времени CPU;
    • добавлена начальная инфраструктура для создания загрузчиков BPF-программ, которая в дальнейшем позволит разрешить загрузку только BPF-программ, подписанных заслуживающим доверия цифровым ключом;
    • добавлена новая futex-операция FUTEX_LOCK_PI2, использующая монотонный таймер для расчёта таймаута, который учитывает время проведённое системой в спящем режиме;
    • для архитектуры RISC-V реализована поддержка больших страниц памяти (Transparent Huge-Pages) и возможность применения механизма KFENCE для выявления ошибок при работе с памятью;
    • в системный вызов madvise(), предоставляющий средства для оптимизации управления памятью процесса, добавлены флаги MADV_POPULATE_READ и MADV_POPULATE_WRITE для генерации «page fault» во всех страницах памяти, отражённых для операций чтения или записи, без выполнения фактического чтения или записи (prefault). Применение флагов может быть полезным для снижения задержек в процессе работы программы, благодаря упреждающему выполнению обработчика «page fault» разом для всех невыделенных страниц, не дожидаясь фактического обращения к ним;
    • в системе unit-тестирования kunit добавлена поддержка запуска тестов в окружении QEMU;
    • добавлены новые трассировщики: «osnoise» для отслеживания задержек в приложениях, вызванных обработкой прерываний, и «timerlat» для вывода детальной информации о задержках при пробуждениях по сигналу таймера;
  • виртуализация и безопасность:
    • добавлен системный вызов memfd_secret(), позволяющий создать приватную область памяти в изолированном пространстве адресов, видимую только процессу-владельцу, неотражаемую в другие процессы и напрямую недоступную ядру;
    • в системе фильтрации системных вызовов seccomp при выносе обработчиков блокировки в пространство пользователя предоставлена возможность использования одной атомарной операции для создания файлового дескриптора для изолируемой задачи и его возвращения при обработке системного вызова. Предложенная операция решает проблему с прерыванием обработчика в пространстве пользователя при поступлении сигнала;
    • добавлен новый механизм для управления ограничением ресурсов в пространстве имён идентификаторов пользователей, который привязывает отдельные счётчики rlimit к пользователю в «user namespace». Изменение решает проблему с применением общих счётчиков ресурсов при запуске одним пользователем процессов в разных контейнерах;
    • в гипервизор KVM для систем ARM64 добавлена возможность использования в гостевых системах расширения MTE (MemTag, Memory Tagging Extension), позволяющего привязать теги к каждой операции выделения памяти и организовать проверку корректности использования указателей для блокирования эксплуатации уязвимостей, вызванных обращением к уже освобождённым блокам памяти, переполнениями буфера, обращениями до инициализации и использованием вне текущего контекста;
    • предоставляемые платформой ARM64 средства для аутентификации указателей (Pointer Authentication) теперь могут быть отдельно настроены для ядра и пространства пользователя. Технология позволяет использовать специализированные инструкции ARM64 для проверки адресов возврата при помощи цифровых подписей, которые хранятся в неиспользуемых верхних битах самого указателя;
    • в User-mode Linux добавлена поддержка использования драйверов к PCI-устройствам с виртуальной шиной PCI, реализуемой драйвером PCI-over-virtio;
    • для систем x86 добавлена поддержка паравиртуализированного устройства virtio-iommu, позволяющего отправлять IOMMU-запросы, такие как ATTACH, DETACH, MAP и UNMAP, поверх транспорта virtio без эмуляции таблиц страниц памяти;
    • для CPU Intel, начиная с семейства Skylake и заканчивая Coffee Lake, по умолчанию отключено использование расширений Intel TSX (Transactional Synchronization Extensions), предоставляющих средства для повышения производительности многопоточных приложений за счёт динамического исключения лишних операций синхронизации. Расширения отключены из-за возможности совершения атак Zombieload, манипулирующих утечкой сведений по сторонним каналам, возникающей при работе механизма асинхронного прерывания операций (TAA, TSX Asynchronous Abort);
  • сетевая подсистема:
    • продолжена интеграция в ядро MPTCP (MultiPath TCP), расширения протокола TCP для организации работы TCP-соединения с доставкой пакетов одновременно по нескольким маршрутам через разные сетевые интерфейсы, привязанные к разным IP-адресам. В новом выпуске добавлен механизм для задания собственных политик хэширования трафика для IPv4 и IPv6 (multipath hash policy), дающих возможность из пространства пользователя определять, какие из полей в пакетах, в том числе инкапсулированных, будут использованы при вычислении хэша, определяющего выбор пути для пакета;
    • в виртуальный транспорт virtio добавлена поддержка сокетов SOCK_SEQPACKET (упорядоченная и надёжная передача датаграмм);
    • расширены возможности механизма сокетов SO_REUSEPORT, который позволяет сразу нескольким слушающим сокетам подключиться к одному порту для приёма соединений с распределением поступающих запросов одновременно по всем подключенным через SO_REUSEPORT сокетам, что упрощает создание многопоточных серверных приложений. В новой версии добавлены средства для передачи управления другому сокету в случае сбоя при обработки запроса изначально выбранным сокетом (решает проблему с потерей отдельных соединений при перезапуске сервисов);
  • оборудование:
    • в драйвере amdgpu реализована поддержка новых серий GPU AMD Radeon RX 6000, развиваемых под кодовыми именами «Beige Goby» (Navi 24) и «Yellow Carp», а также улучшена поддержка GPU Aldebaran (gfx90a) и APU Van Gogh. Добавлена возможность одновременной работы с несколькими панелями eDP. Для APU Renoir реализована поддержка работы с шифрованными буферами в видеопамяти (TMZ, Trusted Memory Zone). Добавлена поддержка горячего извлечения графических карт (hot-unplug). Для GPU Radeon RX 6000 (Navi 2x) и старых GPU AMD включена по умолчанию поддержка механизма энергосбережения ASPM (Active State Power Management), который ранее был активирован только для GPU Navi 1x, Vega и Polaris;
    • для чипов AMD добавлена поддержка разделяемой виртуальной памяти (SVM, shared virtual memory) на базе подсистемы HMM (Heterogeneous memory management), позволяющей использовать устройства с собственными блоками управления памятью (MMU, memory management unit), которые могут получать доступ к основной памяти. В том числе при помощи HMM можно организовать совместное адресное пространство между GPU и CPU, в котором GPU может получить доступ к основной памяти процесса;
    • добавлена начальная поддержка технологии AMD Smart Shift, динамически меняющей параметры энергопотребления CPU и GPU на ноутбуках с чипсетом и видеокартой AMD для форсирования производительности при играх, редактировании видео и 3D-рендеринге;
    • в драйвере i915 для видеокарт Intel включена поддержка чипов Intel Alderlake P;
    • добавлен драйвер drm/hyperv для виртуального графического адаптера Hyper-V;
    • добавлен графический драйвер simpledrm, использующий для вывода фреймбуфер EFI-GOP или VESA, предоставляемый UEFI-прошивкой или BIOS. Основным назначением драйвера является предоставление возможности графического вывода на начальных стадиях загрузки, до того как станет возможным использование полноценного DRM-драйвера. Драйвер также может использоваться как временное решение для оборудования, для которого пока отсутствуют родные DRM-драйверы;
    • добавлена поддержка компьютера-моноблока Raspberry Pi 400;
    • добавлен драйвер dell-wmi-privacy для поддержки поставляемых в ноутбуках Dell аппаратных выключателей камеры и микрофона;
    • для ноутбуков Lenovo добавлен WMI-интерфейс для изменения параметров BIOS через sysfs /sys/class/firmware-attributes/;
    • расширена поддержка устройств с интерфейсом USB4;
    • добавлена поддержка звуковых карт и кодеков AmLogic SM1 TOACODEC, Intel AlderLake-M, NXP i.MX8, NXP TFA1, TDF9897, Rockchip RK817, Qualcomm Quinary MI2 и Texas Instruments TAS2505. Улучшена поддержка звука на ноутбуках HP и ASUS. Добавлены патчи для снижения задержек перед началом воспроизведения звука на устройствах с интерфейсом USB.

Источник – opennet.ru.

>>> Подробности

★

Проверено: hobbit ()
Последнее исправление: xaizek (всего исправлений: 3)
Ответ на: комментарий от anonymous

Сейчас «рабочий стол» стал именно рабочим для рабочего, стал инструментом для профессионала. И у каждого рабочего свой уникальный ненормальный рабочий стол.

Сейчас почти у каждого стоит Винда, а у кого не стоит, то Макось. Linux на десктопах используют либо маргиналы и прочие свидетели Столлмана, либо от желания попробовать. Я пробовал Linux, как основную ОС, уже на двух работах и я не вижу как это может стать хоть сколько нибудь популярным.

hummer ★
()
Ответ на: комментарий от hummer

Сейчас почти у каждого стоит Винда

Стоит андроид или иос с «развитым десктопом». А маргиналы до сих пор играют игры на «недоразвитых персональных компьютерах» вместо игровых приставок.

anonymous
()
Ответ на: комментарий от hobbit

Кстати, а что будет с сообществом после смерти Торвальдса? Он конечно мужчина в рассвете сил, но не горец из клана МкКлаудов

anonymous
()
Ответ на: комментарий от anonymous

что будет … после смерти Торвальдса?

Тебе- ничего. Что было после смерти С. Джобса? Что будет после смерти Б. Гейтса?

anonymous
()
Ответ на: комментарий от anonymous

за «нормальные» «плитки» win8. Развитие десктопа!

Не все так уж и плохо в Linux.
Много хорошего tools.
Хошь 1С?

Пожалуйста ...
anonymous
()
Ответ на: комментарий от anonymous

Тебе- ничего. Что было после смерти С. Джобса? Что будет после смерти Б. Гейтса?

Вот если ЛОР пропадет, то

Все ...
anonymous
()
Ответ на: комментарий от anonymous

Что было после смерти С. Джобса?

Джобс нихрена не инженер и не разработчик, а всего лишь манагер. Заменили другим манагером и продолжили эффективно управлять, с учётом прошлых ошибок.

Что будет после смерти Б. Гейтса?

Аналогично. Гейт уже и так давно не у руля.

hummer ★
()
Последнее исправление: hummer (всего исправлений: 1)
Ответ на: комментарий от anonymous

Стоит андроид или иос с «развитым десктопом». А маргиналы до сих пор играют игры на «недоразвитых персональных компьютерах» вместо игровых приставок.

Где стоит? На рабочих местах продолжают использовать десктоп, студенты продолжают использовать десктоп. Везде, где нужно делать что-то серьёзное используют десктоп. Лопатофоны и таблеты используются лишь для развлечения. В мордокниге пописдеть, в тиндере кого-то найти на потрахаться, в других социалочках подрочить хотя бы ЧСВ или просто посплетничать, кино не вставая с постели посмотреть, в тупорылые игры поиграть, ну и всё в таком духе. Работать на этих устройствах нельзя от слова совсем. Единственные более-менее полезные применения мобильным устройства - GPS, фотоапарат, а теперь ещё и оплата покупок.

hummer ★
()
Ответ на: комментарий от anonymous

Речь о Linux

Я думал про оффтоп 8 с нормальными плитками. Какая нормальная ОС на лоре?

anonymous
()
Ответ на: комментарий от hummer

На рабочих местах продолжают использовать десктоп

На каких? И какой десктоп: нормальный или ненормальный?

anonymous
()
Ответ на: комментарий от anonymous

Гейтс на стадии ухода был лицом корпораци с вертикальной структурой управления. Управлял таки совет директоров. Сейчас на Линусе завязано куча глобальных вопросов, решения принимаемые им авторитарные, во многом этот стиль решения и является объединяющим фактором сообщества. Если ЛТ уходит, Линукс ждём судьба надкусанного яблока, как после ухода Джобса - медленная стагнация?

anonymous
()
Ответ на: комментарий от hummer

На рабочих местах продолжают использовать десктоп, студенты продолжают использовать десктоп.

Уточнение.

На рабочих местах играют на десктопе, студенты тоже играют на десктопе, …

anonymous
()
Ответ на: комментарий от anonymous

На рабочих местах играют на десктопе, студенты тоже играют на десктопе, …

И это аргумент за/против чего?

hummer ★
()
Ответ на: комментарий от hummer

И это аргумент за/против чего?

Это не аргумент, это о том для чего большинство используют десктоп .
Потому Proton и уважают …

anonymous
()
Ответ на: комментарий от anonymous

Линукс ждём судьба надкусанного яблока

Это хорошо или плохо?

anonymous
()
Ответ на: комментарий от anonymous

Гейтс на стадии ухода был лицом корпораци с вертикальной структурой управления. Управлял таки совет директоров. Сейчас на Линусе завязано куча глобальных вопросов, решения принимаемые им авторитарные, во многом этот стиль решения и является объединяющим фактором сообщества. Если ЛТ уходит, Линукс ждём судьба надкусанного яблока, как после ухода Джобса - медленная стагнация?

А можно примеры авторитарности его решений по отношению к основным корпорациям, субмитящим в ядро? Вот скажем корпорации Intel нужно что-то своё и они предлагают что-то изменить так, как они хотят, а Торвальдс авторитарно посылает их лесом. Неужели были такие прецеденты? А с корпорацией Oracle или с тем же Red Hat, в Федоре которого сидит тот самый финн, тоже были?

hummer ★
()
Ответ на: комментарий от anonymous

Могу тебя ещё раз послать

Покажи uname -a

Linux df7552e61883 5.10.16.3-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Поставить онтопик не разрешают корпоративные ограничения. Но даже если бы разрешили, как это помого бы вылечить твой грамматический нацизм?

hummer ★
()
Ответ на: комментарий от hummer

грамматический нацизм?

Ты дурак или прикидываешься.

Linux df7552e61883 5.10.16.3-microsoft-standard-WSL2

По первому набросу сообщению было понятно какое у тебя причинное место

anonymous
()
Ответ на: комментарий от hobbit

теперь вместо MySQL — MariaDB

А, шо?

@bq:15:33:29:/tmp/dl$ dpkg -l|grep mysql
ii  dbconfig-mysql                                              2.0.19                                    all          dbconfig-common MySQL/MariaDB support
ii  kexi-mysql-driver                                           1:3.2.0-2                                 amd64        MySQL support for kexi
rc  libapache2-mod-auth-mysql                                   4.3.9-13.1+b1                             amd64        Apache 2 module for MySQL authentication
ii  libkdb3-driver-mysql:amd64                                  3.2.0-4+b1                                amd64        MySQL driver for KDb
ii  mysql-client-5.7                                            5.7.26-1                                  amd64        MySQL database client binaries
ii  mysql-client-core-5.7                                       5.7.26-1                                  amd64        MySQL database core client binaries
ii  mysql-common                                                5.8+1.0.7                                 all          MySQL database common files, e.g. /etc/mysql/my.cnf
rc  mysql-server-5.5                                            5.5.44-0+deb8u1                           amd64        MySQL database server binaries and system database setup
ic  mysql-server-5.6                                            5.6.30-1                                  amd64        MySQL database server binaries and system database setup
ii  mysql-server-5.7                                            5.7.26-1                                  amd64        MySQL database server binaries and system database setup
ii  mysql-server-core-5.7                                       5.7.26-1                                  amd64        MySQL database server binaries
ii  php-mariadb-mysql-kbs                                       1.2.12-1                                  all          Knowledge base about MariaDB and MySQL server variables
ii  php-mysql                                                   2:7.4+76                                  all          MySQL module for PHP [default]
rc  php5-mysql                                                  5.6.22+dfsg-2                             amd64        MySQL module for php5
ii  php5.6-mysql                                                5.6.40-8+ubuntu18.10.1+deb.sury.org+1     amd64        MySQL module for PHP
rc  php7.0-mysql                                                7.0.28-1                                  amd64        MySQL module for PHP
rc  php7.3-mysql                                                7.3.15-3                                  amd64        MySQL module for PHP
ii  php7.4-mysql                                                7.4.21-1+deb11u1                          amd64        MySQL module for PHP
@bq:15:34:37:/tmp/dl$ dpkg -l|grep maria
ii  libmariadb3:amd64                                           1:10.5.12-1                               amd64        MariaDB database client library
ii  libmariadb3:i386                                            1:10.5.12-1                               i386         MariaDB database client library
ii  mariadb-common                                              1:10.5.12-1                               all          MariaDB common configuration files
ii  php-mariadb-mysql-kbs                                       1.2.12-1                                  all          Knowledge base about MariaDB and MySQL server variables
mertvoprog ☆
()
Ответ на: комментарий от hummer

Приведи пример, что решение о включении принимал кто-то другой (исключая период самоудаления с назначением ответственного, что тоже авторитарное решение)

anonymous
()
Ответ на: комментарий от anonymous

грамматический нацизм?

Ты дурак или прикидываешься.

Ты, видимо, и то и другое одновременно. Я отвечал на твой намёк на случайную опечатку в слове «аналогично» в другом обсуждении.

По первому набросу сообщению было понятно какое у тебя причинное место

Не знаю почему тебя так интересуют причинные места, но твоё причинное место явно зудит не по детски.

hummer ★
()

Людям похеру что там за ядро. Поэтому если MS перепилит какое-нибудь DE до вменяемого, удобного, высокоскоростного состояния - то сможет запилить собственный популярный дистр. Потом всунет в него какой-нибудь свой проп-бинарь, без которого работа с дистром будет кошмаром, наподобие Gapps - и вот тебе вендор-лок.

Мир разделится на маргиналов вроде Патрика, ну или Тео, и на нормальных людей у которых работает сканнер отпечатка пальца вместе с тачскрином на ноуте :)

Just as planned

windows10 ★★★★★
()
Ответ на: комментарий от anonymous

Приведи пример, что решение о включении принимал кто-то другой (исключая период самоудаления с назначением ответственного, что тоже авторитарное решение)

Речь не про то, кто принимает решение, а про то, как он это делает. Linux держится на корпорациях и поэтому они, корпорации, диктуют что и как должно быть сделано в ядре. Несогдасие Линуса с чем-то предлаемым ими если и бывает, то довольно редко и не по принципиальным вопросам.

hummer ★
()
Ответ на: комментарий от anonymous

У-у-у! Как всё запущено.

Сочувствую тебе анонимным сочувствием.

hummer ★
()
Ответ на: комментарий от hummer
АВТОРИТАРНЫЙ, -ая, -ое. Книжн. 1. Основанный на беспрекословном подчинении власти, авторитету. 

Опровергни, что это не про ЛТ. Манипулирование центральной персоной, в том числе корпорациями не отменяет авторитарный стиль управления

anonymous
()
Ответ на: комментарий от hummer

Что тут опровергать, когда у тебя взаимоисключающие утверждения?

Понял его суждение так

АВТОРИТАРНЫЙ, -ая, -ое. 
Книжн. 1. Основанный на беспрекословном подчинении власти ПАХАНУ. 
anonymous
()
Ответ на: комментарий от Dumppper001

Ахтунг, желтушники на ЛОРе! Что дальше, тизеры про антенну на 100500 каналов и уходящий с боков жир сюда репостить будут?

mertvoprog ☆
()
Ответ на: комментарий от pinus_nigra

Пипл хавает ¯\_(ツ)_/¯.

post-factum ★★★★★
()
Последнее исправление: post-factum (всего исправлений: 2)
Ответ на: комментарий от hobbit

А с хрена ли люди должны за бесплатно стараться?

Или баннеры тут просто так висят?

// b.

anonymous
()
Ответ на: комментарий от hobbit

выбирать

надо по уникальности и хайповости вбросов, чтобы поиск в ютубе приводил на этот сайт.

anonymous
()

Супер интересная тема, а картошка жаренная с лучком, помидорами и грибами

ЛУЧШЕ!

Вот такую программу сейчас писать буду …

anonymous
()
Ответ на: комментарий от anonymous

картошка жаренная с лучком, помидорами и грибами

Много жиров и углеводов, да еще жаренных, мало белков.

ЛУЧШЕ!

Приятного!

anonymous
()
Ответ на: комментарий от anonymous

Так и салатик будет, …

Так можно и парнокопытным гну стать. Где стейк из свинятины, паштет из тунца?

anonymous
()
Ответ на: комментарий от anonymous

Много жиров и углеводов, да еще жаренных, мало белков.

Как-то на выставке абстракционистов выставили картину на которой была изображена задница покрытая паутиной.
Когда посетитель спросил «Что это означает» ему объяснили

Этот человек забыл, когда он последний раз ... /ну вы поняли/
anonymous
()
Ответ на: комментарий от anonymous

задница покрытая паутиной

Обычно локтевой сгиб покрывают паутиной

anonymous
()
Ответ на: комментарий от Twissel

Молодой человек, а сколько Вам лет?

А вы всё за молоденькими бегаете, Твиссель …

Владимир

anonymous
()

хочу новое ядро и еще лучший бтрфс, когда на арч прилетит?

Sapetuko ★★
()
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.