Энергонезависимая память cmos — в помощь студенту

Добрый день, друзья!

alt

Узнай стоимость своей работы

Бесплатная оценка заказа!

Оценим за полчаса!

А вы видели таинственную аббревиатуру «NVRAM», которая мелькает на мониторе при включении компьютера? NVRAM – это одна из необходимых компьютеру «железок», и мы сейчас разберемся — что это за зверь такой и зачем он нужен.

Мы увидим также, как эта штука развивалась и «умнела», а вместе с ней «умнел» и весь компьютер. Для начала рассмотрим

Что такое энергонезависимая память?

NVRAM (Non Volatile Random Access Memory) – общее название энергонезависимой памяти. Энергонезависимая память – это такая, данные в которой не стираются при выключении питания.

В противоположность ей есть энергозависимая память, данные в которой исчезают при отключении питания. Т.е.

когда питание на микросхему (или модуль) памяти подается, она «помнит» данные, когда перестает подаваться – она их «забывает».

Под понятие «энергонезависимая» подпадает несколько видов памяти. Кстати сказать, память (и энергозависимая, и энергонезависимая) имеется не только в компьютере, но и во всех околокомпьютерных и периферийных устройствах:

alt

Узнай стоимость своей работы

Бесплатная оценка заказа!
Читайте также:  Поддержка бедных слоев населения - в помощь студенту

Оценим за полчаса!
  • в принтерах — лазерных, струйных и матричных ,
  • в мониторах,
  • в модемах,
  • графических картах и т.д.
  • Энергонезависимая память CMOS - в помощь студентуДаже в компьютерных клавиатурах имеются оба вида памяти.
  • Оба они упакованы в бескорпусную микросхему («капельку»), покрытую компаундом.
  • Такая конструкция — все «в одном флаконе» — именуется контроллером (от английского «control» — управление) и очень широко применяется в электронике.

Виды энергонезависимой памяти

Один из видов энергонезависимой памяти именуется ROM (Read Only Memory, память только для чтения). В русскоязычной литературе такая память называется ПЗУ (постоянное запоминающее устройство). Данные в микросхему, которая именуется еще англоязычным термином «chip» (чип, кристалл), записываются при изготовлении. Изменить их потом нельзя.

Еще одна разновидность энергонезависимой памяти – PROM (Programmable ROM). Эквивалентный русскоязычный термин – ППЗУ (Программируемое ПЗУ). В такой микросхеме в исходном состоянии во всех ячейках памяти записана одинаковая информация (нули или единицы). С помощью специальной процедуры программирования в ячейки записывается нужная информация.

Энергонезависимая память CMOS - в помощь студентуПроисходило это путем пережигания плавких перемычек.

После записи изменить данные в ячейках было нельзя.

Возможность программирования предоставляет гибкость в производстве и использовании. Чтобы записать модифицированную информацию в микросхему, не надо перестраивать технологический процесс производства. Пользователь (точнее, производитель электронной техники) сам записывает нужную ему информацию.

Но однократно программируемая память тоже не всегда хороша. Модифицировать «прошитую» в микросхему информацию нельзя, нужно менять микросхему. Это не всегда удобно и возможно. Поэтому появились многократно программируемые микросхемы. В первых изделиях информация стиралась ультрафиолетовым излучением, для чего использовалась специальная лампа.

В таких микросхемах имелось окошечко, закрытое кварцевым стеклом, которое пропускало УФ излучение. Но все равно это было неудобно, и после научились стирать, и записывать информацию электрическим сигналом. Такую память стали называть EEPROM (Electric Erasable PROM, ЭСППЗУ, электрически стираемое программируемое ПЗУ).

Энергонезависимая память CMOS - в помощь студентуЗатем появилась ее разновидность — Flash (флеш) память, которая получила в последние годы очень широкое распространение.

Это и микросхема BIOS в компьютере.

Это и всем известные ныне «флэшки» (портативные накопители данных), твердотельные накопители SSD (Solid State Drive), альтернатива электромеханическим винчестерам, карты памяти, применяемые в фотоаппаратах и т.п.

Отметим, что перезаписать информацию в таких накопителях можно ограниченное (хотя и большое) количество раз.

Проблема времени в компьютере

Энергонезависимая память CMOS - в помощь студентуВ первых компьютерах не было микросхемы RTS (Real Time Clock, часы реального времени).

Это было неудобно, и потом ее начали устанавливать.

Проблема, которая возникла с RTC в самом начале, заключалась в том, что компьютер работает не 24 часа в сутки. Он включается пользователем в начале рабочего дня и выключается в его конце. Пока компьютер был включен, он «помнил» время, как только его выключали, он время «забывал».

Каждый раз устанавливать время заново было бы очень неудобно. Неудобно было бы и каждый раз возобновлять и другие системные настройки (тип винчестера, источник загрузки и другие). Поэтому придумали встроить в общий корпус микросхему RTC, которая помнила не только время, но и все настройки BIOS Setup, и источник питания – батарею гальванических элементов.

Ячейки памяти RTC представляли собой, по сути, оперативную память (RAM). Такую память также отнесли к энергонезависимой, так как она не зависела от источника внешнего напряжения.

Она была энергонезависимой до тех пор, пока встроенная батарея не «садилась».

Такая память была сделана на основе КМОП структур, поэтому потребляла в статическом режиме (режиме хранения) очень небольшой ток, порядка единиц микроампер.

Поэтому встроенной батареи хватало на несколько лет. После чего весь модуль подлежал замене. Существовали конструкции материнских плат с разъемом под такой модуль. И можно было легко выполнить его замену. Но затем технический прогресс продолжил свой неумолимый бег. Число микросхем на материнской плате уменьшалось, а степень их интеграции увеличивалась.

Энергонезависимая память CMOS - в помощь студентуВ конце концов пришли к чипсету (набору микросхем), состоящему из 1-2 корпусов, который включал в себя почти все подсистемы материнской платы.

Встраивать в тот же корпус (куда напихано уже много всего) еще и источник напряжения посчитали нецелесообразным.

Такой корпус имеет много выводов. Установка его в разъем усложнила бы конструкцию, увеличила бы ее стоимость и снизила бы надежность.

Поэтому источник питания (3 V литиевый элемент) стали устанавливать отдельно. Это упростило и удешевило плату, так как теперь надо менять только элемент, а не все сразу. Следует отметить, что вначале в качестве источника резервного питания использовались никель-кадмиевые аккумуляторы.

После длительной эксплуатации они могли потечь. И вытекший электролит мог повредить проводники материнской платы. Современные литиевые элементы не текут даже при очень глубоком разряде.

