Можно выделить три основных вида памяти, используемой в микроконтрол­лерах:

● память программ, которая представляет собой постоянную память, пред­назначенную для хранения программного кода и констант. Эта память не из­меняет своего содержимого в процессе выполнения программы;

● память данных, предназначенная для хранения переменных (результатов) в ходе выполнения программы;

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

Память программ.

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

Все типы памяти программ относятся к энергонезависимой памяти, или постоянной памяти (ПЗУ), содержимое которой сохраняется после выключения питания микроконтроллера.

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

Следует обратить внимание, что разрядность микроконтроллера (8, 16 или 32 бит) указывается в соответствии с разрядностью его шины данных.

Когда го­ворится, что устройство является 8–разрядным, это означает разрядность дан­ных, которые способен обрабатывать микроконтроллер.

В Гарвардской архитектуре команды могут иметь большую разрядность, чем данные, чтобы дать возможность считывать за один такт целую команду. Напри­мер, микроконтроллеры PIC в зависимости от модели используют команды с раз­рядностью 12, 14 или 16 бит. В микроконтроллерах AVR команда всегда имеет разрядность 16 бит. Однако все эти микроконтроллеры имеют шину данных раз­рядностью 8 бит.

В устройствах с Принстонской архитектурой разрядность данных обычно оп­ределяет разрядность (число линий) используемой шины. В микроконтроллерах Motorola 68НС05 24–разрядная команда размешается в трех 8–разрядных ячейках памяти программ. Для полной выборки такой команды необходимо произвести три цикла считывания этой памяти.

Выделим и рассмотрим пять типов энергонезависимой резидентной памяти, или постоянных запоминающих устройств (ПЗУ), используемых для хранения про­грамм.

Масочная память.

Масочные ПЗУ (Mask–ROMили просто ROM) изготавли­ваются на этапе производства микроконтроллеров для полностью отлаженной программы. На стеклянном фотошаблоне при использовании программы созда­ется рисунок маски. Полученный фотошаблон с маской используется для форми­рования соединений между элементами, из которых состоит память программ.

Первые масочные ПЗУ появились в начале 1960–х годов и находят применение до настоящего времени благодаря таким достоинствам как низкая стоимость при массовом производстве изделий и высокая надежность хранения программ.

Недостатки масочных ПЗУ - любое изменение прикладной программы связано со значительными затратами средств и времени на создание нового комплекта фотошаблонов и их внедрение в производство.

Однократно программируемая память.

Эта память (One–Time Program­ mable ROM - OTPROM) программируется пользователем и в исходном состоянии содержит ячейки с единичными битами. Программированию подлежат только те ячейки памяти, содержимое которых должно принять значение 0. Для этого на ячейку памяти подают последовательность импульсов повышенного напряжения.

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

Микроконтроллеры с одно­кратно программируемым ПЗУ используются в изделиях, выпускаемых небольши­ми партиями.

Репрограммируемая память с ультрафиолетовым стиранием.

Ячейка памяти с ультрафиолетовым стиранием (Erasable Programmable ROM - EPROM) представляет собой ЛИПЗМОП (лавинно–инжекционный с плавающим затвором) транзистор. В исходном состоянии (до записи) при обращении к ячей­ке считывается логическая единица. Программирование памяти сводится к запи­си в соответствующие ячейки логических нулей. Память ЕР ROM допускают много­кратное программирование, технология которого подобна технологии однократно программируемых ПЗУ.

Перед каждым сеансом программирования выполняется операция стирания для восстановления исходного состояния ячеек памяти. Для этого в корпусе мик­роконтроллера предусмотрено специальное окно, которое облучается ультрафио­летовыми лучами. Число сеансов стирания/программирования ПЗУ составляет 25–100 раз при соблюдении технологии программирования (заданные значения питающих напряжений, число и длительность импульсов) и технологии стирания (волновой диапазон источника ультрафиолетового излучения).

Микроконтролле­ры с памятью EPROM из–за высокой стоимости применяются в опытных образцах разрабатываемых приложений.

Для уменьшения цены микросхемы EPROM заклю­чают в корпус без окошка (версия EPROM с однократным программированием). Благодаря снижению стоимости версии EPROM часто используются вместо масочно–программируемых ROM.

Репрограммируемая память с электрическим стиранием.

В ка­честве элемента памяти с электрическим стиранием (Electrically Erasable Pro ­grammable ROM - EEPROM или E2 PROM) используется транзистор со структурой МНОП (Металл, Нитрид кремния, Окисел кремния, Полупроводник), благодаря чему ПЗУ имеет сравнительно низкую стоимость (по отношению к EPROM) и до­пускает максимальное число циклов стирания/программирования 10 4 –10 6 . Кроме того, технология программирования памяти EEPROM позволяет реализовать побайтное стирание и побайтное программирование, не снимая контроллер с платы, что позволяет периодически обновлять его программное обеспечение.

