Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Valentin Nechayev                    2:5020/400     08 Oct 2002  10:13:03
 To : Eugene Karpachov
 Subject : Re: g++
 -------------------------------------------------------------------------------- 
 
 >>> Eugene Karpachov wrote:
 
 >>>  Hу а всякие race conditions вообще требуют формального доказательства - это
 >>> ведь просто - достаточно построить таблицу всех возможных состояний системы
 >>> (по всем состояниям переключения мутексов и кондишенов) и приписать к
 >>> каждому из них, что к ним привести может.
 >> Угу. Вот уж всех состояний. По всему набору переменных и данных, которые
 >> могут оказаться в динамической памяти, с любым их количеством. Ы?
 EK> Hе ждал я, что кто-то в здравом уме будет с Луговским спорить :)
 
 Кроме здравого ума и твердой памяти, есть третий критерий -
 "час та натхнення", говоря известным анекдотом. У меня они были в момент
 написания письма. ;))
 
 >> Код чтения данных: захват лока, поиск данных через дерево => получаем
 >> указатель, (внимание!) снимаем лок, работаем с данными. Оппа, race condition.
 >> Hе буду пропускать страницу, чтобы думали, где же race. Те, кто возятся
 >> с ядром, сразу поймут, остальным так скажу: кто-то другой тут же хватает лок
 EK> Зачем с ядром - это и без ядра типичный паттерн ошибки: захватить в
 
 Это типичный паттерн ошибки для тех, кто с этим возился. А меня от Луговского
 интересовало, как он собирается вычислить это на основании своей "общей
 теории всего". Вдруг чудо произойдет? ;))
 
 EK> критической секции указатель на данные, которыми не владеешь (то есть
 EK> фактически не захватить). Это действительно поймёт любой, кто возится -
 EK> только не с ядром, а вообще с нитками.
 
 Поправка принимается.
 
 EK> (Справедливости ради скажу, что поймёт этот
 EK> самый любой это после того уже, как получит этими граблями по лбу хотя бы
 EK> раз.)
 
 Hу, я вспомнил то, что в линуксе выглядит как fget() и fput().
 Или BSD'шные vget(), vput(), vrele(). Общность названий показательна.
 Hо успел вспомнить до того, как наступили на.
 /netch
 --- ifmail v.2.15dev5
  * Origin: Dark side of coredump (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: g++   Vitaly.Lugovsky@ontil.ihep.su   02 Oct 2002 20:57:56 
 Re: g++   Boris Veytsman   02 Oct 2002 21:16:36 
 Re: g++   Vladimir Bormotov   02 Oct 2002 21:49:12 
 Re: g++   Boris Veytsman   02 Oct 2002 22:21:42 
 Re: g++   Yuri E. Glushko   03 Oct 2002 21:09:46 
 Re: g++   Vladimir Bormotov   03 Oct 2002 21:44:24 
 Re: g++   Alex Tomas   03 Oct 2002 22:02:49 
 Re: g++   Vladimir Bormotov   04 Oct 2002 00:01:00 
 Re: g++   Vitaly.Lugovsky@ontil.ihep.su   04 Oct 2002 18:39:34 
 Re: g++   Yuri E. Glushko   07 Oct 2002 18:16:08 
 Re: g++   Aleksey Cheusov   09 Oct 2002 15:31:38 
 Re: g++   Alex Tomas   07 Oct 2002 18:16:13 
 Re: g++   Valentin Nechayev   07 Oct 2002 18:18:52 
 Re: g++   Eugene Karpachov   08 Oct 2002 01:52:35 
 Re: g++   Valentin Nechayev   08 Oct 2002 10:13:03 
 Re: g++   Yuri E. Glushko   04 Oct 2002 13:49:56 
 Re: g++   Vitaly.Lugovsky@ontil.ihep.su   04 Oct 2002 18:42:46 
 Re: g++   Yuri E. Glushko   07 Oct 2002 18:16:45 
 Re: g++   Vladimir Bormotov   07 Oct 2002 18:13:05 
Архивное /ru.linux/73680a5bcf4b.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional