- •Министерство образования и науки российской федерации федеральное агентство по образованию
- •Архитектура эвм
- •Часть 2, 3
- •Глава 5. Уровни организации эвм.
- •5.1. Машинный уровень организации
- •5.1.1. Форматы команд.
- •5.1.2. Адресация данных.
- •6.2.1.1. Прямые способы адресации.
- •6.2.1.2. Непрямые способы адресации:
- •3. Автоинкрементная, автодекрементная (индексная) адресация.
- •5.1.3. Адресация команд.
- •5.1.4. Типы машинных команд.
- •5.1.5. Команды обработки данных.
- •5.2. Микропрограммный уровень организации эвм.
- •5.2.1. Принцип микропрограммного управления.
- •5.2.2. Описание функциональных микропрограмм.
- •5.2.3 Набор микроопераций и микроэлементов.
- •1°. Шина.
- •2°. Регистры.
- •3°. Счетчики.
- •4°. Сумматоры.
- •5°. Преобразователи кодов.
- •6°. Вычисление значений логических условий.
- •7°. Комбинированные операционные элементы.
- •5.2.4. Структурное построение и функционирование микропрограммных устройств управления.
- •5.3. Системный уровень организации
- •Глава 6. Организация памяти вс.
- •6.1. Виды запоминающих устройств. Иерархия памяти.
- •6.2. Организация оперативной памяти.
- •Глава 7. Виды и архитектура процессоров.
- •7.1. Матричный процессор.
- •7.2. Процессор с конвейеризацией команд и процессор с конвейеризацией операций.
- •7.3. Суперскалярный процессор.
- •7.4. Коммуникационный процессор
- •7.5. Архитектуры cisc и risc.
- •Глава 8. Организация связей в эвм.
- •Глава 9. Основные классы современных параллельных компьютеров.
- •9.1. Симметричные мультипроцессорные системы (smp) (Symmetric Multi-Processing)
- •9.2. Массивно-параллельные системы (мрр) (Massively Parallel Processing)
- •9.3. Системы с неоднородным доступом к памяти (numa) (non uniform memory access)
- •9.4. Параллельно-векторные системы (pvp)
- •9.5. Кластерные системы
- •Глава 10. Межпроцессорные сети связи в эвм mpp типа (Interconnect Network)
- •Глава 11. Эффективная организация дисковых накопителей при организации параллельного и независимого доступа
- •11.1. Общие вопросы организации.
- •11.2. Время обслуживания.
- •11.3. Затраты и целесообразность.
- •11.4. Технология i2o в raid-контроллерах.
- •Глава 12. Параллельные и распределенные системы Введение.
- •Недостатки мультипроцессоров
- •Pc необходимо объединять в сети, поскольку возникает
- •12.1. Операционные системы мультипроцессорных эвм
- •12.1.1 Процессы и нити
- •12.1.2. Взаимодействие процессов
- •12.1.3 Планирование процессоров
- •12.2. Коммуникации в распределенных системах
- •Локальные сети.
- •Клиент-сервер
- •Удаленный вызов процедур
- •Обмен сообщениями между прикладными процессами send, receive (адресат/отправитель, [тэг], адрес памяти, длина)
- •12.3. Синхронизация в распределенных системах
- •12.3.1. Синхронизация времени
- •Логические часы.
- •Физические часы.
- •12.3.2 Выбор координатора
- •Алгоритм "задиры"
- •Круговой алгоритм.
- •12.3.3 Взаимное исключение Централизованный алгоритм
- •Алгоритм с круговым маркером
- •Алгоритм древовидный маркерный (Raymond)
- •Децентрализованный алгоритм на основе временных меток.
- •Алгоритм широковещательный маркерный (Suzuki-Kasami).
- •12.3.4. Координация процессов
- •12.4. Распределенные файловые системы
- •12.4.1 Архитектура распределенных файловых систем
- •Интерфейс файлового сервера
- •5.1.2 Интерфейс сервера директорий
- •Различают две формы прозрачности именования
- •Семантика разделения файлов
- •12.4.2 Реализация распределенных файловых систем
- •Использование файлов
- •5.2.2 Структура системы
- •Кэширование
- •Когерентность кэшей.
- •Размножение
- •12.4.3. Пример: Sun Microsystems Network File System (nfs)
- •Архитектура nfs.
- •Протоколы nfs.
- •Реализация nfs
- •Список литературы
- •Оглавление:
Различают две формы прозрачности именования
прозрачность расположения (/server/d1/f1)
прозрачность миграции (когда изменение расположения файла не требует изменения имени).
Имеются три подхода к именованию:
машина + путь;
монтирование удаленных файловых систем в локальную иерархию файлов;
единственное пространство имен, которое выглядит одинаково на всех машинах.
Последний подход необходим для достижения того, чтобы распределенная система выглядела как единый компьютер, однако он сложен и требует тщательного проектирования.
Двухуровневое именование. Большинство систем используют ту или иную форму двухуровневого именования. Файлы (и другие объекты) имеют символические имена для пользователей, но могут также иметь внутренние двоичные имена для использования самой системой. Например, в операции открыть файл пользователь задает символическое имя, а в ответ получает двоичное имя, которое и использует во всех других операциях с данным файлом.
Способы формирования двоичных имен различаются в разных системах:
если имеется несколько не ссылающихся друг на друга серверов (директории не содержат ссылок на объекты других серверов), то двоичное имя может быть то же самое, что и в ОС UNIX;
имя может указывать на сервер и файл;
в качестве двоичных имен при просмотре символьных имен возвращаются мандаты, содержащие помимо прав доступа либо физический номер машины с сервером, либо сетевой адрес сервера, а также номер файла.
В ответ на символьное имя некоторые системы могут возвращать несколько двоичных имен (для файла и его дублей), что позволяет повысить надежность работы с файлом.
Семантика разделения файлов
UNIX-семантика. Естественная семантика однопроцессорной ЭВМ - если за операцией записи следует чтение, то результат определяется последней из предшествующих операций записи. В распределенной системе такой семантики достичь легко только в том случае, когда имеется один файл-сервер, а клиенты не имеют кэшей. При наличии кэшей семантика нарушается. Надо либо сразу все изменения в кэшах отражать в файлах, либо менять семантику разделения файлов.
Еще одна проблема - трудно сохранить семантику общего указателя файла (в UNIX он общий для открывшего файл процесса и его дочерних процессов) - для процессов на разных ЭВМ трудно иметь общий указатель.
Неизменяемые файлы - очень радикальный подход к изменению семантики разделения файлов. Только две операции - создать и читать. Можно заменить новым файлом старый - т.е. можно менять директории. Если один процесс читает файл, а другой его подменяет, то можно позволить первому процессу доработать со старым файлом в то время, как другие процессы могут уже работать с новым.
Семантика сессий. Изменения открытого файла видны только тому процессу (или машине), который производит эти изменения, а лишь после закрытия файла становятся видны другим процессам (или машинам). Что происходит, если два процесса одновременно работали с одним файлом - либо результат будет определяться процессом, последним закрывшим файл, либо можно только утверждать, что один из двух вариантов файла станет текущим.
Транзакции. Процесс выдает операцию НАЧАЛО ТРАНЗАКЦИИ, сообщая тем самым, что последующие операции должны выполняться без вмешательства других процессов. Затем выдает последовательность чтений и записей, заканчивающуюся операцией КОНЕЦ ТРАНЗАКЦИИ. Если несколько транзакций стартуют в одно и то же время, то система гарантирует, что результат будет таким, каким бы он был в случае последовательного выполнения транзакций (в неопределенном порядке). Пример - банковские операции.