Несмотря на указанные достоинства, этот тип памяти не получил широкого распространения для хранения программ по двум причинам:

● ПЗУ типа EEPROM имеют ограниченную емкость;

● появились ПЗУ типа FLASH , которые имеют близкие пользовательские харак­теристики, но более низкую стоимость.

Память типа FLASH.

Электрически программируемая и электрически сти­раемая память типа FLASH (FLASH ROM) создавалась как альтернатива между де­шевыми однократно программируемыми ПЗУ большой емкости и дорогими EEPROM ПЗУ малой емкости. Память FLASH (как и EEPROM) сохранила возмож­ность многократного стирания и программирования.

Из схемы ПЗУ изъят тран­зистор адресации каждой ячейки, что, с одной стороны, лишило возможности программировать каждый бит памяти отдельно, с другой стороны, позволило уве­личить объем памяти. Поэтому память типа FLASH стирается и программируется страницами или блоками.

Таким образом, функционально FLASH –память мало отличается от EEPROM. Основное отличие состоит в способе стирания записанной информации: если в EEPROM–памяти стирание производится отдельно для каждой ячейки, то во FLASH –памяти - целыми блоками. В микроконтроллерах с памятью EEPROM при­ходится изменять отдельные участки программы без необходимости перепро­граммирования всего устройство.

В настоящее время МК с FLASH начинают вытеснять МК с однократно про­граммируемым (и даже масочным) ПЗУ.

Программирование ПЗУ.

Отметим, что Mask ROM –память программируется только в заводских условиях при изготовлении МК. Память типа OTPROM и EPROM предоставляет разработчику возможности программирования с исполь­зованием программатора и источника повышенного напряжения, которые под­ключаются к соответствующим выводам МК.

Память EEPROM и FLASH относится к многократно программируемой, или репрограммируемой, памяти. Необходимое для стирания/программирования по­вышенное питания создается в модулях EEPROM и FLASH –памяти со­временных контроллеров с помощью встроенных схем усиления напряжения, на­зываемых генераторами накачки. Благодаря реализации программного управления включением и отключением генератора накачки появилась принципиальная возможность осуществить программирование или стирание ячеек памяти FLASH и EEPROM в составе разрабатываемой системы. Такая технология программиро­вания получила название программирования в системе (In System Programming - ISP).

Она не требует специального оборудования (программаторов), благодаря чему сокращаются расходы на программирование. Микроконтроллеры с ISP–па­мятью могут быть запрограммированы после их установки на плату конечного из­делия.

Рассмотрим, как реализуется (и используется) возможность программирова­ния EEPROM–памяти под управлением прикладной программы. Если программу с алгоритмом программирования хранить в отдельном модуле памяти с номи­нальным питающим напряжением, а EEPROM–память снабдить генераторами накачки, то можно произвести ISP–программирование EEPROM –памяти. Данное обстоятельство делает EEPROM –память идеальным энергонезависимым запоми­нающим устройством для хранения изменяемых в процессе эксплуатации изде­лия настроек пользователя. В качестве примера можно привести современный телевизор, настройки каналов которого сохраняются при отключении питания.

Поэтому одной из тенденций совершенствования резидентной памяти 8–раз­рядных МК стала интеграция на кристалл МК двух модулей энергонезависимой памяти: FLASH (или OTP) - для хранения программ и EEPROM - для хранения перепрограммируемых констант.

Рассмотрим технологию (ре)программирования FLASH –памяти с встроенным генератором накачки под управлением прикладной программы. Прежде всего, отметим два обстоятельства:

● если для хранения перепрограммируемых констант в МК встроена память EEPROM, то попрограммирование нескольких бит FLASH –памяти при эксплуа­тации готового изделия не имеет смысла. При необходимости лучше сразу использовать режим репрограммирования;

● не следует программу программирования FLASH –памяти хранить в самой FLASH –памяти, так как переход в режим программирования приведет к невоз­можности дальнейшего ее считывания. Программа программирования долж­на располагаться в другом модуле памяти.

Для реализации технологии программирования в системе выбирается один из оследовательных портов МК, обслуживание которого осуществляет специальная программа монитора связи, расположенная в резидентном масочном ПЗУ МК. Через последовательный порт персональный компьютер загружает в ОЗУ МК про­грамму программирования и прикладную программу, которая затем заносится в память FLASH. Так как резидентное ОЗУ МК имеет незначительный объем, то прикладная программа загружается отдельными блоками (порциями). Если в МК установлен модуль масочной памяти с программой программирования, в ОЗУ загружается только прикладная программа.

Микроконтроллеры, реализующие технологию программирования в системе, часто имеют в своем составе четыре типа памяти:

