Ответ «это конденсаторы» уже дан, но это еще не все. Давайте посмотрим на это немного глубже.
Большинство устройств работают от переменного напряжения в доме (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% этих ситуаций, но только часть из них когда-либо признает, что «когда я пошел на это, я обнаружил, что он отключен ...»]