Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Операционные системы. Часть 2. Учебное пособие
.pdf
20. Какие сегментные модели могут быть реализованы с использованием механизма сегментации в защищенном режиме?
21. Как выглядит механизм переключения в защищенный режим?
22. Опишите механизм защиты в защищенном режиме.
23. Опишите механизм обработки прерываний в защищенном
режиме.
24. Какие элементы определяют состояние текущей выполняемой задачи?
25. Что собой представляет режим системного управления?
26. Что собой представляет режим Virtual-86?
27. Для каких целей можно использовать утилиту debug.exe d
ОС Windows?
28. С помощью каких средств можно получить информацию об
использовании памяти в ОС Windows?
29. Опишите архитектуру памяти ОС Windows 9x?
30. Опишите архитектуру памяти ОС Windows на платформе
NT?
31. Какие существуют в ОС Windows механизмы работы с памятью?
32. Как можно настроить управление файлом подкачки в ОС
Windows?
33. Опишите процесс работы виртуальной памяти в ОС Windows.
34. Опишите процесс проецирования файлов в память в ОС
Windows.
35. Опишите процесс распределения куч в ОС Windows.
151

152
3. Управление устройствами
ввода-вывода
3.1. Описание устройств ввода-вывода
3.1.1. Классификация устройств ввода-вывода
Внешние устройства, выполняющие операции вводавывода, можно разделить на три группы [6]:
1. устройства, работающие с пользователем. Используются
для связи пользователя с компьютером. Сюда относятся принтеры, дисплеи, клавиатура, манипуляторы (мышь, трекбол, джойстики) и т. п.;
2. устройства, работающие с компьютером. Используются
для связи с электронным оборудованием. К ним можно отнести
дисковые устройства и устройства с магнитными лентами, датчики, контроллеры, преобразователи;
3. коммуникации. Используются для связи с удаленными устройствами. К ним относятся модемы и адаптеры цифровых линий.
По другому признаку устройства ввода-вывода можно
разделить на блочные и символьные. Блочными являются устройства, хранящие информацию в виде блоков фиксированного
размера, причем у каждого блока есть адрес и каждый блок может быть прочитан независимо от остальных блоков [6]. Блоки
обычно имеют фиксированный размер, кратный степени числа 2.
Блок может быть переписан из внутренней памяти во внешнюю
или обратно только целиком, и для выполнения любой операции
обмена с внешней памятью требуется специальная процедура
(подпрограмма). Процедуры обмена с устройствами внешней
памяти привязаны к типу устройства, его контроллеру и способу
подключения устройства к системе (интерфейсу).
Символьные устройства принимают или передают поток
символов без какой-либо блочной структуры (принтеры, сетевые карты, мыши и т. д.) [6].
Однако некоторые из устройств не попадают ни в одну из
этих категорий, например часы, мониторы и др. И все же модель

блочных и символьных устройств является настолько общей,
что может использоваться в качестве основы для достижения
независимости от устройств некоторого программного обеспечения операционных систем, имеющего дело с вводом-выводом.
Например, файловая система имеет дело с абстрактными блочными устройствами, а зависимую от устройств часть оставляет
программному обеспечению низкого уровня.
По методу доступа к информации устройства внешней
памяти разделяются на устройства с прямым (или непосредственным) и последовательным доступом [15]. Прямой доступ
(direct access) подразумевает возможность обращения к блокам
по их адресам в произвольном порядке. Традиционными устройствами с прямым доступом являются дисковые накопители,
и часто в понятие «диск», или дисковое устройство» (disk
device), вкладывают значение «устройство внешней памяти
прямого доступа». Так, например, виртуальный диск в ОЗУ и
электронный диск на флэш-памяти отнюдь не имеют круглых, а
тем более вращающихся деталей. Традиционными устройствами
с последовательным доступом являются накопители на магнитной ленте (tape device), они же стримеры. Здесь каждый блок
информации тоже может иметь свой адрес, но для обращения к
нему устройство хранения должно сначала найти некоторый
маркер начала ленты (тома), после чего последовательным холостым чтением блока за блоком дойти до требуемого места и
только тогда производить собственно операции обмена данными. Конечно, каждый раз возвращаться на начало ленты необязательно, однако необходимость последовательного сканирования блоков (вперед или назад) — неотъемлемое свойство устройств последовательного доступа. Несмотря на очевидный
проигрыш во времени доступа к требуемым данным, ленточные
устройства последовательного доступа в качестве внешней памяти находят применение для хранения очень больших массивов информации. В отличие от них устройства прямого доступа
— диски самой различной природы — являются обязательной
принадлежностью подавляющего большинства компьютеров.
Разнообразие внешних устройств приводит, по сути, к невозможности разработки единого и согласованного подхода к
проблеме ввода-вывода как с точки зрения операционной сис-
153