FLASH –память программ, Mask ROM –память монитора связи, EEPROM –память для хранения изменяемых кон­стант и ОЗУ промежуточных данных.

Технология программирования в системе в настоящее время все шире ис­пользуется для занесения прикладных программ в микроконтроллеры, располо­женные на плате конечного изделия. Ее достоинство - отсутствие программато­ра и высокая надежность программирования, обусловленная стабильностью за­данных внутренних режимов МК.

В качестве примера приведем показатели резидентной FLASH –памяти МК се­мейства НС08 фирмы Motorola:

● гарантированное число циклов стирания/программирования - 10 5 ;

● гарантированное время хранения записанной информации - 10 лет, что практически составляет жизненный цикл изделия; модули FLASH –памяти работают и программируются при напряжении питания МК от 1,8 до 2,7 В;

● эквивалентное время программирования 1 байта памяти - 60 мкс.

Память данных.

В качестве резидентной памяти данных используется стати­ческое оперативное запоминающее устройство (ОЗУ), позволяющие уменьшать частоту тактирования до сколь угодно малых значений. Содержимое ячеек ОЗУ (в отличие от динамической памяти) сохраняется вплоть до нулевой частоты. Еще одной особенностью статического ОЗУ является возможность уменьшения на­пряжения питания до некоторого минимально допустимого уровня, при котором программа управления микроконтроллером не выполняться, но содержимое в ОЗУ сохраняется.

Уровень хранения имеет значение порядка одно­го вольта, что позволяет для сохранения данных при необходимости перевести МК на питание от автономного источника (батарейки или аккумулятора). Некото­рые МК (например, DS5000 фирмы Dallas Semiconductor) имеют в корпусе авто­номный источник питания, гарантирующий сохранение данных в ОЗУ на протяжении 10 лет.

Характерной особенностью микроконтроллеров является сравнительной не­большой объем (сотни байт) оперативной памяти (ОЗУ), используемой для хране­ния переменных. Это можно объяснить несколькими факторами:

● стремлением к упрощению аппаратных средств МК;

● использованием при написании программ некоторых правил, направленных на сокращение объема памяти ОЗУ (например, константы не хранятся как переменные);

● распределением ресурсов памяти таким образом, чтобы вместо размещения данных в ОЗУ максимально использовать аппаратные средства (таймеры, ин­дексные регистры и др.);

● ориентацией прикладных программы на работу без использования больших массивов данных.

Особенности стека.

В микроконтроллерах для организации вызова под­программ и обработки прерываний выделяется часть памяти ОЗУ, именуемая стеком. При этих операциях содержимое программного счетчика и основных ре­гистров (аккумулятора, регистра состояния, индексных и других регистров) со­храняется, а при возврате к основной программе восстанавливается. Напомним, что стек работает по принципу: последний пришел - первый ушел (Last In , First Out-LIFO).

В Принстонской архитектуре ОЗУ используется для реализации многих аппа­ратных функций, включая функции стека. В адресном пространстве памяти выде­лены отдельные области для команд, регистров общего назначения, регистров специальных функций и др. Это снижает производительность контроллера, так как обращения к различным областям памяти не могут выполняться одновремен­но.

Микропроцессоры с Гарвардской архитектурой могут параллельно (одновре­менно) адресовать память программ, память данных (включающую пространство ввода–вывода) и стек.

Например, при активизации команды вызова подпрограм­мы CALL выполняется несколько действий одновременно.

В Принстонской архитектуре при выполнении команды CALL следующая ко­манда выбирается только после того, как в стек будет помещено содержимое программного счетчика.

Из–за небольшой емкости ОЗУ в микроконтроллерах обеих архитектур могут возникнуть проблемы при выполнении программы:

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

● если микропроцессор использует общую область памяти для размещения данных и стека, то при переполнении стека произойдет затирание данных. Рассмотрим особенности сохранения в стеке содержимого регистров, обус­ловленные отсутствием команд загрузки в стек (PUSH) и извлечения из стека (POP). В таких микроконтроллерах вместо команды PUSH и POP используются две команды и индексный регистр, который явно указывает на область стека. После­довательность команд должна быть такой, чтобы прерывание между первой и второй командой не привело к потере данных. Ниже приведена имитация команд PUSH и POP с учетом указанного требования.

PUSH ; Загрузить данные в стек decrement index; Перейти к следующей ячейке стека move [ index], асе; Сохранить содержимое аккумулятора в стеке POP ; Извлечь данные из стека move асе, ; Поместить значение стека в аккумулятор increment index ; Перейти к предыдущей ячейке стека

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

Регистровая память.

Микроконтроллеры (как и компьютерные системы) име­ют множество регистров, которые используются для управления различными внутренними узлами и внешними устройствами. К ним относятся:

