The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Поддержка Rust для ядра Linux столкнулась с критикой Торвальдса"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Второй уровень иерархии тем в форуме реализован через вкладку "Показ ключевых тем".
. "Поддержка Rust для ядра Linux столкнулась с критикой Торваль..." +5 +/
Сообщение от Аноним (-), 15-Апр-21, 10:26 
> Может кто-нибудь адекватный написать, а что делает код на C в "ошибочных
> ситуациях, например, в ситуации нехватки памяти, когда операции динамического распределения
> памяти, в том числе и внутри ядра, могут завершиться ошибкой" ?

Я знаю минимум 2 вменяемых варианта действий:
1) Ядро и ко отлупляет -ENOMEM наверх, и в конечном итоге запрос к кернелу фэйлится с этим отлупом. Ну нишмагла я, нишмагла. Но в панику все же не грохается, а за lifetime системы ей много других сисколов еще достанется, многие из которых будут разрулены успешно.

2) Некоторые программы в юзермоде немного ждут и делают retry. Иногда несколько раз. И фэйлят операцию только если оно за эн раз не прокатило и стало быть совсем душняк. И опять же - контролируемо фэйлят, отлупляя caller'у (например тому кто запрос БД гонял или http пагу попросил) ашиппку. Ну там 500 internal server error например. Который все же сильно лучше чем целиком улетевший в трубу процесс сервера, с вообще всем state, всех юзерей, или чего там, не?!

Именно такой уровень контроля делает системный ЯП таковым. А вовсе не наглое битье себя пяткой в грудь. В чем некоторые с своим костылем try_new и убедились недавно.

> Также было бы интересно узнать о проблеме "использования вычислений с плавающей запятой
> или 128-битными типами, что не является допустимым для таких окружений, как ядро Linux"

Выше есть.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Поддержка Rust для ядра Linux столкнулась с критикой Торвальдса, opennews, 15-Апр-21, 08:09  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру