The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"atomic, атомарный"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"atomic, атомарный" 
Сообщение от grib Искать по авторуВ закладки on 23-Авг-05, 05:37  (MSK)
Приветствую.

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

Спасибо.

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

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

1. "atomic, атомарный" 
Сообщение от StraNNicK emailИскать по авторуВ закладки(ok) on 23-Авг-05, 08:33  (MSK)
>Читал в литуратуре, но пока не догоняю смысл терминов "атомарный", "атомарность". Может
>кто на пальцах изложить, либо если есть документ в интернете -
>то с удовольствием почитаю.
Я, конечно могу ошибаться, но по-моему это означает "минимально возможный, неделимый" (атом, собственно и переводится как "неделимый").

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "atomic, атомарный" 
Сообщение от dev emailИскать по авторуВ закладки(??) on 23-Авг-05, 14:57  (MSK)
>Читал в литуратуре, но пока не догоняю смысл терминов "атомарный", "атомарность". Может кто на пальцах изложить

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

1. Транзакции. Это когда операция длинная, ее нельзя прервать, промежуточное состояние содержит неверные данные. Классических пример - перевод денег в банке:
  а) забрать 100 баксов с одного счета;
  б) положить 100 баксов на другой счет.
Если после выполнения а) пропадет свет, то при включении сервера надо полностью отменить операцию, иначе деньги исчезнут.

2. Параллельное выполнение. Если тебе надо единолично воспользоваться, к примеру, неким файлов, то ты:
  а) проверяешь, свободен ли файл;
  б) забираешь его себе.
Если одновременно с тобой еще кто-то хочет получить этот файл, то возможна ситуация:
  а-1) ты проверяешь, свободен ли файл - свободен, можно продолжать;
  тут система вдруг переключилась на второй процесс
  а-2) он проверяет, свободен ли файл - свободен, можно продолжать;
  б-2) он забираешь файл себе.
  тут система переключилась на твой процесс
  б-1) ты забираешь файл себе.
В итоге файл разрушен - в него пишут два процесса.
Что бы этого не случилось, система должна гарантировать атомарность операции "проверить-взять".

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


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

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




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

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