Пре годину дана Ред Хат је најавиона њихов рад на новом драјверу отвореног кода за управљање НВИДИА ГПУ-овима на Линук системима,Ново». За разлику од свог претходника, Ноувеау-а, Нова се ослања на делегирање операција иницијализације и контроле на ГСП (ГПУ системски процесор) микроконтролер интегрисан у саму графичку картицу.
А сада, за неколико месеци (за разлику од других нових пројеката), чини се да је драјвер стекао довољно зрелости да буде предложен као скуп закрпа за интегрисање у језгро Линука 6.15, што је почетна верзија драјвера за Линук.
Нова, јесте дизајниран као Линук кернел модул, који се ослања на ДРМ подсистем да управља интеракцијом са ГПУ-ом из корисничког простора. Његов развој се посматра као еволуција Ноувеау-а, са кључном разликом што је искључиво усмерен на ГПУ са ГСП фирмвером, који покрива моделе из НВИДИА ГеФорце РТКС 2000 серије засноване на Тјуринг микроархитектури.
Разлике са Ноувеау-ом и Предности Нове
Нова настоји да реши структурне проблеме Ноувеауа, што захтева велику ревизију у областима као што су управљање меморијом (ВММ/ММУ) и закључавање кода. За разлику од Ноувеау-а, Нова користи НВИДИА ГСП фирмвер да поједностави иницијализацију и контролу ГПУ-а, смањујући сложеност кода и елиминишући потребу за руковањем старијим картицама.
Код Нове Написано је на Русту, језик који не само да побољшава безбедност минимизирањем грешака у управљању меморијом, већ такође омогућава креирање слојева за вишекратну употребу и апстракција за развој других драјвера.
Пројекат Подржавају га разне паралелне иницијативе, као што је руст-девице за креирање драјвера, руст-пци за интеракцију са ПЦИ магистралом и руст-дрм за интеграцију са ДРМ и ГЕМ подсистемима. Ови алати се такође користе у развоју дрм-асахи, Руст драјвера за Аппле М1 и М2 ГПУ, што сугерише конвергенцију у инфраструктури графичких драјвера написаних у Русту.
Употреба језика Рђа у овом развоју није случајност, пошто Руст нуди механизме који олакшавају преглед и рефакторисање, што доприноси већој стабилности пројекта. Усвајање овог језика у Линук кернелу одговара широј стратегији која настоји да модернизује писање модула и учини развој доступнијим новим сарадницима.
Ово није једини стални напор да се Руст интегрише у кернел. Други драјвери и системи се тренутно развијају на овом језику, као што су Аппле АГКС ГПУ драјвер, подршка за НВМе складиште, ПуззлеФС систем датотека и разне имплементације безбедности и управљања уређајима. Тренд ка Руст-у наставља да добија замах у Линук екосистему, означавајући значајну промену у начину на који се безбедност и стабилност решавају у развоју кернела оперативног система.
Фазе имплементације
Тренутно, Нова је у првој фази имплементације, инкорпорирао нова-цоре, модул са приближно 400 линија кода који успоставља апстракције неопходне за комуникацију са ГСП фирмвером. Уз нова језгро, додате су и битне везе за интеграцију са НВИДИА фирмвером.
Вреди напоменути да, Нова је првобитно била планирана за Линук 6.14 са модулом нова језгра који се састоји од 232 линије кода, али на крају није укључен јер је Грег Кроах-Хартман поменуо неке детаље које је било потребно полирање.
Уз нову потврду да ће сада бити укључена, Сада ће контролер прећи на следеће фазе у који се планира додати:
- нова-дрм: драјвер ДРМ (Дирецт Рендеринг Манагер) за управљање интеракцијом са ГПУ-ом из корисничког простора.
- ВФИО са вГПУ менаџером: омогућиће коришћење НВИДИА виртуелних ГПУ-а у окружењима виртуелизације.
На крају, важно је разјаснити да Нова еУ свом тренутном стању, он није функционални контролер и да је послате закрпе Они су само основа за почетак развоја контролера, односно, то је код који ће поставити темеље будућег развоја.