LINUX.ORG.RU

9front «MARITIME ENGINEERING STANDARDS»

 


1

2

Представлен новый выпуск 9front — форка plan9, направленного на расширение возможностей оригинального plan9.

Изменения в ядре и драйверах:

  • ядро: исправлена утечка памяти в функции отладки checkpagerefs();
  • ядро: исправлено состояние гонки в функциях twakeup() и timerdel();
  • ядро: исправлены ошибки pread() при работе с директориями;
  • pc: исправлена ошибка связанная с тем, что PCMP и RSD находились в low (kaddr) или reserved (vmap) памяти;
  • pc: исправлена утечка памяти, добавлена функция clog();
  • pc64: теперь указывается зависимость mp.h для archacpi.$O;
  • devdraw: команда drawdebug теперь игнорируется;
  • devsd: улучшена обработка случаев, когда функция ifc->enable() не применима;
  • devsd: проверяется значение функции ifc->enable(), unit name или user strings больше не «утекают»;
  • devvga: hwgc включён в файл vgactl;
  • devvga: удалена неиспользуемая копия функции checkport();
  • sdvirtio: теперь возвращается 1 при успешном выполнении функций vioenable() и viodisable();
  • sdnvme: новый драйвер NVMe-контроллера (работа в процессе);
  • sdnvme: включён по умолчанию в конфигурации ядер для платформ pcf, pccpuf, pc64.

Изменения в библиотеках:

  • libavl: исправлена документация;
  • libavl: lookup теперь возвращает наиболее соответствующее значение;
  • libdraw: переменная _drawdebug больше не используется;
  • libmemdraw/libmemlayer: больше не используется вывод drawdebug;
  • libmemdraw: больше не производится эмуляция iprint();
  • libregexp: чистка кода;
  • libsec: добавлена поддержка sha256 для thumbprint-файлов, также теперь используется в ssh;
  • libsec/tlshand: исправлены ECDHE и DHE для SSLv3;
  • libsec/tlshand: исправлено преобразование mpint в byte, переработан буфер send/recv, добавлена проверка на переполнения в msgSend();
  • libsec/tlshand: функция tlsReadN() упрощена.

Изменения связанные с компиляторами и дебаггерами:

  • 5e: исправления в битовом сдвиге;
  • [012568kqv]a: исправлена обработка целых чисел в сборщиках;
  • исправлена ошибка в yacc.

