The OpenNET Project / Index page

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



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

Оглавление

Фреймворк для написания защищённых драйверов для ядра Linux ..., opennews (?), 01-Сен-19, (0) [смотреть все]

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


33. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  +7 +/
Сообщение от Илья (??), 01-Сен-19, 11:51 
> строго говоря, в самом расте выше перечисленное достигается не с помощью какой-то особой магии, а например тупо рантайм-проверками в выражениях вроде "a[i]".

Есть проверки в рантайме, а так же есть статический анализатор, "борроу-чекер".

Например, анализатор не даст вам разделить какую-нибудь область памяти между двумя потоками, пока вы явно не дадите слово пацана за то, что вы предусмотрели все возможные последствия.

Вы не сможете создать две мутабельные ссылки на какой-нибудь участок памяти без явного заворачивания их в какой-нибудь <Arc<Mutex<...>>>.

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

36. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  +/
Сообщение от JL2001 (ok), 01-Сен-19, 12:07 
> Например, анализатор не даст вам разделить какую-нибудь область памяти между двумя потоками,
> пока вы явно не дадите слово пацана за то, что вы
> предусмотрели все возможные последствия.

и много то слово пацана стоит? компилятор вообще не должен бы верить программисту без тридцати трёх подписей и печатей "да я понимаю что я делаю"

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

38. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  +2 +/
Сообщение от Илья (??), 01-Сен-19, 12:10 
Ну так и есть вообще.
Ответить | Правка | Наверх | Cообщить модератору

58. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  –2 +/
Сообщение от Аноним (58), 01-Сен-19, 12:46 
Если вся разница только в статическом анализаторе, то (сюрприз!) для C они тоже есть.
Ответить | Правка | К родителю #33 | Наверх | Cообщить модератору

63. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  +/
Сообщение от red75prim (?), 01-Сен-19, 13:01 
Сюрприз! Теорема Райса. Если язык не разработан для того, чтобы обеспечивать, скажем, отсутсвие висящих указателей, то статический анализатор сможет отловить только какие-то частные случаи, или отловить всё, но при этом выдавать и false positives.
Ответить | Правка | Наверх | Cообщить модератору

72. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  –8 +/
Сообщение от Аноним (28), 01-Сен-19, 14:01 
> Сюрприз! Теорема Райса.

Сюрприз! Это теорема из _теории_ алгоритмов. То есть это теория, а не истина. Слышал о теории большого взрыва? Часть физиков её принимает, часть физиков нет. Понимаешь? Каждые N столетий те или иные теории могут подвергнуться опровержению. Таким образом мы не можем в споре аппелировать к теореме Райса, как к конечной истине. Это всего лишь одна из _интерпретаций_ рельности. В рамках своей интерпретации ты прав абсолютно! В рамках теории Большого взрыва ты прав абсолютно! Но в рамках теории космологической модели эволюции крупномасштабных структур ты неправ. Так как же ты можешь быть неправ в рамках неевклидовой геометрии.

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

84. Скрыто модератором  +/
Сообщение от Аноним84701 (ok), 01-Сен-19, 14:38 
Ответить | Правка | Наверх | Cообщить модератору

89. Скрыто модератором  –1 +/
Сообщение от Anonymoustus (ok), 01-Сен-19, 14:47 
Ответить | Правка | Наверх | Cообщить модератору

91. Скрыто модератором  –4 +/
Сообщение от nox. (?), 01-Сен-19, 14:54 
Ответить | Правка | К родителю #84 | Наверх | Cообщить модератору

95. Скрыто модератором  +/
Сообщение от Аноним84701 (ok), 01-Сен-19, 15:09 
Ответить | Правка | Наверх | Cообщить модератору

92. Скрыто модератором  +/
Сообщение от nox. (?), 01-Сен-19, 14:59 
Ответить | Правка | К родителю #84 | Наверх | Cообщить модератору

98. Скрыто модератором  +/
Сообщение от Аноним84701 (ok), 01-Сен-19, 15:11 
Ответить | Правка | Наверх | Cообщить модератору

112. Скрыто модератором  –3 +/
Сообщение от Аноним (28), 01-Сен-19, 16:05 
Ответить | Правка | Наверх | Cообщить модератору

113. Скрыто модератором  +/
Сообщение от лол (?), 01-Сен-19, 16:14 
Ответить | Правка | Наверх | Cообщить модератору

115. Скрыто модератором  +/
Сообщение от Аноним (28), 01-Сен-19, 16:27 
Ответить | Правка | Наверх | Cообщить модератору

121. Скрыто модератором  +1 +/
Сообщение от кек (?), 01-Сен-19, 16:43 
Ответить | Правка | Наверх | Cообщить модератору

117. Скрыто модератором  +/
Сообщение от Аноним84701 (ok), 01-Сен-19, 16:30 
Ответить | Правка | К родителю #112 | Наверх | Cообщить модератору

109. Скрыто модератором  –3 +/
Сообщение от Аноним (-), 01-Сен-19, 15:56 
Ответить | Правка | К родителю #84 | Наверх | Cообщить модератору

102. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  +/
Сообщение от Илья (??), 01-Сен-19, 15:28 
> false positives.

Не знаю как вам, а мне "ложные срабатывания" гораздо понятнее, чем "false positives."

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

228. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  +/
Сообщение от Илья (??), 03-Сен-19, 01:20 
> false positives.

Справедливости ради стоит сказать, что раст тоже зачастую вполне валидный код не пропускает.

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

59. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  +/
Сообщение от Аноним (16), 01-Сен-19, 12:47 
в других языках разделение памяти между потоками успешно решается указанием "это потоко(не)безопасно" в документации. Не самая большая проблема.

правило двух мутабельных ссылок введено для специфических случаев вроде инвалидации итератора при vector.push_back() (которые в C++ и так прекрасно ловятся и самим компилятором, и всеми возможными санитайзерами), а в остальном это мерзкое ненужное ограничение. Недаром в расте из коробки есть костыли вроде RefCell.

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

104. "Фреймворк для написания защищённых драйверов для ядра Linux ..."  –3 +/
Сообщение от Илья (??), 01-Сен-19, 15:43 
> Не самая большая проблема.

не соглашусь.

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

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

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




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

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