у
154
темы, так и с точки зрения пользовательских процессов. На рисунке 3.1 даны сведения по скорости передачи данных различных устройств ввода-вывода [6].
Gigabit Ethernet
Графический монитор
Жесткий диск
Ethernet
Оптический диск
Сканер
Лазерный принтер
Гибкий диск
Модем
Мышь
Клавиатура
10
1 102 103 104 105 106 107 108 109
Бит в секунд
Рис. 3.1. Соотношения скоростей передачи данных
у различных устройств ввода-вывода.
3.1.2. Основные характеристики устройств внешней
памяти
Главная характеристика устройств — емкость хранения,
измеряемая в килобайтах (Кбайт), мегабайтах (Мбайт), гигабайтах (Гбайт) и терабайтах (Тбайт), или в английской транскрипции
— KB, MB, GB, ТВ соответственно. Здесь, как правило, пристав-

ки кило-, мега-, гига-, тера- имеют десятичные значения — 103,
106, 109 и 1012 соответственно. В других подсистемах компьютера, например при определении объема ОЗУ, ПЗУ и другой
внутренней памяти, эти же приставки чаще применяют в двоичных значениях 210, 220, 230 и 240, соответственно при этом 1
Кбайт равен 1024 байтам, 1 Мбайт — 1024 Кбайт, 1 Гбайт —
1024 Мбайт, 1 Тбайт — 1024 Гбайт [15]. Этими разночтениями
объясняются различия значений емкости одного и того же устройства, полученные из разных источников. «Двоичные» кило-,
мега-, гига-, тера- более «увесисты», поэтому емкость устройства, отраженная в десятичных единицах, будет выглядеть внушительнее. Например, до недавнего времени один и тот же порог
«беспроблемного» объема жесткого диска составлял 528 Мбайт
(десятичных) или 504 Мбайт (двоичных).
Устройства внешней памяти могут иметь сменные или фиксированные носители информации. Применение сменных носителей (removable media) позволяет хранить неограниченный
объем информации, а если носитель и формат записи стандартизованы, то они позволяют еще и обмениваться информацией
между компьютерами. Существуют устройства с автоматической сменой носителя — ленточные карусели, дисковые устройства JukeBox. Эти достаточно дорогие устройства применяют в
мощных файл-серверах. Для настольных машин имеются накопители CD-ROM с несколькими дисками (CD-changer), сменяемыми автоматически.
Важнейшими общими параметрами устройств являются
время доступа, скорость передачи данных, удельная стоимость
хранения информации, скорость записи и считывания.
Время доступа (access time) определяется как усредненный
интервал времени от выдачи запроса на передачу блока данных
до фактического начала передачи. Дисковые устройства имеют
время доступа от единиц до сотен миллисекунд. Для электронных
устройств внешней памяти время доступа определяется быстродействием используемых микросхем памяти и при чтении составляет доли микросекунд, причем запись может продолжаться
значительно дольше, что объясняется природой энергонезависимой электронной памяти. Для устройств с подвижными носителями основной расход времени имеет место в процессе пози-
155

