Виртуальная память. Страничная организация, сегментация памяти — КиберПедия 

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

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...

Виртуальная память. Страничная организация, сегментация памяти

2021-06-24 20
Виртуальная память. Страничная организация, сегментация памяти 0.00 из 5.00 0 оценок
Заказать работу

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

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

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

· Программа не ограничена объемом физической памяти. Упрощается разработка программ, поскольку можно задействовать большие виртуальные пространства, не заботясь о размере используемой памяти.

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

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

Таким образом, возможность обеспечения (при поддержке операционной системы) для программы «видимости» практически неограниченной (характерный размер для 32-разрядных архитектур 232 = 4 Гбайт) адресуемой пользовательской памяти (логическое адресное пространство) при наличии основной памяти существенно меньших размеров (физическое адресное пространство) – очень важный аспект.

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

Страничная виртуальная память

Как и в случае простой страничной организации, страничная виртуальная память и физическая память представляются состоящими из наборов блоков или страниц одинакового размера. Виртуальные адреса делятся на страницы (page), соответствующие единицы в физической памяти образуют страничные кадры (page frames), а в целом система поддержки страничной виртуальной памяти называется пейджингом (paging). Передача информации между памятью и диском всегда осуществляется целыми страницами.

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

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

Сегментация

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

На практике, однако, появления в системе большого количества таблиц страниц стараются избежать, организуя неперекрывающиеся сегменты в одном виртуальном пространстве, для описания которого хватает одной таблицы страниц. Таким образом, одна таблица страниц отводится для всего процесса. Например, в популярных ОС Linux и Windows 2000 все сегменты процесса, а также область памяти ядра ограничены виртуальным адресным пространством объемом 4 Гбайт. При этом ядро ОС располагается по фиксированным виртуальным адресам вне зависимости от выполняемого процесса.

 

Устройства обмена данными.

Модем. Устройство, предназначенное для обмена информацией между удаленными компьютерами по каналам связи, принято называть модемом (МОдулятор + ДЕМодулятор). При этом под каналом связи понимают физические линии (проводные, оптоволоконные, кабельные, радиочастотные), способ их использования (ком­мутируемые и выделенные) и способ передачи данных (цифровые или аналоговые сигналы). В зависимости от типа канала связи устройства приема-передачи подразделяют на радиомодемы, кабельные модемы и прочие. Наиболее широкое применение нашли модемы, ориентированные на подключение к коммутируемым телефонным каналам связи.

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

К основным потребительским параметрам модемов относятся:

• производительность (бит/с);

• поддерживаемые протоколы связи и коррекции ошибок;

• шинный интерфейс, если модем внутренний (ISA или РСI).

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

 

Интерфейсы SCSI