Технология изменилась, но название структуры, хранящей настройки BIOS Setup, осталось прежним – NVRAM. Но теперь, в строгом смысле, она не является энергонезависимой. Ведь ее «энергонезависимость» обеспечивается внешним источником напряжения.

Напомним, что первым признаком того, что элемент 2032 исчерпал свой ресурс, является сброс времени и даты при включении компьютера. Напряжение свежего элемента составляет величину около 3,3 В. По мере истощения его ЭДС падает. И, как только оно снизится (ориентировочно) менее 2,8 В, структура, хранящая настройки, «забудет» их. Заряду литиевые элементы не подлежат.

Что обозначают цифры в маркировке литиевого элемента?

Энергонезависимая память CMOS - в помощь студентуВ заключение отметим, что первые две цифры маркировки элемента (20) определяют его диаметр в миллиметрах.

Вторые две – его емкость (способность отдать определенное количество энергии).

Чем больше цифра, тем больше емкость и тем толще элемент. Типовое значение емкости элемента 2032 – 225 мА/ч (миллиампер-часов), элемента 2025 – 160 мА/ч.

Следует отметить, что это максимальные значения. Реальные цифры зависят от сопротивления нагрузки и окружающей температуры. Чем больше сопротивление нагрузки и выше температура (разумеется, до известных пределов), тем больше эквивалентная емкость. Т.е. тем дольше элемент будет питать энергией нагрузку. При пониженной окружающей температуре элемент «садится» быстрее.

Литиевые элементы – очень хорошие источники энергии.

У них высокие показатели удельной энергии, т.е. большое соотношение «энергия/вес» и очень небольшой саморазряд (менее одного процента в год). У свинцовых кислотных аккумуляторов, например, эти показатели гораздо хуже.

С вами был Виктор Геронда.

До встречи на блоге!

Источник: https://vsbot.ru/komputery/chto-takoe-nvram.html

CMOS что это? Для чего он нужен на материнской плате?

CMOS и CMOS батареи: все что вам нужно знать
Опубликовано 02.11.2019, 10:21   · Комментарии:15
Энергонезависимая память CMOS - в помощь студенту

CMOS (дополнительный металл-оксид-полупроводник) — это термин, обычно используемый для описания небольшого объема памяти на материнской плате компьютера, в которой хранятся настройки BIOS. Некоторые из этих настроек BIOS включают системное время и дату, а также настройки оборудования.
Большинство разговоров о CMOS включает в себя очистку CMOS.

Если извлечь батарею, то произойдет сброс настроек BIOS до их уровней по умолчанию. Это действительно простая задача, которая считается отличным шагом для устранения многих типов компьютерных проблем.

Датчик CMOS отличается — он используется цифровыми камерами для преобразования изображений в цифровые данные.

Как еще называют чип CMOS?

КМОП иногда называют часами реального времени (RTC), ОЗУ КМОП, энергонезависимой ОЗУ (NVRAM), энергонезависимой памятью BIOS или комплементарной симметрией металл-оксид-полупроводник (COS-MOS).

Как BIOS и CMOS работают вместе?

BIOS представляет собой компьютерный чип на материнской плате, такой как CMOS, за исключением того, что он предназначен для связи между процессором и другими аппаратными компонентами, такими как жесткий диск, порты USB, звуковая карта, видеокарта и многое другое. Компьютер без BIOS не поймет, как эти части компьютера работают вместе.

Смотрите наш Что такое BIOS? часть для получения дополнительной информации о BIOS.

CMOS также считается компьютерным чипом на материнской плате, или, более конкретно, чипом ОЗУ, это означает, что он теряет настройки, которые хранит при выключении компьютера. Тем не менее, батарея CMOS используется для обеспечения постоянного питания чипа.

Когда компьютер загружается в первый раз, BIOS извлекает информацию из чипа CMOS, чтобы понять настройки оборудования, время и все, что в нем хранится.

Что такое батарея CMOS?

Произвести замену батареи, можно с помощью плоской отвертки

CMOS обычно питается от батарейки типа CR2032, называемой батареей CMOS.
Большинство батарей CMOS работают в течение срока службы материнской платы, в большинстве случаев до 10 лет, но иногда их необходимо заменить.

Неправильная или медленная системная дата и время, а также потеря настроек BIOS считаются основными признаками разряженной или выходящей из строя батареи CMOS. Заменить их так же просто, как заменить неисправный на новый.

Подробнее о матрицах CMOS и CMOS аккумуляторах

В то время как большинство материнских плат имеют место для батареи CMOS, некоторые небольшие компьютеры, такие как планшеты и ноутбуки, имеют небольшой внешний отсек для батареи CMOS, которая подключается к материнской плате через два маленьких провода.

Некоторые устройства, которые используют CMOS, включают в себя микропроцессоры, микроконтроллеры и статическое ОЗУ (SRAM).

Важно понимать, что CMOS и BIOS не являются взаимозаменяемыми терминами для одного и того же. Хотя они работают вместе для выполнения определенной функции в компьютере, они представляют собой два совершенно разных компонента.

Когда компьютер впервые запускается, есть возможность загрузиться в BIOS или CMOS. Открытие настройки CMOS — это то, как вы можете изменить сохраняемые настройки, такие как дата и время, и как впервые запускаются различные компоненты компьютера. Вы также можете использовать настройку CMOS для отключения и включения некоторых аппаратных устройств.

Чипы CMOS желательны для устройств с батарейным питанием, таких как ноутбуки, потому что они потребляют меньше энергии, чем чипы других типов. Хотя они используют как цепи с отрицательной полярностью, так и цепи с положительной полярностью (NMOS и PMOS), одновременно включается только один тип цепи.

Эквивалентом CMOS для Mac является PRAM, что означает RAM параметр.

Источник: https://fps-up.ru/interface/cmos-chto-eto-dlya-chego-nuzhen-na-materinskoj-plate

Что такое CMOS?

Никогда не задавались вопросом, что такое CMOS? Думаем наверняка, раз зашли в эту статью. Приступим…

Энергонезависимая память CMOS - в помощь студенту

Скорее всего, вы уже знаете, что такое BIOS, и для чего она служит в компьютере или ноутбуке.

Однако BIOS сама по себе – это всего лишь набор микропрограмм, хранящихся в постоянной памяти компьютера (ROM), расположенной на материнской плате.

Однако если бы BIOS располагала только постоянной памятью, то ее возможности были бы ограничены параметрами, зашитыми при производстве чипа BIOS, а сами пользователи не могли бы вносить изменения в параметры BIOS.

