Студопедия — Прямой доступ к памяти.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Прямой доступ к памяти.






Третьей формой осуществления доступа к памяти является прямой доступ к памяти. В большинстве вычислительных систем он является основным способом передачи данных.

Он позволяет перемещать блоки данных из памяти или в неё без использования процессора. Модуль прямого доступа к памяти DMA способен дублировать функции процессора в частности отдавать управление системой для передачи данных по системной шине. Если процессор тоже нуждается в системной шине, то модуль DMA вынуждает процессор приостановить свою работу. Эта операция именуется захватом цикла, так как модуль DMA выполняет захват цикла шины. Работа модуля DMA представляется так:

 

 
 

 

 


 
 
Управляющая схема
Адресный регистр  
Регистр данных
Счетчик данных

 


Линия передачи данных

       
 
 
   
 
 

 

 


Адресные линии

 

 


Запрос DMA

Подтверждение DMA

           
 
 
   
   
 

 

 


прерывание

 

 

чтение

       
 
 
   

 


запись

 

ЛЕКЦИЯ 12

 

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

1) Какая операция чтения или записи запрашивается.

2) Адрес используемого УВВ (устройство ввода/вывода)

3) Начальный адрес считываемый или записываемый в области памяти хранящийся в адресном регистре DMA.

4) Число слов, которое необходимо прочесть или записать. Эта величина хранится в регистре счетчика данных в модуле DMA.

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

Таким образом, процессор включен в этот процесс лишь в начале и в конце передачи данных.

Конфигурирование прямого доступа к памяти может быть выполнено несколькими способами. Наиболее эффективны следующие:

 

СИСТЕМНАЯ ШИНА

 

 

I/O
I/O
I/O
I/O
ОЗУ
DMA
ЦП

 

Шина ввода/вывода

 

Обмен данными между DMA и УВВ происходит вне системной шины.

 

 

ФАЙЛОВЫЕ СИСТЕМЫ

 

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

ФС - это набор спецификаций и соответствующее им программное обеспечение, которое отвечает за создание, уничтожение, организацию, чтение, запись, модификацию и перемещение файловой информации, а также за управление к доступам файлов. ФС определяет способ организации данных на диске или другом носителе информации. Пример: ФС FAT: реализации которой присутствуют в абсолютном большинстве операционных систем (ОП) для ПК. Все современные ОС имеют соответствующие системы управления файлами (СУФ). СУФ является основной подсистемой в ОС. Через СУФ осуществляется централизованное распределение дискового пространства и управления данными. Через СУФ пользователю предоставляются следующие возможности:

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

2) Работа с недисковыми периферийными устройствами как с файлами.

3) Обмен данными между файлами, между устройствами, между файлом и устройством и наоборот.

4) Работа с файлами с помощью обращений программных модулей СУФ (Application Program Interface). Часть функций API ориентирована на работу с файлами.

5) Защита файлов от несанкционированного доступа.

 

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

Термин ФС определяет принципы доступа к данным организованных в файле. А термин СУФ относится к конкретной реализации ФС, т.е. это комплекс программных модулей обеспечивающих работу с файлами конкретной ОС. В качестве примера можно привести ФС FAT (Fill Allocation Table), которая имеет множество реализаций как СУФ. Название FAT используется и по отношению к СУФ MS-DOS. В реализацию СУФ для OS/2, использующей основные принципы системы FAT наз. Super-FAT. Ее основные отличия - поддержка расширенных атрибутов для каждого файла.

Windows95/98 - VFAT.

 

СТРУКТУРА МАГНИТНОГО ДИСКА

 

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

В самом первом секторе находятся данные о логической организации диска и программа с помощью которой находятся и загружаются программы загрузки ОС. Информация на МД размещается и передается блоками. Каждый блок называется сектором. Сектора расположены на концентрической дорожке поверхности диска. Каждая дорожка называется треком и образуется превращением МД под зафиксированным некоторым предопределяющем положением головки чтения/записи. Группы дорожек одного радиуса расположенные на поверхностях МД образуют цилиндр. Жесткие диски имеют по несколько десятков тысяч цилиндров, а на поверхности дискеты их 80. Каждый сектор состоит из поля данных и поля служебной информации, ограничивающей и идентифицирующей его. Размер сектора устанавливается контроллером или драйвером. В большинстве ОС размер сектора 512 байт. Физический адрес сектора на диске определяется с помощью трех координат [c-h-s], где с - номер цилиндра, h - номер рабочей поверхности диска, а s -номер сектора на дорожке. Номера цилиндра и поверхности диска номеруются с 0, а номер сектора с 1. Обмен информацией с дисками физически осуществляется только с секторами. Жесткий диск может быть разбит на несколько разделов (partition), которые могут использоваться либо одной ОС, либо различными. Главное, что в каждом разделе может быть организована своя ФС. Разделы дисков могут быть двух типов (primary, extended - первичный и расширенный). Максимальное число первичных разделов 4, минимальное - 1. Если их несколько, то только один из них может быть активным. Именно загрузчику расположенному в активном разделе передается управление при включенном компьютере и загрузке ОС. Остальные первичные разделы в этом случае считаются скрытыми (hidden). Согласно спецификациям на диске может быть только один расширенный раздел, который в свою очередь может быть поделен на большое количество подразделов - логических дисков. С активного первичного раздела загружается программа загрузки ОС, называемая менеджером загрузки. Ее назначение - загрузить программу загрузки ОС из какого-нибудь другого раздела и с ее помощью загрузить саму ОС. Поскольку до загрузки ОС СУФ работать не может, то для указания загрузчика используются абсолютные адреса в формате [c-h-s]. По физическому адресу [0-0-1] на винчестере располагается главная загрузочная запись (Master Boot Record), содержащая внесистемный загрузчик (Non System Bootstrap), а также таблицу разделов. Эта запись равна ровно первому сектору, она размещается в памяти с адресом 0:7C00H, после чего управление передается коду программы, содержащемуся в первом секторе МД.