SCSI (англ. Small Computer System Interface, произносится «скази» [1][2] (встречается вариант эс-си-эс-ай) — представляет собой набор стандартов для физического подключения и передачи данных между компьютерами и периферийными устройствами. SCSI-стандарты определяют команды, протоколы и электрические и оптические интерфейсы. Разработан для объединения на одной шине различных по своему назначению устройств, таких, как жёсткие диски, накопители на магнитооптических дисках, приводы CD, DVD, стримеры, сканеры, принтеры и т. д.

Интерфейс SCSI был разработан в конце 1970-х годов и предложен организацией Shugart Associates. Первый стандарт на этот интерфейс был принят в 1986 г. SCSI определяет только логический и физический уровень. Устройства, подключенные к шине SCSI, могут играть две роли: Initiator (ведущий) и Target (ведомый), причем одно и то же устройство может быть как ведущим, так и ведомым. К шине может быть подключено до восьми устройств. Каждое устройство на магистрали имеет свой адрес (SCSI ID) в диапазоне от 0 до 7.

Одно из этих устройств - хост-адаптер SCSI. Хост-адаптер шины (HBA, от англ. host bus adapter; также host channel adapter (HCA) «хост-адаптер канала» или просто host adapter) — вид компьютерных комплектующих: плата адаптера, устанавливаемая в компьютер и служащая для подключения накопителей (устройств хранения информации) или сети, имеющих в качестве интерфейса шинную организацию, отличную от имеющихся в компьютере изначально. Ему обычно назначают SCSI ID = 7. Хост-адаптер предназначен для осуществления обмена с процессором. Хост-адаптер, как правило, имеет разъемы для подключения как встраиваемых, так и внешних SCSI-устройств.

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

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

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

· пассивное согласование при помощи резисторов;

· FPT (Force Perfect Termination) - улучшенное согласование с исключением перегрузок при помощи ограничительных диодов;

· активное согласование при помощи регуляторов напряжения.

Обмен данными между устройствами на шине SCSI происходит в соответствии с протоколом высокого уровня на основе стандартного списка команд - CCS (Common Command Set). Этот универсальный набор команд обеспечивает доступ к данным с помощью адресации логических, а не физических блоков. С внедрением в спецификацию CSS команд, поддерживающих приводы CD-ROM, коммуникационные устройства, сканеры и др. (стандарт SCSI-2), стала осуществимой работа практически с любыми блочными устройствами.

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

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

Таблица 15.1. Сравнение различных вариантов интерфейса SCSI-2

Стандарт

Максимальная пропускная способность

Максимальная длина кабеля (синфазный)

 

8 бит

Wide SCSI

 
16 бит 32 бит  
SCSI 5 Мбайт/с 10 Мбайт/с 20 Мбайт/с 6 м  
Fast SCSI 10 Мбайт/с 20 Мбайт/с 40 Мбайт/с 3 м  
UltraSCSI 20 Мбайт/с 40 Мбайт/с 80 Мбайт/с 1,5 м  

Следует отметить, что существует также спецификация на программный интерфейс драйверов хост-адаптера и SCSI-устройств, разработанная фирмой Adaptec, ASPI (Advanced SCSI Programming Interface). Другая спецификация - SCAM (SCSI Configuration Auto Magically) - позволяет упростить настройку SCSI-устройств и скрыть от пользователя некоторые ее детали.

 

Интерфейсы RS-232C

Интерфейс RS-232C

RS-232 (англ. RecommendedStandard 232) — физический уровеньасинхронного (UART) интерфейса.

Стандарт на последовательный интерфейсRS-232Cпервоначально использовался для подключения ЭВМ и терминалов к системе связи через модемы, а также для непосредственного подключения терминалов к машинам. До недавнего времени интерфейс использовался для широкого спектра периферийных устройств (плоттеры, принтеры, мыши, модемы и др.), но сейчас активно вытесняется интерфейсом USB.

Стандарт RS-232C определяет:

· механические характеристики интерфейса (разд.1) - разъемы и соединители;

· электрические характеристики сигналов (разд.2) - логические уровни;

· функциональные описания интерфейсных схем (разд.4) - протоколы передачи;

· стандартные интерфейсы для выбранных конфигураций систем связи (разд. 5).

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

Обычно ПК имеют в своем составе два интерфейса RS-232C, которые обозначаются COM1 и COM2. Возможна установка дополнительного оборудования, которое обеспечивает функционирование в составе PC четырех, восьми и шестнадцати интерфейсов RS-232C. Для подключения устройств используется 9-контактный (DB9) или 25-контактный (DB25) разъем.

ИнтерфейсRS-232C содержит сигналы квитирования, обеспечивая асинхронный режим функционирования (табл. 15.2). При этом одно из устройств (обычно компьютер) выступает как оконечное устройство, а другое - как устройство передачи данных, например, модем.

Основные принципы обмена информацией по интерфейсу RS-232C:

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

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

3. Передаче каждого пакета данных предшествует передача стартовой посылки, т.е. передача двоичного нуля в течение времени, равного времени передачи одного бита данных.

4. После передачи стартовой посылки обеспечивается последовательная передача всех разрядов данных, начиная с младшего разряда. Количество битов может быть 5, 6, 7 или 8.

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

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

Обмен даннымипо описанным выше принципам требует предварительного согласования приемника и передатчика по скорости (длительности бита) (300-115200 бит/с), количеству используемых разрядов в символе (5, 6, 7 или 8), правилам формирования контрольного разряда (контрольпо четности, по нечетности или отсутствие контрольного разряда), длительности передачи стоповой посылки (1 бит, 1,5 бит или 2 бит).

Спецификация RS-232C для электрических характеристик сигналов определяет, что высокий уровень напряжения от +3В до +12В (при передаче - до +15В) считается логическим "0", а низкий уровень напряжения от- 3В до - 12В (при передаче - до 15В) считается логической "1" (рис. 15.1). Диапазон сигналов 3В:+3В обеспечивает защиту от помех и стабильность передаваемых данных.


Рис. 15.1. Логические уровни интерфейса RS-232C

 

Интерфейсы USB

Является периферийной шиной USB для подключения компьютерной периферии вне корпуса ПК с автоматическим автоконфигурированием (Plug&Play). Для высокоскоростных устройств с более строгими требованиями к производительности (например, доступ к удаленному накопителю или передача оцифрованного видео) конкурентом USB является интерфейс IEEE 1394.

Интерфейс USB представляет собой последовательную, полудуплексную (в обоих направлениях, но по очереди), двунаправленную шину со скоростью обмена:

· USB 1.1 - 1,5 Мбит/с или 12 Мбит/с;

· USB 2.0 - 480 Мбит/с.

Шина позволяет подключить к ПК до 127 физических устройств.

 


Рис. 15.3. Топология подключения устройств к USB

 

Сетевой концентратор или хаб (от англ. hub — центр) — устройство для объединения компьютеров в сеть Ethernet c применением кабельной инфраструктуры типа витая пара. В настоящее время вытеснены сетевыми коммутаторами. Сетевой коммутатор (жарг. свитч от англ. switch — переключатель) — устройство, предназначенное для соединения нескольких узловкомпьютерной сети в пределах одного или нескольких сегментов сети. В отличие от концентратора (1 уровень OSI), который распространяет трафик от одного подключённого устройства ко всем остальным, коммутатор передаёт данные только непосредственно получателю (исключение составляет широковещательный трафик всем узлам сети и трафик для устройств, для которых неизвестен исходящий порт коммутатора).

Для передачи сигналов шина USB использует четырехпроводной интерфейс. Одна пара проводников ("+5В" и "общий") предназначена для питания периферийных устройств с нагрузкой до 500 мА. Данные передаются по другой паре ("D+" "D"). Для передачи данных используются дифференциальные напряжения до 3 В (с целью снижения влияния шума) и схема кодирования NRZI1NRZI (Non-Return to Zero Inverted) - самосохранизующаяся схема кодирования без возвращения к нулю с инверсией. (что избавляет от необходимости выделять дополнительную пару проводников под тактовый сигнал).

Интерфейс USB 1.1 декларирует два режима:

· низкоскоростной подканал (пропускная способность - 1,5 Мбит/с), предназначенный для таких устройств, как мыши и клавиатуры;

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

Данные на шине передаются транзакциями, интервал между которыми составляет 1 мс. Предусмотрено четыре типа транзакций.

Управляющие передачи используются для конфигурации вновь подключенных устройств (например, присвоения им адреса USB) и их компонентов. Устройства с максимальной производительностью могут быть настроены на работу с конфигурационными сообщениями длиной 8, 16, 32 или 64 байта (по умолчанию - 8 байт). Устройства с низкой производительностью в состоянии распознавать управляющие сообщения длиной не более 8 байт.

Групповая передача (bulk) используется для адресной пересылки данных большого объема (до 1023 байт). В качестве примера можно привести передачу данных на принтер или от сканера. Устройства с низкой производительностью не поддерживают этот режим.

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

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

Следует также отметить, что разными производителями предлагались спецификации, описывающие интерфейс различных аппаратных реализаций контроллера USB. Фирмой Intel была предложена спецификация UHCI (Universal Host Controller Interface), которая предусматривает чрезвычайно простую аппаратную реализацию контроллера USB. В рамках данной спецификации основные функции контроля и арбитража шины возлагаются на программный драйвер. Альтернативная спецификация была предложена компаниями Compaq, Microsoft и National Semiconductor - OHCI (Open Host Controller Interface). Контроллеры по спецификации OHCI обладают унифицированным абстрактным интерфейсом, предусматривающим аппаратную реализацию большинства управляющих функций, что облегчает их программирование.

 

Интерфейсы IEEE 1284, 1394

IEEE 1284, LPT (англ. Line Print Terminal; также параллельный порт, порт принтера) — международный стандарт параллельного интерфейса для подключения периферийных устройств персонального компьютера.

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

Название LPT образовано от наименования стандартного устройства принтера LPT1 (Line Printer Terminal или Line PrinTer) в операционных системах семейства MS-DOS.Повсеместно используется в персональных компьютерах в качестве стандартного параллельного интерфейса.

Стандарт IEEE 1284 определяет работу параллельного интерфейса в трех режимах: Standard Parallel Port (SPP), Enhanced Parallel Port (EPP) и Extended Capabilities Port (ECP). Каждый из этих режимов предусматривает двустороннюю передачу данных между компьютером и периферийным устройством.

Режим SPP (Стандартный параллельный порт) используется для совместимости со старыми принтерами, не поддерживающими IEEE 1284. Режиму SPP соответствуют три программно доступных регистра:

· порт BASE+0 - SPP Data - регистр данных,

· порт BASE+1 - SPP Status - регистр состояния,

· порт BASE+2 - SPP Control - регистр управления.

В режиме EPP (Улучшенный параллельный порт) используется аппаратная реализация сигналов квитирования, благодаря чему возможно увеличение скорости передачи до 2 Мбайт/с. Этот режим поддерживает адресацию устройств, благодаря чему возможно подключение нескольких (до 64) устройств к одному порту

Режим ECP (Порт расширенных возможностей) также использует аппаратное квитирование(подтверждение приёма-передачи структурной единицы информации) и адресацию устройств (до 128). Дополнительно ECP поддерживает распознавание ошибок, согласование скорости и режима передачи, буферизацию данных в очереди FIFO (с использованием DMA) и их компрессию по алгоритму RLE (Run Length Encoding), что позволяет достигать скорость до 4 Мбайт/с.

IEEE 1394(FireWire [1], i-Link) — последовательная высокоскоростная шина, предназначенная для обмена цифровой информацией между компьютером и другими электронными устройствами.

Интерфейс IEEE 1394 представляет собой дуплексную, последовательную, общую шину для периферийных устройств. Она предназначена для подключения компьютеров к таким бытовым электронным приборам, как записывающая и воспроизводящая видео- и аудиоаппаратура, а также используется в качестве интерфейса дисковых накопителей (таким образом, она соперничает с шиной SCSI).

Обеспечивает поддержку скорости передачи данных 800 и 1600 Мбит/с (FireWire-800, FireWire-1600).

Устройства, которые передают данные на разных скоростях, могут быть одновременно подключены к кабелю (поскольку пары обменивающихся данными устройств используют для этого одну и ту же скорость). Рекомендуемая максимальная длина кабеля между устройствами составляет 4,5 м. К кабелю общей длиной до 72 м может быть одновременно подключено до 63 устройств, называемых узлами (nodes). Для увеличения числа шин вплоть до максимального значения (1023) могут быть использованы мосты(сетевое устройство, предназначенное для объединения сегментов (подсети) компьютерной сети в единую сеть).


Поделиться с друзьями:

Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...

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

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

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.058 с.