Как запустить серверный блок питания
Собственно имеется серверный БП Ablecom pws-801-1r на 800 Вт, с возможной нагрузкой на 12 В линию около 62 А.
Обшарил весь интернет, не могу найти как запустить данного зверя без модуля-преобразователя, т.е. чего куда замкнуть, чтобы он стартовал.
Нашел я к нему распиновку, прикладываю в картинках. PSon замыкаю на землю, загорается зеленый светодиод, появляется напряжение на 12в, проходит секунды 2-3, загорается желтый светодиод, все тухнет.
Собственно нужна помощь профи, нашел дежурку, нашел псон, а запустить заразу не могу.
З.Ы. готов провести любые манипуляции, просто устал уже.
А обратное напряжение с нагрузки подключили? Может он уходит в защиту по отсутствию напряжения на нагрузке. А вот за каким следит надо поискать. Может в доке есть?
Давайте по порядку, я просто столько всего перепробовал уже)). На БП есть 2 вида напряжений - 5vstandby (дежурка) и 12 вольт, на них я вешал на каждый по 2 лампы 5 и 12 вольт соответственно. Доков именно на него в интернете нету, распиновка взята с аналога, с таким же разъемом. Подскажите принцип, готов замыкать +12 на +12
Есть контакты DC Return. Это возврат напряжения с нагрузки с целью контроля за наличием напряжения на нагрузке и его правильностью, т.е. стабилизация и защита от превышения. К сожалению нет точных данных по какому напряжению эта обратная связь. Прозвоните все контакты ДиСиРетон между собой. Может они все соединены между собой? Попробовать соединить эти контакты на +12 В.
Вот в этом идея.
Это видел уже, но меня смущает, что все питания в порядке и в пределах норм, т.е. на факт, что существует проблема в конденсаторах, диодах и пр. Разобраться бы как его запустить, тогда уж можно и выводы делать.
Дефект на БП2: Запускается и через 5сек уходит в дежурный режим.
На фото красным обведены резисторы которые были в обрыве. БП заработал.
Дефект на БП2: Запускается и через 5сек уходит в дежурный режим.
На фото красным обведены резисторы которые были в обрыве. БП заработал.
Дефект на БП1 БП включается, есть 12В и 5В, но вентилятор работает на максимальных оборотах и не горит зеленым светодиод.
На фото красным обведен резистор который был в обрыве. БП заработал.
Добрый день, подскажите друг подарил серверный блок питания, фирма DELL
Нужно его запустить, и получить выходное напряжение для трансивера 13.8 вольт.
Может кто схему подкинет, или есть опыт, подскажите.
Буду очень рад любой помощи!
Но вероятно, гудеть будет как реактивный самолет.
13,8 маловероятно, обычно стабильно работают до 13,2 (выше при нагрузке входят в режим защиты). Там же покопайтесь, что ссылку дали, почти на все блоки есть регулировка. Вентилятор в мусор, поставить другой, страшно воют.
Нашел, до 16в, можно разогнать.
Спасибо, позже дам знать все замеры фото сделаю, выложу сюда, вопрос такой, блок такой надежный, для трансивера если его использовать на даче или в командировке ?
Добрый день всем, такой вопрос в том что я блок запустил, всё работает выдает 15 вольт, но мне нужно не 15 вольт а 13.8 либо 14 , я могу в цепь этого блока поставить переменный резистор для регулировке вольтажа ?
пробовали, просадки нету сильной но он на данный момент выдает 12 вольт, нужно 13.8 или 14, ставил резистор, по рисункам которые снизу на сайте всё огонь но нужно чтобы регулировалась это показание
Вы уж определитесь, что он выдает: 12 или 15. Если 12, согласно шильдику - никакой резюк в плюс его не вытянет. Вам мало 12 В?
ДА выдает 12 вольт, с резаком выдает 16 вольт, нужно их опустить до 13.8 при помощи распиновки разъема там всё указанно, но я слаб в английском
Ежели с резюком 1к в сером проводе выдаёт 16, а без него - 12, значит защита по напряжению смещена на 16 вольт.
Далее там по картинке жёлтый пин А1 из разъёма нужно подключить через резистор от 2к до 10к к земле - чёрному пину(пишут что если резистор 1.3к, то выдаст примерно 13 вольт). Соответственно если резистор ставить переменный - можно поиграть с получившимся напряжением. Выход напряжения - зелёный пин D1. Запуск БП - соединить два красных пина.
Вот что там написано. На фото цветов не видно, может на реальном блоке есть, или это по цветам идущих к пинам разъёма проводов.
Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.
Загрузчик ОС
После прохождения POST BIOS ищет загрузочную область, опрашивая устройства в заданном порядке. В режиме Legacy загрузочная область на диске называется Master Boot Record (MBR). MBR — особая структура, размещаемая в первых 512 байтах диска. Эти 512 байт содержат следующие данные:
- код первого этапа загрузчика — с 0 по 445 байт;
- таблица разделов — с 446 по 509 байт;
- «магическое» число 0xAA55 — с 510 по 511 байт.
Когда BIOS находит MBR-запись, он копирует ее с диска в оперативную память по адресу 0x7C00 и совершает прыжок по этому адресу. После прыжка начинается первый этап (Stage 1) работы загрузчика. Из-за ограниченности в размерах, смысл работы первого этапа сводится к загрузке в память кода второго этапа (Stage 2) и передаче ему управления.
Код Stage 2 хранится сразу после структуры MBR и до начала первого раздела диска. Исторически этот промежуток содержит 31 КБ памяти, а в современных системах достигает 1 МБ. Тем не менее, для сохранения совместимости размер второго этапа не превышает 31 КБ.
Второй этап подготавливает окружение для запуска третьего этапа:
- загружает необходимые драйверы файловых систем;
- находит код третьего этапа на файловой системе;
- загружает код в оперативную память и передает ему управление.
- перевести процессор в Protected Mode;
- загрузить установленные расширения GRUB2;
- найти Stage 4 на файловой системе и передать ему управление.
- страничная адресация памяти; ;
- виртуальная память.
Проснись и пой
Включение сервера инициируется разными способами, среди которых нажатие кнопки Power On — чаще всего встречающийся, но не единственный. Другой вариант через команду по сети (Wake-on-LAN) либо через команды с внешних устройств (Wake-on-PCIe, Wake-on-Keyboard, Wake-on-Mouse). Команды выполняются только если включены соответствующие параметры в BIOS Setup Utility, о котором мы поговорим чуть позже.
Отдельным устройством считается BMC-модуль, который предоставляет расширенные возможности по управлению сервером. Подробнее об этой технологии читайте в нашем блоге.
Предыдущие способы являются интеллектуальными и требуют отправки специально сформированной команды по шинам данных. Более простой способ: включение при подаче электроэнергии на блок питания. В настройках BIOS этот параметр называется AC Power Loss и принимает одно из трех состояний:
- Power Off — сервер останется выключенным.
- Power On — сервер включится.
- Last State — сервер включится только если на момент потери питания он был включен.
Заключение
На первый взгляд простой и быстрый запуск сервера и загрузка операционной системы на деле представляет собой сложный и запутанный процесс с множеством нюансов. Прохождение этого процесса — маленькая эволюция, развивающая вычислительную мощность процессора от старых 16-ти битных процессоров до современных 64-х битных «монстров».
Последние посетители 0 пользователей онлайн
Power On Self-Test
Power On Self-Test (POST) — ключевой этап в работе BIOS. POST бывает сокращенным и полным. Полный POST проверяет все доступные контроллеры и тестирует всю доступную оперативную память, что может занимать много времени.
Сокращенный POST ускоряет процесс загрузки и включает в себя минимально необходимый набор действий:
- проверку целостности программ BIOS в ПЗУ, используя механизм сверки контрольной суммы;
- обнаружение и инициализацию основных контроллеров, системных шин и подключенных устройств;
- определение размера оперативной памяти и тестирования первого сегмента (64 килобайт);
- передачу управления загрузчику.
- отображение идентификатора теста, POST-кода на экране, либо с помощью семисегментных индикаторов на материнской плате;
- звуковая индикация;
- световая сигнализация комбинацией светодиодов.
Наиболее информативным способом получения информации о возможных неисправностях считается отображение текущего POST-кода. При успешном прохождении тестов коды быстро сменяют друг друга, но в случае неисправности POST останавливается и можно будет увидеть идентификатор проваленного теста. Производители материнских плат всегда прилагают расшифровку, что обозначает тот или иной код.
На современных материнских платах присутствует светодиодная индикация, которая позволяет определить неисправный компонент. При успешном запуске сервера можно слышать звуковой сигнал, сообщающий, что POST пройден успешно. По продолжительности и количеству звуковых сигналов так же можно определить сбойный компонент.
В некоторых случаях, когда требуется максимальная точность при диагностике, можно прибегнуть к помощи внешнего устройства, которое называется POST-карта. Материнские платы рассылают информацию о POST-тестах по шинам данных, а POST-карта обрабатывает эту информацию и выводит с помощью доступных индикаторов.
Последние посетители 0 пользователей онлайн
BIOS Setup Utility
У BIOS есть специальное меню настройки, именуемое BIOS Setup Utility. Зайти в него можно нажатием специальной клавиши, во время прохождения POST. Чаще всего клавишами для входа в BIOS являются Del и F2, тем не менее, при загрузке всегда указано, нажатие какой клавиши откроет настройки BIOS.
BIOS Setup Utility предоставляет интерфейс для настройки, для взаимодействия с которым требуется только клавиатура. BIOS Setup Utility предоставляет информацию об установленном оборудовании и позволяет изменять параметры работы материнской платы и подключенного оборудования.
Возможные названия и опции того или иного параметра зависят от многих факторов, среди которых:
- версия BIOS;
- модель материнской платы;
- модель установленного в материнскую плату оборудования.
Загрузка первой программы
Первым этапом запуска сервера является включение блока питания и установка сигнала Reset для процессора. При наличии сигнала Reset генератор частоты процессора не работает, а регистры процессора сбрасываются до значений, установленных производителем процессора.
При запуске в блоке питания происходят переходные процессы, из-за которых выходное напряжение может оказаться вне допустимых пределов, что негативно скажется на работающем процессоре. Поэтому сигнал Reset не снимается до полной стабилизации поступающего питания.
После стабилизации напряжения блок питания устанавливает сигнал Power Good. Этот сигнал означает, что материнская плата может запускать все компоненты сервера. Далее чипсет отображает в адресное пространство все подключенные устройства, в том числе ПЗУ (постоянное запоминающее устройство) с кодом Basic Input/Output System (BIOS). Следом снимается сигнал Reset и запускается генератор частоты процессора.
BIOS — система, предоставляющая API для работы с оборудованием и подключаемыми устройствами. Одной из важных целей BIOS является инициализация и тестирование оборудования при запуске.
Вне зависимости от количества процессоров в системе при запуске сервера пробуждается только одно ядро одного процессора, а остальные ядра остаются в режиме сна. Пробужденное ядро обозначается Bootstrap Processor (BSP, далее — процессор). После исчезновения сигнала Reset регистры процессора заполнены таким образом, что процессор функционирует в специальном 32-х битном режиме, который называется Initial Processor Mode.
Initial Processor Mode — режим работы, в который 64-х битный процессор попадает только после сброса. В этом режиме процессор способен выполнять 32-х битные команды, а адресное пространство составляет 4 ГиБ.
После исчезновения сигнала Reset, счетчик команд процессора указывает на адрес 0xFFFFFFF0, который называется Reset Vector. По этому адресу лежит первая команда, которую декодирует и исполняет процессор.
Размещение первой инструкции в конце адресного пространства имеет историческое обоснование. При разработке процессора Intel 8086 в начале адресного пространства находился вектор прерываний, за которым следовала оперативная память, объем которой мог быть любым. Чтобы не возникло пересечений с оперативной памятью, адрес первой команды был взят в конце адресного пространства.
В дальнейшем, с появлением Intel 80286, вектор прерываний можно было передвинуть в любое место. Тем не менее, даже современные процессоры запускаются в режиме совместимости с 8086 и вектором прерываний по адресу 0x0.
При обращении по адресу 0xFFFFFFF0 процессор получает первую команду с ПЗУ. В режиме Legacy эта команда представляет из себя длинный прыжок или Far Jump в сегмент памяти с кодом BIOS. После выполнения первого длинного прыжка процессор переходит в 16-ти разрядный Real Mode и приступает к выполнению кода BIOS.
Real Mode — режим совместимости с устаревшими 16-ти битными процессорами. В этом режиме доступны только 16-ти битные команды, а адресное пространство, которое называется «нижней памятью», вмещает только 1 МиБ.
Как уже отмечалось ранее, исполняемый код BIOS хранится на внешнем устройстве, работа с которым не отличается большой скоростью, поэтому первое, что делает BIOS — инициализирует оперативную память и копирует в нее собственный код из ПЗУ. BIOS сохраняет совместимость с устаревшими процессорами, поэтому выполняет все действия в 16-ти битном режиме.
Объявления
Точно. Я перепутал с 4026. В таком случае мигание будет менее хаотичным. Включаться светодиоды будут последовательно, но с паузами, задаваемыми вторым таймером.
Левый таймер натикивает выходы счётчика, правый включает-выключает вывод состояния счётчика. В зависимости от соотношения частот таймеров получается та или иная картина перемигивания светодиодов.
как показывает многолетняя практика - чем больше перестраховок и неразумного соблюдения ТБ, тем больше вероятность как раз влететь под это . Главное правило - кирпич для каждого давно подвешен на ниточке на небе и судьбу не обманешь, так что не нужно дуть на молоко и списывать на "может быть" банальные проявления невнимательности и тупости. Дуя на молоко можно сдохнуть от нехватки кислорода или лопнувшего сосуда . Так что при наличии опыта, внимательности и неспешки в работе, а также мозгов - можно и не такое делать, главное ПОНИМАТЬ что это - опасно . я иногда обкатывая ИИП или что-то с питанием от сети и открытое даже на перекур выходя - кидаю сверху газету - никто не влезет, кошки - не полезут сразу мордой, если что- то рядом - никто из домашних сразу не коснется напрямую токоведущих частей , но вот вешать табличку: "Осторожно высокое напряжение!" и обносить сеткой зону ремонта, как того требует ТБ - у меня как-то не хватает ума. Я понимаю, мои знают - все спокойны . ну а дураков - теория Дарвина отсеет.
Когда я впервые увидел такую надпись при опросе версий прошивок HP DL380, то был несколько обескуражен. Эм, ну ладно, если очень нужно – скачай и поставь. Но что за софт может быть в банальном блоке питания? Оказалось, что для диагностики местной системы жизнеобеспечения и обработки отказов по питанию. Там натуральный кластер из блоков питания, со своим арбитром и логикой. Под катом рассказ об устройстве такого "кластера" и о том, почему 2 x 1400 = 2300W.
Два блока питания – в два раза выше надежность? Не всегда, потому что зависит от настроек системы электропитания. Вот о ней подробнее и поговорим. В качестве предметов рассказа я выбрал оборудование среднего серверного класса, вроде такого:
То есть, не блейды и не мейнфреймы – у них все иначе устроено. Обратите внимание, форм-фактор сервера не имеет значения для наличия или отсутствия дополнительных блоков питания.
Начнем с ответа на вопрос "зачем сколько БП, если можно просто хранить небольшой запас запчастей". Системы с резервированием в сервере всегда полезны, даже если не рассматривать отказоустойчивость. Например, они повышают удобство обслуживания и позволяют нам не ночевать в серверной при замене дисков или тех же блоков питания.
Например, второй блок питания поможет, если:
Выйдет из строя ИБП;
Дорожные рабочие найдут месторождение электричества;
Возникнет необходимость переноса сервера в другую стойку;
Два блока питания дают больше гибкости при проектировании серверной комнаты. Например, рабочая схема подключения у одного клиента: в серверной две фазы, подключены к разным блокам питания серверов. Одна фаза подключена к UPS, а вторая работает только через стабилизаторы. Но эта линия идет от генератора с автозапуском. При отключении электричества дизель стартует и серверы продолжают работать, даже если UPS разрядятся. Это всего лишь один из вариантов, подобранный с учетом пожеланий клиента и возможностей бюджета.
Итого, несколько БП нужны для удобства администратора, повышения надежности системы и обеспечения большей мощности.
Простейший вариант систем с двумя блоками питания выглядит как запитывание отдельных комплектующих компьютера от разных блоков, при этом один из них управляющий и питает материнскую плату. Подобные решения практикуют геймеры и майнеры, потому что для установки трех и более видеокарт одного источника питания не хватит. Для подключения используют такие адаптеры:
При нажатии на Power замыкаются зеленый сигнальный провод с "землей", давая команду на запуск обоим блокам питания.
Помню, когда-то давно был у меня компьютер уровня Pentium III с набором SCSI дисков. Штатного блока питания перестало хватать, и я подключил старый АТ-блок отдельно для жестких дисков. Запуск чудо-машины происходил так: нажимаем на кнопку дополнительного питания и ждем жужжания дисков, затем включаем основной БП и начинается загрузка.
Даже в эпоху всепроникающего Китая для "самоделкиных" существует множество схем подключения двух блоков питания своими руками, чтобы получилась похожая конфигурация:
Но вернемся к промышленным серверным решениям.
Устройство питания по своей логике довольно простое. Блоки подключаются к специальной корзине Power Distribution Backplane, где также присутствует микроконтроллер Power Distribution Unit (не путайте с распределителем питания для серверной стойки). Контроллер отвечает за схему использования доступных БП: одновременно или в режиме primary-backup.
Столь продвинутую подсистему питания можно настраивать под конкретные потребности. При использования сервера с двумя блоками питания доступно несколько режимов работы:
Резервирование, при котором один блок питания нагружен постоянно, а второй готов подхватить нагрузку в случае сбоя;
Очень напоминает RAID – его отказоустойчивый уровень 1 и производительный 0.
Большинство производителей позволяют администратору выбрать необходимый режим. Например, в таком сервере HP настройка через BIOS выглядит следующим образом:
Изображение немного устарело, так как в новых системах используется настройка через iLO, но для понимания сути ее достаточно.
Посмотрим на выдаваемую мощность пары блоков питания HP DL360 при разных режимах настройки и небольшой нагрузке. Для этого используем консольную утилиту hpasmcli.
Не обманул производитель, блоки питания выдают примерно одинаковую мощность.
И правда, при использовании режима распределения нагрузки блоки нагружены примерно одинаково. Но при включении отказоустойчивости используется только один блок питания, а второй переводится в Standby и расходует минимум энергии.
Своеобразный "спящий режим" нужен для того, чтобы избежать холодного старта при подключении резервного БП, сэкономить время и минимизировать риски выхода блока питания из строя в процессе его активизации. Как и в случае с бытовыми лампочками, при любом холодном включении образуются пиковые нагрузки на элементную базу электроцепи, что может привести к ее порче.
Настройка режимов работы у каждого производителя выполняется по-своему. Например, у Lenovo (IBM) в системах с двумя блоками питания настройка через GUI выглядит следующим образом:
На выбор предлагаются три режима работы:
Отказоустойчивость без снижения энергопотребления – вернемся к нему позже;
Отказоустойчивость с понижением мощности;
Generic-серверы, вроде Intel и Supermicro, не всегда хорошо документированы и открытой информации о настройках режимов работы БП не оказалось. Пришлось обратиться к нашим инженерам и форумам. Оказалось, что подобные системы обычно работают они в режиме балансировки нагрузки.
Если вы плотно работали с подобными платформами и владеете другой информацией – поделитесь в комментариях, пожалуйста.
Еще интереснее обстоят дела с системами из трех и более БП.
Как и в аналогии с RAID, большее число узлов открывает более изощренные схемы использования. Например, у сервера Supermicro с тремя блоками штатно используется режим работы 2+1, то есть работают одновременно два, а третий в резерве.
В случае с четырьмя БП в Lenovo можно настроить использование блоков питания более гибко. Интерфейс даже считает показатели мощности самостоятельно:
С точки зрения баланса производительности и надежности, подобные конфигурации из 4 БП оправданы только при использовании "прожорливых" комплектующих. В остальных случаях запас по мощности будет избыточным, а удобство и запас надежности обеспечивают 2 блока питания с разными подводами электричества.
На мой взгляд, в таких платформах интереснее вместо третьего и четвертого БП поставить резервные батареи (примеры для Supermicro и HP). Они подстрахуют от проблем с UPS и минут на 5 повысят время работы без электричества в сети. Кроме того, с подобными модулями удобнее заниматься обслуживанием железа: выдернул кабель – и спокойно перенес сервер в другой шкаф. Время работы сервера от встроенной батареи составляет около пяти минут.
Опыт инженеров Сервер Молл показывает, что блоки питания на втором месте по выходу из строя, после жестких дисков. По крайней мере, в ходе восстановления серверов эти компоненты часто меняются из-за применения в их конструкции электролитических конденсаторов.
Если к сбоям дисковой подсистемы мы привыкли и держим запасной диск наготове, то замена для системы питания встречается на полках ЗИП реже. Ситуацию в какой-то степени спасает гарантия и возможность получить замену отказавшего БП через пару дней с курьером, но Закон Мерфи со счетов сбрасывать не стоит. В моей практике был случай, когда во время ожидания замены отказавшего БП вышел из строя оставшийся. Хорошо, что на сервере ничего жизненно-важного не было.
Если оставить в стороне надежность, то остается вопрос с мощностью. Как правило, лучше взять сразу два блока питания, каждый с достаточным запасом выходной мощности. Но если бюджет таких вольностей не позволяет, то придется взвешивать потребности более детально и учитывать проседания мощности источников питания. Обратимся к руководству от HP, в котором представлен график КПД системы питания в разных конфигурациях:
В случае низкой нагрузки машины КПД одного блока питания выше, но картина меняется, если у нас высоконагруженный сервер.
Что же будет, если один из блоков питания выйдет из строя, а мощности оставшегося не хватит?
У многих вендоров предусмотрен механизм снижения энергопотребления на случай сбоя – PowerSafe Guard у Fujitsu, Throttling у Lenovo. Использование подобных механизмов не всегда спасает ситуацию, да и существенное падение производительности порой хуже простоя.
Есть еще один нюанс: возрастает нагрузка на второй блок питания, что повышает вероятность его выхода из строя. Лучше исходить из того, что один блок питания из пары должен обеспечивать сервер целиком, хотя бы при штатных нагрузках. Разница в стоимости блоков питания разной мощности не так уж велика, поэтому стоит выбирать более производительные модели. Например, вот цены на варианты от Supermicro:
Блок питания PWS-406P-1R на 400 Ватт стоит в среднем 12 000 ₽;
Цены взяты с Яндекс маркета, так что в реальности они могут быть даже ниже. Экономия 4 000 ₽ в ущерб отказоустойчивости выглядит так себе даже для небольшого сервера.
Современный блок питания содержит набор диагностических механизмов для контроля внутренней системы охлаждения, напряжения, силы тока и массы внутренних состояний.
Помимо автоматического отключения при перегреве, полезно иметь возможность подключить к централизованному мониторингу показатели работы подсистемы питания. Например, с их помощью можно прогнозировать выход из строя определенного БП или выявить нестабильный подвод электричества. Все это обеспечивают микроконтроллеры, внутреннюю логику которых производитель периодически совершенствует в новых обновлениях.
При всех описанных преимуществах, у решений с несколькими блоками питания есть и отрицательные стороны:
Необходимость покупать более дорогие проприетарные блоки питания. Как правило, они должны быть одинаковыми, что может вызвать проблемы с заменой для очень старых серверов;
Узким местом становится управляющий блоками питания контроллер и плата, к которой они подключаются (Power Distribution Backplane);
При малой нагрузке больший расход электроэнергии, как следствие специфического алгоритма использования;
Если у вас есть собственный негативный опыт работы с конфигурациями из нескольких блоков питания – было бы интересно почитать в комментариях.
В завершение приведу несколько полезных ссылок на калькуляторы мощности популярных вендоров:
Если вам тоже лень оценивать мощность при выборе очередного нового сервера, то эти инструменты помогут при расчете как мощности блоков питания, так и энергопотребления всего ЦОД.
Запуск сервера — длинная и сложная последовательность действий, зависящая от аппаратной составляющей, настроек и используемого программного обеспечения. Многие, даже опытные и квалифицированные системные администраторы, плохо себе представляют, что именно происходит в процессе запуска сервера, поэтому мы решили разобрать этот процесс детально.
Чтобы не разбирать все возможные случаи, мы рассмотрим загрузку при следующих условиях:
- 64-х битный процессор Intel;
- режим загрузки Legacy;
- дисковая разметка MBR;
- загрузчик GRUB2.
Ядро ОС
GRUB2 следует спецификации Multiboot для загрузки исполняемого файла ядра. Загрузчик проверяет магическое число 0x1BADB002 в начале ядра и сверяет контрольную сумму, чтобы убедиться, что ядро совместимо со спецификацией. После успешной проверки ядро можно загрузить в оперативную память и передать ему управление.
Согласно той же спецификации, загрузчик предоставляет ядру информацию о системе, такую как:
- текущий режим работы процессора;
- количество обнаруженной оперативной памяти;
- тип видеовывода (текстовый или пиксельный);
- разрешение экрана.
Long Mode — основной режим 64-х битных процессоров. В этом режиме процессор способен выполнять 64-х битные команды и использовать 64-х битные регистры общего назначения. Адресное пространство вмещает 16 ЭиБ. Long Mode упразднил сегментированную организацию памяти, присущую 32-х битной архитектуре.
Несмотря на огромное адресное пространство для адресации физической памяти используется только 48 бит из возможных 64, что снижает максимальное количество оперативной памяти до 256 ТиБ, что в 65536 раз меньше адресного пространства. В обозримом будущем планируется расширить физическую адресацию до 57 бит.
После перехода в Long Mode ядро выполняет минимальный набор необходимых для работы действий:
- настраивает страничную адресацию памяти;
- загружает драйверы и выполняет инициализацию используемого оборудования;
- настраивает планировщики памяти и процессов;
- находит и запускает init.
На BSP запущено ядро операционной системы, которое в ходе инициализации получило информацию о доступных процессорах в системе, используя таблицы ACPI. BSP, используя собственный LAPIC, отправляет последовательность прерываний «Init — StartUp — StartUp» для пробуждения всех AP. Прикладные процессоры после запуска так же необходимо инициализировать и перевести в Long Mode, но теперь этот процесс быстрее, так как эта работа уже выполнена основным процессором.
После инициализации всех AP планировщик процессов запускает служебный процесс, который называется «бездействие» или Idle. Как следует из названия, этот процесс ничего не делает и занимает процессор, когда нет других процессов.
Когда всё настроено и готово к работе, ядро операционной системы запускает первый процесс в пространстве пользователя — Init. Тот, в свою очередь, запускает остальные процессы в пространстве пользователя. После запуска init-процесса ядро переходит в режим ожидания и бездействует до появления заданий в пространстве ядра.
После запуска всех процессов сервер становится доступен по сети, а на консоли можно видеть приглашение Logon экрана.
Читайте также: