Горячая замена
Горячая замена (англ. Hot Swap — горячая замена и англ. HotPlug — горячее подключение) — термины, означающие отключение или подключение электронного оборудования в/к (компьютерной) системе во время её работы без выключения питания и остановки (системы) (HotPlug), а также замену (переподключение) блока в целом (Hot Swap). Также существует термин, обозначающий противоположность горячей замене — Холодная замена, то есть все (пере)подключения производятся после остановки системы и снятия напряжения (остаточного потенциала).
Оборудование делится по этому принципу на допускающее горячую замену и не допускающее.
История
[править | править код]Ранее оборудование, предназначенное для подключения во время работы, связанного с заменой, использовалось только в дорогих системах и считалось сложным в проектировании. В последнее время подобные системы стали распространенными даже на недорогих компьютерах.
- Предназначены для горячей замены и, следовательно, поддерживают горячую замену стандарты PCMCIA, USB, FireWire, Fibre Channel и eSATA.
Среди устройств этого типа — флеш-накопители, некоторые жесткие диски, в том числе для массивов в серверах, карты расширения форматов PCI-X, PCI Express[1], ExpressCard (PCMCIA, также ранее называемые PC Cards), находящие применение в ноутбуках, и даже некоторые блоки питания. - Не поддерживают полноценную горячую замену дисковые интерфейсы SATA и полностью не поддерживает протокол IDE (SATA поддерживает горячее подключение).
Конструкция системы
[править | править код]Компьютеры, рассчитанные на замену оборудования «на ходу», должны тем или иным способом определять, что устройство отсоединено, а также содержать электрические цепи, нечувствительные к скачкам напряжения при подключении и отключении. Кроме того, программная часть должна быть рассчитана на внезапную потерю связи с устройством.
Некоторые схемы горячей замены требуют предварительно выполнения команды на отсоединение, что упрощает их конструкцию, однако угрожает целостности данных, если устройство не будет отсоединено правильным способом или в нём возникнет ошибка.
Более сложные схемы обладают запасом избыточности и легко восстанавливают данные при внезапном отключении устройства.
Термин «горячая замена» используется в двух значениях. С одной стороны, он обозначает возможность отсоединить или присоединить устройство без отключения питания. С другой стороны, он также может подразумевать еще и автоматическое определение устройства при подсоединении. Первое значение термина распространяется на интерфейсы RS-232, FireWire и простейшие реализации SCSI, второе значение — на USB, FireWire, PCI Express и сложные варианты SCSI.
Конструкция гнезда
[править | править код]В большинстве современных устройств, допускающих горячую замену, используются подвижные контакты. Один из них делается длиннее других, чтобы первым входить в контакт с присоединяемой частью, через него подключается заземляющий провод. Остальные контакты делаются короче, всего может быть до 3 различных длин. Задержка между подключением первого контакта и последующих составляет от 25 до 250 миллисекунд.
Цепи питания подключаются в две стадии: в первой с помощью более длинных контактов подключается цепь, ограниченная по току, а затем более короткими — питание полной мощности. Все цепи, участвующие в соединении, содержат защиту от статического электричества.
Вот пример типичной последовательности подключения:
- Замыкаются наиболее длинные контакты (заземление). Тем самым достигается электрическая безопасность соединения и защита от статического заряда.
- Замыкаются длинные или средние контакты предварительного питания. Заряжаются входные контуры цепей питания.
- Задержка в десятки миллисекунд.
- Подключаются короткие контакты питания.
- Соединение считается установленным. Включается сигнал инициализации питания.
- Цепь мягкого включения питания подает напряжение на устройство.
- Задержка в десятки миллисекунд.
- Цепь питания закончила мягкое подключение. Выключается сигнал инициализации питания.
- Устройство начинает полноценную работу.
Особую трудность представляет соединение нескольких устройств, так как подсоединение второго, третьего устройства может нарушать работу уже подключенного. Для борьбы с этим явлением используют фильтры в выходных цепях или временное логическое отключение передачи данных.
Горячее подключение в программном обеспечении
[править | править код]Термин «горячее подключение» также используется применительно к программному обеспечению и означает возможность изменять программу без остановки её выполнения. Такую возможность поддерживают лишь несколько языков программирования, включая Lisp, Erlang и Smalltalk. Язык Java поддерживает эту возможность только в процессе работы отладчика (Java Platform Debugger Architecture, JPDA).
При использовании интерпретируемых языков программирования (с сохранением текстов программ внутри модулей) «горячее подключение» реализуется просто заменой текстов. К примеру, предметно-ориентированный язык программирования 1С v8 предоставляет возможность изменять код при работающей программе (https://web.archive.org/web/20110427193804/http://v8.1c.ru/overview/release_8_1_5/administration.htm раздел «Обновление частей конфигурации»).
Так как компиляция отдельных модулей происходит в момент исполнения программы, и при изменении модуля он компилируется в сеансе заново — это не совсем «горячее подключение». Нужно заново создать сеанс, чтобы изменения вступили в силу, и только для этого пользователя (другим надо перезапустить новый сеанс).
В версии v7 эта возможность также присутствовала при использовании дополнительных программных средств[2] и штатной командой #ЗагрузитьИзФайла….(требуется только заново открыть форму или отчёт).
Примечания
[править | править код]- ↑ Архивированная копия . Дата обращения: 27 июля 2019. Архивировано 24 октября 2019 года.
- ↑ Александр Орефков. TurboMD . openconf.1cpp.ru. Дата обращения: 7 октября 2016. Архивировано 31 октября 2016 года.
Ссылки
[править | править код]Для улучшения этой статьи желательно:
|