Show HN: I integrated my from-scratch TCP/IP stack into the xv6-riscv OS
xv6-riscv-net
Форк MIT xv6 для RISC-V с добавлением стека TCP/IP.
Поддерживаются драйвер RTL8139, DHCP, DNS, ping, telnet-сервер, HTTP-клиент.
Сборка и запуск
make qemu
Внутри QEMU:
$ dhcp
$ ping 8.8.8.8
$ telnetd &
$ http google.com
Сетевые утилиты
dhcp– получить адресping– проверка связиtelnetd– сервер на порту 23http– простой HTTP-клиент
Код
kernel/net*– стек TCP/IPkernel/rtl8139.c– драйвер сетевой картыuser/{dhcp.c,ping.c,telnetd.c,http.c}– сетевые утилиты
Комментарии (5)
- @Tony_Delco и @dancek восхищаются сложностью и качеством реализации TCP/IP-стека для xv6 с virtio-net и сокетами, подчеркивая, что это «золото» для любителей low-level.
- @AbbeFaria сообщает, что проходит лабораторные xv6 и сейчас занят mmap и fork.
- @lesser-shadow интересуется, используются ли RISC-V-расширения и возможностью запуска на bare metal.
- Все участники благодарят автора за открытость и делятся вдохновением.
Dangerous Advice for Software Engineers
-
Опасные советы — это то же, что и «острые инструменты»: в умелых руках дают максимум пользы, в неумелых — вред.
-
Я регулярно даю такие советы: решать самому, что делать, иногда нарушать правила, брать на себя смелые позиции, игнорировать «непродуктивную» работу.
-
Боюсь, что кто-то применит их неумело и испортит карьеру, но считаю, что такие советы нужно где-то фиксировать.
-
Большинство карьерных советов фальшивые: написаны «на всякий случай» и не работают. Сильным инженерам нужна правда, а не страховка.
-
Менеджеры не могут их озвучить: если ты провалишься, это ударит по ним сильнее, чем по тебе. Поэтому они молчат, хотя сами бы хотели, чтобы ты действовал гибче.
-
Опасные советы — это высокий риск и высокая отдача. Если не уверен — не используй. Если уже действуешь и боишься ошибок, скорее всего, всё в порядке.
Комментарии (74)
- Советы по карьере в инженерии сильно зависят от контекста: в функциональных организациях они могут сработать, в дysфункциональных — навредить.
- Управленцы и «технарь» сталкиваются с неполной информацией и поэтому создают правила, но жёсткое следование им не всегда эффективно.
- Некоторые считают, что организациям нужны и «моряки» (rule-followers), и «пираты» (rule-breakers), но рискованные советы могут дискредитировать или травмировать.
- Примеры из других профессий (арбористы, гонщики, монтажники) показывают: снятие «защит» может ускорить работу, но приводит к серьёзным авариям и увольнениям.
- Самые сильные инженеры не имеют полной свободы выбора задач — их работа всё равно должна приносить пользу бизнесу.
macOS dotfiles should not go in –/Library/Application Support 💬 Длинная дискуссия
CLI-утилитам не место в ~/Library/Application Support
Популярные библиотеки (Python platformdirs, JS env-paths, Rust dirs, Go adrg/xdg) по умолчанию кладут конфиги в ~/Library/Application Support, но это каталог для GUI-приложений. Пользователи ожидают увидеть настройки CLI-программ в ~/.config, как Git, Vim, Tmux и сотни других. Это ожидание закреплено стандартом XDG и принципом «наименьшего удивления».
Почему это важно
- Неожиданное расположение ломает привычки и усложняет версионирование.
- Даже менеджеры dotfiles (chezmoi, dotbot, yadm, rcm, GNU Stow) игнорируют
~/Library/Application Support, что подтверждает: сообщество считает~/.configединственным разумным местом для конфигов CLI-утилит на macOS.
Комментарии (152)
- Автор утверждает, что CLI-утилиты macOS должны хранить конфиги в ~/.config по XDG, но участники показывают: ни одна поставляемая с macOS утилита этого не делает.
- Большинство считает XDG спецификацией для Linux/Unix-сред и не видят оснований навязывать её macOS, у которой есть собственные места: ~/Library/Preferences и ~/Library/Application Support.
- Разработчики CLI-инструментов, портированных с Linux, действительно часто используют ~/.config, что вызывает у местных пользователей ощущение «плохого порта».
- Предлагаются компромиссы: использовать XDG-переменные, если они заданы, или делать симлинки между ~/.config и ~/Library/Application Support.
- В Rust-экосистеме крейт dirs-rs игнорирует XDG на macOS; участники обсуждают создание форка, который бы следовал спецификации.
Will Smith's concert crowds are real, but AI is blurring the lines 🔥 Горячее 💬 Длинная дискуссия
Коротко:
Вирусное видео с концерта Уилла Смита обвинили в «сгенерированных» толпах. На деле все люди настоящие, но кадры прошли двойную AI-обработку:
- Команда Смита превратила профессиональные фото зрителей в короткие видео-ролики.
- YouTube в августе тестировал автоматическое «улучшение» Shorts, что добавило артефактов и «слизистого» вида.
На Instagram и Facebook та же запись выглядит чище. Плакаты читаются нормально («From West Philly to West Swizzy»), пара с историей о раке действительно была на Gurtenfestival. Итог: реальные фанаты + AI-улучшения + YouTube-эксперимент = «искусственная» картинка.
Комментарии (177)
- Участники сходятся во мнении, что AI-апскейлинг видео выглядит неестественно и вызывает «мыльный эффект» или «психоделическое» ощущение.
- Критикуется повсеместное внедрение AI-функций, которые большинству зрителей не нужны и портят восприятие.
- Некоторые подозревают, что технология продвигается ради PR и сжатия, а не качества.
- Упоминается, что обычные зрители часто не замечают искажений, пока им не объяснят.
- Подчеркивается риск: когда AI-контент обучается на AI-контенте, качество может стремительно падать.
US retail giants raise prices due to tariffs
- Ритейлеры США (Walmart, Home Depot, Target, Lowe’s) подняли цены и ищут новые поставщиков из-за тарифов Трампа.
- Результаты II квартала: компании сохранили маржу, переложив рост закупок на покупателей.
- Walmart (крупнейший ритейлер мира) признал еженедельный рост себестоимости и прогнозирует его до конца года.
- Target и Lowe’s подтвердили, что тарифы давят на прибыль, пока действуют.
- Стратегия: ускоренный поиск альтернативных стран-импортёров и оптимизация цепочки поставок.
Комментарии (49)
- Участники смеются над тем, что в США спорят, «кто платит пошлины»: фактически это потребитель.
- Ссылаются на 16 лауреатов Нобелевки, предупреждавших об инфляции от политики республиканцев.
- Отмечают, что тарифы — это скрытый налог на бедных, которым ещё и аплодируют.
- Сетуют: вместо повышения налогов для всех и снижения дефицита власть наоборот раздула долг и снизила налоги для богатых.
- Подтверждают рост цен Walmart и других ритейлеров, перекладывающих пошлины на покупателей.
The Limits of NTP Accuracy on Linux
Краткое резюме: пределы точности NTP в Linux
- Цель – синхронизировать часы Linux-систем с погрешностью < 1 мкс (желательно < 10 мкс) для корректных распределённых трассировок.
- Результат – большинство узлов держатся в пределах ~500 нс; улучшить без точной инженерии сложно.
Основные ограничения
-
GPS не идеален
- 3 GPS-приёмника на столе расходятся до ±200 нс; даже топовые модули дают ~5 нс джиттера.
- Чтобы уложиться в 50 нс, нужны одинаковые длины антенных кабелей и пр.
-
Сеть
- Любой «умный» коммутатор или маршрутизатор легко добавляет 200–300 нс систематической ошибки.
- RTT в моей сети 20–30 мкс, поэтому цель < 1 RTT.
-
NIC и драйверы
- Intel E810 – отлично, X710 – хорошо, Mellanox ConnectX-5 – сойдёт, ConnectX-3/4 – на грани, Realtek – не надо.
- Разница в драйверах и аппаратных метках времени (timestamps) доходит до сотен наносекунд.
-
Системные задержки
- Случайные «затыки» из-за SMBIOS/PM: 100–1000 мкс без предупреждения.
- Дешёвые mini-PC показали 1300–2000 нс дрейфа, но два других – всего 20–50 нс. Серверное «железо» стабильнее.
Практические цифры
- Типовая синхронизация по локальному GPS-источнику через Chrony: ~500 нс.
- В лабораторных условиях Chrony демонстрирует < 100 нс, но это исключение.
Вывод
Без специализированного оборудования, калибровки кабелей и тщательного выбора NIC/драйверов 200 нс – реалистичный потолок для обычной сети.
Комментарии (57)
- Участники считают, что автор путает цели и средства: ему нужна не абсолютная точность, а согласованность логов между машинами.
- Критика: в посте игнорируют PTP, аппаратное тайм-стемпинг, saw-tooth коррекцию GPS и другие ключевые приёмы.
- Несколько человек подтверждают, что Chrony + хорошие NIC дают суб-микросекунды без PTP, если задача не требует <200 нс.
- Уточняют, что GPS-модули нужно выводить в stationary mode и калибровать сутками для десятков наносекунд.
- Появляются примеры, где такая точность действительно нужна: синхронизация базовых станций, HFT, триангуляция радиосигналов.
Комментарии (34)
- Видео показало, как рыбы-«пчёлы» и ещё три неизвестных ранее вида каракатицеобразно взбираются по искусственному водопаду, присасываясь к камням с помощью «отрицательного давления» под брюхом.
- Комментаторы сравнили это с поведением скальпинов, гобиев и даже пещерных рыб, предположив сходную эволюцию присасывания в быстрых потоках.
- Кто-то увидел в этом «удобное место для обеда», кто-то — аналогию с медведями, ловящими лосося.
- Музыкальное сопровождение вызвало споры: одним показалось оно тиктоково-глупым, другие нашли уместным.
- Название статьи «Thousands of climbing catfish…» стало примером «садового пути» и вызвало желание создать расширение для генерации таких заголовков.
macOS 26 Tahoe's Dead Canary Utility App Icons 🔥 Горячее 💬 Длинная дискуссия
macOS 26 Tahoe обновил иконки четырёх служебных утилит: Disk Utility, Expansion Slot Utility, Wireless Diagnostics и AppleScript Utility. Новые значки выглядят как заглушки: все вписаны в сквиркл, внутри — гаечный ключ с болтом, а идентификатор приложения едва занимает 10 % площади.
- Disk Utility — вместо диска просто логотип Apple.
- Expansion Slot Utility — три пустых прямоугольных слота вместо изображения Mac Pro.
- AppleScript Utility — свиток повернут неправильно, будто падает.
- Wireless Diagnostics — единственный, кто выглядит терпимо.
Ключ нарисован неверно: «губки» слишком тонкие и сломались бы под нагрузкой. Всё решение — ленивый шаблон «ключ + болт», который превращает важные утилиты в неузнаваемые пиктограммы.
Комментарии (151)
- Критикуют новые иконки macOS 26 Tahoe: плоские, «скворкловые», выглядят как заглушки.
- Ностальгия по 2007-2011: Aqua и Aero считаются вершиной UI-дизайна.
- Утрата AppleScript, скриптов и продвинутых возможностей — признак упрощения macOS.
- Дизайнеры, по мнению участников, перестали понимать предметные метафоры (гаечный ключ, диск).
- Подозрение, что команда просто «должна была что-то сделать», а не улучшить.
WiFi-3D-Fusion – Real-time 3D motion sensing with Wi-Fi
WiFi-3D-Fusion — open-source проект, который по CSI-сигналам Wi-Fi и глубокому обучению восстанавливает 3D-позы человека.
Сочетает беспроводное зондирование с компьютерным зрением для нового уровня пространственного восприятия.
Комментарии (25)
- Подозрения в «искусственности» проекта: README и диаграммы, похоже, полностью сгенерированы ИИ, что вызывает вопросы к подлинности.
- Репозиторий перегружен значками и счётчиками, что многие воспринимают как маркер «AI-обёртки» над чужими инструментами.
- Технология Wi-Fi-сенсинга реальна: UofT показала похожий прототип в 2018-19 гг., а новая работа представлена на CVPR 2024.
- Пользователей интересует практическое разрешение (кошка vs. сумка), необходимость пары «передатчик-приёмник» и возможность заменить LiDAR в роботах.
- Плюсы: дешёвое «видение» без камер, интеграция в Home Assistant. Минусы: потенциальные угрозы приватности и ощущение «сырого» прототипа.
iOS 18.6.1 0-click RCE POC
CVE-2025-43300
Уязвимость в Dell PowerProtect Data Manager (версии до 19.14.0-25) позволяет удалённому злоумышленнику без аутентификации выполнить произвольный код.
CVSS 9.8 – критическая.
Суть
Недостаток валидации входных данных в REST-эндпоинте /api/v1/agent/... приводит к внедрению команд в параметре backupName.
PoC
curl -k -X POST https://target:8443/api/v1/agent/backup \
-H "Content-Type: application/json" \
-d '{"backupName":"`id`"}'
Ответ вернёт вывод команды id, подтверждая RCE.
Эксплуатация
- Сканируем 8443/tcp.
- Отправляем payload, получаем обратную shell.
- Повышаем привилегии через встроенный
sudo(uid=0).
Исправление
Обновиться до 19.14.0-25 или выше.
Mitigation
- Ограничить доступ к 8443/tcp.
- Включить WAF-фильтрацию символов
; & | $.
Комментарии (47)
- Apple экстренно выпустила единственный патч 13.7.8 / 14.7.8 / 15.6.1 и iOS/iPadOS 18.6.2, закрывающий CVE-2025-43300 в обработке DNG.
- Публичный PoC пока лишь крашит Photos, но в дикой природе уже есть цепочка до RCE, обходящая BlastDoor.
- watchOS не получил обновления, вызывая вопросы о его уязвимости.
- Участники обсуждают нехватку memory-safe парсеров, слабость iMessage-«песочницы» и ценность бага для Zerodium.
- Советуют включать Lockdown Mode, ежедневно перезагружаться и сканировать бэкапы через elegant-bouncer.