Изменения связанные с программами:

  • aux/wpa: исправлена работа с «открытыми» сетями;
  • chgrp: удалена неиспользуемая декларация функции;
  • cwfs: пользователь «none» теперь может переименовывать файлы;
  • factotum: теперь прилагается открытая экспонента RSA после модуля;
  • file: теперь распознаются битовые потоки Xilinx;
  • fortune: добавлены исправления для избежания переполнений буфера при использовании линий больше или равных 2 килобайта;
  • games/blit: mkfile: теперь бинарный файл устанавливается в /bin/games ;
  • games/blit: левый верхний угол теперь всегда показывается;
  • games/blit: удалена линия для отладки;
  • games/galaxy: исправлено состояние гонки при выходе;
  • games/galaxy: вычисления сил гравитации теперь параллелизированы;
  • hjfs: добавлен комментарий об изменении размера OFF в 8;
  • hjfs: все refs теперь очищаются в 0 при очистке;
  • hjfs: исправлены ошибки в счёте ref при сканировании. Добавлена команда для сканирования;
  • hjfs: добавлена проверка количества входных блоков (entry blocks) при сканировании каталога;
  • hjfs: предупреждение 8c “non-interruptable temporary” теперь избегается;
  • hjfs: check: блок теперь проверяется если количество ref не равняется 0. Теперь проверяется количество ref блоков каталога;
  • hjfs: отключена hjfs check до тех пор, пока не будет добавлено больше функционала;
  • hjfs: исправлена работа dprint;
  • hjfs: улучшены сообщения об ошибках когда блоки не найдены;
  • hjfs: в дерево исходных кодов включена начальная реализация hjfs check;
  • hjfs: упрощён dprinting;
  • hjfs: начата работа над реализацией проверки каталога;
  • ip/torrent: запрос одних и тех же участков теперь избегается;
  • ip/torrent: теперь избегаются коллизии peerid при использовании truerand() вместо time(0).
  • ip/torrent: теперь немедленно завершается когда загружаемый файл проверен и не раздаётся;
  • ndb/dns: удвоено значение максимальных попыток для длинных цепочек перенаправлений cnames;
  • nusb/lib: возвращаемое значение функции usbcmd() теперь симметрично;
  • nusb/ptp: каждый сеанс теперь считается за каталог;
  • nusb/serial: pl2303: улучшена обработка ошибок;
  • replica: теперь используется реализация avl-дерева библиотеки libavl;
  • rsa2ssh: удалена поддержка ключей первой версии;
  • ssh: добавлена поддержка управления потоком и ID каналов;
  • ssh: добавлен метод «none» для получения списка поддерживаемых методов;
  • ssh: добавлена поддержка подсистем;
  • ssh: чистка сообщений отладки;
  • ssh: канал теперь очищается при зависании vt;
  • ssh: невозможные методы аутентификации больше не используются;
  • ssh: документированы опции thumbfile;
  • ssh: исправлены блокировки, добавлена поддержка пере обмена ключами;
  • ssh: исправлена опечатка;
  • ssh: реализован способ аутентификации по паролю;
  • ssh: реализована начальная проверка ключей хостов;
  • ssh: увеличен начальный window size для лучшей пропускной способности;
  • ssh: допустимое количество попыток входа теперь настраивается;
  • ssh: при неудаче проверки ssh-rsa-ключ теперь выводится в base64;
  • sshfs: добавлены опции -r и -M;
  • sshfs: родительский каталог теперь высчитывается корректно;
  • sshfs: содержимое каталогов больше не кешируется;
  • sshfs: исправлено падение при доступном для чтения файле /etc/password на удалённой стороне;
  • sshfs: исправлены утечки памяти, теперь используется функция estrdup9p()
  • vt: размер истории увеличен до 64 килобайт.

Также обновлена документация.

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

★★

Проверено: Shaman007 ()
Последнее исправление: JB (всего исправлений: 6)

Ответ на: комментарий от AUX

Вполне, шикарный язык, но гоу лучше.

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

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

но огарчило выпиливание fossil :( Кто знает, как его запилить обратно?

было в 9atom или 9legacy — оттуда ещё не выпилили :-)

ещё можно в git репозитории посмотреть — через /n/sources plan9 обновлялся до 2015 года + аннексии и контрибуции в plan9-contribs от 9legacy, обновлялось недавно

Нужно попробовать новую версию погонять, хочу пару софтин перекомпилить на эту платформу

если будешь «вступать & компелировать» — попробуй заодно форки: Harvey и/или Jehanne (сайт)

форки в целом более перспективны ибо в классическом plan9 gcc нетути by design (читай про Plan9 kencc vs. APE/POSIX vs. gcc), а тут кросскомпилятор. хотя если поискать можно и портированный gcc 4.7 найти в contribs.

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

inferno кто юзает в продакшне или после go, limbo стал неактуален?

тоже интересно. есть отдельные вести с полей: charles forsyth, powerman, caerwyn

shell в Inferno интересный: отсюда про sh, shifs.pdf by Uriel , тут ещё интересно:

  • модульный — модули к sh пишутся на limbo
  • графический — на tk
  • похож на rc

на inferno shell можно целый лисп написать, на limbo. при этом благодаря Dis оно будет портируемым везде (жаль только, что пока только 32-битное).

limbo кстати, похож скорее на схему, чем на Си. синтаксис как у braces language — скорее маркетинговый ход. ну и чтобы из plan9 сишный код типа kencc компилятора тягать просто можно было.

rc из Plan9 довольно фичастый shell, сам по себе: там есть списки и почти что лямбды. werc wiki написано на rc shell.

дальнейшим развитием rc shell является es shell гитхаб , с настоящими лямбдами и функциями высшего порядка (paper).

например, вот такой код: shell как текстовая адвентюра (написано на es shell)

в общем, решительно непонятно ради чего ковырять gnu-сный билдрут с башем/перлом/м4/make, когда можно использовать православный rc,mk,redo наконец и прочее.

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