- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Основы AS/400 - Фрэнк Солтис
Шрифт:
Интервал:
Закладка:
Операционные системы, предназначенные для работы с обычной виртуальной памятью, чаще всего пытаются избежать большого числа переключений процессов из-за неизбежных накладных расходов. Но если это не удается, для эффективной работы таким системам нужен высокопроизводительный процессор.
По сравнению с другими системами, переключение процессов на AS/400 выполняется очень быстро, так как требует лишь нескольких действий. Спад производительности при старте нового процесса в AS/400 также не столь резкий. В результате, части как OS/400, так и SLIC, спроектированы для выполнения большого числа переключений процессов. Несколько лет назад сотрудники подразделения IBM Research обнаружили в ходе исследований, что в типичной пользовательской среде AS/400 переключение процессов происходит примерно через каждые 1200 команд. В это даже трудно поверить, ведь некоторым системам нужно выполнить 1000 или более команд только для самого переключения процессов. Но не AS/400!
Благодаря способности быстро переключаться между процессами, производительность AS/400 в интерактивном режиме очень высока. Еще System/38 и первые AS/ 400 были оптимизированы для интерактивных приложений обработки транзакций. К AS/400 могут быть подключены любые терминалы. Одна такая большая система легко может поддерживать несколько тысяч параллельных пользователей, далеко превосходя в этом своих конкурентов, таких как Unix или Windows NT. Работая с приложениями, требующими частых переключений процессов, AS/400 способна превзойти по производительности системы с более быстрыми процессорами, так как выполняет меньше команд.
Теперь рассмотрим среду, не требующую частых переключений процессов, например, среду пакетной обработки, где один процесс исполняется в течение долгого времени. Здесь скорость переключения процессов не играет существенной роли. Ранние системы AS/400 не очень хорошо работали в пакетном режиме — сказывалась недостаточная производительность процессора[ 64 ].
Дело в том, что в ранних версиях рочестерских систем никогда не использовались высокопроизводительные процессоры. Доходило даже до того, что при описании характеристик различных моделей AS/400, не указывались скорости процессоров в MIPS (миллион команд в секунду) или МГц.
Подобно тому, как MIPS указывает, сколько команд процессор может выполнить в секунду, МГц задает число тактов за секунду. Если два разных процессора должны для выполнения одной и той же задачи выполнить одинаковое количество команд, и по всем остальным параметрам наблюдается такое же равенство, то значения MIPS или МГц могут дать некоторое представление о производительности процессоров. Но если для выполнения одной и той же работы процессорам нужно разное число команд, то ни MIPS, ни МГц не имеют никакого значения.
В Рочестере всегда настаивали на оценке объема работ, который может выполнить AS/400, в таких показателях, как число транзакций в секунду. Лаборатория IBM в Ро-честере — лидер в создании промышленных тестов для обработки транзакций. Здесь в тесном контакте с Transaction Processing Performance Council измеряются показатели TPC для вычислительных систем. Эти показатели также призваны отражать стоимость каждой транзакции, рассчитанную на основании цен на аппаратуру и ПО для данной конфигурации. Все это дает пользователю возможность сравнивать разные вычислительные системы как по цене, так и по производительности. Так вот, в соответствии с этими тестами, AS/400 — один из лидеров как по показателю цена/производительность, так и по чистой производительности. Да и что здесь удивительного — ведь она создавалась именно для решения задач такого типа.
Интерактивная обработка подразумевает присоединение к AS/400 терминалов, таких как 5250. Такие функции, как обновление полей на экране требуют много переключений процессов, особенно в случае подключения сотен или тысяч терминалов. При переходе в начале 90-х годов к клиент/серверным вычислениям, большая часть экранной обработки стала выполняться на ПК (клиент). Тем самым число переключений процессов на AS/400 (сервер) сократилось. Но многие характеристики клиент/серверных вычислений по-прежнему напоминают интерактивную обработку. Когда сотни или тысячи пользователей одновременно нажимают клавиши на клавиатуре или щелкают мышью, обращаясь к базе данных и ожидая затем ответа, быстрое переключение процессов AS/400 просто необходимо. AS/400 гармонично сочетает одновременную поддержку многочисленных пользователей (процессов) с требованиями клиент/серверной среды к пересылке данных.
Но есть серверные приложения, специально предназначенные для интенсивных вычислений. Пример — приложения для поддержки принятия решений, где для генерации отчета требуется анализ больших объемов данных. Пользователи могут создавать сложные запросы, спрашивать «что если», выполнять поиск взаимосвязей в данных и т. д. Для такого приложения необходим тип обработки, больше похожий на пакетную, чем на интерактивную среду.
Для таких серверных приложений AS/400 были нужны мощные процессоры. И вот, несколько лет назад мы впервые представили специальные модели AS/400, предназначенные именно для высокопроизводительных серверов. В этих моделях мощные процессоры и большая память. Результаты различных клиент/серверных тестов показывают, что модели Advanced Server весьма конкурентоспособны, как по цене, так и по производительности. Не удивительно, что многие заказчики признали их лучшими и для обычных пакетных приложений.
Переключение процессов интенсивно используется как в интерактивных, так и в клиент/серверных приложениях. Быстрое переключение процессов всегда лучше медленного. Путем сокращения числа необходимых команд одноуровневая память повышает производительность не только переключения процессов, но и ряда других функций. Вернемся, например, к уже обсуждавшейся операции с файлами. Обычный сервер многократно выполняет операции открытия-закрытия файлов, что ведет к повышенной дисковой активности и снижает общую производительность системы. AS/400 обрабатывает такие файлы «на месте», устраняя излишние накладные расходы. Производительность процессора важна, но следует помнить, что каждая команда, которую не нужно выполнять, эквивалентна наличию для этой команды процессора с бесконечной скоростью. RISC-процессоры быстры, но не настолько.
Указатели и теги
После роста производительности, самое большое достоинство одноуровневой памяти — всеобъемлющая возможность совместного доступа. Впрочем, это и самый большой ее недостаток. Если каждый пользователь системы имеет доступ к большому единому адресному пространству, требуются гарантии от несанкционированного доступа к тем объектам или информации, на которые у этих пользователей нет прав. В главе 5 мы говорили, что такая защита осуществляется в AS/400 указателями. Давайте теперь рассмотрим указатели и их функции более подробно.
Итак, доступ к объекту MI обеспечивается путем разрешения указателя. Указатели имеют длину 16 байт (128 бит). Разрешенный системный указатель содержит возможность прямой адресации системного объекта, то есть в нем находится 64-разрядный виртуальный адрес. Указатели других типов (пространства, данных, команд и процедур) также содержат виртуальные адреса.
Указатели находятся в ассоциированном пространстве системного объекта. В этом же пространстве содержатся данные, к которым имеет доступ и которые может изменить программа MI. Доступ и модификация данных в ассоциированном пространстве законны; изменение указателя — нет. Если бы программа MI могла изменять содержимое указателя, то была бы нарушена защита. Адрес в указателе мог бы быть изменен так, чтобы указывать на еще какой-нибудь объект или структуру, доступ к которой запрещен. Конечно, все это касается пользовательских программ, в которых команды MI заданы непосредственно; и не имеет отношение к программам на ЯВУ, таких как RPG или Cobol.
Когда разрабатывалась структура указателя, способами защиты были избраны устранение ассемблера MI, перевод некоторых команд в разряд привилегированных и удаление из указателей полномочий. Как говорилось в главе 7, все эти усиления уровней защиты привносились в AS/400 с течением времени. Но даже такая степень защищенности не дает стопроцентной уверенности в том, что содержимое указателя не подвергнется несанкционированным изменениям.
В главе 5 отмечалось, что ассоциированное пространство, содержащее указатели, занимает отдельный сегмент системного объекта. Первоначально в System/38 мы хотели использовать два сегмента: один — для данных, а второй —для указателей. Но такой подход снижал производительность системы. При использовании объекта было необходимо считывать с диска страницы, как сегмента данных, так и сегмента указателей, что повышало накладные расходы. Кроме того, два сегмента требовали некоторого увеличения размеров памяти. Единственным плюсом ассоциированного сегмента указателей была надежда, что он может защитить указатели от модификации пользователями. Но оказалось, что это не так.