МД является основным средством загрузки диска, которое поддерживается BIOS. В MBR находится три важных элемента:

1) программа начальной загрузки

2) таблица описания разделов диска, располагается по смещению 0:1BE и занимает 64 байта

3) сигнатура MBR. Последние 2 байта MBR должны содержать число AA55h. По наличию этой сигнатуры BIOS проверяет, что первый блок был загружен успешно. Этот код выбран неслучайно. Его успешная проверка говорит о том, что все линии передачи данных могут передавать и нули и единицы.

 

Таблица разделов описывает размещение и характеристики разделов на жестком диске. Если она повреждена, то не только не будет загружена ОС, но и перестанут быть доступными все данные на диске.

 

 

СМЕЩЕНИЕ РАЗМЕР СОДЕРЖАНИЕ
     
IBEh   Partition 1 Entry
1 CEh   Partition 2 Entry
1 DEh   Partition 3 Entry

 

Лекция 13

От 17.05.03

 

Первым байтом в предельном разделе является Boot Indicator, 0- не активен, 128 – активен. Он определяет раздел, который является системным загрузочным. Далее следует байт № головки рабочей поверхности, с которой начинается раздел. Далее идут два байта, означающие № цилиндра, № загрузочного сектора, где располагается загрузчик ОС. Затем идет кодовый идентификатор длиной 1 байт (System Id), указывающий на установленную файловую систему.

Т.е. 00-пустой раздел

01-FAT12

06-FAT16

OC-FAT32

83-LINUX NATIVE

85-LINUX EXTENTED

 

За байтом кода ОС располагается байт № рабочей поверхности конца раздела, за которым идут 2 байта: № сектора и № цилиндра последнего сектора данного раздела.

Формат записи, содержащей № сектора и цилиндра:

 

     
Биты № цилиндра Биты № сектора
       

10 бит 6 бит

 

Вслед за MBR размечают сами разделы.

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

Расширенный раздел DOS содержит расширенную запись MBR, равную Secondary MBR, в состав которой входит таблица логического диска (Logical Disk Table). Эта таблица описывает размещение характеристики раздела, содержащей единственный логический диск, а также может определять следующую запись SMBR.

Утилиты, позволяющие разбить диск на разделы называются FDISK (Form disk), Disk editor, Partition Magic.

 

Файловая система FAT.

 

В FAT логическое пространство любого диска делится на 2 области: системную и область данных.

 

загр. сектор резерв. сектор     корн. кат.  
BR RecSecs FAT1 FAT2 RDir Каталоги и файлы

 

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

В таблице FAT кластеры, принадлежащие одному файлу связываются в цепочки. Для указания № кластера используется 16- битовой слово (65536).

Кластер – минимальная адресная единица дисковой памяти, выделенная файлу. Разбиение области данных на кластеры вместо секторов имеет смысл по причине:

Уменьшается размер самой FAT;

Уменьшается возможная фрагментация файлов;

Ускоряется доступ к файлу, т.к. в несколько раз сокращается длина цепочек – фрагментов дискового пространства, выделенного файлу.

Большой размер файла ведет к неэффективному использованию дискового пространства, особенно при большом количестве малых файлов. Поэтому в файловых системах HDFS, NTFS, FAT32 размер кластера ограничивается (512 байт- 4 Кбайт). В FAT 32 проблема решается за счет того, что сама FAT может содержать 228 кластеров.

 

Пример:

 

Имя файла   Время последнего обращения к файлу Данные № начального кластера Размер
MyFile.txt Атрибуты Time Data   Size

 

 

                      0A 0B 0C 0D 0E 0F
  IP FF       FF       0A 0B          

 

 

                  F7 1A 1B 1C 1D FF    

 

 

- содержание FAT, по отношению к файлу MyFile.txt

 

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

Утилиты ScanDisk при обнаружении несоответствия между копиями FAT предлагает восстановить главную по данным второй копии.

 







Дата добавления: 2015-08-12; просмотров: 676. Нарушение авторских прав; Мы поможем в написании вашей работы!



Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

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

ТРАНСПОРТНАЯ ИММОБИЛИЗАЦИЯ   Под транспортной иммобилизацией понимают мероприятия, направленные на обеспечение покоя в поврежденном участке тела и близлежащих к нему суставах на период перевозки пострадавшего в лечебное учреждение...

Кишечный шов (Ламбера, Альберта, Шмидена, Матешука) Кишечный шов– это способ соединения кишечной стенки. В основе кишечного шва лежит принцип футлярного строения кишечной стенки...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

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

Психолого-педагогическая характеристика студенческой группы   Характеристика группы составляется по 407 группе очного отделения зооинженерного факультета, бакалавриата по направлению «Биология» РГАУ-МСХА имени К...

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

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия