Извештај о развоју ФрееБСД-а за први квартал 2020

објављено извештај о развоју ФрееБСД пројекта од јануара до марта 2020. Промене укључују:

  • Општа и системска питања
    • Уклоњен ГЦЦ пакет компајлера из изворног стабла ФрееБСД-ЦУРРЕНТ, као и неискоришћени услужни програми гперф, гцов и гтц (компајлер стабла уређаја). Све платформе које не подржавају Цланг су пребачене на коришћење екстерних алата за прављење инсталираних са портова. Основни систем је испоручио застарело 4.2.1 издање ГЦЦ-а, а интеграција новијих верзија није била могућа због преласка 4.2.2 на ГПЛв3 лиценцу, што се сматрало неприхватљивим за језгро ФрееБСД компоненти. Тренутна издања ГЦЦ-а, укључујући ГЦЦ 9, и даље могу да се инсталирају из пакета и портова.
    • Подршка за системски позив сендфиле, режим ТЦП_ЦОРК (потребан за нгинк), ознака МАП_32БИТ (решава проблем са покретањем пакета са Моно из Убунту Биониц-а) је додата инфраструктури за емулацију Линук окружења (Линукулатор). Решени проблеми са ДНС резолуцијом када се користи глибц новији од 2.30 (нпр. из ЦентОС 8).
      Оквир за континуирану интеграцију обезбеђује извршавање послова за покретање ЛТП-а (Линук Тестинг Пројецт) под Линукулатором за тестирање побољшања кода за подршку Линук-у. Око 400 тестова је неуспешно и треба их поправити (неке грешке су последица лажних позитивних резултата, неке захтевају тривијалне поправке, али постоје и други који захтевају поправку подршке за нови системски позив). Радови су обављени на чишћењу Линукулатор кода и поједностављењу отклањања грешака. Припремљене, али још не прегледане, закрпе са подршком за проширене атрибуте и фекецве системски позив.

    • Настављају се састанци радне групе створене да изврши миграцију изворних кодова са централизованог система за управљање изворним кодом Субверсион на децентрализовани Гит систем. У припреми је извештај са предлозима за миграцију.
    • В ртлд (рунтиме линкер) побољшан режим директног извршавања ("/либекец/лд-елф.со.1 {патх} {аргументс}").
    • Пројекат за фузз тестирање ФрееБСД кернела коришћењем система сизкаллер наставља да се развија. Током извештајног периода, отклоњени су проблеми у мрежном стеку и коду за рад са табелама дескриптора датотека, идентификовани помоћу сизкаллер-а. Након дијагностике грешака, промене су додате у СЦТП стог да би се олакшало отклањање грешака. Додата правила у стрес2 скуп за откривање могућих регресија. Додата подршка за фуззинг тестирање нових системских позива, укључујући цопи_филе_ранге(), __реалпатхат() и позиве подсистему Цапсицум. Наставља се рад на покривању слоја емулације Линук-а са фуззинг тестирањем. Анализирали и елиминисали грешке забележене у најновијим извештајима Цоверити Сцан.
    • У систему континуиране интеграције, направљен је прелазак на извршавање свих тестова главне гране само помоћу цланг/ллд. Приликом тестирања за РИСЦ-В, обезбеђено је формирање комплетне слике диска за покретање тестова у КЕМУ користећи ОпенСБИ. Додати нови задаци за тестирање поверпц64 слика и виртуелних машина (ФрееБСД-хеад-поверпц64-имагес, ФрееБСД-хеад-поверпц64-тествм).
    • У току је рад на преносу Киуа тестног пакета са портова (девел/киуа) на основни систем ради решавања проблема (пакети су веома спори) који се јављају када се Киуа користи на новим архитектурама које се развијају помоћу емулатора или ФПГА. Интеграција у основни систем ће у великој мери поједноставити тестирање уграђених платформи и повезивање са системима континуиране интеграције.
    • Започео пројекат за оптимизацију перформанси драјвера мрежног моста иф_бридге, који користи један мутекс за блокирање интерних података, што не дозвољава постизање жељених перформанси на системима са великим бројем затворених окружења или виртуелних машина повезаних на исту мрежу. У овој фази, коду су додати тестови како би се спречиле регресије у процесу модернизације рада са бравама. Разматра се могућност коришћења ЦонцурренциКит-а за паралелизацију руковаоца преноса података (бридге_инпут(), бридге_оутпут(), бридге_форвард(), ...).
    • Додан је нови системски позив сигфастблоцк који омогућава нити да специфицира блок меморије за брзи обрађивач сигнала како би се побољшале перформансе руковалаца изузетцима.
    • Кернел додаје подршку за ЛСЕ (Ларге Систем Ектенсион) атомске инструкције које подржавају АРМв8.1 системи. Ова упутства су потребна за побољшање перформанси када се раде на плочама Цавиум ТхундерКс2 и АВС Гравитон 2. Додате промене откривају присуство ЛСЕ подршке и динамички омогућавају атомску имплементацију засновану на њима. Током тестирања, коришћење ЛСЕ нам је омогућило да смањимо ЦПУ време утрошено на склапање кернела за 15%.
    • Перформансе су оптимизоване и проширена је функционалност комплета алата за извршне датотеке у ЕЛФ формату.
      Додата подршка за кеширање ДВАРФ дебуг информација, решени проблеми у услужним програмима елфцопи/објцопи, додата обрада ДВ_АТ_рангес,
      реаделф имплементира могућност декодирања заставица ПРОТМАКС_ДИСАБЛЕ, СТКГАП_ДИСАБЛЕ и ВКСНЕЕДЕД, као и Ксен и ГНУ Буилд-ИД.

  • безбедност
    • Да би се побољшале перформансе ФрееБСД-а у Азуре цлоуд окружењима, у току је рад на обезбеђивању подршке за ХиперВ соцкет механизам, који омогућава коришћење интерфејса утичнице за интеракцију са гостујућим системом са окружењем домаћина без постављања мреже.
    • У току је рад на обезбеђивању поновљивих верзија ФрееБСД-а како би се осигурало да су извршне датотеке системских компоненти направљене тачно од декларисаних извора и да не садрже вањске измене.
    • Могућност контроле укључивања додатних заштитних механизама (АСЛР, ПРОТ_МАКС, стацк гап, В + Кс мапирање) на нивоу појединачних процеса додата је услужном програму елфцтл
  • Складиштење и системи датотека
    • У току је рад на имплементацији могућности рада НФС преко шифрованог комуникационог канала заснованог на ТЛС 1.3, уместо коришћења Кербероса (сец=крб5п режим), који је ограничен на шифровање само РПЦ порука и имплементиран је само у софтверу. Нова имплементација користи ТЛС стек који обезбеђује кернел да омогући хардверско убрзање. НФС преко ТЛС кода је скоро спреман за тестирање, али још увек захтева рад на подршци потписаним клијентским сертификатима и прилагођавању ТЛС стека кернела за слање НФС података (закрпе за пријем су већ спремне).
  • Хардверска подршка
    • У току је рад на додавању подршке за кинески к86 ЦПУ Хигон заснован на АМД технологијама;
    • У оквиру ЦхериБСД-а, виљушке ФрееБСД-а за истраживачку архитектуру процесора ЦХЕРИ (Цапабилити Хардваре Енханцед РИСЦ Инструцтионс), наставља се имплементација подршке за АРМ Морелло процесор, који ће подржати ЦХЕРИ систем контроле приступа меморији заснован на Цапсицум безбедносном моделу. Морело чип планирају издање 2021. Рад је тренутно усредсређен на додавање подршке за Арм Неоверсе Н1 платформу која подржава Морелло. Уведен је почетни порт ЦхериБСД-а за РИСЦ-В архитектуру. Наставља се развој ЦхериБСД-а за ЦХЕРИ референтни прототип заснован на МИПС64 архитектури.
    • Настављено је преношење ФрееБСД-а на НКСП ЛС64А 1046-битни СоЦ базиран на АРМв8 Цортек-А72 процесору са интегрисаним мотором за убрзање обраде мрежних пакета, 10 Гб Етхернет, ПЦИе 3.0, САТА 3.0 и УСБ 3.0. КорИК и ЛС1046А, ГПИО, КорИК ЛС10кк АХЦИ, ВФ610 И2Ц, Епсон РКС-8803 РТЦ, КорИК ЛС10кк СДХЦИ драјвери су тренутно у припреми за пренос у главни ФрееБСД тим.
    • Ена драјвер је ажуриран на верзију 2.1.1 како би подржао другу генерацију мрежних адаптера ЕНАв2 (Еластиц Нетворк Адаптер) који се користе у инфраструктури Еластиц Цомпуте Цлоуд (ЕЦ2) за организовање комуникације између ЕЦ2 чворова при брзинама до 25 Гб/с. Надоградња на ЕНА 2.2.0 је у припреми.
    • ФрееБСД порт за платформу поверпц64 наставља да се побољшава. Фокус је на обезбеђивању квалитетних перформанси на системима са ИБМ ПОВЕР8 и ПОВЕР9 процесорима. Током периода извештавања, ФрееБСД-ЦУРРЕНТ је пребачен да користи ЛЛВМ/Цланг 10.0 компајлер и ллд линкер уместо ГЦЦ. ЕЛФв64 АБИ је подразумевано омогућен за системе поверпц2, а ЕЛФв1 АБИ је застарео. ФрееБСД-СТАБЛЕ још увек има гцц 4.2.1. Решени проблеми са виртио, аацраид и икл драјверима. На поверпц64 системима, могуће је покренути КЕМУ без подршке за Хуге Пагес.
    • Настављен је рад на имплементацији подршке за РИСЦ-В архитектуру. У свом тренутном облику, ФрееБСД се већ успешно покреће на СиФиве Хифиве Унлеасхед плочи, за коју су драјвери припремљени
      УАРТ, СПИ и ПРЦИ, подржава ОпенСБИ и СБИ 0.2 фирмвер. Током периода извештавања, рад је био фокусиран на миграцију са ГЦЦ на цланг и ллд.

  • Апликације и систем портова
    • Колекција ФрееБСД портова је прешла прекретницу од 39 портова, број отворених ПР-ова је нешто више од 2400, од ​​којих је 640 ПР-ова још увек неизвршено. Током извештајног периода, 8146 измена су извршила 173 програмера. Четири нова члана (Лоик Бартолети, Микаел Уранкар, Кајл Еванс, Лоренцо Салвадор) добила су права на удруживање. Додата УСЕС=кца заставица и уклоњена УСЕС=зопе заставица (због некомпатибилности са Питхон-ом 3). У току је рад на уклањању Питхон-а 2.7 из стабла портова – сви портови повезани са Питхон-ом 2 морају бити пренети на Питхон 3 или ће бити уклоњени. Пкг менаџер пакета је ажуриран на издање 1.13.2.
    • Ажуриране компоненте графичког стека и портови који се односе на корг.
      Кс.орг сервер је ажуриран на верзију 1.20.8 (раније је испоручена грана 1.18), омогућавајући ФрееБСД-у да подразумевано користи удев/евдев позадину за руковање улазним уређајима. Меса пакет је подразумевано преведен да користи екстензију ДРИ3 уместо ДРИ2. У току је рад на одржавању ажурираним графичких драјвера, стека улазних уређаја и компоненти дрм-кмод (порт који обезбеђује амдгпу, и915 и радеон ДРМ модуле, користећи линуккпи оквир за компатибилност са Дирецт Рендеринг Манагер-ом Линук кернела ).

    • КДЕ Пласма десктоп, КДЕ Фрамеворкс, КДЕ апликације и Кт се ажурирају и ажурирају до најновијих издања. Нова апликација кстарс (стар атлас) је додата на портове.
    • Рад је обављен на елиминисању регресивних промена у кфвм4 менаџеру прозора које су се појавиле након ажурирања Ксфце-а на верзију 4.14 (на пример, артефакти су се појавили приликом украшавања прозора).
    • Порт са Вине-ом је ажуриран на издање Вине 5.0 (раније је била понуђена верзија 4.0.3).
    • Почевши од верзије 1.14, Го компајлер је додао званичну подршку за АРМ64 архитектуру за ФрееБСД 12.0.
    • ОпенССХ на основном систему је ажуриран на издање 7.9п1.
    • Имплементирана и смештена у портове (девел/либсисцтлмибинфо2) је библиотека сисцтлмибинфо2, која обезбеђује АПИ за приступ сисцтл МИБ-у и превођење сисцтл имена у идентификаторе објеката (ОИД).
    • Генерисано ажурирање дистрибуције НомадБСД 1.3.1, што је ФрееБСД издање прилагођено за коришћење као преносиви десктоп са УСБ диска. Графичко окружење је засновано на менаџеру прозора Отворена кутија. Користи се за монтирање диск јединица ДСБМД (подржано је монтирање ЦД9660, ФАТ, ХФС+, НТФС, Ект2/3/4), да бисте подесили бежичну мрежу — вифимгр, и за контролу јачине звука - ДСБМикер.
    • Започео посао о писању комплетне документације за управника затворске средине лонац. Пот 0.11.0 се припрема за издавање, који ће увести алате за управљање мрежним стеком.

Извор: опеннет.ру

Додај коментар