- •Министерство образования и науки российской федерации федеральное агентство по образованию
- •Архитектура эвм
- •Часть 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
- •Список литературы
- •Оглавление:
12.4.2 Реализация распределенных файловых систем
Выше были рассмотрены аспекты распределенных файловых систем, которые видны пользователю. Ниже рассматриваются реализационные аспекты.
Использование файлов
Приступая к реализации очень важно понимать, как система будет использоваться. Приведем результаты некоторых исследований использования файлов (статических и динамических) в университетах. Очень важно оценивать представительность исследуемых данных.
большинство файлов имеют размер менее 10К (следует перекачивать целиком).
чтение встречается гораздо чаще записи (кэширование).
чтение и запись последовательны, произвольный доступ редок (упреждающее кэширование, чтение с запасом, выталкивание после записи следует группировать).
большинство файлов имеют короткое время жизни (создавать файл в клиенте и держать его там до уничтожения).
мало файлов разделяются (кэширование в клиенте и семантика сессий).
существуют различные классы файлов с разными свойствами (следует иметь в системе разные механизмы для разных классов).
5.2.2 Структура системы
Есть ли разница между клиентами и серверами? Имеются системы, где все машины имеют одно и то же ПО и любая машина может предоставлять файловый сервис. Есть системы, в которых серверы являются обычными пользовательскими процессами и могут быть сконфигурированы для работы на одной машине с клиентами или на разных. Есть системы, в которых клиенты и серверы являются фундаментально разными машинами с точки зрения аппаратуры или ПО (требуют различных ОС, например).
Второй вопрос - должны ли быть файловый сервер и сервер директорий отдельными серверами или быть объединенными в один сервер. Разделение позволяет иметь разные серверы директорий (UNIX, MS-DOS) и один файловый сервер. Объединение позволяет сократить коммуникационные издержки.
В случае разделения серверов и при наличии разных серверов директорий для различных поддеревьев возникает следующая проблема. Если первый вызванный сервер будет поочередно обращаться ко всем следующим, то возникают большие коммуникационные расходы. Если же первый сервер передает остаток имени второму, а тот третьему, и т.д., то это не позволяет использовать RPC.
Возможный выход - использование кэша подсказок. Однако в этом случае при получении от сервера директорий устаревшего двоичного имени клиент должен быть готов получить отказ от файлового сервера и повторно обращаться к серверу директорий (клиент может не быть конечным пользователем!).
Последний важный вопрос - должны ли серверы хранить информацию о клиентах.
Серверы с состоянием. Достоинства.
Короче сообщения (двоичные имена используют таблицу открытых файлов).
выше эффективность (информация об открытых файлах может храниться в оперативной памяти).
блоки информации могут читаться с упреждением.
убедиться в достоверности запроса легче, если есть состояние (например, хранить номер последнего запроса).
возможна операция захвата файла.
Серверы без состояния. Достоинства.
устойчивость к ошибкам.
не требуется операций ОТКРЫТЬ/ЗАКРЫТЬ.
не требуется память для таблиц.
нет ограничений на число открытых файлов.
нет проблем при крахе клиента.