Согласитесь, что такая ситуация порождала бы массу неудобств. Для того, чтобы решить эту проблему и существует связанная с BIOS память CMOS, в которой хранятся настройки системы, в частности, вводимые пользователем через интерфейс BIOS Setup. При этом общий объем CMOS-памяти BIOS чрезвычайно мал – всего-навсего 256 байт!

Содержание статьи

  • Технология и ее история
  • Обслуживание КМОП
  • Заключение

Технология и ее история

Чем же отличается CMOS память от прочих видов памяти? Аббревиатура CMOS расшифровывается как Complementary metal oxide semiconductor. На русском эта технология пишется как КМОП (комплементарные пары металл-оксид-полупроводник). Эта память отличается низким энергопотреблением и поэтому может хранить данные в течение долгого времени.

Технология CMOS имеет давнюю историю. Память типа CMOS RAM впервые была изготовлена еще в 1963 г. Она была относительной дорогой, но имела немало преимуществ. Хотя память подобного типа обладает меньшим быстродействием, чем обычная оперативная память, но при этом она меньше потребляет электрической энергии и меньше выделяет тепловой энергии при работе.

Для хранения данных BIOS и не требуется большое быстродействие, однако количество энергии, потребляемой при реализации этой задачи, должно быть в идеале как можно меньшим, поэтому память, изготовленная по технологии CMOS, в данном случае подходит больше всего.

За полвека со времени своего открытия технология СМОS была значительно усовершенствована. Теперь микросхемы CMOS RAM применяются в большинстве элементов компьютера, даже в самом процессоре.

Более того, технология КМОП используется не только в компьютерах.

Микросхемы типа CMOS, например, широко применяются также в фоточувствительных элементах (матрицах) таких устройств, как сканеры и цифровые фотоаппараты.

Обслуживание КМОП

Но вернемся к CMOS-памяти BIOS. Хотя эта память потребляет мало энергии, тем не менее, она все же ей нужна. В частности, для питания памяти BIOS в те промежутки времени, когда компьютер выключен из сети, служит специальная литиевая батарейка. Однако рано или поздно ресурсы батарейки подходят к концу, и для того, чтобы не потерять содержимое памяти, батарейку следует заменить.

Предположим, что у нас появилась необходимость очистить CMOS память, не прибегая к интерфейсу программы BIOS Setup. Подобная задача может потребоваться, например, в том случае, если утерян пароль для входа в компьютер или в саму программу BIOS Setup.

Для обнуления КМОП в большинстве компьютеров используется специальная перемычка, расположенная, как правило, в непосредственной близости от элемента питания – круглой литиевой батарейки. Однако в каждом конкретном случае лучше всего посмотреть документацию к системной плате.

Следует учесть, к тому же, что многие лицензионные программы, установленные на компьютере, привязывают свою лицензию к ключу, хранящемся в CMOS-памяти, поэтому после ее сброса они могут потерять работоспособность.

Читайте также:  Учет животных на выращивании и откорме - в помощь студенту

Заключение

CMOS-память — это небольшой, но очень важный элемент системы BIOS, от правильного функционирования которого зависит бесперебойная работа всего компьютера. Как следствие, рекомендуем работать с ней аккуратно.

Источник: https://biosgid.ru/bios-osnovy/cmos-pamjat.html

Как сбросить CMOS память

Как сбросить CMOS память.

Аббревиатура CMOS расшифровывается как Complementary Metal-Oxide-Semiconductor. Это крохотное запоминающее устройство, которые используется для хранения настроек BIOS или UEFI. Эти настройки отвечают за то, как ваш компьютер будет загружаться, различные низкоуровневые настройки работы процессора, памяти, шин, а также разгон.

Вам может понадобится сбросить память CMOS после неудачной попытки разгона компьютера или когда компьютер просто не загружается в результате того, что вы сделали что-то не так в настройках BIOS.

Сброс CMOS просто вернет все настройки ко значениям по умолчанию и все будет работать. Если вы сами собирали свой компьютер, то вы точно знаете как это делается, но для людей, которые покупали свое устройство такая задача может быть сложной.

В этой статье мы рассмотрим как сбросить CMOS память компьютера.

Как работает cmos память?

память cmos, в которой хранятся настройки bios энергозависимая. она питается от специальной батарейки, встроенной в материнскую плату компьютера. это было сделано не зря. настройки bios по умолчанию записаны в энергонезависимую память и никогда не изменяются. все изменения, которые вносит пользователь сохраняются в энергозависимой памяти.

корректность этих настроек очень важна, потому что от них зависит загрузится компьютер или нет, и в результате сможете вы их изменить или нет. и если пользователь допустил какую-либо ошибку в настройках, достаточно просто обесточить память и настройки вернутся к значению по умолчанию. все просто. а теперь рассмотрим как это сделать.

как сбросить сmos память через reset?

если на корпусе вашего компьютера есть кнопка reset, то вы можете сбросить настройки cmos с помощью нее. она может использовать не только для перезагрузки компьютера, но и для этого. просто выполните такие действия:

  • ыключите компьютер;
  • отключите компьютер от сети питания, вы можете вытянуть шнур из розетки или разъема блока питания на задней части компьютера;
  • найдите кнопку reset или clear около кнопки power на передней панели компьютера;
  • зажмите кнопку и держите ее нажатой от пяти до десяти секунд, затем отпустите. если кнопка очень маленькая, вам придется воспользоваться иголкой или ручкой;
  • подключите компьютер к сети и запустите.

в принципе, это все. такого набора действий вполне достаточно чтобы сбросить настройки в большинстве случаев. вы можете еще запустить bios, для этого нужно нажать del или f2 перед началом загрузки и выбрать опцию «load optimized defaults» это будет идеальным вариантом.

сброс cmos кнопкой на материнской плате

Большинство современных материнских плат имеют специальную кнопку для сброса CMOS. К ней можно получить доступ после того, как вы откроете крышку корпуса компьютера. Она может называться CLR, CLEAR или RESET. Порядок действий почти такой же:

  • Выключите компьютер;
  • Нажимайте кнопку питания несколько раз, чтобы разрядить конденсаторы на материнской плате;
  • Отключите компьютер от сети питания или извлеките кабель блока питания;
  • Найдите кнопку на материнской плате. Если вы не можете ее найти, воспользуйтесь руководством по вашей модели платы. В разных моделях они расположены по-разному;
  • Зажмите кнопку и не отпускайте на пять десять секунд;
  • Подключите питание и включите компьютер.

Сброс cmos извлечением батарейки