156
ционирования головок (seek time — время поиска) и ожидания
подхода к ним требуемого участка носителей (latency — скрытый период). Для дисковых и ленточных устройств принципы
позиционирования различны, и различные составляющие процесса поиска будут подробнее рассмотрены в описании соответствующих устройств.
Скорость записи и считывания определяется как отношение объема записываемых или считываемых данных ко времени,
затрачиваемому на эту операцию. В затраты времени входит и
время доступа, и время передачи данных. При этом оговаривается характер запросов (линейный или случайный), что сильно сказывается на величине скорости из-за влияния времени доступа.
При определении скорости линейных запросов чтения-записи
(linear transfer rate read/write) производится обращение к длинной цепочке блоков с последовательным нарастанием адреса.
При определении скорости случайных запросов чтения-записи
(random transfer rate read/write) соседние запросы разбросаны по
всему носителю, что увеличивает время записи или считывания.
Для современных многозадачных ОС характерно чередующееся
выполнение нескольких потоков запросов, и в каждом потоке
высока вероятность последовательного нарастания адреса.
Скорость передачи данных (Transfer Speed, Transfer Rate)
определяется как производительность обмена данными после
выполнения поиска данных. Однако в способе измерения этого
параметра возможны разночтения, поскольку современные устройства имеют в своем составе буферную память5 существенных
размеров. Скорости обмена буферной памяти с собственно носителем (внутренняя скорость) и внешним интерфейсом могут
существенно различаться. Если скорость работы внешнего интерфейса ограничивается быстродействием электронных схем и
достижимой частотой передаваемых сигналов, то внутренняя
скорость более жестко ограничивается возможностями электромеханических устройств (скоростью движения носителя и плотностью записи). При измерениях скорости передачи на небольших объемах пересылок проявится ограничение внешнего ин-
5
Буферной памятью называется объект памяти, которым владеют
одновременно два объекта, не связанные между собой.

терфейса буферной памяти, при средних объемах — ограничение внутренней скорости, а при больших объемах проявится
еще и время поиска последующих блоков информации. Бывает,
что в качестве скорости передачи данных указывают лишь максимальную скорость интерфейса, а о внутренней скорости можно судить по частоте вращения дисковых носителей и числу секторов на треке, но об этих понятиях будет сказано чуть позже.
Определение удельной стоимости хранения информации
для накопителей с фиксированными носителями пояснения не
требует. В случае сменных носителей этот показатель интересен
для собственно носителей, но не следует забывать и о цене самих приводов, которую тоже можно приводить к их емкости.
3.1.3. Характеристики накопителей на жестких
магнитных дисках
Накопители на жестких магнитных дисках (НЖМД), они же
HDD (Hard Disk Drive), являются главными устройствами дис-
ковой памяти большинства компьютеров. По случайному совпадению цифр первые модели НЖМД назвали «винчестером»
(просто игра слов), и это неофициальное название закрепилось в
качестве синонима HDD и НЖМД [15]. Винчестер определяет
мощность компьютера наряду с процессором и оперативной
мятью. Мощность винчестера характеризуется большим объемом хранимой информации (десятки гигабайт), малым временем
доступа (единицы миллисекунд), большой скоростью передачи
данных (десятки мегабайт в секунду), высокой надежностью,
умеренной стоимостью и рядом других полезных свойств. Прогресс в области производства винчестеров устойчив и стремителен: от 10-мегабайтного диска XT уже пришли к
Каждый год «модная» емкость винчестера ПК примерно удваивается, при этом цена устройства постепенно снижается.
Рассмотрим общие параметры диска [15].
Форматированная емкость (formatted capacity), измеряемая в гигабайтах (мегабайтах), представляет собой объем хранимой полезной информации (сумму полей данных всех доступных секторов). Неформатированная емкость (unf formatted
capacity) представляет собой максимальное количество битов,
157
па-
терабайтам.

158
записываемых на всех треках диска, включая и служебную информацию (заголовки секторов, контрольные коды полей данных). Соотношение форматированной и неформатированной
емкостей определяется форматом трека (размером сектора), но
поскольку для рядового пользователя свободы в выборе формата
нет, практический интерес представляет только форматированная емкость диска, которая указывается для стандартного раз
мера сектора (512 байт). Напомним, что мегабайт и гигабайт
здесь обычно означают 10
3
и 106 байт. Иногда указывается число
-
доступных секторов.
Скорость вращения шпинделя (spindle speed), измеряемая
в оборотах в минуту RPM (Revolutions Per Minute), позволяет
косвенно судить о производительности (внутренней скорости).
Для жестких дис-ков широкого применения значение 3600
об/мин было стандартным несколько лет назад; сейчас обычной
считается 5400 об/мин, а 7200 — более высокой скоростью. Там,
где производительность особо критична, используют
диски со
скоростью 10000 и 15000 об/мин.
Интерфейс (interface) определяет способ подключения накопителя. Для накопителей со встроенным контроллером распространены интерфейсы АТА, а также IDE и SCSI, для устройств
внешнего исполнения применяют шины USB, FireWire и Fibre
Channel, а также подключение к LPT-порту.
К группе параметров внутренней организации
диска относятся:
количество физических дисков (disks) или рабочих поверхностей (data surfaces), используемых для хранения данных.
Современные накопители с небольшой высотой имеют малое
(1–2) количество дисков для облегчения блока головок. Большее
число дисков характерно для старых накопителей и современных накопителей большой емкости;
количество физических головок чтения-записи (read/write
heads), естественно, совпадающее с числом рабочих поверхностей. Заметим, что число головок и соответственно рабочих
по-
верхностей может быть и меньше удвоенного числа дисков —
обычно в каждом семействе есть такого рода модели. Это делается для утилизации дисков, у которых одна из поверхностей

