Microsoft може да пренапише Windows на нов език | IT.dir.bg

17-11-2017 20-11-2018
Microsoft може да пренапише Windows на нов език
Снимка: Microsoft

Microsoft може да пренапише Windows на нов език

Компанията цели да избегне най-често срещаните проблеми от програмирането на C и C++

| Редактор: Стоян Гогов 12 3715

Microsoft разработва нов език за програмиране, предназначен за създаване на приложения, които не са предразположени към най-често срещаните проблеми със сигурността. Проектът, известен като Verona, стъпва на езика Rust, създаден от Mozilla - разработчика на Firefox, съобщи ZDNet.

Ключовата разлика между Verona и Rust е, че езикът на Microsoft използва модел на собственост, базиран на групи от обекти, а не на единични обекти. Очаква се изходният код на текущите разработки да бъде отворен под безплатен лиценз Apache 2.0. Хранилището на проекта вече се появи в платформата Github, която Microsoft придоби през 2018 г., но засега е празно, предава technews.bg.

Твърди се, че Microsoft може също така да пренапише някои от компонентите на ниско ниво на Windows 10, използвайки модифицирания Rust език, за да премахне потенциалните проблеми, които възникват при използване на езиците C и C++.

От десетилетия езиците C и C ++ се използват като универсален инструмент за разработване на системен софтуер. Но те поверяват на програмиста задачата да управлява RAM паметта, което неизбежно води до грешки - например, достъп до част от паметта след освобождаването й или превишаване на буфера.

Според Мат Милър, специалист по сигурността в Microsoft, около 70% от всички уязвимости, открити в софтуерните продукти на корпорацията през последните 12 години, са свързани с грешки в управлението на паметта.

За разлика от C и C++, в езика Rust, а както изглежда и във Verona, се прилага механизъм за автоматично управление на паметта, основан на принципа на собственост, който елиминира необходимостта програмистът ръчно да манипулира паметта, като по този начин намалява и вероятността от грешки.

Също така си струва да се отбележи, че в полза на производителността Rust не използва така наречения Garbage Collector (GC), чиито задачи включват автоматично изтриване на обекти, които вече не са необходими на програмата.

Microsoft е започнала да експериментира с Rust през лятото на 2019 г. Появиха се информации, че компанията ще пренапише част от своите продукти, използвайки този език за програмиране.

В началото на ноември 2019 г. Адам Бърч, програмист от екипа за разработка на Hyper-V, написа в корпоративния блог, че му е поставена задача да пренапише компонент на ниско ниво в Windows на Rust. Според него, въпреки непълнотата на проекта, опитът с използването на Rust се оказа като цяло положителен.

Бърч отбелязва също, че няма да бъде трудно привеждането към Rust на кодовата база на нови компоненти, както и на съществуващи, но с "чисти интерфейси". Същевременно, Бърч подчертава липсата на някои функции в този език, в сравнение с познатия C, но вярва, че Microsoft ще ги добави.

Microsoft може да пренапише Windows на нов език

Microsoft може да пренапише Windows на нов език

Компанията цели да избегне най-често срещаните проблеми от програмирането на C и C++

| Редактор : Стоян Гогов 12 3715 Снимка: Microsoft

Microsoft разработва нов език за програмиране, предназначен за създаване на приложения, които не са предразположени към най-често срещаните проблеми със сигурността. Проектът, известен като Verona, стъпва на езика Rust, създаден от Mozilla - разработчика на Firefox, съобщи ZDNet.

Ключовата разлика между Verona и Rust е, че езикът на Microsoft използва модел на собственост, базиран на групи от обекти, а не на единични обекти. Очаква се изходният код на текущите разработки да бъде отворен под безплатен лиценз Apache 2.0. Хранилището на проекта вече се появи в платформата Github, която Microsoft придоби през 2018 г., но засега е празно, предава technews.bg.

Твърди се, че Microsoft може също така да пренапише някои от компонентите на ниско ниво на Windows 10, използвайки модифицирания Rust език, за да премахне потенциалните проблеми, които възникват при използване на езиците C и C++.

От десетилетия езиците C и C ++ се използват като универсален инструмент за разработване на системен софтуер. Но те поверяват на програмиста задачата да управлява RAM паметта, което неизбежно води до грешки - например, достъп до част от паметта след освобождаването й или превишаване на буфера.

Според Мат Милър, специалист по сигурността в Microsoft, около 70% от всички уязвимости, открити в софтуерните продукти на корпорацията през последните 12 години, са свързани с грешки в управлението на паметта.

За разлика от C и C++, в езика Rust, а както изглежда и във Verona, се прилага механизъм за автоматично управление на паметта, основан на принципа на собственост, който елиминира необходимостта програмистът ръчно да манипулира паметта, като по този начин намалява и вероятността от грешки.

Също така си струва да се отбележи, че в полза на производителността Rust не използва така наречения Garbage Collector (GC), чиито задачи включват автоматично изтриване на обекти, които вече не са необходими на програмата.

Microsoft е започнала да експериментира с Rust през лятото на 2019 г. Появиха се информации, че компанията ще пренапише част от своите продукти, използвайки този език за програмиране.

В началото на ноември 2019 г. Адам Бърч, програмист от екипа за разработка на Hyper-V, написа в корпоративния блог, че му е поставена задача да пренапише компонент на ниско ниво в Windows на Rust. Според него, въпреки непълнотата на проекта, опитът с използването на Rust се оказа като цяло положителен.

Бърч отбелязва също, че няма да бъде трудно привеждането към Rust на кодовата база на нови компоненти, както и на съществуващи, но с "чисти интерфейси". Същевременно, Бърч подчертава липсата на някои функции в този език, в сравнение с познатия C, но вярва, че Microsoft ще ги добави.