Если на вашей плате не предусмотрено кнопок Reset, а такая ситуация очень часто случается с ноутбуками, то вам остается только извлечь батарейку питания CMOS. От этой батарейки память питается когда компьютер не подключен к сети. Извлечение батарейки равноценно принудительной очистке памяти. Как сбросить cmos на ноутбуке:

  • Выключите компьютер;
  • Отключите компьютер от сети питания;
  • Нажмите несколько раз кнопку питания, чтобы разрядить конденсаторы;
  • Найдите батарейку на материнской плате. Обычно это батарейка CR2032, размером с монету. Вы можете найти ее около слотов PCI Express;
  • Извлеките батарейку, возможно, для этого нужно будет нажать острым предметом на удерживающий элемент или вытянуть ее из-под фиксатора. Действуйте аккуратно, не ломайте конструкцию;
  • Подождите несколько минут, а затем вставьте батарейку обратно, той же стороной, какой она была установлена раньше;
  • Подключите питание и включите компьютер.

Сброс cmos с помощью джампера

Кроме всего прочего, на материнской плате есть специальный джампер, с помощью которого можно сбросить настройки:

  • Выключите компьютер;
  • Отключите его от питания;
  • Нажмите несколько раз кнопку питания;
  • Откройте корпус компьютера и найдите на плате контакты сброса CMOS. Обычно, это два или три контакта собранные вместе и подписанные CLEAR CMOS или CLRPWD;
  • При трехконтактной конфигурации переместите пластиковый джампер так, чтобы центральный контакт был замкнут с тем, контактом, с которым раньше он был разъединен. При двухконтактной, просто разъедините контакты.
  • Подождите несколько минут, а затем верните переключатель в то положение, в котором он был раньше;
  • Включите компьютер.

Источник: https://zen.yandex.ru/media/id/5adc856a77d0e6f74d3d278e/5be354dda4a2a805d8da88ad

Программирование CMOS

CodeNet / Языки программирования / Ассемблер

Вся информация, представленная в данной статье несет только информативные цели. Автор не несет ответственности за некорректное использование приведённых ниже фактов.

ВВЕДЕНИЕ

В эпоху интенсивного развития высоких технологий и технологий Internet программирование для отошло на второй план. А между тем практически невозможно реализовать ничего стоящего без правильной конфигурации оборудования, в частности CMOS — энергонезависимой памяти компьютера. В данной статье мы рассмотрим устройство CMOS, его структуру и возможности программирования.

Сразу оговорюсь, что программировать CMOS желательно из реального режима ОС; под ОС Windows это делается с помощью специальных драйверов VxD или SYS. В Сети существует достаточно источников документации по построению таковых, поэтому я на них останавливаться не буду.

Естественно, что проводить все ниже перечисленные действия по записи значений в CMOS следует с особой осторожностью; иногда (!) можно потерять практически все значения конфигурации ПК. В таковом случае необходимо очистить CMOS; как это сделать — смотрите в документации к вашей материнской плате.

Также я буду использовать язык ассемблера для иллюстрации конкретных примеров, а так же широко распространенный отладчик DEBUG.EXE, который прилагается практически с каждой версией ОС Windows/DOS.

Данные cmos

CMOS является нечто вроде базы данных, которая предназначена для хранения информации о конфигурации ПК.

Однако, в отличие от реальной БД, которая имеет реальный образ на магнитном носителе, CMOS хранит свои данные на микросхеме многократной записи (write many-read many).

Программа установки BIOS SETUP при записи сохраняет в ней свою системную информацию, которую впоследствии сама же и считывает (при загрузке ПК). Каждая ячейка имеет размер в 1 байт.

Таблица данных имеет следующий вид

Адрес Назначение
00H-0DH RTC (Real Time Clock) — часы реального времени (таймер)
0EH Байт статуса процедуры POST (результат загрузки ПК)
0FH Байт завершения работы ПК
10Н Тип дисковода
11Н Зарезервировано
12Н Тип(ы) винчестера (если значение < 15)
13Н Зарезервировано
14Н Байт конфигурации оборудования
15Н-16Н Размр базовой памяти
17Н-18Н Размер памяти за пределом 1 Мб
19Н Тип винчестера С: (если значение > 15)
1АН Тип винчестера D: (если значение > 15)
1BH-20H Зарезервировано
21H-2DH Зарезервировано
2EH-2FH Контрольная сумма CMOS (от 10Н — 20Н)
30Н-31Н Размер расширенной памяти за пределом 1 Мб
32Н Номер текущего века в BCD нотации (например 17Н)
33Н Другая информация
34Н-3АН Зарезервировано

Некоторые адреса CMOS, защищенны контрольной суммой. То есть запись в диапазон адресов 10Н-20Н должен сопровождаться корректировкой значений в ячейках 2ЕН-2FH. Иначе можно получить сообщение о неправильной установке параметров или о батарее CMOS.

Контрольная сумма представляет собой 16-битную сумму всех значений, записанных в ячейки CMOS с 10Н по 20Н. В ячейку 2ЕН пишется старший байт суммы, а в 2FH — младший.

В любом случае, мой вам совет — сначала сохраните старое значение CMOS (да и вообще все значения CMOS) а потом просто вычитайте или складывайте нужные значения с полученной контрольной суммой. Так проще.

Чтение и запись cmos

  • Чтение: для чтения значения из ячейки, запишите значение в порт 70Н адрес интересующей вас ячейки, а затем считайте значение из порта 71Н — это и будет интересующие вас значение. Например получим номер текущего века (MS Debug):
  • Нумерация веков идёт с 00Н (если так можно выразиться), поэтому значение 20Н вполне адекватно.
  • Запись: для записи значения в CMOS запишите значение адреса в порт 70Н, а затем новое значение в порт 71Н. Установим для примера новое значение века (так сказать J):
  • Теперь чтобы вернуть все как было, введем в порт 70Н значение 32Н, а в 71Н — 20Н:
  • Пусть вас не смущает отсутствие символа «Н» после цифр — все значения в MS Debug идут только в шестнадцатеричном виде.

Подробнее об адресах cmos

Итак, остановимся на подробном рассмотрении значений, хранящихся в CMOS.

Адрес (HEX) Описание
00Н Текущая секунда
01Н Сигнальная секунда
02Н Текущая минута
03Н Сигнальная минута
04Н Текущий час
05Н Сигнальный час
06Н Текущий день недели (1 — Воскресенье)
07Н Текущий день месяца
08Н Текущий месяц
09Н Текущий год (только 2 последние цифры, напр. 98)

Все значения RTC храняться в BCD формате как 2 полубайта но в десятичном формате. Например 31 (dec) хранится как 31 (hex).

