Ответ «это конденсаторы» уже дан, но это еще не все. Давайте посмотрим на это немного глубже.
Большинство устройств работают от переменного напряжения в доме (110 В или 220 В переменного тока), при частоте 50 Гц или около того, через адаптер питания, до низковольтного постоянного тока (5 В или 12 В постоянного тока).
Переменный ток - это ток, который циклически меняется от положительного до отрицательного ... что означает прохождение через ноль. Таким образом, в течение доли секунды, 100 раз в секунду, на ваше устройство не подается напряжение.
Очевидно, что ваше устройство должно быть способно обрабатывать / очень короткое / прерывание питания, иначе оно не будет работать более одной сотой секунды. Сначала это делается путем понижения напряжения до приемлемого уровня в трансформаторе (пара витков вокруг сердечника: большой тяжелый бит в большинстве источников питания). Это меняет вас с 110 В переменного тока, скажем, до 20 В переменного тока.
Следующим шагом является преобразование его из переменного тока в комковатый тип постоянного тока: "мостовой выпрямитель" (четыре диода, расположенные таким образом, что независимо от того, течет ли напряжение на входе так или иначе, оно течет только на выходе). Таким образом, вместо взмахов вверх и вниз от +10 до -10, вы получите серию комков, от 0 до +10.
Затем это напряжение нуждается в "сглаживании": именно здесь появляются конденсаторы, и мы избавляемся от провалов нулевого напряжения. Каждый скачок напряжения заряжает конденсаторы; каждый провал разряжает его. Чем больше конденсатор, тем больше тока он может накапливать в виде заряда от этого "комка", и тем меньше время разряда. Это означает, что более плавный результат.
Но всегда есть некоторая флуктуация, поэтому на последнем этапе часто используется "регулятор напряжения", микросхема, которая берет что-то от, скажем, от 20 В до 3 В, и выдает надежные 5 В или около того.
Затем все компоненты берут это 5v и преобразуют его в 5v и 0v, чтобы обозначить 1 и 0 ... за исключением того, что они этого не делают. Они преобразуют его в "напряжение выше или ниже пары вольт", чтобы обозначить 1 или 0: так что есть много возможностей.
Процессор (и большинство устройств, таких как маршрутизаторы имеют один) - это, по сути, черный ящик, который считывает команду, выполняет действия, которые произносит команда, переходит к следующей команде в последовательности и повторяет ее. И делает это постоянно, с момента включения.
Процессор использует часть заряда от этих напряжений для хранения вещей во внутренней памяти в "энергозависимой" форме, которая разряжается довольно быстро, поэтому для "запоминания" требуется постоянное питание.
Одной из тех вещей, которые он сохраняет, является "программный счетчик", то есть, какая команда последней считана, поэтому он знает, как выполнить бит "перейти к следующей команде в последовательности" выше.
Когда вы включаете процессор в первый раз, он пытается прочитать в счетчике программ, и, поскольку память полностью разряжена, счетчик программ содержит нулевое значение. Это означает, что он загружается ... поэтому он читает в команде с нулевого адреса, который является загрузочным кодом. [nb: большое упрощение здесь! По правде говоря, другие вещи также должны достигнуть нуля для перезагрузки.]
Итак, когда вы включаете и выключаете питание, вам нужно ждать достаточно долго для:
- сглаживающие конденсаторы для разряда достаточно того, что ...
- способность регулятора напряжения регулировать напряжение недостаточна для поддержания напряжения выше ...
- уровень процессора, необходимый для сохранения счетчика программы, достаточно долго, чтобы ...
- память счетчика программы процессора разряжается.
Если вы этого не сделаете, то возможно, что разрядилась только его часть: счетчик программы хранит случайное значение. То же самое относится и к любой другой энергозависимой памяти в системе, поэтому, даже если ЦП вообще не разряжен, данные, сохраненные в памяти по адресу, на который указывает указатель программы, могут ухудшиться.
В любом случае, у вас есть процессор, который не знает, что ему нужно запустить загрузочный код, и вместо этого пытается запустить какой-нибудь случайный код где-нибудь. Это нехорошо и, вероятно, не сломает ваш роутер.
Одной секунды, наверное, достаточно. Пять секунд почти наверняка будет достаточно. Считать до десяти почти наверняка будет достаточно времени, чтобы пройти пять секунд. Поэтому отключите, сосчитайте до десяти, подключите снова.
Вот почему, когда вы получаете кратковременное отключение питания и свет на мгновение тускнеет, иногда ваш маршрутизатор работает нормально (ничего не разряжалось, оно продолжало работать, как было); иногда происходит сбой (память повреждена); иногда он перезагружается (питание отключалось достаточно долго, чтобы процессор полностью разряжал счетчик программы).
Если мы отделяем устройство от тяжелых частей блока питания (то есть наш маршрутизатор оснащен настенным блоком питания, и мы отключаем его от задней части маршрутизатора, а не от стены), то мы можем быстрее, так как мы отделили конденсаторы от устройства. Но нам все еще нужно дать энергозависимой памяти время на разрядку. Скорее всего, нам достаточно времени, чтобы отключить и снова подключить. Но ... эти лишние девять секунд так ценны? Возможно нет. Может быть, до пяти.
Таким образом, без разборки устройства и составления графика падения тока и времени разряда памяти для каждого компонента, сводка такова:
NO. Минимальное безопасное время перезагрузки точно не поддается количественной оценке. Он не постоянен даже для каждого устройства или даже для перезагрузки одного и того же устройства.
[Примечание: все вышеперечисленное является существенным упрощением реальности, но, по крайней мере, несколько лучше, чем «это конденсаторы!«]
[Редактировать: из службы технической поддержки, я знаю, что если вы скажете кому-нибудь отключить и снова подключить его, они довольно часто просто не сделают этого, но скажут, что сделали. Кажется, что люди не хотят просто выполнять действие, а затем отменять его: они будут сокращать действие до его логического завершения, где ничего не изменилось. Точно так же, если вы считаете, что кабель был отключен от сети и просите их проверить, они часто будут подтверждать вам, что он подключен идеально, даже не вставая с места для проверки.
Но когда отключение - это просто шаг к занятию чем-то другим (ожидание десять секунд), тогда все в порядке. Таким образом, если вы скажете им отключить, подождать десять секунд и снова подключить, они, скорее всего, сделают это. Так что десять секунд тоже имеют психологическое значение!
Самое лучшее, однако, это попросить их вытащить кабель, надуть его, чтобы убедиться, что нет пыли, разрывающего контакты и создающего шум, а затем вставить его обратно. Я НИКОГДА не знал кого-то, чтобы не отключить, когда дал эту инструкцию. Удар, очевидно, не делает ничего, кроме того, что он сначала отключил кабель, а затем немного подождал, прежде чем снова подключить. Просить их выполнить эту процедуру также далеко, FAR с большей вероятностью преуспеет, если вы думаете, что кабель только что был отключен. Это, очевидно, исправляет 100% этих ситуаций, но только часть из них когда-либо признает, что «когда я пошел на это, я обнаружил, что он отключен ...»]