● регистры процессорного ядра (аккумулятор, регистры состояния, индексные регистры);

● регистры управления (регистры управления прерываниями, регистры управ­ления таймером);

● регистры ввода/вывода данных (регистры данных и регистры управления па­раллельным, последовательным или аналоговым вводом/выводом).

По способу размещения регистров в адресном пространстве можно выделить:

● микроконтроллеры, в которых все регистры и память данных располагаются в одном адресном пространстве, т. е. регистры совмещены с памятью дан­ных. В этом случае устройства ввода–вывода отображаются на память;

● микроконтроллеры, в которых устройства ввода/вывода отделены от общего адресного пространства памяти. Основное достоинство способа размещения регистров ввода–вывода в отдельном пространстве адресов - упрощается схема подключения памяти программ и данных к общей шине. Отдельное пространство ввода–вывода дает дополнительное преимущество процессо­рам с Гарвардской архитектурой, обеспечивая возможность считывать коман­ду во время обращения к регистру ввода–вывода.

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

О внешней памяти.

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

● подключение внешней памяти с использованием шинного интерфейса (как в микропроцессорных системах). Для такого подключения многие микроконт­роллеры имеют специальные аппаратные средства;

● подключение памяти к устройствам ввода–вывода, При этом обращение к па­мяти осуществляется через эти устройства программными средствами. Такой способ позволяет использовать простые устройства ввода/вывода без реали­зации сложных шинных интерфейсов. Выбор способа зависит от конкретного приложения.

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

Сразу несколько регистров содержат микросхемы регистровой памяти (register memory, register file, сверхоперативная память). Входы Di регистров подключены к общей входной шине данных (data in). Вход загрузки требуемого регистра выбирается дешифратором записи на основании поступающего на его вход адреса записи (write address), т. е. кода номера загружаемого регистра. Запись данных, присутствующих на шине, происходит в момент поступления сигнала разрешения записи (write enable).

Выходы регистров мультиплексором подключаются к выходной шине (data out). Номер регистра, с которого происходит чтение, определяет код адреса чтения (read address). Выдачу данных разрешает сигнал разрешения чтения (read enable).

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

Микросхемы регистровой памяти легко наращиваются по разрядности и допускают наращивание по числу регистров. Они разработаны для построения блоков регистров общего назначения (РОН) и других специализированных блоков памяти небольшого объема, предназначенных для временного хранения исходных данных и промежуточных результатов в цифровом устройстве.

По мере увеличения числа регистров памяти разработчики отказываются от независимой адресации регистров при записи и чтении. Остается лишь один комплект адресных входов и один дешифратор адреса, которые используются и при записи, и при считывании. Такую схему регистровой памятью уже не называют. По ЕСКД она обозначается RAM (random access memory, т. е. память с произвольным доступом). Используются также термины: запоминающее устройство с произвольной выборкой (ЗУПВ), оперативное запоминающее устройство (ОЗУ), оперативная память, а иногда - просто память. В микросхемах ЗУПВ ввод и вывод данных при записи и чтении могут осуществляться через одни и те же выводы корпуса за счет использования в тракте считывания элементов с тремя состояниями выхода или с открытым коллектором. Режимы работы микросхемы запись, чтение и хранение задаются комбинациями сигналов на ее входах управления. Если для ввода данных при записи и вывода их при чтении используются различные выводы корпуса (входы D i и выходы Q i), то режим хранения может быть совмещен с режимом чтения.

Микросхемы ОЗУ малой емкости часто выпускаются в составе распространенных серий. Они имеют входы адреса А j , входы данных D i ; вход режима W/R: запись или чтение; выходы данных Q i ; вход (или несколько конъюнктивных входов) разрешения Е, чаще называемый выбор кристалла ВК, выбормикросхемы ВМ или CS (chip select). Такую микросхему можно рассматривать как группу регистров, дешифратор для их выборки, цепи записи в регистры и считывания с них. Примерами подобных ИМС могут служить К155РУ2 емкостью 16х4 (16 слов по 4 разряда), К537РУ8 – 2Кх 8. Такие ОЗУ принято называть статическими. Наращивание разрядности и числа хранимых слов производится, как и в случае ПЗУ.

Микросхемы ЗУПВ большей емкости выпускают уже в составе определенных серий БИС памяти. Часто такие микросхемы имеют временную диаграмму с большим числом регламентированных интервалов, адрес может подаваться по частям, есть микросхемы, требующие регенерации хранимых данных (динамические ОЗУ - раздел 5).

