Сайт Архив WWW-Dosk
Удел МогултаяДобро пожаловать, Гость. Пожалуйста, выберите:
Вход || Регистрация.
01/06/25 в 22:47:10

Главная » Новое » Помощь » Поиск » Участники » Вход
Удел Могултая « Системно-программистский глюк||Miracles »


   Удел Могултая
   Разное
   Юмор
   Системно-программистский глюк||Miracles
« Предыдущая тема | Следующая тема »
Страниц: 1  Ответить » Уведомлять » Послать тему » Печатать
   Автор  Тема: Системно-программистский глюк||Miracles  (Прочитано 1678 раз)
Guest is IGNORING messages from: .
Emigrant
Administrator
*****


Из Новой Хазарии пишут:

   
Просмотреть Профиль »

Сообщений: 2914
Системно-программистский глюк||Miracles
« В: 11/19/04 в 23:10:49 »
Цитировать » Править

Как открыл наш великий соотечественник, "сколько бы где в одном месте ни убавилось, столько же прибавится в другом" (или как-то похоже). С другой стороны, всякому программисту, слушавшему когда-либо курс по операционным системам, известно, что для обеспечения этого свойства в "виртуальном мире" требуется потратить немалые усилия на так называемую синхронизацию одновременно выполняемых процессов. Пока один процесс читает некоторую переменную, выражающую количество объектов, и что-то с ней делает -- скажем, отнимает единицу и перекладывает ее в другой карман -- другой процесс может делать то же самое, прочитав ту же самую переменную до того, как ее уменьшенное значение будет записано обратно в переменную первым процессом. В результате общий счет объектов увеличится на единицу, назло Ломоносову-Лавуазье. Во избежание этого эффекта (подумаем, например, про банкоматы) употребляются всякие locks, семафоры, мониторы и т.д., заставляющие  один процесс ждать, пока другой полностью закончит свои операции.
 
Это присказка, а вот и сказка. Недавно мне пришлось отлаживать именно такую проблему, в результате которой "вещи" пропадали в никуда и появлялись ниоткуда, умножаясь. И тут мне стало понятно, как проще всего осуществить Чудо об Умножении Хлебов ("И ели все и насытились; и набрали оставшихся кусков семь корзин полных"). Для этого надо всего лишь локально нарушить синхронизацию мира! Я думаю, что при тщательной проверке выяснилось бы, что умножались (или исчезали непонятно куда) и другие предметы, с которыми люди в том момент что-то делали. Это классический hack, известный также под названием  time-to-check-to-time-to-use (TOCTTOU), т.е. между проверкой условия и собственно действием вклинивается другое действие (несколько нечеткое описание, ну да ладно).
 
Geeky revelations Smiley
 
« Изменён в : 11/20/04 в 00:31:47 пользователем: Emigrant » Зарегистрирован

Human beings were created by water to transport it uphill. (c) /usr/bin/fortune
Mithrilian
Beholder
Живет здесь
*****


Watchrabbit

   
Просмотреть Профиль » WWW »

Сообщений: 1693
Re: Системно-программистский глюк||Mirac
« Ответить #1 В: 11/20/04 в 00:42:16 »
Цитировать » Править

Т.е. по-твоему, Он - программист? А Христос - Сын Программиста? Ой.  8)  Тогда понятно, про кого анекдот "Папа, а солнце на востоке всегда встает и на западе всегда заходит?" - "Проверял - работает?" - "Проверял." - "Только ничего не трогай, сынуля, ничего не меняй!!!"
Зарегистрирован

На земле прекрасной нету места
Для недобрых и для забияк! (с) кот Леопольд
Antrekot
Bori-tarkhan
Живет здесь
*****


CНС с большой дороги

   
Просмотреть Профиль »

Сообщений: 16204
Re: Системно-программистский глюк||Mirac
« Ответить #2 В: 11/20/04 в 02:51:33 »
Цитировать » Править

Ну конечно делали - делили же.  Вот куски в процессе деления и размножались.  
 
Высокий класс...
 
С уважением,
Антрекот
Зарегистрирован

Простите, я плохо вижу днём. Позвольте, моя лошадь посмотрит на это. (c) Назгул от R2R
R2R
Administrator
*****


STMS

45196474 45196474    
Просмотреть Профиль » email

