The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Проекта по интеграции с Qt web-движка Servo, развиваемого на языке Rust, opennews (??), 09-Апр-24, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


41. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от Аноним (41), 09-Апр-24, 16:34 
Потому что по данным MS (и не только их) ошибки памяти - это процентов 70 ошибок, которые совершают разрабы. Вот они и хотят решить проблему кардинально. Читаешь здесь про CVE в ядре, иксах и прочем и видишь одно и то же: use after free, double free, выход за границу буфера, так что скорее всего статистика верна.
Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

60. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +1 +/
Сообщение от Аноним (9), 09-Апр-24, 18:03 
И? Если нет кода то будет 0 процентов ошибок.
Ответить | Правка | Наверх | Cообщить модератору

72. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от Аноним (72), 09-Апр-24, 18:34 
Ну расскажи MS, гуглу и прочим дискордам, вконтактам и дропбоксам что кода на расте нет.
Ответить | Правка | Наверх | Cообщить модератору

100. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от Аноним (100), 09-Апр-24, 21:52 
Объясните мне доходчиво, как при индексации массива, зная длину буфера, когда счетчик достигнет нуля, впринципе возможно выйти за границы?
Вот где здесь

while(--i) {
    // do stuff
}

возможно за границы выйти?

Или вот

free(ptr);
ptr=nullptr;

решает абсолютно все проблемы

У меня просто в голове не укладывается, это же элементарные языковые конструкции, чтобы их не использовать или использовать неправильно, нужно быть хз кем

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

102. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от Аноним (100), 09-Апр-24, 21:57 
*вернее, даже так
while(--i != 0)
Ответить | Правка | Наверх | Cообщить модератору

137. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +4 +/
Сообщение от Аноним (137), 10-Апр-24, 08:30 
> *вернее, даже так

while(--i != 0)

Поздравляю, ты уже вышел за пределы буфера, если i изначально 0.

Еще более доходчивые объяснения нужны?

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

103. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +4 +/
Сообщение от Аноним (103), 09-Апр-24, 22:00 
> Объясните мне доходчиво, как при индексации массива, зная длину буфера, когда счетчик
> достигнет нуля, впринципе возможно выйти за границы?
> while(--i) {
>     // do stuff
> }
> возможно за границы выйти?

А ты обращайся не в цикле, а просто к элементу.
Или вычисляй i в условной конструкции которая зависит от десятка условий и фазы луны.

> free(ptr);
> ptr=nullptr;

А если у тебя несколько потоков? И объекто создается где-то в одном месте, а умирает в совершенно другом

> решает абсолютно все проблемы

Но пограммисты на си-шке их так и не смогли решить.

> У меня просто в голове не укладывается, это же элементарные языковые конструкции,
> чтобы их не использовать или использовать неправильно, нужно быть хз кем

Нужно быть разрабом ядра)

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

129. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от Аноним (129), 10-Апр-24, 02:43 
> А ты обращайся не в цикле, а просто к элементу.
> Или вычисляй i в условной конструкции которая зависит от десятка условий и
> фазы луны.

Как здесь, например
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-28448
?

> А если у тебя несколько потоков? И объекто создается где-то в одном
> месте, а умирает в совершенно другом

как здесь например
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-32810
?

>> решает абсолютно все проблемы
> Но пограммисты на си-шке их так и не смогли решить.

как видим, раста-мани тож нишмагли.

> Нужно быть разрабом ядра)

или ржавым сектантом)

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

136. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от Аноним (136), 10-Апр-24, 07:15 
Ну так пусть M$ Винду на Rust и переписывает, раз в ней столько ошибок.
Ответить | Правка | К родителю #41 | Наверх | Cообщить модератору

151. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от нах. (?), 10-Апр-24, 23:59 
Так они ж - уже!
Переписькивали-переписькивали и даже переписькали цельный кусок GDI.
И он по слухам даже включен в сборки реальной винды.

Чтобы им попользоваться, нужно скачать insider build, принести в жертву рыжую девственницу, произнести главное демоническое заклинание и перезагрузиться строго в ночь на ивана купалу, но это немного неточно - всех кто это пытались сделать, на следующее утро находили мертвыми с перегрызенным острыми зубами горлом.

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

139. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от Аноним (138), 10-Апр-24, 08:41 
>Читаешь здесь про CVE в ядре, иксах и прочем и видишь одно и то же: use after free, double free, выход за границу буфера, так что скорее всего статистика верна.

Уже придумали решение на уровне CPU - CHERI.

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

144. "Проекта по интеграции с Qt web-движка Servo, развиваемого на..."  +/
Сообщение от Аноним (144), 10-Апр-24, 11:03 
У интел давно есть инструкция bound, но накладные расходы таковы, что оно того не стоит. Делать одну проверку один раз за цикл или даже один раз за несколько циклов оказалось сильно дешевле. Программисты только не могут никак научится правильно писать эти проверки. А компиляторы правильно кидать warning в таких местах.
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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