Регистровая память , илиСОЗУ (сверх ОЗУ), обладает наибольшим быстродействием. Объем памяти СОЗУ очень мал.Регистровая -хранит операнды,коды операций,результаты . В состав блока регистров общего назначения входят 4 шестнадцатиразрядных регистраAX, BX, CX, DX. AX -операции умножения, деления и преобразования десятичной коррекции , участвует во всех операциях ввода вывода в качестве источника или приемника;BX -источник базового адреса .CX счетчик в командах сдвигов и зацикливания ;DX неявным образом адресуется в командах умножения и деления, и кроме того содержит адрес порта ввода вывода при косвенно-регистровой адресации. РегистрыSP, BP, SI, DI предназначены для обеспечения косвенную адресацию и динамическое вычисление исполнительных адресов .

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

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

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

Регистры особого назначения:

    32-64-128– разрядные;

    хранение адресов, операндов, результатов;

    Регистр указателя команд

    Регистр флагов

Время доступа » нсек

Кэш-память - согласует процессор с оперативной памятью.

Cache-level1-128 КБ, на кристалле CPU, работает с тактовой частотой

CPU.Cache-level2-2-6-МБ,работает с частотой общей шины

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

Принцип локальности программ:

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

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

Оперативная ОЗУ : С точки зрения физического принципа действия различают динамическую память (DRAM) и статическую память (SRAM).

Ячейки статической памяти (SRAM) можно представить как электронные

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

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

Микросхемы статистического типа-триггера (переход из состояния в состояние возможен только при подаче сигнала на опр-й вход.статистич.пам.-4 триггера).

Микросхемы динамического типа – конденсаторы (зарядка конд. до соотв. напряжения=1,разрядка до сост. близкого к нулю=0.Необходима подзарядка,т.к. время хранения заряда ограничено).

Верхняя пам.>640 КБ(для передачи изображения на экран,хранения драйверов, загрузки, тестирования).

Нижняя<640 КБ (прикладные программы, ОС). Предназначена для временного хранения данных и команд, необходимыхпроцессорудля выполнения им операций.

Оперативная память передаёт процессору данные непосредственно, либо через кэш-память. Каждая ячейка оперативной памяти имеет свой индивидуальный адрес.ОЗУ может изготавливаться как отдельный блок или входить в конструкцию однокристальнойЭВМилимикроконтроллера.

Время доступа » 50 нсек

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

5.Внешняя -длительное хранение