оказывается с производственным браком, или исходя из других
технологических соображений;
физическое количество цилиндров (cylinders), возросшее от
нескольких сотен, характерных для первых винчестеров, до десятков тысяч;
размер сектора (Bytes Per Sector), составляющий обычно
512 байт. Количество зон и количество секторов на треке
(Sectors Per Track) в крайних зонах;
расположение сервометок или сервоголовок (servo head),
находящееся на выделенной поверхности (dedicated servo), рабочих поверхностях (embe-ded servo) или гибридное (hybrid
servo);
метод кодирования-декодирования данных (recording
method или data encoding sheme): MFM (FM почти и не применя-
ли); RLL (ARLL); PRML, последний из них является наиболее
прогрессивным.
Быстродействие и производительность диска характеризуются следующими параметрами:
временем перехода на соседний трек (track-to-track seek),
измеряемым в миллисекундах, показывающим быстродействие
системы позиционирования. Для современных жестких дисков
характерно время перехода 0,5–2 мс, причем для записи оно несколько больше, чем для считывания (записывать лучше при
более точном позиционировании);
средним временем поиска (average seek time), определяемым
по набору обращений к случайным цилиндрам. Для большинства
современных дисков оно составляет около 8–10 мс, в самых быстрых его удается снизить до 4–5 мс. Чем больше объем накопителя, тем сложнее достичь снижения времени поиска: большее
число головок труднее быстро перемещать; большее число цилиндров или увеличивает длину перемещения головок, или повышает требования к точности позиционирования;
максимальным или полным временем поиска (maximum
seek time, full seek time), определяемым для самых удаленных пе-
реходов между крайними цилиндрами. Оно примерно в два раза
превышает среднее время поиска. Среднее ожидание сектора
при одиночном обращении (average latency) обычно составляет
159

половину времени полного оборота (для 3600 об/мин — 8 мс,
7200 — 4 мс, 15000 — 2 мс);
внутренней скоростью передачи данных (internal transfer
rate) между носителем и буферной памятью контроллера, задаю-
щей физический предел производительности накопителя. Скорость выражается в разных величинах: если указывается в мегабитах в секунду (Mb/s), то сюда, кроме пользовательских данных,
входят и биты служебных полей. У вы-сокоскоростных винчестеров с частотой вращения 15000 об/мин этот параметр достигает
500 Мбит/с. При выражении скорости в мегабайтах в секунду
(MB/s) подразумевают только байты пользовательских данных, и
поэтому пересчет на мегабиты в секунду простым умножением
на 8 (число битов в байте) неправомерен. У современных винчестеров с частотой вращения 5400 об/мин скорость составляет 8–
15 Мбайт/с, 7200 об/мин — 15–35 Мбайт/c. Для каждой модели
обычно указывается минимальное и максимальное значение
скорости, соответствующее внутренним и внешним трекам;
внешней скоростью передачи данных (external transfer rate),
измеряемой в килобайтах (мегабайтах) полезных данных в секунду, передаваемых по шине внешнего интерфейса, и зависящей от
быстродействия электроники контролера, типа интерфейсной
шины и режима обмена;
длительной производительностью (sustained throughput),
определяемой при последовательном чтении большого количества секторов
(например, при применении накопителей для мультимедийных приложений). На этот параметр влияют все составляющие: внутренняя и внешняя скорости, время позицирования, задержка подхода сектора, количество ошибок позицирования и
чтения. Винчестеры с частотой вращения 5400 об/мин выдерживают потоки 8–25 Мбайт/с, с частотой 7200 об/мин — 10–30
Мбайт/с и 15000 об/мин — 35–45 Мбайт/с.
Группа параметров надежности устройств и достоверности
хранения включает следующие показатели:
ожидаемое время до отказа MTBF (Mean Time Before
Failure), измеряемое в сотнях тысяч часов, — среднестатистический показатель для данного устройства. Реально столько часов
(100000 часов — это более 10 лет) испытания проводить, естест-
160
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