Адрес (HEX) Описание
0AH Регистр статуса RTC (# A): Биты 0-3 — Селектор уровня (установлены в 0110) Биты 4-6 — 22-уровневый делитель (установлен в 010) Бит 7 — В данный момент производится обновление (если == 0 то разрешено чтение)
0BH Регистр статуса RTC (# B): Бит 0 — Включен режим экономии времени (летнее); (0 = стандартное время; по умолч. = 0) Бит 1 — 12 или 24 часовой режим времени (если 0 то 12 часовой; по умолч. = 1) Бит 2 — Режим BCD даты (1=двоичный, 0 =BCD, по умолч. = 0) Бит 3 — Включить Square Wave (1=включить; по умолч. = 0) Бит 4 — Включить прерывание обновления (0=отключить, по умолч. = 0) Бит 5 — Включить сигнальное прерывание (0=отключить, по умолч = 0) Бит 6 — Включить периодическое прерывание (0=отключить, по умолч. = 0) Бит 7 — UIP флаг (Update In Progress), 0 — можно читать CMOS
0CH Регистр статуса RTC (# С): в основном не используется
0DH Регистр статуса RTC (# D): если бит 7=1, то питание CMOS включено, если бит 7=0 — то батарея разряжена.
0EH Байт диагностики загрузки (POST Byte): Биты 0 и 1 всегда равны 0. Бит 2 — Время правильное (1=верно, что сегодня не 30 февраля) Бит 3 — Неверный загрузочный жесткий диск (1=нельзя загрузиться с винчестера) Бит 4 — Ошибка размера RAM (1=POST нашла неверный размер RAM) Бит 5 — Неверная запись об оборудовании (1=неверное оборудование) Бит 6 — Неверная контрольная сумма (1=неверная сумма CMOS) Бит 7 — Утеря питания батареи CMOS (1=утеря питания)
0FH Байт статуса завершения работы ПК. Применяется чаще всего после перезагрузки ПК процедурой SETUP. Значения могут быть следующие: 0 , если была перезагр. по нажатии Ctrl-Alt-Del или неожиданный перезапуск. В любом случае — процедура POST НЕ выполняется 1 перезапуск после определения размера памяти 2 перезапуск после теста памяти 3 перезапуск после обнаружения ошибки памяти 4 перезапуск по запросу загрузчика ОС 5 перезапуск вследствие дальнего перехода (FAR JMP) на адрес 0:0467Н 6,7,8 перезапуск после проверки защищ. режима 80286 9 перезапуск после переназначения блока памяти (ф-я 0х87 прерыв. 0х15)
10Н Байт типа дисковода: Биты 0-3: первый дисковод Биты 47: второй дисковод В любом случае, значения битов могут быть следующими: 0000 = 0 = дисковод не установлен 0001 = 1 = 360 К 0010 = 2 = 1,2 Мб 0011 = 3 = 720 К 0100 = 4 = 1,44 Мб Например: 24Н — это диск А: размером 1,2М и диск В: размером 1,44М
11Н РЕЗЕРВ
12Н Тип винчестера (для дисков С: и D:, когда байт наход. В промежутке от 1 до 14). Биты 0-3: первый винчестер Биты 47: второй винчестер В любом случае, значения битов могут быть следующими: 0000 = 0 = диск не установлен другое_значение = тип диска 1111 = см. адреса 19Н и 1АН
13Н РЕЗЕРВ
14Н Байт оборудования: Бит 0 = 1, если присутствует дисковод(ы) Бит 1 = 1, если присутствует матем. сопроцессор Биты 2, 3 не используются и равны 0 Биты 5, 4 — основной видеоадаптер: · 00 — нет или EGA · 01 — 40*25 EGA, CGA, VGA · 10 — 80*25 EGA, CGA, VGA · 11 — монохромный (ч/б) Биты 6, 7 — количество дисководов — 1 (00=1, 01=2, 10=3, 11=4)
15Н, 16Н Базовая память 15Н — младший байт 16Н — старший байт Могут быть равны: · 0100Н = 256К · 0200 Н = 512К · 0280Н = 640К
17Н, 18Н Дополнительная память свыше 1 Мб 17 Н — младший байт 18 Н — старший байт Размер записан в Кб.
19Н Тип диска № 0 (С:), если значение адреса (12 Н & 0FH) = 0FH
20Н Тип диска № 1 ( D:), если значение адреса (12Н & F0H) = F0H
1BH-2DH РЕЗЕРВ
2ЕН, 2 FH Контрольная сумма значений адресов от 10Н по 20Н · 2ЕН — старший байт · 2FH — младший байт
30Н-31Н РЕЗЕРВ
32Н Век в формате BCD
33H Другая информация (специфич. для машин AT/PS-2 класса)
34Н-3FH РЕЗЕРВ. Как показывает практика, эта область чаще всего свободна от системных данных (но не всегда!), поэтому можете записывать сюда свои личные данные (но не много J) для сохранения между перезагрузками)

Итак, мы рассмотрели CMOS, его логическое строение и структуру.

Конечно, в таблице приведены лишь общие для всех машин значения параметров CMOS, но тем не менее даже с этим &laquoнабором&raquo можно сделать много «чего», например подключить отключенный администратором дисковод (см.

адреса 14Н, 10Н, 2ЕН, 2АР) и т.д. В любом случае: будьте крайне осторожны, не делайте ничего такого, чего потом вы не сможете вернуть обратно . Всё же буду надеяться, что данная статья принесёт вам пользу.

Источник: http://www.codenet.ru/progr/asm/cmos.php

Эффективное использование CMOS настроек

при включении ВС начинается процесс выполнения команд BIOS. Эти команды выполняют ход диагностики ключевых компонентов систем.

После успешного выполнения POST(самотестирование) ВС читает с жёсткого диска в ОС информацию, называемую загрузочной записью boot record. Загрузочная запись содержит команды загрузки с диска в ОС остальной части ОС.

CMOS память (complomentary metal oxide semiconductor) – память на компламентарных транзисторах со структурой металл – оксид — полупроводник

или энергонезависимая память уникальные особенности этого устройства состоят в том ,что для работы уму нужен маломощный поток энергии (3-5 Вт).

Доступ к настройкам CMOS-памяти ,

Аккумулятор CMOS памяти позволяет компьютеру‘помнить’ параметры этой памяти после выключения слот. Иногда, например при установке новых установок в или в случае неисправности аккумулятора приходиться изменять параметры CMOS памяти или вводить вручную значения всех её элементов, т.

к изначально исходные данные конфигурации данной памяти записываются изготовителем П.К. метод доступа к настройкам CMOS памяти зависит от типа ВС обычно войти в настройки её при включении системы или её перезапуске.

Для этого потребуется во время выполнения самотестирования (или ещё до начала запуска WIN нажать определённую клавишу(F2,DEL…)). Войдя в SETUP никогда не изменяйте параметры, значения которых вам неизвестны, присвоив параметру ошибочное неверное значение можно нарушить работу системы.

Читайте также:  Общественное устройство - в помощь студенту

Обычно для выделения определённого пункта меню или записи в программу SETUP используется клавиши Page UP и Down а также клавиши со стрелками чтобы выбрать какую либо запись используется пробел либо ввод. Выполнив определённые настройки в опции меню сохранит изменения и выходит из программы.

После этого система перезапустится установленные параметры вступят в силу. Если вы неуверенны в правильности внешних изменений, то можно выбрать опцию меню выхода без сохранения.

CMOS –память

Термин SMOS является сокращением от complementary metal-oxide semiconductor, (компломентарный МОП — транзистор). В расшифровке описан тип транзистора МС. Уникальность CMOS памяти состоит в том, что для сохранения её содержимого необходимо минимум электроэнергии, т.к.

для питания CMOS подходит небольшой аккумулятор с напряжением 3(5В). Аккумулятор со временем теряет заряд и выходит из строя, требуя замены. В случае обнаружения неисправности, теоретически можно заменить аккумулятор без потери содержащейся CMOS памяти.

Это связано с тем, что в отличии от ОЗУ(RAM) которому необходимо непрерывное питание, CMOS память после сбоя аккумулятора сохраняет некоторое время своё содержимое.

К сожалению большинство пользователей не знают о неисправности аккумулятора, пока система при запуске не выведет сообщение invalid CMOS setting ran SETUP.

Настройка расширенных данных конфигурации системы ESCD

CMOS память хранит общую информацию о компьютере. Расширенная область CMOS более удобна для записи информации об специфических аппаратных средствах называется ESCD

(extended system configuration data) расширенные данные конфигурации системы. Настройки ESCD обеспечивающие связь между BIOS и ОС. При установке нового устройства (например- платы расширения) поддерживающей технологию P&P. WINDOWS сохраняет информацию о нем о области памяти ESCD. Во избежание аппаратных конфликтов WINDOWS хранит в области информацию и о традиционных устройствах.

Размещение в области ESCD избавляет ВС от необходимости опкрашивать в процессе запуска каждую из них – на что потребовалось бы немало времени. Возможность доступа к настройкам ESCD зависит от версии SETUP.

Никогда не стоит изменять настроек CMOS предварительно не записав в исходные значения. Если изменения нарушат работу ВС можно будет восстановить исходные значения параметра перезапустив систему и вызвав программу SETUP(можно так же их распечатать SHIFT – PRINT – SCRN).

Многие программы SETUP содержат опции меню, которые позволяют восстанавливать используемые по умолчанию параметры. Настройки CMOS можно защитить паролем. Но прежде чем получить доступ к настройкам CMOS необходимо поставить пароль на BIOS. Второй пароль вводится до первого.

Если пароль забыт, систему можно запустить , например, удалив аккумулятор.

Ускорение процесса запуска системы.

Для этого можно например изменить последствие запуска системы(порядок опроса дисков), отменив опрос дисководов при каждом запуске системы.

Кроме того некоторые опции системы предоставляют опцию быстрого запуска “Fast boot ” которая задаёт процесс пропуска определённых (наименее важных) проверок во время самотестирования при включении (POST).

За счёт этого процедура POST выполняется быстрее и запуск системы ускоряется.

Однако если разработчики алгоритмов сравнив начинали некоторые проверки достаточно важными, чтобы включить их в процедуру POST, пусть они выполняются и обеспечивают вам уверенность, что всё работает нормально. Кроме пропуска проверок памяти(за счёт опции выбора быстрой загрузки) многие программы SETUP позволяют дать указания BIOS чтобы в процессе тестирования памяти были слышны щелчки.

Установка системных часов реального времени.

В ВС существуют часы реального времени, которые позволяют определить текущую дату и время. Эти часы питаются от АКБ CMOS. Изменяются и контролируются с помощью её настроек. Однако для этой цели проще воспользоваться средствами Windows.

Параметры дисковода игнорируемые ОС.

Многие программы SETUP содержат одну или несколько настроек позволяющих конфигурировать или отключать дисковод, а иногда и устанавливать для него защиту от записи.

К сожалению большинство ОС игнорируют параметр CMOS read – only(поддерживают только Linux).

Чаще всего связанная с дисководами параметры CMOS используют лишь для идентификации нового накопителя или указанного его типа обычно даже если данные дисковода не указаны в CMOC Windows обнаруживает устройство и правильно определяет его параметры.

  • Включение КЭШ-памяти ЦП
  • Управление тактовой частотой системной шины
  • Указание геометрических параметров жесткого диска

Информация хранится на пластинках (дисках), которые содержат области в виде концентрических окружностей, называемых дорожками (tracks). Дорожки, одинаково расположены со всех сторон дисков, формируют цилиндры (cilinders). Дорожки или цилиндры делятся на области хранения фиксированного размера, называемые секторами (sectors).

Количество дорожек, цилиндров и секторов зависит от типа диска накопителя и его емкости. Подобную структуру называют геометрией (конфигурацией) диска. Прежде, чем BIOS сможет обратиться к жесткому диску, ему необходимо иметь данные о его геометрии.

При установке, замене жесткого диска с помощью программы SETUP необходимо указать его геометрические параметры. Для упрощения этого процесса в программе заложены данные широкого диапазона типов накопителей, каждый из которых имеет уникальную геометрию.

Например, накопитель типа 1 имеет емкость 10 МБ, содержит 36 цилиндров, 17 секторов на цилиндр, 4 головки чтения/записи. Номер типа указан на упаковке накопителя. Вместо ввода всех этих параметров достаточно указать SETUP его номер.

Если вы не знаете тип накопителя, установите AUTО. Если и это не удается идти WEB сайт изготовителя.

Включение функции параллельного порта

Почти в каждом ВС есть параллельный порт, но не все порты одинаково. Параллельный порт может либо выводить данные, либо поддерживать двухстороннюю связь – это дает принтеру возможность передавать через порт информацию (например, что закончилась бумага).

Параллельный порт может принадлежать типу EPP (enhanced parallel port) усовершенствованный параллельный порт, либо ECP (extended capabilities port) – порт с расширенными функциональными возможностями, ECP и EPP являются двунаправленными портами и имеют существенные преимущества в скорости перед данным, позволяя ускорить операцию печати в 10 раз. Поэтому порты ECP применяются для подключения скорости принтера. Для повышения быстродействия они могут использовать DMA. К портам EPP часто подключают и другие периферийные устройства (сканеры).

Оперативная память ОЗУ

Прежде чем CPU ИЛИ APU будет выполнять команды программы, они должны быть помещены в ОЗУ. Размеры ОЗУ для решения различных задач различны, например, предполагается , что пользователю достаточно от 64 – 128 Мб. Программисту для разработки приложений от 256 – 512 Мб, серверу от 512 Мб до нескольких

ГБ ОЗУ.

На самом деле объём ОЗУ определяется из опыта, от качества выполняемых приложений, загруженности системы, трафика и, самое главное от того, наблюдается ли данный момент дефицит RAM. Объём необходимой памяти можно определить только путём контроля в нормальном режиме работы.

Источник: https://megaobuchalka.ru/10/14523.html

Дизассемблеры и отладчики. Теоретические сведения о структуре и порядке программирования CMOS памяти

  • Министерство образования  и науки Российской Федерации
  • Федеральное агентство по образованию
  • Государственное образовательное учреждение высшего профессионального образования
  • «Комсомольский-на-Амуре государственный технический университет»
  • Факультет Компьютерных технологий
  • Кафедра математического обеспечения и применения ЭВМ

Лабораторная работа №2

По курсу «ОСРР»

Выполнил студент группы                                                                                                           Казаков М.Ю.

Преподаватель                                                                                                                                            Трещев И.А.

  1. Вариант:                                                                                                                                                                             5
  2. Комсомольск-на-Амуре
  3. 2006

Цель:           Научиться работать с отладчиком и дизассемблером

Задание:     Изучить структуру и порядок программирования CMOS памяти персональной ПЭВМ и написать модуль, читающий и расшифровывающий данные CMOS памяти ПЭВМ. Изучить структуру ОЗУ ПЭВМ (в ОС реального режима), разобрать понятия CMA, UMA, HMA, EMA, XMA, EMS, XMS, UMB.

Исследовать оперативную память компьютера в ОС реального режима с помощью системных утилит MEM, MSD, программ CHECIT, SI и составить сравнительную таблицу показаний этих программ по всем видам памяти ПЭВМ.

Изучить технологию выделения блоков памяти ОС реального режима при загрузке и выполнении программ и исследовать цепочку MCB в памяти ПЭВМ.

Теоретические сведения о структуре и порядке программирования CMOS памяти

Энергонезависимая память CMOS используется в современных компьютерах для хранения текущей конфигурации аппаратных средств. Эта память расположена в отдельной микросхеме, подпитываемой встроенным аккумулятором, и состоит из набора ячеек, доступ к которым для чтения и записи выполняется через порты ввода и вывода с адресами 70h и 71h.

Процедура чтения ячейки памяти CMOS состоит из двух шагов. На первом шаге программа записывает в выходной порт с адресом 70h номер ячейки, из которой необходимо прочитать информацию. На втором шаге программа читает содержимое данной ячейки из входного порта с адресом 71h:

  • int nCellContent;
  • outp(0x70, nCell);
  • nCellContent = inp(0x71);
  • Запись данных в ячейку памяти CMOS выполняется аналогично, только после записи номера ячейки в порт 70h программа должна записать новое значение для этой ячейки в порт с адресом 71h:
  • outp(0x70, nCell);
  • outp(0x71, nNewValue);
  • В памяти CMOS хранится текущее время и дата, сведения о конфигурации системы, результат тестирования при включении питания и другая информация.
  1. Листинг программы чтения CMOS памяти
  2. #include
  3. #include
  4. void main()
  5. {
  6. clrscr();
  7. char *dow[] = {«Воскресенье», «Понедельник», «Вторник», «Среда»,
  8. «Четверг»,     «Пятница»,     «Суббота»};
  9. char *month[] = {«Янв», «Фев», «Мар», «Апр», «Май», «Июн»,
  10. «Июл», «Авг», «Сен», «Окт», «Ноя», «Дек»};
  11. int cmos[64];
  12. int i;
  13. outp(0x70, 11);
  14. outp(0x71, 6);
  15. for (i = 0; i < 64; ++i)
  16. {
  17. outp(0x70, i);
  18. cmos[i] = inp(0x71);
  19. }
  20. cout

Источник: https://vunivere.ru/work60759

Russian Hamradio — Данные микросхемы CMOS персональных компьютеров IBM PC/AT

Персональные компьютеры IBM PC/AT имеют в своем составе микросхему энергонезависимой памяти и часов (CMOS), которая предназначена для непрерывного отсчета текущего времени и хранения установок конфигурации компьютера, пароля пользователя и другой служебной информации. Более подробное описание CMOS приведено в [1].

Питается данная микросхема от аккумулятора-батареи и потребляет незначительный ток, поэтому при выключении компьютера вся записанная в нее информация сохраняется, а часы не останавливаются.

Однако с течением времени происходит старение батареи и окисление ее контактов, что может привести к полной потере информации записанной в CMOS. Несмотря на то, что данная микросхема содержит всего на всего 64 байта памяти, для доступа к этим ячейкам требуется особый подход.

Дело в том, что эта микросхема имеет медленные циклы обращения, и разработчики компьютера сделали обращение к ячейкам памяти данной микросхемы через адресный регистр. Так для того, чтобы обратиться к микросхеме по какому то адресу, необходимо вначале записать этот адрес в регистр ввода/вывода 70h, а затем прочесть или записать данные через регистр ввода/вывода 71h.

Конечно, данные процедуры можно выполнить с помощью отладчика DEBUG, входящего в состав MS DOS, но это довольно утомительное занятие и не гарантируется защита от ошибок, которые могут повлечь за собой неприятные последствия. Для того чтобы представить себе назначение всех ячеек памяти CMOS, ниже приведена справочная информация по ее содержимому.

  • ======================================================================
  • 00h-09h, 32h: Ячейки часов (37h для PS/2)
  • ======================================================================
  • 00h — секунды;
  • 01h — секунды будильника;
  • 02h — минуты;
  • 03h — минуты будильника;
  • 04h — часы;
  • 05h — часы будильника;
  • 06h — день недели;
  • 07h — день месяца;
  • 08h — месяц;
  • 09h — год (2 младшие цифры);
  • 32h — век-1 (2 старшие цифры года);
  • 37h — век-1 (2 старшие цифры года) в PS/2;
  • ======================================================================
  • 0Ah: Статусный регистр A:
  • ======================================================================
  • Бит 7 — обновление времени: 0=готов к чтению
  • Биты [6:4] — делитель частоты, для 32,768 кГц = 010
  • Биты [3:0] — выходная частота меандра 1024 Гц _10
  • ====================================================================
    h: Статусный регистр B:
  • =====================================================================Бит 7 — остановка часов: 0=нормальный ход.
  • Бит 6 — разрешение периодических прерываний: 0=запрещено.
  • Бит 5 — разрешение прерывания от будильника: О=запрещено.
  • Бит 4 — разрешение прерывания по окончании смены времени: 0=запрещено.

Бит 3 — разрешение выходного меандра (см. регистр 0Ah): 0=запрещено.

  1. Бит 2 — BCD/BIN формат: 0јD.
  2. Бит 1 — 12/24-часовой режим: 1$-часовой.
  3. Бит О — зимнее/летнее время: О=переключение запрещено
  4. ====================================================================
  5. h: Статусный регистр C:
  6. =====================================================================Бит 7 — общий запрос прерывания.
  7. Бит 6 — периодические прерывания.
  8. Бит 5 — прерывание от будильника.
  9. Бит 4 — прерывание по смене времени.
  10. Биты [3:0] — зарезервированы
  11. ====================================================================h: Статусный регистр D:
  12. =====================================================================Бит 7 — питание: 1=норма, О=разряд батареи.
  13. Биты [6:0] — зарезервированы
  14. ====================================================================
  15. h: Байт статуса диагностики
  16. =====================================================================Бит 7 — 1= терялось питание CMOS.
  17. Бит 6 — 1= ошибка контрольной суммы CMOS.
  18. Бит 5 — 1= ошибка конфигурации.
  19. Бит 4 — 1= несоответствие размера ОЗУ, определенного тестом,
  20. записи в CMOS.
  21. Бит 3 — 1= ошибка при инициализации жесткого диска.
  22. Бит 2 — 1= нет формальной ошибки часов-календаря
  23. например: 30 февраля, 25 часов.
  24. Биты [1:0] — зарезервированы
  25. ====================================================================9h: Код остановки — используется POST для определения причины остановки:
  26. ====================================================================00=аппаратный или программный сброс;
  27. 01=paзmep памяти определен;
  28. 02=тест памяти прошел;
  29. 03=тест памяти выявил ошибку;
  30. 04=POST завершен, идет загрузка системы;
  31. 05=JMP FAR [0:0467h] с инициализацией контроллера прерываний;
  32. 06=тест защищенного режима прошел;
  33. 07=тест защищенного режима выявил ошибку;
  34. 08=ошибка при определении размера памяти;
  35. 09=перемещен блок расширенной памяти;
  36. OA=JMP FAR [0:0467h] без инициализации контроллера прерываний;
  37. ОВ=используется 80386
  38. ====================================================================10h: Типы НГМД:
  39. ====================================================================Биты [7:4] — дисковод А
  40. Биты [3:0] — дисковод В

0=нет, 160 Кбайт, 2=1.2 Мбайт, 3r0 Кбайт, 4==1.44 Мбайт

  • ====================================================================11h: Зарезервирован
  • ====================================================================12h: Типы НЖМД:
  • ====================================================================Биты [7:4] — привод 0;
  • Биты [3:0] — привод 1:
  • 0=нет, 1-Еh=типы 1-14, Fh=тип в байте 19h
  • (для второго привода — в 1Ah)
  • ====================================================================13h: Зарезервирован
  • ====================================================================14h: Установленное оборудование:
  • ====================================================================Биты [7:6] — количество НГМД: 00=1, 01=2.
  • Биты [5:4] — тип первичного видеоадаптера:
  • 00 — EGA или VGA,
  • 01 — CGA, 40 столбцов,
  • 10 — CGA, 80 столбцов,
  • 11 — MDA, 80 столбцов.
  • Биты [3:2] — зарезервированы.
  • Бит 1 — есть математический сопроцессор.
  • Бит О — есть НГМД
  • ====================================================================15h-16h: Размер базовой памяти, Кб (Low/High) 0280hd0K
  • ====================================================================17h-18h: Размер расширенной памяти, Кб (Low/High)
  • ====================================================================19h-1Ah: Расширенный тип диска С, D (в PS/2 — зарезервированы)
  • ====================================================================1Bh-2Dh: Зарезервированы
  • ====================================================================2Eh-2Fh: Контрольная сумма CMOS с 10h по 20h (High/Low)
  • ====================================================================30h-31h: Реальный размер расширенной памяти, Кб (Low/High)
  • ====================================================================32h-33h: В PS/2 контрольная сумма CMOS с 1Oh по 31h (High/Low)
  • ====================================================================33h: Флаги POST:
  • ====================================================================Бит 7 — наличие 128 Кбайт ОЗУ под границей 1 Мбайт:
  • 1 = есть доступная теневая память.
  • Бит 6 — SETUP флаг:
  • 1 = первая загрузка после выполнения SETUP, обычно установлен О
  • ====================================================================34h-3Fh: Зарезервированы для пользователя
  • ====================================================================38h-3Fh: В PS/2 пароль, доступ по несуществующим адресам 78h-7Fh
  • ====================================================================
  • Для восстановления этой информации можно воспользоваться средствами самого компьютера, с помощью внутренней программы SETUP, которая имеется практически в каждом компьютере IBM PC и вызывается при включении компьютера одновременным удержанием клавиш Ctrl+Alt+Del (как правило).

Но с помощью SETUP можно восстановить лишь заводские установки, которые переписываются из микросхемы BIOS в CMOS. Такие же специфичные установки, как тип винчестера или код привязки защищенного программного обеспечения к компьютеру не могут быть восстановлены стандартными средствами и бесследно теряются.

С целью предотвращения данной ситуации, я предлагаю две простых программы написанные мною на языке «С».

  • Первая из них под названием «cmos_rd», позволяет прочесть содержимое CMOS и сохранить его в файле с именем «cmos.bin» — рис.1.
  • Вторая программа с именем «cmos_wr», записывает данные из файла «cmos.bin» в CMOS.

Таким образом, с помощью первой программы Вы можете считать информацию из CMOS и сохранить ее в виде файла на винчестере или дискете.

Затем при необходимости восстановления содержимого CMOS Вы воспользуетесь второй программой и перепишите данные из сохраненного файла в CMOS.

Ниже приведены тексты описанных программ.

  1. /*===================================================================*/
  2. /* Программа чтения CMOS с выводом данныї на дисплей /*
  3. /* и записую в файл cmos.bin /*
  4. /* Файл:cmos_rd.c */

/* Дата:11.03.1999 */

  • /* (C) О. Валупа */
  • /*===================================================================*/
  • #include
  • #include
  • main()
  • {
  • FILE *file1;
  • unsigned char i,k;
  • int n=0;
  • int mas[64];
  • file1=fopen(«cmos.bin»,»w+b»);
  • for(k=0;k

Источник: http://qrx.narod.ru/prog/cmos.htm

Ссылка на основную публикацию