Внешняя память:

    Накопители на магнитных дисках

    Накопители на оптических дисках

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

    Память с контролем чётности.

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

    Перед записью одного байта (8 бит) вычислялась сумма всех бит в этом байте. Но запоминалась не вся контрольная сумма (для экономии памяти), а только её последний бит, значение которого (ноль или единица) запоминалось в специально отведённом для него месте. Значение этого бита (0 или 1) зависело от того, чётная или нечётная сумма битов получалась при сложении. Поэтому этот бит стали называть битом чётности (parity bit).

    После записи исходного байта в ячейки памяти высчитывалась сумма бит такого сохранённого байта, и чётность этой суммы сравнивалась с предыдущей (значение которой сохранено в бите чётности). Если чётности контрольных сумм совпадали, то считалось, что запись в память выполнена успешно. А если не совпадали, то генерировалось сообщение об ошибке. Эта технология получила название контроль чётности.

    Память без контроля чётности.

    Со временем стали появляться более надёжные микросхемы. Вероятность возникновения ошибок в них становилась меньше. Одновременно происходило и удешевление электронных компонентов. Производство и продажи компьютеров приобрели массовый характер. Для некоторых пользователей ошибки в работе компьютеров были не критичными. Поэтому на рынок стали выпускаться модели, в которых использовалась память без контроля чётности. Избавление от "лишнего" девятого бита (на каждый байт) и "лишних" затрат на вычисление контрольных сумм позволило несколько снизить стоимость компьютеров и сделать их доступными для широких масс потребителей. Такие компьютеры стали очень популярны среди настольных (desktop) систем.

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

    Память с контролем и коррекцией ошибок.

    Технология контроля чётности не является совершенной. Она неспособна обнаружить, например, "пропадание" одновременно 2-х битов (чётность в таком случае не меняется). Поэтому решено было каждый, записываемый в память бит данных, включать не в одну контрольную сумму, а в несколько. При такой системе контроля стало возможным обнаруживать одновременно несколько ошибок, их адреса, и, кроме того, исправлять эти ошибки. Такая технология получила название Error Correction Code (ECC), так как вычислялся код, позволяющий корректировать ошибки.

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

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

    Буферизованная память (buffered memory).

    В вычислительных системах управление записью/чтением в память и из неё осуществляется специальным контроллером памяти. Этот контроллер должен иметь доступ ко всем ячейкам памяти и обеспечивать передачу информации от шины к памяти и обратно. В настольных системах часто используются процессоры со встроенным контроллером памяти. Некоторыми недостатками такой реализации являются следующие:

    Контроллер один, а контролировать надо много ячеек памяти - есть ограничение на количество одновременно обслуживаемых банков памяти при сохранении высокого быстродействия;

    По одной шине данных от процессора или других компьютерных компонентов надо передавать и управляющие команды и данные - ко всем используемым модулям памяти (растет нагрузка на шину).

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

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

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

    Стоит такая память намного дороже нерегистровой (unregistered) за счёт наличия дополнительной микросхемы регистра и использования сложных технологий. Но, из-за своей эргономичности, возможности наращивания объёма, а также из-за контроля над ошибками, широко используется в серверных системах, где очень важна стабильная и безошибочная работа с большими объёмами данных.

    Вопросы совместимости.

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

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

    Регистровый файл (register file), или регистровая память , - совокупность устройств памяти процессора - т.н. регистров, предназначенных для временного хранения управляющей информации, операндов и/или результатов выполняемых команд. Регистровый файл обычно включает в себя регистры общего назначения (general-purpose register) и специальные регистры (special-purpose register).

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

    Специальные регистры предназначены для координации информационного взаимодействия основных компонентов процессора. В их состав могут входить специальные регистры, обеспечивающие управление устройствами компьютера, регистры, содержимое которых используется для представления информации об актуальном состоянии выполняемой процессором программы и т.д. Так же, как и в случае регистров общего назначения, состав специальных регистров определяется архитектурой конкретного процессора. К наиболее распространенным специальным регистрам относятся: счетчик команд (program counter), указатель стека (stack pointer), слово состояния процессора (processor status word). Счетчик команд - специальный регистр, в котором размещается адрес очередной выполняемой команды программы. Счетчик команд изменяется в устройстве управления согласно алгоритму, заложенному в программу. Более подробно использование счетчика команд проиллюстрируем несколько позднее при рассмотрении рабочего цикла процессора. Указатель стека - регистр, содержимое которого в каждый момент времени указывает на адрес слова в области памяти, являющегося вершиной стека. Обычно данный регистр присутствует в процессорах, система команд которых поддерживает работу со стеком (операции чтения и записи данных из/в стек с автоматической коррекцией значения указателя стека). Слово состояния процессора - регистр, содержимое которого определяет режимы работы процессора, значения кодов результата операций и т.п.

    Конец работы -

    Эта тема принадлежит разделу:

    Операционные системы

    Факультет вычислительной математики и кибернетики.. курынин р в машечкин и в терехин а н.. операционные системы..

    Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ:

    Что будем делать с полученным материалом:

    Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

    Все темы данного раздела:

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

    Структура ВС
    Традиционным представлением структуры вычислительной системы является пирамида (Рис. 4). Каждый из уровней пирамиды определяет свой уровень абстракции свойств вычислительной системы. Основанием явл

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

    Управление физическими ресурсами ВС
    Уровень управления физическими ресурсами - это первый уровень системного программного обеспечения вычислительной системы. Его назначение - систематизация и стандартизация правил пр

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

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

    Основы компьютерной архитектуры
    Изучение принципов структурной организации и функционирования основных компонентов операционной системы невозможно без рассмотрения основ архитектуры компьютера. Настоящая глава посвящена рассмотре

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

    Оперативное запоминающее устройство
    Оперативное запоминающее устройство (RAM - Random-Access Memory) - это устройство хранения данных компьютера, в котором находится исполняемая в данный момент программа. ОЗУ еще называют основной па

    Центральный процессор
    Процессор, или центральный процессор (ЦП), компьютера обеспечивает последовательное выполнение машинных команд, составляющих программу, размещенну

    Устройство управления. Арифметико-логическое устройство
    Устройство управления (control unit) - устройство, которое координирует выполнение команд программы процессором. Арифметико-логическое устройство (arithmetic/logic

    КЭШ-память
    Ключевой проблемой функционирования компьютеров является проблема несоответствия производительности центрального процессора и скорости доступа к информации, размещенной в оперативной памяти. Мы рас

    Аппарат прерываний
    Если мы обратим внимание на представленный выше рабочий цикл процессора, то увидим, что такая схема не предусматривает возможности обработки ошибочной ситуации, которая может возникнуть в системе в

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

    Внешние запоминающие устройства
    Внешние запоминающие устройства (ВЗУ) предназначены для организации хранения данных и программ. Обычно операции чтения или записи с ВЗУ происходят некоторыми порциями данных, которые называются

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

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

    Иерархия памяти
    Рассматривая вычислительную систему, или компьютер, можно выстроить некоторую последовательность устройств, предназначенных для хранения информации в некотором ранжированном порядке, иерархии. Этот

    Аппаратная поддержка операционной системы и систем программирования
    Если мы обратим свое внимание на рассмотрение компьютеров первого поколения, то это были компьютеры (computer - вычислитель) в прямом смысле слова, т.е. производители первых компь

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

    Проблемы, возникающие при исполнении программ
    Рассмотрим круг проблем, которые, так или иначе, возникают при исполнении программ. Вложенные обращения к подпрограммам (Рис. 44). Несколько лет назад проводились исследов

    Регистровые окна
    Одно из более или менее новых решений, предназначенное для минимизации накладных расходов, связанных с обращениями к подпрограммам, основано на использовании в современных процессорах т.н.

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

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

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

    Терминальные комплексы (ТК)
    Терминальный комплекс - это многомашинная ассоциация, предназначенная для организации массового доступа удаленных и локальных пользователей к ресурсам некоторой вычислительной

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

    Основы архитектуры операционных систем
    Этот раздел мы начнем с определения базовых понятий, среди которых очень важным для нас станет понятие операционной системы. Этот термин имеет различные толкования в разных изданиях, мы остановимся

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

    Логические функции ОС
    Рассматривая ОС, ее функциональность можно представить в виде объединения некоторого фиксированного количества блоков функций. Состав этого набора варьирует от системы к системе, но в большинстве с

    Типы операционных систем
    Операционные системы можно классифицировать с точки зрения критериев эффективности и стратегий использования центрального процессора. Можно выделить три основных класса операционных систем:

    Основные концепции
    Выше уже встречалось понятие процесса и некоторые его определения. Итак, под процессом понимается совокупность машинных команд и данных, обрабатываем

    Модели операционных систем
    Ниже будем рассматривать некоторую модельную операционную систему. Будем считать, что этапы жизненного цикла процесса разделены на два блока. Первый блок - это размещение процесса,

    Типы процессов
    Рассматривая процесс в той или иной операционной системе, можно обнаружить, что встречается деление процессов на две категории: т.н. полновесные процессы и легков

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

    Процесс ОС Unix
    Механизм управления и взаимодействия процессов в ОС Unix послужил во многом основой для развития операционных систем в целом, и логического блока управления процессами в частности. Во многом органи

    Базовые средства управления процессами в ОС Unix
    Рассмотрим теперь, что происходит при обращении к системному вызову fork(). При обращении процесса к данному системному вызову операционная система создает копию текущего процесса, т.е.

    Жизненный цикл процесса. Состояния процесса
    Рассмотрим обобщенную и несколько упрощенную схему жизненного цикла процессов в ОС Unix (Рис. 79). Можно выделить целую совокупность состояний, в которых может находиться процесс.

    Формирование процессов 0 и 1
    Все механизмы взаимодействия процессов в ОС Unix унифицированы и основываются на связке системных вызовов fork-exec. Абсолютно все процесс в ОС Unix создается по приведенной схеме, но сущест

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

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

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

    Неименованные каналы
    Неименованный канал (или программный канал) представляется в виде области памяти на внешнем запоминающем устройстве, управ

    Именованные каналы
    Файловая система ОС Unix поддерживает некоторую совокупность файлов различных типов. Файловая система рассматривает каталоги как файлы специального типа каталог, обычные файлы, с которым мы

    Очередь сообщений IPC
    Система предоставляет возможность создания некоторого функционально расширенного аналога канала, но главное отличие заключается в том, что сообщения в очереди сообщений IPC типизированы. Каждое соо

    Массив семафоров IPC
    Семафоры представляют собой одну из форм IPC и используются для организации синхронизации взаимодействующих процессов. Рассмотрение функций для работы с семафорами мы начнем традиционно с функции с

    Основные концепции
    Под файловой системой (ФС) мы будем понимать часть операционной системы, представляющую собой совокупность организованных наборов данных, хранящихся на внешних запомина

    Структурная организация файлов
    С точки зрения структурной организации файлов имеется целый спектр различных подходов. Существует некоторая установившаяся систематизация методов структурной организации файлов. Рассмотрим модели в

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

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

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

    Модели реализации файлов
    Первой тривиальной и самой эффективной с точки зрения минимизации накладных расходов является модель непрерывных файлов(Рис. 97). Данная модель подразумевает размещение каждого фай

    Модели реализации каталогов
    Существуют несколько подходов организации каталогов. Во-первых, каталог может представляться в виде таблицы, у которой в одной колонке находятся имена файлов, а в остальных - все атрибуты. Эта моде

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

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

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

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

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

    Организация файловой системы ОС Unix. Виды файлов. Права доступа
    Файл ОС Unix - это специальным образом именованный набор данных, размещенных в файловой системе. Файлы ОС Unix могут быть разных типов: - обычный файл

    Логическая структура каталогов
    Одной из характеристик ОС Unix является характеристика, кажущаяся на первый взгляд достаточно странной: система рекомендует размещать системную и пользовательскую информацию по некоторым прави

    Работа с массивами номеров свободных блоков
    Изначально номера всех свободных блоков файловой системы выстраиваются в единый связный список (Рис. 111), который размещается в нескольких блоках. Первый блок располагается в суперблоке (а значит,

    Работа с массивом свободных индексных дескрипторов
    Массив номеров свободных индексных дескрипторов - это массив фиксированного количества элементов. Изначально данный массив заполнен номерами свободных индексных дескрипторов. Если происход

    Индексные дескрипторы. Адресация блоков файла
    Выше уже отмечалось, что индексный дескриптор (Рис. 112) является системной структурой данных, содержащей атрибуты файла, а также всю оперативную информацию об организации и

    Файл-каталог
    Каталог файловой системы версии System V - это файл специального типа, его содержимое так же, как и у регулярных файлов, находится в рабочем пространстве файловой системы и по

    Достоинства и недостатки файловой системы модели System V
    Среди достоинств рассматриваемой файловой системы стоит отметить, что данная система является иерархичной. Также надо отметить, что за счет использования системного кэширования опт

    Стратегии размещения
    Работа системы основывается на трех концепциях. Первой концепцией является оптимизация размещения каталога. При создании каталога система осуществляет поиск кластера, наиболее своб

    Внутренняя организация блоков
    Размер блока в файловой системе FFS может варьироваться в достаточно широком диапазоне: предельный размер блока - 64 Кбайт. Как отмечалось выше, проблема выбора оптимального размера блока достаточн

    Выделение пространства для файла
    Рассмотрим алгоритм выделения пространства для файлов на следующем примере. Будем считать, что блок файловой системы поделен на 4 фрагмента. Пускай в системе хранятся файлы petya.txt и vasya.txt (Р

    Структура каталога FFS
    Каталог файловой системы FFS позволяет использовать имена файлов, длиной до 255 символов (Рис. 120). Каталог состоит из записей переменной длины, состоящих из блоков, размером в 4 байта. Начал

    Блокировка доступа к содержимому файла
    Организация файловой системы ОС Unix позволяет открывать и работать с одним и тем же файлом произвольному числу процессов. Более того, один и тот же файл может быть многократно открыт в рамках одно

    Управление оперативной памятью
    Будем говорить о функциях управления оперативной памятью в контексте решения следующих основных задач. Во-первых, это осуществление контроля использования ресурса, т.е. одной из функций операт

    Одиночное непрерывное распределение
    Данная модель распределения оперативной памяти (Рис. 121) является одной из самых простых и основывается на том, что все адресное пространство подразделяется на два компонента. В одной части памяти

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

    Сегментное распределение
    Недостатком страничного распределения памяти является то, что при реализации этой модели процессу выделяется единый диапазон виртуальных адресов: от нуля до некоторого предельного значения. С одной

    Сегментно-страничное распределение
    Естественным развитием рассмотренной модели сегментного распределения памяти стала модель сегментно-страничного распределения. Эта модель рассматривает виртуальный адрес, как номер сегмента и смеще

    Архитектура организации управления внешними устройствами
    Как отмечалось ранее, при организации взаимодействия работы процессора и внешних устройств различают два потока информации: поток управляющей информации (т.е. поток команд какому-либо устройст

    Программное управление внешними устройствами
    Рассмотрим архитектуру программного управления внешними устройствами, которую можно представить в виде некоторой иерархии (Рис. 135). В основании лежит аппаратура, а далее следуют

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

    RAID-системы. Уровни RAID
    Аббревиатура RAID может раскрываться двумя способами. RAID - Redundant Array of Independent (Inexpensive) Disks, или избыточный массив независимых (недорогих) дисков. На сегодняшний день обе расшиф

    Файлы устройств, драйверы
    Как уже неоднократно упоминалось, одной из основных особенностей ОС Unix является концепция файлов: практически все, с чем работает система, представляется в виде файлов. Внешние устройства не

    Системные таблицы драйверов устройств
    Для регистрации драйверов в системе используются две системные таблицы: таблицы блок-ориентированных устройств - bdevsw, и таблица байт-ориентированных устройств - cdevsw

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

    Включение, удаление драйверов из системы
    Изначально Unix-системы предполагали, как и большинство систем, «жесткие» статические встраивание драйверов в код ядра. Это означало, что при добавлении нового драйвера или удалении существующего н

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

    Буферизация при блок-ориентированном обмене
    Одним из достоинств ОС Unix является организация многоуровневой буферизации при выполнении неэффективных действий . В частности, для организации блок-ориентированных обменов система использует

    Борьба со сбоями
    Так или иначе, но в ОС Unix есть ряд традиционных средств для минимизации ущерба при отказах. Во-первых, в системе может быть задан параметр, определяющий промежутки времени, через которые осуществ




Close