Почему компьютеры с разным оборудованием могут запускать одинаковое программное обеспечение
Пользователи зачастую не видят разницы между программной и аппаратной частями компьютера. Это можно объяснить высокой степенью интеграции компонентов инфраструктуры. Точное представление различия между компонентами компьютера дает ключ к пониманию роли BIOS.
Термин BIOS используется для описания базовой инфраструктуры ввода-вывода. По существу, BIOS представляет собой «промежуточный слой» между программной и аппаратной частями инфраструктуры. Большинство пользователей подразумевают под BIOS драйверы устройств. Кроме системной, существует еще BIOS адаптеров, которые загружаются при запуске инфраструктуры.
Итак, базовая система ввода-вывода — это комбинация всех типов BIOS, а также загружаемые драйверы устройств. Часть BIOS, содержащаяся в микросхеме на системной плате или платах адаптеров, называется firm ware, (именно из-за наличия этих микросхем пользователи чаще всего относят BIOS к аппаратной части компьютера).
Стандартная PC-совместимая система состоит из нескольких слоев, которые связаны между собой (рис. 5.1).
На этом рисунке отображены два различных компьютера, в которых используется уникальная BIOS в качестве интерфейса между аппаратным обеспечением и операционной системой и ее приложениями. Таким образом, на этих компьютерах может быть установлено разное оборудование (процессоры, жесткие диски, мониторы и др.), на котором можно запускать одинаковое программное обеспечение.
Связь между приложениями и операционной системой осуществляется с помощью соответствующего API (Application Programming Interface). Этот интерфейс определяет, к примеру, как выполняется запись и считывание данных на диск, печать и другие функции. Поскольку приложение не зависит от установленного аппаратного обеспечения, все его вызовы обрабатывает операционная система, которая уже содержит информацию об установленном оборудовании.
Операционная система, в свою очередь, через BIOS обращается непосредственно к аппаратному обеспечению. Эта связь реализована в виде драйверов устройств. Как правило, выпуском драйверов для аппаратного обеспечения занимаются его производите—
Рис. 5.1. Условное сайтение PC-совместимой инфраструктуры на несколько слоев
ли. Поскольку драйверы обеспечивают взаимодействие между аппаратным устройством и операционной системой, они, как правило, предназначены для определенной инфраструктуры. Таким образом, производителям приходится создавать драйверы для таких операционных систем, как DOS, Windows 9x/NT/2000/XP, OS/2, Linux и др. Тем не менее многие операционные инфраструктуры имеют одинаковый внутренний интерфейс, некоторые драйверы подходят для нескольких операционных систем. к примеру, драйвер для Windows Me зачастую пригодится в Windows 98/95, а драйвер для Windows можно использовать в Windows 2000/NT.
Системная BIOS остается неизменной для операционной инфраструктуры, независимо от аппаратного обеспечения, а операционная система может работать на самых разных компьютерах. к примеру, если установить Windows ХР на компьютерах с разными процессорами, жесткими дисками, видеоадаптерами и т. д., принцип работы Windows ХР останется неизменным, поскольку драйвер выполняет свои базовые функции вне зависимости от аппаратных компонентов.
Как видно из рис. 5.1, приложения и операционная система идентичны в большинстве компьютеров, a BIOS «подстраивается» под определенные аппаратные компоненты и, независимо от установленного оборудования, обеспечивает стандартный интерфейс для операционной инфраструктуры. В этой главе речь пойдет об описываемом «слое» — базовой системе ввода-вывода, или BIOS.
Вся информация собрана из открытых источников. При испльзовании материалов, размещайте ссылку на источник.
Назначение BIOS – сопряжение аппаратных средств с операционной системой и прикладными программами. Различают системную BIOS и BIOS адаптеров отдельных устройств, или индивидуальные BIOS. Код BIOS хранится в микросхемах энергонезависимой постоянной памяти ROM или Flash BIOS. По этой причине BIOS часто относят к программно-аппаратным средствам (Firmware).
Для выявления той роли, которую играет BIOS, представим компьютерную систему в виде четырех слоев: аппаратных средств, системы BIOS, операционной системы и приложений. На рис. 10.1 показаны два компьютера, в которых установлены разные аппаратные средства (процессоры, жесткие диски, мониторы и др.). Однако благодаря использованию уникальных систем BIOS в качестве интерфейса (связи) между аппаратным обеспечением и операционной системой на этих компьютерах может можно запускать одинаковое программное обеспечение. Связь аппаратных средств с операционной системой осуществляется с помощью драйверов устройств, при этом каждый тип устройства (например, принтер) имеет собственный драйвер; в каждой операционной системе (DOS, Windows 9х, Windows ХР, Windows NT, OS/2 или другой) для одного и того же типа устройства используется свой драйвер.
Драйверы устройств
Для нормального функционирования отдельных устройств компьютера требуются программные средства, в качестве которых используются драйверы (drive – управлять, вести). Драйвер – это программа, управляющая конкретной моделью внешнего устройства
Рис. 10.1. Иллюстрация функций ROM BIOS для сопряжения аппаратных средств с операционной системой
и учитывающая все его особенности. Драйвер содержит процедуры, позволяющие работать с различными аппаратными реализациями устройства. Например, дисплейный адаптер может иметь разные реализации – от первых монохромных адаптеров до самых современных видеокарт с трехмерными акселераторами. Основное требование к драйверу – безошибочное и быстрое выполнение требуемой процедуры. Для прикладных программ или операционной системы драйвер представляет собой набор сервисов (служебных функций), каждому из которых известны: способ вызова – программное прерывание или точка входа в процедуру (подпрограмму) и местоположение входных и выходных данных.
Например, для дисплейных адаптеров базовые сервисы (очистка экрана, вывод символа в определенную позицию и др.) вызываются через прерывание Int 10h, которое обслуживает BIOS. Параметры в адаптер передаются через регистры процессора. В зависимости от типа установленного адаптера данный сервис будет обслуживаться системной BIOS либо индивидуальной ROM BIOS, расположенной в самом адаптере (на графической карте). Драйверы, обслуживающие данный сервис, автоматически загружаются в оперативную память на этапе инициализации BIOS, т.е. их специально загружать не требуется. Однако более сложные сервисы дисплейных адаптеров, которыми, например, пользуются в Windows, реализуются отдельными драйверами. Эти драйверы загружаются на этапе установки операционной системы.
Производители аппаратных средств осуществляют поддержку своих изделий для постоянно меняющихся версий операционных систем и прикладных программ путем поставки новых драйверов.
Система BIOS играет роль настройщика компьютера под его аппаратные средства, информируя ядро операционной системы об особенностях установленного оборудования и подстраиваясь под него, обеспечивает стандартный интерфейс для операционной системы (см. параграф 10.2).
Совместимость (compatibility) — способность аппаратных или программных средств работать с компьютерной системой. Аппаратная (техническая) совместимость (hardware (equipment) compatibility) — способность одного компьютера работать с узлами или устройствами, входящими в состав другого компьютера. Составной частью аппаратной совместимости является электромагнитная совместимость (ЭМС) (ElectroMagnetic Compatibility, EMC) — способность работающих (в том числе, автономно друг от друга) технических средств не создавать взаимных электромагнитных помех, а также функционировать при наличии внешних электромагнитных полей. Также ЭМС называют ограничение собственного электромагнитного излучения устройств до уровня, не влияющего на работу других устройств.
Информационная совместимость (data compatibility) — способность двух или более компьютеров, или систем адекватно воспринимать одинаково представленные данные. Частью информационной совместимости, а также средством ее обеспечения является совместимость форматов представления данных. Программная совместимость (software compatibility) — возможность выполнения одних и тех же программ на разных компьютерах с получением одинаковых результатов (не путать с совместимостью программ).
Совместимость программ (program compatibility) — пригодность программ к взаимодействию друг с другом и, в частности, к объединению в программные комплексы для решения более сложных задач, например, в автоматизированных системах. Полная совместимость (fully compatibility) — аппаратная, программная и информационная совместимость двух или более компьютеров без каких-либо ограничений для их пользователей.
По аппаратной совместимости различают так называемые аппаратные платформы. В области персональных компьютеров наиболее широко распространены две аппаратные платформы — IBM РС и Аррlе Macintosh (сЕГОДНЯ ЕСТЕСТВЕННО ВЫГЛЯДЯТ УЖЕ ИНАЧЕ). Кроме них существуют и другие платформы, распространенность которых ограничивается отдельными регионами или отдельными отраслями. Принадлежность компьютеров к одной аппаратной платформе повышает совместимость между ними, а принадлежность к разным платформам — понижает.
Кроме аппаратной совместимости существуют и другие виды совместимости: совместимость на уровне операционной системы, программная совместимость, совместимость на уровне данных.
Аппаратная совместимость: а) комплектующие, удовлетворяющие одному стандарту,
являются взаимозаменяемыми; б) различные части компьютера не конфликтуют между собой.
Программная совместимость: программы, разработанные на одной машине, будут правильно работать и на другой. Для проверки программной совместимости в начале 90 годов рекомендовалось использование компьютерных игр, например, DOOM.
Понятие «аппаратная платформа» связано с решением фирмы IBM о выработке и утверждении единого стандарта на основные комплектующие персонального компьютера. До этого времени фирмы-производители ПК стремились создать собственные, уникальные устройства, чтобы стать монополистом по сборке и обслуживанию собственных персональных компьютеров. Однако в итоге рынок был перенасыщен несовместимыми друг с другом ПК, для каждого из которых нужно было создавать собственное программное обеспечение. В этот период устройство, однако при этом фирма IBM быстро лишилась приоритета на рынке средств вычислительной техники, так как конкуренты производили клоны дешевле оригинального IBM PC . Но стандарт прижился как платформа IBM PC -совместимых ПК.
В связи с тем, что в настоящее время фирма IBM - создатель первого в мире массового персонального компьютера - утратила свой приоритет в выпуске ПК, на Западе все реже употребляют термин « IBM -совместимые компьютеры», а используют понятие «платформа Wintel », подразумевая под этим сочетание микропроцессора фирмы Intel с операционной системой Windows . Микропроцессор при этом рассматривается как основа аппаратной платформы, которая определяет архитектуру персонального компьютера, т. е. его тип и характеристики.
Однако термин Wintel не совсем точно определяет понятие платформы, так как открытая архитектура современных IBM -совместимых персональных компьютеров позволяет собирать их из комплектующих, изготавливаемых различными фирмами-производителями, включая и микропроцессоры, которые в настоящее время выпускаются не только фирмой Intel , но и Advanced Micro Devices ( AMD ), Cyrix Corp . и др. Кроме того, IBM -совместимые ПК могут работать не только под управлением операционной системы Windows , но и под управлением других операционных систем.
Кроме платформы IBM -совместимых ПК в настоящее время достаточно широкое распространение получила платформа Apple , представленная довольно популярными на Западе компьютерами Macintosh . Специалисты по компьютерной истории отдают приоритет в создании ПК именно компании Apple . С середины 70-х г. эта фирма представила несколько десятков моделей ПК - начиная с Apple I и заканчивая современным iMac , - и уверенно противостояла мощной корпорации IBM . В середине 80-х гг. компьютеры серии Macintosh стали самыми популярными ПК в мире. В отличие от IBM , компания Apple всегда делала ставку на закрытую архитектуру - комплектующие и программы для этих компьютеров выпускались лишь небольшим числом «авторизированных» производителей. За счет этого компьютеры Macintosh всегда стоили несколько дороже своих IBM -совместимых ПК, что компенсировалось их высокой надежностью и удобством. Именно на компьютерах Apple впервые появились многие новинки, со временем ставшие неотъемлемой частью персонального компьютера: графический интерфейс и мышь, звуковая подсистема и компьютерное видео и т. д. Кроме того, и интерфейс самой Windows был частично скопирован с одной из ранних операционных систем Apple , созданной для компьютера Lisa .
Работа с графикой и сегодня остается основной областью функционирования персональных компьютеров Apple . Поэтому ПК Macintosh по-прежнему незаменимы в таких областях, как издательское дело, подготовка и дизайн полноцветных иллюстраций, аудио- и видеообработка. В этом качестве компьютеры Apple используются сейчас в России (в США новые модели Apple используются и в качестве домашних ПК). Сегодня на рынке средств вычислительной техники представлено несколько основных платформ персональных компьютеров, каждая из которых отличается как по назначению, так и по типу аппаратного и программного обеспечения. Как правило, различные платформы компьютеров несовместимы между собой. Проблема совместимости компьютерных платформ возникла практически одновременно с появлением самих персональных компьютеров. По тем или иным причинам каждый производитель делал свою продукцию оригинальной настолько, что более никто не мог обменяться с ней информацией. В какой-то степени эта конкурентная борьба продолжается и в настоящее время, однако понимание того, что в погоне за клиентом основополагающим фактором должна стать универсальность, пришло к производителям компьютерных систем уже очень давно.
Существует два основных варианта решения проблемы совместимости компьютерных платформ:
• Аппаратные решения - это специальные платы, несущие на себе дополнительные процессор, оперативную память и видеопамять другой аппаратной платформы. Фактически они представляют собой отдельный компьютер, вставленный в существующий ПК. Его, как и обычный компьютер, можно оснастить любой операционной системой по выбору пользователя и соответствующим программным обеспечением. При этом можно легко переключаться между двумя операционными системами, обмениваться между ними файлами и выполнять другие операции, причем производительность обеих систем остается высокой, и они не влияют друг на друга, так как практически не имеют разделяемых ресурсов, кроме мыши, клавиатуры и монитора. Основным недостатком таких плат является их высокая стоимость, хотя и несколько меньшая, чем отдельного ПК.
• Программные решения - это специально написанные программы-эмуляторы, позволяющие запустить программное обеспечение, разработанное для персональных компьютеров одного типа, на другом ПК. Эмулятор - специальная программа, выполняющая каждую команду исходной программы посредством одной или нескольких команд ПК, на котором происходит эмуляция.
BIOS – это термин, который используется для описания базовой системы ввода-вывода. По существу, BIOS представляет собой "промежуточный слой" между программной и аппаратной частями системы.
Стандартная PC-совместимая система состоит из нескольких слоев, которые связаны между собой:
Рисунок 16 – Стандартная PC-совместимая система
Уникальная BIOS используется в качестве интерфейса между аппаратным обеспечением и операционной системой и ее приложениями. Таким образом, на компьютерах может быть установлено разное оборудование (процессоры, жесткие диски, мониторы и др.), на котором можно запускать одинаковое программное обеспечение.
Связь между приложениями и операционной системой осуществляется с помощью соответствующего API (Application Programming Interface). Поскольку приложение не зависит от установленного аппаратного обеспечения, то все его вызовы обрабатывает операционная система, которая уже содержит информацию об установленном оборудовании.
ОС, в свою очередь, через BIOS обращается непосредственно к аппаратному обеспечению и данная связь реализована в виде драйверов устройств. BIOS «подстраивается» под определенное аппаратное обеспечение и, независимо от установленного оборудования, обеспечивает стандартный интерфейс для операционной системы.
Аппаратная и программная части BIOS
BIOS в PC-совместимой системе может находиться либо в микросхеме системной платы, либо в микросхеме плат адаптеров (например в видеоадаптере), либо загружается с диска (драйверы).
Комплект программ, хранящихся в микросхемах BIOS, выполняется еще до загрузки ОС. BIOS РС-совместимых компьютеров выполняет следующие функции:
1. Выполнение POST – программы самотестирования компьютера после включения питания. Проверяет наличие ОЗУ, работоспособность системной логики и т.д.
2. Вызов программы установки параметров BIOS (BIOS SETUP) – конфигурирования системы. Вызывается при нажатии определенной клавиши (например: Del, F2) во время выполнения программы POST. Старые компьютеры для запуска BIOS SETUP требовали специальной дискеты.
3. Поиск загрузочного сектора на накопителях. Если последние 2 байта этого сектора (его сигнатура) равны 55AAh, данный код выполняется.
4. Загрузка драйверов, обеспечивающих взаимодействие ОС с аппаратной частью. При загрузке в режиме защиты от сбоев используются только драйверы из BIOS.
Системная BIOS содержит драйверы основных компонентов (клавиатуры, дисковода, жесткого диска, последовательного и параллельных портов и т.д.), необходимые для начального запуска компьютера. По мере появления новых устройств (видеоадаптеров, накопителей CD-ROM, жестких дисков с интерфейсом SCSI и т.д.) их процедуры инициализации не добавлялись в системную BIOS. Острая необходимость в таких устройствах при запуске компьютера отсутствует, поэтому нужные драйверы загружаются с диска во время запуска операционной системы. Это относится к звуковым адаптерам, сканерам, принтерам, устройствам PC Card (PCMCIA) и т.д.
Однако некоторые устройства необходимы при запуске компьютера. Например, для отображения информации на экране монитора требуется активизировать видеоадаптер, но его поддержка не встроена в системную BIOS.
Собственная BIOS, как правило, устанавливается на следующих платах:
• видеоадаптеры– всегда имеют собственную микросхему BIOS;
• SCSI-адаптеры– обратите внимание, что эта BIOS не поддерживает все SCSI-устройства, т.е. с диска необходимо загружать дополнительные драйверы для накопителей CD-ROM, сканеров, устройств Zip и прочих с интерфейсом SCSI;
• сетевые адаптеры– для начальной инициализации устройства либо нормального функционирования в бездисковых рабочих станциях или терминалах;
• платы обновления IDE или дисковода– для поддержки функции загрузочного устройства при запуске системы и т.д.
Микросхемы ROM
Для хранения стартовых процедур (и BIOS) наиболее подходит память ROM (Read-Only Memory) – тип памяти, которая может постоянно (или практически постоянно) хранить данные. Аналогичная память используется и в других устройствах с собственной BIOS, например в видеоадаптерах.
ROM и оперативная память – не противоположные понятия. ROM представляет собой часть оперативной памяти системы, т.е часть адресного пространства оперативной памяти отводится для ROM. Это необходимо для хранения программного обеспечения, которое позволяет загрузить операционную систему.
Например, при включении персонального компьютера счетчик команд автоматически принимает значение (адрес) FFFF0h; команды, размещенные по этому адресу, должны обеспечить загрузку операционной системы. Этим командам отводится 16 байт от конца ROM. Если бы эти адреса указывали на ячейки обычной памяти, все хранимые в ней данные, в том числе и команды, исчезли бы при выключении питания, и процессор при следующем включении не нашел бы там никаких команд. Но, если этот адрес указывает на ячейку ROM, программа запуска системы в неизменном виде выполняется каждый раз при включении компьютера.
То, что персональный компьютер при запуске начинает выполнять команду, расположенную за 16 байт от конца ROM, сделано умышленно: по этому адресу помещается команда перехода JMP, согласно которой процессор переходит к фактическому началу программы; в большинстве случаев оно близко к адресу F0000h. Подобное соглашение позволяет свободно изменять объем ROM.
Затенение ROM
Микросхемы ROM очень «медленны»: время доступа приблизительно равно 150 нс при времени доступа запоминающего устройства DRAM от 60 нс и меньше. Поэтому во многих системах ROM затеняется, т.е. ее содержимое копируется в микросхемы динамической оперативной памяти при запуске, чтобы сократить время доступа в процессе функционирования. Процедура затенения копирует содержимое ROM в оперативную память, присваивая ей адреса, первоначально использовавшиеся для ROM, которая затем фактически отключается. Это повышает быстродействие системы памяти.
Затенение эффективно главным образом в 16-разрядных операционных системах. Если компьютер работает под управлением 32-разрядной операционной системы, то затенение фактически бесполезно, потому что эти операционные системы не используют 16-разрядный код из ROM. Вместо него они загружают 32-разрядные драйверы в оперативную память, заменяя ими 16-разрядный код базовой системы ввода-вывода, который, таким образом, используется только в течение запуска системы. Средство управления затенением находится в программе Setup BIOS.
Существует четыре различных типа микросхем памяти ROM.
· ROM (Read Only Memory).
· PROM (Programmable ROM). Программируемая ROM.
· EPROM (Erasable PROM). Стираемая программируемая ROM.
· EEPROM (Electrically Erasable PROM). Электронно-стираемая программируемая ROM, также называемая Flash ROM.
Память PROM
В память PROM после изготовления можно записать любые данные. Она была разработана в конце 70-х годов фирмой Texas Instruments и имела емкость от 1 Кбайт (8 Кбит) до 2 Мбайт (16 Мбит) или больше.
Подразумевается, что эти микросхемы после изготовления не содержат никакой информации, на самом деле при изготовлении они прописываются двоичными единицами. Другими словами, микросхема PROM емкостью 1 Мбит содержит 1 млн единиц (фактически 1 048 576). При программировании такой «пустой» PROM в нее записываются нули. Этот процесс обычно выполняется с помощью специального программирующего устройства
Процесс программирования часто называется прожигом. Каждую «1» можно представить как неповрежденный плавкий предохранитель. Большинство таких микросхем работает при напряжении 5 В, но при программировании PROM подается более высокое напряжение (обычно 12 В) по различным адресам в пределах адресного пространства, отведенного для микросхемы. Это более высокое напряжение фактически записывает «0», сжигая плавкие предохранители в тех местах, где необходимо преобразовать 1 в 0. Хотя можно превратить 1 в 0, этот процесс необратим, т.е. нельзя преобразовать 0 в 1.
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰).
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций.
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим.
Читайте также: