Что такое nmi в компьютере
Прерывание (англ. interrupt) — сигнал, сообщающий процессору о наступлении какого-либо события. При этом выполнение текущей последовательности команд приостанавливается и управление передаётся программе обработки прерывания, которая реагирует на событие и обслуживает его, после чего возвращает управление в прерванный код.
Таким образом, система прерываний позволяет повысить эффективность использования процессора за счет освобождения его от функций слежения за готовностью периферийных устройств к обмену данными. В зависимости от источника возникновения сигнала прерывания делятся на:
─ асинхронные или внешние (аппаратные) — события, которые исходят от внешних источников (например, периферийных устройств) и могут произойти в любой произвольный момент: сигнал от таймера, сетевой карты или дискового накопителя, нажатие клавиш клавиатуры, движение мыши;
─ внутренние — события в самом процессоре как результат нарушения каких-то условий при исполнении машинного кода: деление на ноль или переполнение, обращение к недопустимым адресам или недопустимый код операции;
─ программные (частный случай внутреннего прерывания) — инициируются исполнением специальной инструкции в коде программы. Программные прерывания как правило используются для обращения к функциям встроенного программного обеспечения (firmware), драйверов и операционной системы.
Схему передачи управления при прерывании можно отобразить следующим образом.
1. при поступлении прерывания производится идентификация устройства которое его запросило;
2. запоминается информация о состоянии процессора;
3. выполняется инициализация процессора для выполнения программы обработки прерывания;
4. производится запуск и исполнение программы обработки прерывания;
5. восстанавливается состояние процессора и возобновляется работа прерванной программы.
Процесс сохранения текущего состояния на момент прерывания и его последующее восстановление называется контекстным переключением. Под состоянием процессора понимается содержимое счетчика (указателя) команд и всех его регистров на момент прерывания.
Данная схема является упрощенной, так как не рассматривает возможность появления одновременно нескольких прерываний, или появления при обработке одного прерывания следующего.
Существует большое количество классификаций прерываний.
В зависимости от возможности запрета внешние прерывания делятся на:
─ маскируемые — прерывания, которые процессор либо выполняет немедленно, либо игнорирует. Поведение процессора регулируется флагом IF в регистре флагов 0 – запрещены, 1 – разрешены (В некоторых процессорах, наряду с возможностью общего маскирования обеспечено программное маскирование некоторых типов прерываний, т.е. процессор может в определенные моменты времени запрещать прерывания от второстепенных устройств и работать только с рядом основных);
─ немаскируемые (англ. Non maskable interrupt, NMI) — обрабатываются всегда, независимо от запретов на другие прерывания. Например это сигналы об ошибках.
Для маскируемых и немаскируемых прерываний обычно используют различные входные сигналы и соответствующие им входы. Приоритет немаскированных прерываний всегда выше.
При поступлении прерывания оценивается его приоритет. Если приоритет выполняемой программы выше, чем у прерывания, то обработка прерывания будет отложена до окончания выполнения программы (выполняемой программой может быть и обработка другого прерывания). Также при поступлении одновременно нескольких прерываний на обработку должно быть отправлено прерывание с наибольшим приоритетом. Таким образом, необходимо более подробно рассмотреть вопрос оценки приоритета прерываний.
Приоритеты могут быть фиксированными и динамически перестраиваемыми.
Простейший способ задания фиксированных приоритетов заключается в выбираемом разработчиком порядке присоединения линий сигналов запросов к входам системы прерывания. Сами запросы фиксируются в регистре запросов прерываний в строго определенных разрядах. В системах с фиксированным приоритетом при выборе запроса для обработки процессор проверяет (программно или аппаратно) состояние регистра прерываний. Поиск источника запроса прерывания прекращается при обнаружении самого старшего единичного разряда регистра прерывания. Приоритет обслуживаемого запроса определяется его местом в последовательной цепочке. Более быстродействующим периферийным устройством обычно назначают более высокий приоритет. В подобных системах приоритет устройства является жестко фиксированным и изменить его можно только новым соединением линий запросов на входах системы прерываний.
В системах с динамически перестраиваемыми приоритетами последние могут программно переназначаться, при этом наиболее широко используемым является способ кольцевого (кругового) приоритета. В системах с кольцевым приоритетом выбор прерывания для обработки также осуществляется по результатам последовательного опроса регистра прерываний. Однако такой опрос начинается с опроса устройства, следующего по приоритету за только что обслуженным. После проверки последнего разряда регистра запросов прерываний следующим опрашивается самый старший разряд регистра. Кольцевой приоритет рациональнее фиксированного. При наличии частых запросов прерываний он предотвращает блокировку запросов от периферийных устройств с низким уровнем приоритета и не позволяет быстрым периферийным устройством монополизировать СШ для реализации собственных обменов.
Непроизводительные потери времени, затрачиваемые на последовательный поиск источника запроса, являются существенным недостатком метода линейного опроса. Указанного недостатка лишены векторные системы прерывания. Векторные системы прерывания наряду с функцией формирования адреса обработчика поступившего запроса обеспечивают выбор наиболее приоритетного прерывания. В большинстве случаев векторная система прерываний реализуется в виде специализированной СБИС —программируемого контроллера прерываний (ПКП), содержащего логику для назначения приоритетов поступающим запросам. В англоязычной литературе ПКП обозначается PIC (Programmable Interrupt Controller). Рассмотрим функциональную схему контроллера прерываний.
В ответ на запрос прерывания от ПУ контроллер прерываний формирует сигнал запрос прерывания INT, поступающий на вход INTR МП. Реагируя на этот сигнал, МП выдает сигнал подтверждения прерывания INTA (INTerrupt Acknowledge), который поступает в ПКП и используется в нем для считывания вектора прерывания поступившего запроса. Приняв сигнал INTA, контроллер прерываний выставляет на системную шину данных вектор или код прерывания, который считывается процессором. С помощью вектора прерывания процессор определяет адрес подпрограммы обслуживания прерывания. Формирование векторов прерывания и выявление запроса с наивысшим приоритетом осуществляется внутренними схемами ПКП.
Важной функцией приоритетной обработки является организация управления при поступлении запроса прерывания в момент, когда обслуживается предыдущий запрос прерывания. Различают одноуровневые и многоуровневые системы прерываний. В одноуровневых обслуживание нового прерывания возможно только после завершения обработки текущего. Приоритет запросов прерываний в одноуровневых системах иногда называют относительным приоритетом. Если в момент обслуживания такого запроса приходит запрос с более высоким приоритетом, то обслуживаемое прерывание не прерывается и после его окончания выбирается запрос с наивысшим приоритетом из числа поступивших. Для характеристики прерываний в многоуровневых системах используют понятие абсолютного приоритета. В таких системах запросы с более высоким приоритетом могут прерывать обслуживание текущего прерывания с меньшим приоритетом, т. е. допускается прерывание прерывания.
В качестве примера рассмотрим организацию прерываний в микропроцессорной системе на базе процессора х86. Прерывания в такой системе обрабатываются с помощью ПКП, реализованного фирмой Intel в виде СБИС 8259А.
ПКП обеспечивает развязку между внешними источниками прерываний и процессором. Подобная схема применяется в ВМ различных архитектур. На схеме показаны периферийные устройства, подключенные к линиям запроса прерывания IRQ (interrupt request) системной шины ISA. Сигналы прерываний от периферийных устройств, передаваемые по этим линиям, поступают на входы IR контроллера PIC. В IBM PC- совместимых ПК каждое периферийное устройство подключено к своей индивидуальной линии IRQ, и для входа в прерывание периферийное устройство только выставляет запрос. Недостатком подобной организации является трудность подключения большого числа периферийных устройств, поскольку из-за ограниченного числа линий IRQ для дополнительных периферийных устройств свободных линий может не оказаться, а подключение нескольких периферийных устройств к одной линии IRQ недопустимо. Данный недостаток решается каскадным подключением нескольких контроллеров прерываний.
Вектор прерывания — закреплённый за устройством номер, который идентифицирует соответствующий обработчик прерываний. Векторы прерываний объединяются в таблицу векторов прерываний (англ. Interrupt Descriptor Table (IDT)). Местоположение таблицы зависит от типа и режима работы процессора.
Первый этап инициализации выполняется BIOS, перед загрузкой ОС. Второй непосредственно самой операционной системой. Операционной системе доступно изменение некоторых адресов прерываний.
BIOS (basic input/output system) — базовая система ввода-вывода — это встроенное в компьютер программное обеспечение, которое ему доступно без обращения к диску. На PC BIOS содержит код, необходимый для управления клавиатурой, видеокартой, дисками, портами и другими устройствами.
Обычно BIOS размещается в микросхеме ПЗУ (ROM), размещенной на материнской плате компьютера (поэтому этот чип часто называют ROM BIOS). Эта технология позволяет BIOS всегда быть доступным, несмотря на повреждения, например, дисковой системы. Это также позволяет компьютеру самостоятельно загружаться. Поскольку доступ к RAM (оперативной памяти) осуществляется значительно быстрее, чем к ROM, многие производители компьютеров создают системы таким образом, чтобы при включении компьютера выполнялось копирование BIOS из ROM в оперативную память. Задейтвованная при этом область памяти называется Shadow Memory (теневая память).
В настоящее время, почти все материнские платы комплектуются Flash BIOS, BIOSом, который в любой момент может бытть перезаписан в микросхеме ROM при помощи специальной программы.
BIOS PC стандартизирован, поэтому, в принципе менять его, также как, например, операционные системы нет необходимости. Дополнительные возможности компьютера можно использовать только использованием нового программного обеспечения.
BIOS, который поддерживает технологию Plug-and-Play, называется PnP BIOS. При использовании этой технологии BIOS должен быть обязательно прошит во Flash ROM.
– Как определить, что установленный на материнской плате BIOS, прошит во Flash ROM?
- 28Fxxx — 12V Flash память
- 29Cxxx — 5V Flash память
- 29LVxxx — 3V Flash memory (раритет)
- 28Cxxx — EEPROM, почти то же, что и Flash память
- 27Cxxx — с окошком. EPROM: только для чтения, требует программатор для записи и ультрафиолетовую лампу для стирания
- PH29EE010: SST ROM Чип — перепрошиваемый
- 29EE011: Winbond чип — 5V Flash память
- 29C010: Atmel Chip — 5V Flash память
– Зачем необходима перепрошивка новых версий BIOS?
Существует несколько причин, по которым это приходится делать. Основная из них — Windows 95 не всегда хорошо конфигурируется, если используются старые версии BIOS.
В настоящее время используются жесткие диски объемом более 528Мбайт. Для работы такого диска в системе необходимо поддержка LBA со стороны BIOS. Если BIOS не поддерживает LBA, то для работы с большими жесткими дисками приходится применять специальные утилиты. Применение таких утилит вызовет работу Windows 95 в compatible mode, что отрицательно сказывается на быстродействии.
Полная поддержка Plug-and-Play со стороны Windows 95 возможна только в случае применения PnP BIOS. Это очень веская причина для перепрошивки BIOS.
Кроме вышеуказанного, в новых версиях BIOS исправляются мелкие ошибки и недоработки. Новые версии могут содержать новые возможности, как то загрузка с CD ROM, SCSI перед IDE и т.п.
– Где можно скачать новые версии BIOS?
Во-первых новые версии BIOS доступны на сайтах их производителей. Во-вторых обычно производители материнских плат предлагают BIOSы для своих изделий. Так что, если знать производителя и название материнской платы, проблем не возникнет.
В принципе, название материнской платы можно и не знать. Обычно допускается прошивка BIOS от других плат, если на них установлен такой же чипсет и контроллер ввода-вывода. Однако такой возможностью следует пользоваться только в случае крайней необходимости, так как возможны другие несоответствия, например в количестве слотов и т.п., а прошивка неправильного BIOS может привести к тому, что материнскую плату придется выкидывать.
– Что делать, если производителя и название материнской платы определить не удается?
Чаще всего, производителя и название материнской платы можно определить по идентификационной строке, которую выдает BIOS сразу при включении компьютера.
Для AMI BIOS эта строка имеет вид, похожий на
51-0102-1101-00111111-101094-AMIS123-P или 40-01S5-ZZ1124-10101111-060691-OPWBSX-F,
где производитель определяется третьей группой цифр. Далее необходимо найти свой идентификационный номер в таблице соответствия номеров и названий производителей. Определить название материнской платы можно по всей идентификациолнной строке, пользуясь тем же документом.Идентификационная строка Award BIOS имеет вид
2A59CQ1CC
и позволяет определить чипсет (первые пять цифр и букв — 2A59C), производителя материнской платы (следующие два символа — Q1) и модель материнской платы (оставшаяся часть строки — CC). Далее необходимо посмотреть обозначения чипсетов, производителей и моделей в идентификационных строках.
– Как перепрошить Flash BIOS?
- awdflash xxx.bin (для Award BIOS)
- amiflash xxx.bin (для AMI BIOS)
- mrflash xxx.bin (для MRBIOS)
- Большинство программ прошивки при запуске спрашивают, сохранить ли текущую версию BIOS. На этот вопрос рекомендуется ответить положительно, так как новый BIOS может работать не так как хотелось бы.
- Некоторые производители материнских плат могут предлагать свои собственные программы-прошивальщики. В таком случае лучше пользоваться ими.
- Перед прошивкой новой версии BIOS выключите опцию System BIOS Cacheable в Setup.
- Если в Вашей системе процессор разогнан, то на время перепрошивки BIOS поставьте его на штатную частоту.
- В Setup в разделе Chipset Features Setup, отключите Video Bios Cacheable.
- Выйдете из Setup.
- Перезагрузитесь под чистым DOS (нажав F8 и выбрав Safe Mode Command Prompt only)
- Перепрошейте BIOS и перезагрузитесь
- Войдите в Setup и установите опцию Video Bios Cacheable в Enable.
– Что будет, если запортить BIOS или прошить неправильную версию?
Скорее всего, компьютер не будет грузиться, даже не подавая признаков жизни.
– Как восстановить поврежденный BIOS?
- Беpем любую pаботающую мать, поддеpживающую флэш (совеpшенно необязательно, чтоб она была на том же чипсете, на котоpый pассчитан BIOS, котоpый мы хотим записать). Можно пpосто найти флэш или ПЗУ от матеpи, аналогичной той, флэш из котоpой мы будем пеpеписывать, и вpеменно поставить его (пеpеставив, если нужно, джампеpа типа флэша). Или, если есть пpогpамматоp, только он не умеет писать флэш — найти ПЗУ подходящего pазмеpа и записать его.
- Вынимаем флэш или ПЗУ из этой матеpи, обвязываем его с двух концов двумя кольцами нитки (чтоб можно было его легко извлечь) и неплотно втыкаем назад в панельку.
- Загpужаемся в "голый" ДОС, выдеpгиваем за эти два кольца стоящий в матеpи флэш или ПЗУ (все pавно он нужен только пpи загpузке), если нужно, пеpеставляем джампеpа типа флэша, и вставляем флэш, котоpый нужно записать. Главное тут — ничего не замкнуть :)
- Запускаем пpогpамму записи, pассчитанную на мать, на котоpой пишем, BIOS с котоpым гpузились и флэш, котоpый нужно записать (пpогpамма должна уметь пеpеписывать флэш целиком, напpимеp, из комплекта mr-bios или asusовский pflash). Пишем, выключаем питание и вынимаем готовый флэш. Все.
- Извлечь PCI-видеокарту (все нижеописанное не будет работать с PCI-видео, так как для инициализации PCI необходим BIOS)
- Установить старую ISA-видеокарту и подключить монитор
- Вставить загрузочную дискету в дисковод А:
- Включить компьютер
- Компьютер заработает благодаря Award Boot Block
- Вставить предварительно созданную дискету с прошивальщиком и правильным BIOS
- Перепрошить BIOS
- Перезагрузиться
- Выключить компьютер и поменять видеокарту обратно. Все — теперь можно работать
- Установить Flash Recovery jumper в положение recovery mode (к сожалению, такую возможность имеют не все платы)
- Вставить загрузочную bootable upgrade дискету, которой комплектуется каждая интеловская плата, в дисковод A:
- Перезагрузиться
- Во время этой процедуры экран будет оставаться темным, так как в непрошиваемой boot block area не содержатся функции работы с видео. Эта процедура может контролироваться только пищанием спикера и миганием лампочки дисковода. Когда компьютер пискнеть и лампочка дисковода загорится, можно считать, что система копирует необходимые данные во Flash ROM. Как только лампочка дисковода погаснет, прошивка закончится.
- Выключить компьютер
- Вернуть Flash Recovery jumper обратно в положение по умолчанию
- Вынуть дискету из дисковода и включить компьютер
– Что такое PROM, EPROM и ЕEPROM и чем они отличаются?
PROM (programmable read-only memory — программируемая память только для чтения) — это чип памяти, данные в который могут быть записаны только однажды. То что записано в PROM, не вырубишь топором :) (хранится в нем всегда). В отличии от основной памяти, PROM содержит данные даже когда компьютер выключен.
Отличие PROM от ROM (read-only memory — память только для чтения) в том, что PROM изначально производятся чистыми, в тот время как в ROM данные заносятся в процессе производства. А для записи данных в чипы PROM, применяются специальные устройства, называемые программаторами.
EPROM (erasable programmable read-only memory — стираемая программируемая память только для чтения) — специальный тип PROM, который может очищаться с использованием ультрафиолетовых лучей. После стирания, EPROM может быть перепрограммирована. EEPROM — по сути похожа на PROM, но для стирания требует электрических сигналов.
EEPROM (electrically erasable programmable read-only memory — электрически стираемая программируемая память только для чтения) — специальный тип PROM, который может быть очищен электрическим разрядом. Подобно другим типам PROM, EEPROM содержит данные и при выключенном питании компьютера. Аналогично всем другим типам ROM, EEPROM работает не выстрее RAM.
Специальный тип EEPROM, называемый Flash memory или Flash EEPROM, может быть перезаписан без применения дополнительных устройств типа программатора, находясь в компьютере.
– Как сбросить установки BIOS (включая пароль) в значения по умолчанию из DOS?
Так как не все материнские платы оборудованы джампером для сброса установок BIOS или этот джампер может быть недоступен, то существует метод очистки BIOS из DOS, при помощи команды debug. Загрузившись в DOS (не в DOS-box под Windows!) необходимо набрать:
Метод 1 (Award и AMI BIOS):DEBUG -O 70 17 -O 71 17 Q
Метод 2 (Phoenix BIOS):DEBUG -O 70 FF -O 71 17 Q
– Как подобрать (снять) пароль на Setup (загрузку)?
Если забыт паpоль на Setup, можно воспользоваться pазличными пpогpаммами для снятия паpоля или одним из заводских паролей.
Заводские пассворды для AWARD BIOS следующие:
AWARD_SW, TTPTHA, aPAf, HLT, lkwpeter, KDD, j262, ZBAAACA, j322, ZAAADA, Syxz, %шесть пpобелов%, Wodj, %девять пpобелов%, ZJAAADC, 01322222, j256, ?award
Один из этих паролей должен подойти. Однако в новых AWARD BIOS (версии 4.51) инженерные пароли отсутствуют. Однако существует программка для снятия/определения установленных паролей в таких BIOS.Для AMI BIOS стандартных паролей нету. Единственный случай: если вы только приобрели материнскую плату то пароль может быть AMI.
Существуют программы для определения установленного на Setup пароля. Вы можете скачать здесь эти утилиты для Award BIOS и AMI BIOS.
Hа некотоpых AMI BIOS можно сpазу после включения деpжать нажатой клавишу Ins — пpи этом в CMOS-память загpужаются стандаpтные паpаметpы.
– Как аппаратно сборосить CMOS (вместе с паролями)?
Почти на всех совpеменных системных платах pядом с батаpейкой есть пеpемычка для сбpоса CMOS-памяти (обычно — 4 контакта, ноpмальное положение — 2-3, сбpос — 1-2 или 3-4; иногда — 3 или 2 контакта).
Выпаивать и тем более замыкать батаpейку не имеет смысла — это чаще всего не пpиводит к успеху из-за констpукции схемы питания CMOS-памяти, а замыкание батаpейки сильно сокpащает сpок ее службы.
Если на плате нет батаpейки, нужно поискать пластмассовый модуль с надписью "DALLAS" (это монолитный блок с батаpейкой и микpосхемой CMOS) — пеpемычка может быть возле него.
В случае, если перемычка для очистки CMOS-памяти отсутствует, то сначала попробуйте отключить или отсоединить батарейку. При этом также рекомендуется отключить провода от блоки питания, так как заряд на его конденсаторах может сохраняться и успешно поддерживать питание CMOS RAM (ей очень мало надо) более суток.
Если это не помогло, то остается только замыкать соответствующие ножки у микросхемы CMOS-памяти, добиваясь ее очистки. Найдите, какой из перечисленных ниже чипов установлен у Вас и следуйте приведенным рекомендациям.
P82C206 Chip (квадратный) (старый)
Этот чип включает в себя всю мелкую логику AT — контроллеры DMA, прерываний, таймер а также clock chip. CMOS RAM на этом чипе очищается при замыкании контактов 12 и 32 или 74 и 75 на несколько секунд (при выключенном питании). gnd 74 _|____________________ 5v 75--| | | | | | | CHIPS | 1 * | | | P82C206 | | | |_____________________| ||||||||||||||||||||| | | | gnd | 5v 12 32F82C206 Chip (прямоугольный)
Аналогичен предыдущему. CMOS RAM на этом чипе очищается при замыкании контактов 3 и 26 на несколько секунд (при выключенном питании). 80 51 ______________________________ 81 | | 50 | | | | | OPTi | | | | F82C206 | | | 100 |______________________________| 31 |||||||||||||||||||||||||||||| 1 | | 30 | | 3 26Dallas DS1287, DS1287A, Benchmarq bp3287MT, bq3287AMT
Dallas DS1287, DS1287A с совместимые Benchmarq bp3287MT и bq3287AMT чипы имеют встроенную батарею. Эта батарея расчитана как минимум на 10 лет. На материнских платах с этим чипом не должно быть дополнительных батарей. Если батарея вышла из сторя, необходимо заманить весть чип.CMOS RAM может быть очищена на 1287A и 3287AMT чипах закорачиванием ножек 12 и 21 (при выключенном питании).
1287 (и 3287MT) отличаются от 1287A тем, что CMOS RAM не может быть очищена. И в случае если Вы забыли пароль необходимо заменить микросхему. В этом случае рекомендуется заменять на 1287A. Все также применимо к Dallas 12887 и 12887A, однако они содержат вдвое большую CMOS RAM. ___________ 1 -| * U |- 24 5 volts DC 2 -| |- 23 3 -| |- 22 4 -| |- 21 RCL (RAM Clear) 5 -| |- 20 6 -| |- 19 7 -| |- 18 8 -| |- 17 9 -| |- 16 10 -| |- 15 11 -| |- 14 Ground 12 -|__________|- 13
Motorolla MC146818AP или совместимые
Обычно это прямоугольный 24 контактный DIP chip, обычно в панельке. Совместимые производятся несколькими компаниями, напимер Hitachi HD146818AP или Samsung KS82C6818A. Номер чипа должен оканчиваться на 6818. Хотя этот чип и совместим по выводам с Dallas 1287/1287A, в нем нет встроенной батареи. Это означает, что CMOS RAM может быть очищена просто выниманием чипа из панельки на некоторое время и установкой обратно.Для уменьшения риска повреждения микросхемы рекомендуется закорачивать ножки 12 и 24 на несколько секунд при выключенном питании ___________ 1 -| * U |- 24 5 volts DC 2 -| |- 23 3 -| |- 22 4 -| |- 21 5 -| |- 20 6 -| |- 19 7 -| |- 18 8 -| |- 17 9 -| |- 16 10 -| |- 15 11 -| |- 14 Ground 12 -|__________|- 13
Dallas DS12885S или Benchmarq bq3258S
CMOS RAM на этом чипе очищается замыканием контактов 12 и 20 при выключенном питании. Также можно попробовать 12 и 24. (5Volts) 24 20 13 | | | | | | | | | | | | ----------------------------------- | | | DALLAS | |> | | DS12885S | | | ----------------------------------- | | | | | | | | | | | | 1 12 (Ground)
– Что означают аварийные звуковые сигналы, выдаваемые AMI BIOS при загрузке?
Звуковые сигналы
Число сигналов | Описание проблемы | Решение |
---|---|---|
1 | DRAM refresh failure | Вставьте память еще раз. Если не помогает, то это проблема с памятью. |
2 | Parity Circuit Failure | |
3 | Base 64K RAM failure | |
4 | System Timer Failure | Материнская плата неработоспособна |
5 | Processor Failure | |
6 | Keyboard Controller / Gate A20 Failure | Вытащите и вставьте чип контроллера клавиатуры. Если не помогает, замените контроллер клавиатуры. Если и это не помогает, проверьте клавиатуру и ее кабель |
7 | Virtual Mode Exception Error | Материнская плата неработоспособна |
8 | Display Memory Read/Write Failure | Ошибка памяти видеоадаптера. Переисталлируйте видеокарту и память на ней. Если не помогает, замените видеокарту. |
9 | ROM BIOS Checksum Failure | Ошибка в микросхеме BIOS. Попробуйте вытащить и вставить заново этот чип. Если не помогает, необходимо перепрошить его содержимое или заменить микросхему. |
10 | CMOS Shutdown Register Read/Write Error | Материнская плата неработоспособна |
1-2 | Search for option ROM (video configure fails) | |
1-3 | Video failure | Переинсталлируйте видеокарту. Если не помогает, придется ее заменить |
1-2-2-3 | BIOS ROM checksum | |
1-3-1-1 | Test DRAM refresh | |
1-3-1-3 | Test keyboard controller | |
1-3-4-1 | Test 512K base address lines | |
1-3-4-3 | Test 512K base memory | |
1-4-1-1 | Test memory bus | |
2-1-2-3 | Check ROM copyright notice | |
2-2-3-1 | Test for unexpected interrupts | |
1 | POST passed. | Все идет по плану |
– Что означают аварийные звуковые сигналы, выдаваемые Award BIOS при загрузке?
Звуковые сигналы
Число сигналов | Описание проблемы | Решение |
---|---|---|
1 | DRAM refresh failure | Вставьте память еще раз. Если не помогает, то это проблема с памятью. |
2 | Parity Circuit Failure | |
3 | Base 64K RAM failure | |
4 | System Timer Failure | Материнская плата неработоспособна |
5 | Processor Failure | |
6 | Keyboard Controller / Gate A20 Failure | Вытащите и вставьте чип контроллера клавиатуры. Если не помогает, замените контроллер клавиатуры. Если и это не помогает, проверьте клавиатуру и ее кабель |
7 | Virtual Mode Exception Error | Материнская плата неработоспособна |
8 | Display Memory Read/Write Failure | Ошибка памяти видеоадаптера. Переисталлируйте видеокарту и память на ней. Если не помогает, замените видеокарту. |
9 | ROM BIOS Checksum Failure | Ошибка в микросхеме BIOS. Попробуйте вытащить и вставить заново этот чип. Если не помогает, необходимо перепрошить его содержимое или заменить микросхему. |
10 | CMOS Shutdown Register Read/Write Error | Материнская плата неработоспособна |
1-2 | Search for option ROM (video configure fails) | |
1-3 | Video failure | Переинсталлируйте видеокарту. Если не помогает, придется ее заменить |
1-2-2-3 | BIOS ROM checksum | |
1-3-1-1 | Test DRAM refresh | |
1-3-1-3 | Test keyboard controller | |
1-3-4-1 | Test 512K base address lines | |
1-3-4-3 | Test 512K base memory | |
1-4-1-1 | Test memory bus | |
2-1-2-3 | Check ROM copyright notice | |
2-2-3-1 | Test for unexpected interrupts | |
1 | POST passed. | Все идет по плану |
– Что означают аварийные звуковые сигналы, выдаваемые Award BIOS при загрузке?
Описание аварийного сигнала светового индикатора сервера IBM
IBM Описание тревоги индикатора сервера
1. Панель диагностики светового тракта
Кнопка напоминания: Эта кнопка устанавливает индикатор системной ошибки на передней панели как режим напоминания. В режиме напоминания загорается индикатор системной ошибки. 2 Мигает раз в секунду, Пока проблема не будет исправлена, система перезапустится или возникнет новая проблема. Установив индикатор системной ошибки в режим напоминания, вы можете подтвердить, что знаете о предыдущем сбое, но не принимаете немедленных мер для устранения проблемы. Функция напоминания контролируется IMM контроль.
NMI Кнопка: Нажмите эту кнопку, чтобы микропроцессор сгенерировал немаскируемое прерывание. Это позволяет сделать синий экран сервера и выполнить дамп памяти (только если IBM Эту кнопку можно использовать только по указанию обслуживающего персонала).
Экран кода контрольной точки: На этом экране отображается код контрольной точки, указывающий, что система остановится в этой точке во время блока загрузки и POST.
Код контрольной точки - это значение байта или слово, сгенерированное UEFI. На этом экране не отображаются коды ошибок или рекомендуемые компоненты для замены.
кнопка сброса: Нажмите эту кнопку, чтобы перезагрузить сервер и запустить самотестирование при включении (POST). Для нажатия кнопки может потребоваться кончик ручки или конец выпрямленной канцелярской скрепки. Кнопка сброса расположена в правом нижнем углу панели диагностики светового тракта.
over spec Индикатор: Когда этот световой индикатор горит, это означает, что потребность в мощности превышает указанный источник питания.
log Индикатор: Когда этот индикатор горит, это означает, что в журнале событий есть ошибка, и вам следует проверить журнал событий.
link Индикатор : Когда этот индикатор горит, сетевая карта неисправна.
ps Индикатор:Когда этот световой индикатор горит, это указывает на отказ источника питания.
pci Индикатор:Если этот индикатор горит, это означает, что на шине PCI возникла ошибка.
sp Индикатор:Когда этот индикатор горит, это указывает на то, что потоковый процессор обнаружил ошибку (роль sp заключается в обработке данных, переданных ЦП, и преобразовании их в цифровой сигнал, который может быть распознан дисплеем после обработки)
fan : Когда этот индикатор горит, это означает, что охлаждающий вентилятор или вентилятор блока питания вышел из строя или работает слишком медленно. Отказ вентилятора также может вызвать temp Световой индикатор горит.
temp Индикатор : Когда этот индикатор горит, это означает, что температура системы слишком высока.
mem Индикатор : Когда этот индикатор горит, это означает, что произошла ошибка памяти.
nmi Индикатор:Когда этот индикатор горит, это означает, что произошло немаскируемое прерывание ( nmi )。
cnfg Индикатор: Когда этот индикатор горит, это означает BIOS Ошибка конфигурации.
cpu Индикатор:Когда этот индикатор горит, это означает, что микропроцессор вышел из строя.
vrm Индикатор:Когда этот индикатор горит, это означает, что vrm произошла ошибка.
dasd Индикатор:Когда этот индикатор горит, это означает, что произошел сбой жесткого диска с возможностью горячей замены.
raid Индикатор:Когда этот индикатор горит, это означает, что карта массива неисправна.
brd Индикатор:Когда этот индикатор горит, это означает, что подключенный i/o Блок расширения неисправен.
2. Информационная панель оператора
Крышка кнопки управления питанием: Сдвиньте крышку на кнопку управления питанием, чтобы предотвратить случайное выключение сервера.
Кнопка управления питанием: Нажмите эту кнопку, чтобы вручную включить и выключить сервер.
Источник питания Индикатор: Если индикатор горит и не мигает, это означает, что сервер включен; если индикатор мигает, это означает, что сервер выключен и все еще подключен к источнику переменного тока; если индикатор не горит, это означает, что нет питания переменного тока или источника питания, или сам индикатор неисправен . Заметка : Если этот индикатор не горит, это не означает, что на сервере нет питания. Световой индикатор может перегореть. Чтобы полностью отключить питание сервера, необходимо вынуть шнур питания из розетки.
Индикатор значка Ethernet: Этот индикатор загорается значком Ethernet.
Индикатор активности Ethernet: Если эти индикаторы мигают, это означает, что между сервером и сетью существует активность на указанном ими порте.
Индикатор локатора: Используйте этот индикатор, чтобы найти целевой сервер среди множества серверов невооруженным глазом. можно использовать IBM Director Световой индикатор можно включить дистанционно или вручную, нажав кнопку локатора. Этот индикатор также загорится при запуске. Если в многоузловой конфигурации этот индикатор мигает, это означает, что соответствующий ему сервер является главным узлом. Если индикатор продолжает гореть, это означает, что соответствующий ему сервер является вторичным узлом.
Кнопка локатора: Нажмите эту кнопку, чтобы вручную включить или выключить индикатор локатора. В многоузловой конфигурации нажмите эту кнопку, чтобы включить или выключить индикаторы локатора всех узлов в конфигурации.
Информационный индикатор: Если этот индикатор горит, это означает, что какой-то аспект сервера находится не в оптимальном состоянии, и при диагностике светового пути загорится еще один индикатор, помогающий определить проблему. Только после того, как проблема будет решена или будет нажата кнопка напоминания, световой индикатор и световой индикатор на диагностической панели светового тракта погаснут.
Индикатор системной ошибки: Если этот индикатор горит, это означает, что произошла системная ошибка. Индикатор на диагностической панели светового тракта также загорится, чтобы помочь найти эту ошибку.
Звуковые сигналы
Число сигналов | Проблема | Решение |
---|---|---|
1 длинный 2 коротких | Video error | Переинсталлируйте видеокарту. Проверьте видеопамять. Замените карту |
Короткие сигналы | Memory error | Проблемы с памятью. Попробуйте заменить модули памяти. |
– Что означают аварийные звуковые сигналы, выдаваемые Phoenix BIOS при загрузке?
NMI - это аббревиатура немаскируемого прерывания. Это аппаратное прерывание, которое не может быть замаскировано. В основном оно используется для отправки сигнала на ЦП при возникновении неисправимой аппаратной ошибки.
В этой статье будет рассказано, есть ли NMI в x86 и arm и как действовать в сценариях, требующих NMI.
x86изNMI
NMI давно существует на архитектуре x86 (уже существует в 8086). На общее прерывание INTR будет влиять IF. Если IF = 1, INTR экранирован, а NMI не зависит от настройки IF, и ЦП будет реагировать.
NMI на Arm?
Есть ли NMI на процессорах Arm? Это нужно разделить по обстоятельствам.
Как мы все знаем, современный armCPU имеет последовательный процессор Cortex-A / R / M, Cortex-A - процессор приложений, Cortex-R - процессор реального времени, Cortex-M - процессор MCU.
Процессор Cortex-M
Поскольку процессор Cortex-M используется в MCU, а некоторые MCU используются в очень критических сценариях, таких как мониторинг пожара, ему необходимо, независимо от того, какую задачу MCU обрабатывает в данный момент, при обнаружении пожара он должен немедленно сигнализация и реагирование (водяная струя?). ЦП архитектуры Cortex-M имеет NMI, поддерживаемый NVIC. Невозможно замаскировать этот NMI. Даже если Cortex-M переходит в жесткую ошибку или даже в состояние блокировки из-за критической ошибки можно отреагировать на NMI. Независимо от того, как вы устанавливаете PRIMASK, FAULTMASK не может блокировать NMI.
Процессор Cortex-A / Cortex-R
Процессоры Cortex-A и Cortex-R не имеют независимого NMI, но обработка прерываний Cortex-A и Cortex-R совершенно разная: Cortex-R требует ответа на прерывание в реальном времени, а процессор Cortex-A прерывает в реальном времени. Требования к производительности не очень высоки, но для поддержки уникальных функций, таких как расширения безопасности и виртуализация, требуется соответствующая поддержка обработки прерываний.
В процессорах Cortex-A и Cortex-R есть два сигнала прерывания, IRQ, FIQ (для процессоров Cortex-A, поддерживающих виртуализацию, на самом деле есть сигналы vIRQ и vFIQ, которые не обсуждаются в этой статье).
FIQ означает быстрое прерывание. FIQ имеет долгую историю в процессорах arm, уже существовали процессоры arm7 с архитектурой armv4, до 64-битной архитектуры armv8 был соответствующий режим процессора FIQ.
Причина, по которой FIQ работает быстро, отражается в следующих аспектах:
1. Когда FIQ и IRQ возникают одновременно, FIQ имеет более высокий приоритет и обрабатывается первым.
2. Если FIQ не маскируется во время обработки IRQ, FIQ может вытеснить процесс обработки исключения IRQ.
3. Когда возникает исключение IRQ, аппаратное обеспечение ЦП автоматически маскирует IRQ, но не маскирует FIQ.
FIQ имеет дополнительные банковские регистры, уменьшая количество регистров, необходимых программному обеспечению для защиты, и ускоряя обработку FIQ.
Но FIQ не является NMI в истинном смысле слова, потому что он может быть замаскирован программным обеспечением. Это можно сделать, установив бит CPSR.FIQ (за исключением введения расширений безопасности и расширений виртуализации, ситуация немного сложная, и она временно не отображается).
В Cortex-R есть специальная обработка для FIQ, и FIQ можно превратить в NMI в истинном смысле, привязав входной сигнал CGFNMFI.
Однако в эпоху процессоров Cortex-A не так много сценариев, в которых FIQ используется в качестве быстрого прерывания, а ядро Linux по умолчанию не использует FIQ. В основном процессоры Cortex-A используются в мобильных телефонах и планшетных компьютерах, а производительность прерываний в реальном времени Требования не очень высоки, конечно, все еще существует потребность в отладке ядра sysrq (будет обсуждаться позже).
Фактически, FIQ «приспособлен» к другому сценарию использования: он используется для поддержки Trustzone и различения безопасных и небезопасных прерываний. Это требует взаимодействия контроллера прерываний GIC и CPU. Возьмем GICv2 в качестве примера:
1. Сконфигурируйте GIC для отправки безопасных прерываний в ЦП через FIQ и небезопасных прерываний в ЦП через IRQ.
2. Настройте ЦП на перехват IRQ (незащищенное прерывание) для защиты монитора, когда ЦП находится в безопасном состоянии; перехват FIQ (безопасное прерывание) для защиты монитора в незащищенном состоянии.
Почему вы хотите поговорить об этом в теме NMI? В основном это повлияет на то, как моделировать НМИ в руке.
Однако по мере того, как в последние годы Arm выходит на рынки серверов и ПК, спрос на NMI (включая обработку ошибок RAS) стал сильнее. Каким образом рука поддерживает функции NMI без физического NMI?
Следующее будет говорить о:
1. Сценарии использования НМИ.
2. Как смоделировать НМИ на руке
а. Посредством моделирования приоритета прерывания GIC
б. Моделирование через интерфейс SDEI
Сначала поговорим о сценариях использования NMI.
Используется как метод отладки
На x86 NMI давно использовался как метод отладки:
· Современные серверы имеют физическую кнопку NMI на передней панели
· Сторожевые прерывания могут быть отправлены в NMI для получения на месте информации о проблемах системы (таких как жесткая блокировка, обнаружение взаимоблокировок при отключении прерываний) вместо простого перезапуска.
· Счетчик производительности может быть напрямую связан с локальным APIC.
Информация о ПК Общая информация о ПК Прерывание
Зачастую во время работы ПК возникает ситуация, когда процессору не обходимо приостановить выполнение основной программы и обработать событие, возникшее в одном из устройств компьютера. Для решения этой проблемы используется механизм прерываний.
Прерывание (interrupt, INT) – это приостановка центральным процессором выполнения приоритетной программы для обработки события, которое поступило от одного из устройств.
Механизм прерываний реализован следующим образом:
- В случае возникновения события, требующего вмешательства ЦП, устройство, которое вызвало данное событие, посылает специальный сигнал – запрос на прерывание.
- Запрос на прерывание обрабатывается контроллером прерываний.
- Сигнал, после обработки контроллером прерываний, передается процессору. Процессор приостанавливает выполнение основной программы (сохраняя при этом текущее состояние своих регистров в оперативную память) и обрабатывает данное прерывание. После обработки прерывания процессор продолжает выполнять основную программу.
- В случае возникновение одного прерывания во время обработки процессором другого, выполнение прерываний будет согласно их приоритету.
Контроллер прерываний (Programmable Interrupt Controller, PIC) – это микросхема (или встроенный в процессор модуль), которая выполняет обработку запросов на прерывание от различных устройств.
Каждому прерыванию присваивают число, называемое номером прерывания. Некоторые из номеров прерывания зарезервированы за определенными устройствами, некоторые можно освободить и использовать для других устройств. Обозначается прерывание символом IRQ.
Классификация прерываний.
1. Немаскируемые прерывания (Non-Maskable Interrupt, NMI). Прерывания с высшим приоритетом. Прерывания данного типа обрабатываются в случаях возникновения аварийных ситуаций, вызванных ошибками в работе памяти или других устройств.
2. Маскируемые (аппаратные) прерывания. В эту группу относят прерывания от периферийных устройств. Обрабатываются контроллером прерываний. Стандартный контроллер прерываний позволяет обращаться к 16 прерываниям от различных устройств. Сегодня имеется возможность использовать расширенный контроллер прерываний APIC.
APIC (Advanced Programmable Interrupt Controller) – расширенный программируемый контроллер прерываний, позволяющий использовать 24 аппаратных прерываний вместо 16.
Примером аппаратного прерывания может быть сигнал от таймера, звуковой карты, нажатие клавиши клавиатуры.
Читайте также: