Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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

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

Он позволяет перемещать блоки данных из памяти или в неё без использования процессора. Модуль прямого доступа к памяти 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 предлагает восстановить главную по данным второй копии.

 

<== предыдущая лекция | следующая лекция ==>
Режимы управления вводом/выводом | 
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 363; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.06 сек.