The OpenNET Project / Index page

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



"Дискуссия об использовании языка C++ для разработки ядра Linux"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для слежения за появлением новых сообщений в нити, нажмите "Проследить за развитием треда".
. "Дискуссия об использовании языка C++ для разработки ядра Lin..." +1 +/
Сообщение от Аноним (-), 14-Янв-24, 23:54 
> А в чём проблема VLA? Лучше с alloca и указателями для того же самого
> геморроиться и статическому анализатору палки в колёса ставить?

В том что...
1) Никогда не знаешь когда этот код навернется.
2) Способов узнать навернется ли он - нет.
3) В стандартах "C" нет слова "стэк" от слова вообще.
4) Поэтому вы в душе не и...те сколько его доступно и плохо ли arr[n] или прокатит.

А теперь представьте что у вас по рандому будет грохаться ЯДРО по причине "переполнение стека". Как вам такая перспектива? Этот аспект конечно существует всегда но с именно VLA он вылезает наиболее зло и часто. Ибо uint8_t arr[n] работать ну вот не обязано если n == 100500000. При том вы даже узнать не можете ок ли такой n или нет. В отличие от мануальной аллокации где хотя-бы зввернут. А тут - сразу SIGSEGV какой бу, или что там. Круто, да?!

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

Оглавление
Дискуссия об использовании языка C++ для разработки ядра Linux, opennews, 14-Янв-24, 21:43  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



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

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