Сообщений: 5667
Re: Системно-программистский глюк||Mirac
« Ответить #3 В: 11/20/04 в 03:19:47 »
Цитировать » Править

В ADnD так магические и прочие ценные предметы у партии умножаются. "Один записал, другой не вычеркнул".  Roll Eyes
Зарегистрирован

"Кто играет с динамитом, тот придёт домой убитым"
Antrekot
Bori-tarkhan
Живет здесь
*****


CНС с большой дороги

   
Просмотреть Профиль »

Сообщений: 16204
Re: Системно-программистский глюк||Mirac
« Ответить #4 В: 11/20/04 в 03:26:14 »
Цитировать » Править

Так программирование оно вообще, по существу, магия и есть - целевое изменение мира посредством правильно организованного текста.
 
С уважением,
Антрекот
Зарегистрирован

Простите, я плохо вижу днём. Позвольте, моя лошадь посмотрит на это. (c) Назгул от R2R
Emigrant
Administrator
*****


Из Новой Хазарии пишут:

   
Просмотреть Профиль »

Сообщений: 2914
Re: Системно-программистский глюк||Mirac
« Ответить #5 В: 11/20/04 в 05:42:49 »
Цитировать » Править

on 11/20/04 в 00:42:16, Mithrilian wrote:
Т.е. по-твоему, Он - программист?

 
Конечно, среди прочего Smiley -- "Гончар,  Кузнец,  Ткач,  Плотник,
Гефест, Гу, Ильмаринен, Хнум, Вишвакарман, Птах, Яхве, ,..." и далее по тексту Smiley
 
Quote:

А Христос - Сын Программиста? Ой.  8)  Тогда понятно, про кого анекдот "Папа, а солнце на востоке всегда встает и на западе всегда заходит?" - "Проверял - работает?" - "Проверял." - "Только ничего не трогай, сынуля, ничего не меняй!!!"

 
Smiley  Увы, Христос плохо вписывается в хакерский апокриф -- он постоянно занят людьми, и не показывает никакого интереса к абстракциям, или, по крайней мере, никто из евангелистов не застал его за этим, за исключением единственного случая, когда тот чертил на песке, и не хотел сразу отвечать толпе, приведшей женщину.  
 
С другой стороны, как раз это чудо отвечает хакерскому характеру: такой tour-de-force, с малым вмешательством в работающий механизм, приносящим неожиданные и полезные результаты. Ни один хакер перед таким не устоит.  
 
Quote:

Так программирование оно вообще, по существу, магия и есть - целевое изменение мира посредством правильно организованного текста.

 
Right on! Exactly so.
 
« Изменён в : 11/20/04 в 05:45:46 пользователем: Emigrant » Зарегистрирован

Human beings were created by water to transport it uphill. (c) /usr/bin/fortune
Antrekot
Bori-tarkhan
Живет здесь
*****


CНС с большой дороги

   
Просмотреть Профиль »

Сообщений: 16204
Re: Системно-программистский глюк||Mirac
« Ответить #6 В: 11/20/04 в 06:30:45 »
Цитировать » Править

Quote:
Right on! Exactly so.

Я своих студентов по мифологии регулярно этим обстоятельством дразню.
 
С уважением,
Антрекот
Зарегистрирован

Простите, я плохо вижу днём. Позвольте, моя лошадь посмотрит на это. (c) Назгул от R2R
Emigrant
Administrator
*****


Из Новой Хазарии пишут:

   
Просмотреть Профиль »

Сообщений: 2914
Re: Системно-программистский глюк||Mirac
« Ответить #7 В: 11/20/04 в 07:47:03 »
Цитировать » Править

It gets better Smiley. Программирование - это ведь не что иное, как искусство описания сложных поведений. Это не просто текст, это текст, производящий текст Smiley
 
P.S.: Есть такая хакерская поговорка (не понимаю, как я мог не вспомнить о ней вчера): I'd rather write programs that write programs than write programs.  Именно так дело и обстоит Smiley
         
 
 
 
« Изменён в : 11/20/04 в 23:19:30 пользователем: Emigrant » Зарегистрирован

Human beings were created by water to transport it uphill. (c) /usr/bin/fortune
Страниц: 1  Ответить » Уведомлять » Послать тему » Печатать

« Предыдущая тема | Следующая тема »

Удел Могултая
YaBB © 2000-2001,
Xnull. All Rights Reserved.