МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Структура и основные компоненты вычислительной системы

    имеется, то соответствующее этому адресу значение, считается

    значением операнда и передается в процессор для обработки

    (т.е. обращение в оперативную память не происходит).

    2. Если такой строчки нет, то происходит обмен с оперативной

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

    буфер и помечается исполнительным адресом этого значения в

    оперативной памяти. Содержимое операнда поступает в процессор

    для обработки. При этом решается проблема размещения новой

    строчки. Аппаратно ищется свободная строка (но она может быть

    только в начале работы машины), и если таковая не найдена,

    запускается аппаратный процесс вытеснения из этого буфера

    наиболее «старой» строчки. Старость определяется по некоторому

    предопределенному критерию. Например, признаком старения может

    быть количество обращений к этому буферу при котором нет

    обращений к этой строчки. В каждом таком случае число в

    третьем столбце таблицы увеличивается на единицу.

    Регистровый буфер

    |Исполнительный |Содержимое |Признак |

    |адрес | |«старения» |

    | | | |

    |... |... |... |

    | | | |

    Короче говоря, аппаратура решает, какую из строк надо

    вытолкнуть из таблицы, чтобы на ее место записать новое

    содержимое. При этом учитывается информация о том, были ли

    обращения к данной строке с использованием команд записи в

    память. Если такие обращения были, то перед выталкиванием

    происходит запись в ОЗУ по исполнительному адресу содержимого

    нашей строчки.

    Алгоритм записи в оперативную память симметричен. Когда в программе

    встречается команда записи операнда в память, аппаратура выполняет

    следующие действия. Проверяется наличие в буфере строки с заданным

    исполнительным адресом. Если такая строка есть, то в поле «Содержимое»

    записывается новое значение, и аппаратно корректируется признак старения

    строк. Если такой строчки нет, то запускается описанный выше процесс

    выталкивания, и затем информация размещается в освободившейся строке.

    Этот буфер чтения/записи служит достаточно мощным средством для

    минимизации обращений к ОЗУ. Наибольший эффект достигается при небольших

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

    процесс работает без обращений к ОЗУ. Иногда, эти буфера называют КЭШ-

    буферами, а также ассоциативной памятью, потому что доступ к этой памяти

    осуществляется не по адресу (как в ОЗУ), а по значению поля. Реально, все

    механизмы могут быть устроены иначе, чем мы здесь изучаем, т.к. мы изучаем

    некоторую обобщенную систему.

    Следующим компонентом, который мы с вами рассмотрим с точки зрения

    системного подхода, а системный подход подразумевает то, что вы

    рассматриваем вещь не саму по себе, а в контексте взаимосвязи с другими

    компонентами, это некоторые свойства ОЗУ.

    Оперативная память

    |1-й блок | |2-й блок |. . . |k-й блок |

    |0 | |1 |. . . |k-1 |

    |k | |k+1 |. . . |2k-1 |

    |. . . | |. . . |. . . |. . . |

    Использование расслоения памяти. Физически ОЗУ представимо в виде

    объединения k устройств, способных хранить одинаковое количество информации

    и, при этом, способные взаимодействовать с процессором независимо друг от

    друга. При этом адресное пространство ВС организовано таким образом, что

    подряд идущие адреса, или ячейки памяти, находятся в соседних устройствах

    (блоках) оперативной памяти.

    Программа состоит (в большей степени) из линейных участков. Если

    использовать этот параллелизм, то можно организовать в процессоре еще один

    буфер, который организован также, но в котором размещаются машинные

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

    буфер автоматически заполняется вперед. Т.е. за одно обращение можно

    прочесть k машинных слов и разместить их в этом буфере. Далее, действия с

    буфером команд похожи на действия с буфером чтения/записи. Когда нужна

    очередная команда (ее адрес находится в счетчике команд) происходит ее

    поиск (по адресу) в буфере, и если такая команда есть, то она считывается.

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

    выталкивания строки, и новая строка считывается из памяти и копируется в

    буфер команд. Расслоение памяти в идеале увеличивает скорость доступа в k

    раз, плюс буфер команд позволяет сократить обращения к ОЗУ.

    Лекция №3

    Мы продолжаем рассмотрение нашей упрощенной схемы. В современных

    машинах имеется еще одно аппаратное средство, которое призвано поддерживать

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

    сегодняшний день все вычислительные машины (за исключением особо

    раритетных) работают в мультипрограммном (мультипроцессорном) режиме. Суть

    его заключается в том, что имеется несколько процессов, которые

    одновременно выполняются в вычислительной системе. Посмотрим, как этот

    мультипрограммный режим влияет на использование оперативной памяти.

    Оперативная память

    |Операционная |

    |система |

    | |

    |Задача №1 |

    | |

    |Задача №2 |

    | |

    |Задача №3 |

    |. |

    |. |

    |. |

    Предположим: в начальный момент времени какую-то часть оперативной

    памяти заняла операционная система (так оно и происходит). После этого была

    загружена программа №1 , затем программы №2, №3 (и т.д.). Операционная

    система начала выполнять эти программы в мультипрограммном режиме.

    Возникает вопрос: всегда ли любую программу можно поместить в произвольный

    диапазон адресного пространства оперативной памяти? Обладает ли программа

    свойством перемещения по памяти? Насколько задача связана с адресным

    пространством, на которое ее запрограммировали? Это первая проблема. Вторая

    проблема: этот процесс идет, и понятно, что в какие-то моменты времени

    какие-то из этих задач заканчиваются (например Задача №2). При этом в

    памяти образуются свободные фрагменты.

    Оперативная память Оперативная память

    |Операционная | |Операционная |

    |Система | |Система |

    | | | |

    |Задача №1 | |Задача №1 |

    | | |Задача №6 |

    | | | |

    | | | |

    |Задача №3 | |Задача №3 |

    |. | |. |

    |. | |. |

    |. | |. |

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

    может посмотреть, какие из задач ожидают обработки, и если есть задача,

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

    Но возникает второй вопрос: а как быть, если нет такой задачи, которая

    поместится в освободившийся фрагмент. При этом проблема заключается в том,

    что даже если найдется задача (№6), которая поместится в указанном

    фрагменте, то останется еще меньший фрагмент памяти, в который уже нельзя

    практически ничего записать. Количество таких, никому не нужных, фрагментов

    постепенно увеличивается. Это процесс фрагментации памяти.

    Фрагментация может происходить и в оперативной памяти, и на внешнем

    запоминающем устройстве. В результате через некоторое время возникает

    достаточно интересная и грустная ситуация: свободного адресного

    пространства много, но при этом мы не можем загрузить ни одной новой

    задачи. Это означает, что система в целом начинает деградировать. Например,

    если Вы пошлете заказ на выполнение какого-то действия, то Вам придется

    неоправданно долго ждать.

    Для борьбы с фрагментацией памяти, а также для решения проблемы

    перемещения программы по адресному пространству, используется, так

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

    Пусть имеется некоторое адресное пространство программы, то есть то

    адресное пространство, в терминах которого оперирует программа. И имеется

    адресное пространство физическое, которое зависит от времени. Оно

    характеризует реальное состояние физической оперативной памяти.

    В машинах, поддерживающих виртуальную память, существует механизм

    преобразования адресов из адресного пространства программы в физическое

    адресное пространство, то есть при загрузке задачи в память машины

    операционная система размещает реальную задачу в той оперативной памяти,

    которая является свободной, вне зависимости от того, является ли этот

    фрагмент непрерывным, либо он фрагментирован. Это первое действие выполняет

    операционная система. Она знает о состоянии своих физических ресурсов:

    какие свободны, какие заняты.

    Второе: операционная система заполняет некоторые аппаратные таблицы,

    которые обеспечивают соответствие размещения программы в реальной

    оперативной памяти с адресным пространством, используемым программой. То

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

    размещена, и какая часть адресного пространства программы поставлена ей в

    соответствие.

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

    механизм) виртуальной памяти. Устройство управления выбирает очередную

    команду. Из этой команды оно выбирает операнды, то есть адреса и те

    индексные регистры, которые участвуют в формировании адреса. Устройство

    управления (автоматически) вычисляет исполнительный адрес того значения, с

    которым надо работать в памяти. После этого автоматически (аппаратно)

    происходит преобразование адреса исполнительного программного (или

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

    которые были сформированы операционной системой при загрузке данной

    программы в память. И продолжается выполнение команды. Аналогично

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

    Точно так же устройство управления вычисляет сначала адрес исполнительный,

    после чего он преобразуется в адрес физический, а потом значение этого

    физического адреса помещается в счетчик команд. Это и есть механизм

    виртуальной памяти.

    Рассмотрим простейший пример организации виртуальной памяти:

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

    Суть страничности памяти заключается в том, что аппаратно все адресное

    пространство оперативной памяти разделено на блоки фиксированного объема.

    Обычно размер таких блоков равен степени двойки. При этом сохраняется

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

    машине такова: адрес любой ячейки памяти представлен в виде двух полей;

    старшие его разряды являются номером страницы, а младшие разряды являются

    смещением относительно страницы (здесь используется тот факт, что размер

    страницы равен степени двойки).

    Исполнительный адрес

    |№ Страницы |Смещение относительно |

    | |страницы |

    Итак, мы имеем машину со страничной организацией памяти. Для

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

    таблицу приписки (ТП). Это аппаратное средство машины, реализованное с

    помощью регистровой памяти. Структура этой таблицы:

    Таблица приписки

    |№ Виртуальной |№ Физической |

    |страницы |страницы |

    |0 |25 |

    |1 |1 |

    |2 |30 |

    |. |. |

    |. |. |

    |. |. |

    |L-1 |-1 |

    ТП имеет L строк, где L - максимальное число страниц, адресуемых в

    данной машине (то есть адресное пространство программы может состоять не

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

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

    Строка содержит номер физической страницы, соответствующей данной

    виртуальной странице.

    При загрузке и запуске программы операционная система размещает

    виртуальные страницы в некоторых физических страницах оперативной памяти, а

    их соответствие устанавливается в ТП. Например, операционная система взяла

    0-ую виртуальную страницу памяти и поместила ее в 25-ую страницу физической

    памяти, 1-ую страницу разместила в 1-ой странице, а 2-ую - в 30-ой (и так

    далее распределила все страницы). После этого передается управления на

    начало программы, а за тем работает тот механизм, который был описан выше:

    по номеру виртуальной страницы из таблицы аппаратно выбирается

    соответствующая строка, и содержащийся в ней номер физической страницы

    аппаратно подставляется в исполнительный адрес вместо номера виртуальной

    страницы, то есть происходит просто замена старших битов исполнительного

    адреса.

    На самом деле, когда операционная система обращается к какой-то

    строчке таблицы, то сначала она производит контроль. В действительности,

    строка ТП содержит некоторый код, который является либо адресом физической

    страницы, либо некоторым специальным кодом, на который схемы управления

    процессора реагируют определенным образом. Например, если этот код больше

    либо равен нулю, это значит, что можно продолжать работу. Если же в этой

    строке содержится код меньше нуля, например -1, то обращение к ней

    устройств преобразования виртуального адреса в физический, вызовет

    прерывание. Это прерывание обычно называется прерыванием по защите памяти.

    Дело в том, что операционная система, заполняя ТП, указывает, какие из

    виртуальных страниц адресного пространства не принадлежат данной программе,

    и если происходит выход за пределы дозволенной памяти, генерируется

    прерывание по защите памяти.

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

    одной программы к другой содержимое ТП сохраняется операционной системой в

    некоторой своей программной таблице (массиве) и затем изменяются значения в

    ТП.

    Продолжение в теме «Операционные системы»

    (Подкачка, или SWAPPING)

    Внешние устройства

    Внешние устройства можно определить как все те устройства, которые

    отличаются от процессора и памяти. Управление внешними устройствами

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

    подразделить на Внешние Запоминающие Устройства (ВЗУ) и Устройства

    Ввода/Вывода (УВВ) информации. ВЗУ - это устройства, способные хранить

    информацию некоторое время, связанное с физическими свойствами конкретного

    устройства, и обеспечивать чтение и/или запись этой информации в

    оперативную память. Если рассматривать ВЗУ с точки зрения использования

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

    следующие типы устройств:

    1. Магнитный барабан. Магнитный барабан - это устройство, которое

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

    операционной системой для хранения системной информации. Суть работы этого

    устройства состоит в следующем.

    [pic]

    Имеется металлический цилиндр большого веса (вес здесь имеет значение

    для поддержания стабильной скорости вращения), который вращается вокруг

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

    хранить информацию (с него можно читать и на него можно записывать

    информацию). Над поверхностью барабана размещается p считывающих головок.

    Их положение зафиксировано над поверхностями, которые называются треками

    (track). Каждый трек разделен на равные части, которые называются

    секторами. В каждый момент времени в устройстве может работать только одна

    головка. Запись информации происходит по трекам магнитного барабана,

    начиная с определенных секторов. Координатами информации служат следующие

    параметры (№Трека, №Сектора и Объем информации).

    Для чтения информации с магнитного барабана производятся следующие

    действия: включается головка, соответствующая номеру трека, и

    прокручивается барабан до появления под головкой начала сектора с заданным

    номером. После этого начинается обмен. Практически во всех ВЗУ, основанных

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

    устройство знает, над каким сектором оно находится. Магнитные барабаны -

    это устройства, имеющие одну из самых больших скоростей доступа, так как

    электронные и механические действия в его работе минимальны (вращение

    барабана).

    2. Магнитные диски.

    Имеется несколько дисков, размещенных на одной оси, которые вращаются

    с некоторой постоянной скоростью. Каждый такой диск может иметь две

    Страницы: 1, 2, 3


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.