Операционные системы -вопросы теории


         

ОC и программное обеспечение на платформе zSeries

z/OS представляет собой новейшую операционную систему, спроектированную и разработанную для серверов zSeries с учетом перехода на 64-разрядную архитектуру. Как представитель семейства MVS, z/OS унаследовала основные конструктивные элементы своей предшественницы OS/390, сохранив и развив ее базовые возможности. Поэтому рассмотрение архитектуры z/OS целесообразно начать с исторического обзора, раскрывающего особенности технологии MVS и основные этапы совершенствования ОС вместе с совершенствованием аппаратной платформы
Однако в начале введем несколько важнейших понятий, которые помогут сориентироваться тем читателям, которые только начинают знакомиться с мэйнфреймами IBM.

Эволюция z/OS
Пакетное задание (batch job) - внешняя единица работы z/OS. Выглядит как текст, написанный на специальном языке управления заданиями JCL (Job Control Language), в котором указано, какие программы (загрузочные модули), в какой последовательности и с какими данными должны быть исполнены в рамках задания. Задания формируются и направляются в систему пользователями через терминальные устройства, консоли, ранее запущенные программы и т.п.

Первые шаги
MVS/370
MVS/XA
MVS/ESA
MVS/ESA SP V4
MVS/ESA SP V5
OS/390
OS/390 - 2
Z/OS
Z/OS - 2

Элементы z/OS
Базовые элементы (base elements) являются необходимой и неотъемлемой частью программного обеспечения z/OS, поскольку служат для поддержки наиболее важных функций и сервисов системы. К ним относятся средства управления аппаратными ресурсами, средства управления данными, пользовательские и программные интерфейсы, поддержка коммуникаций и др. Базовые элементы всегда включаются в установочный пакет z/OS.

Функциональная структура z/OS
Системные сервисы
Системные сервисы - 2
Администрирование и управление системой
Администрирование и управление системой - 2
Системные сервисы UNIX
Сервисы для разработки приложений
Сервисы для разработки приложений - 2
Коммуникационные сервисы
Сервисы поддержки распределенных вычислений

Управление памятью
Управление основной памятью в z/OS базируется на концепции виртуальной памяти, основные принципы которой были изложены при рассмотрении эволюции системы в п. 5.1.1. Важно подчеркнуть, что в z/OS фактически сохранена архитектура, реализованная в MVS/ESA и развитая в дальнейшем в OS/390. Конечно, расширение разрядности адреса (и, следовательно, объема адресного пространства) не могло не привести к целому ряду нововведений, о которых далее и пойдет речь. Но начнем, однако, с общих понятий и терминов, принятых в MVS, OS/390 и z/OS и необходимых для понимания механизмов управления памятью

Управление памятью
Управление памятью - 2
Управление памятью - 3
Управление памятью - 4
Управление памятью - 5
Реализация базовых функций z/OS
Реализация базовых функций z/OS - 2
Реализация базовых функций z/OS - 3
Реализация базовых функций z/OS - 4
Реализация базовых функций z/OS - 5

Средства управления данными в z/OS (DFSMS)
Управление данными в z/OS заключается в организации идентификации, хранения, каталогизации, поиска данных различного назначения (в том числе и программ), которые применяются для системных и пользовательских нужд. Основной единицей управления является набор данных (data set), определяемый как именованая совокупность связанных элементов данных, размещаемых во внешней памяти или иных устройствах.

Характеристика наборов данных
Характеристика наборов данных - 2
Последовательные наборы данных
Библиотечные наборы данных
PDSE наборы данных
Наборы данных VSAM
Наборы данных VSAM - 2
Структура тома DASD
Организация каталогов
Распределение внешней памяти для non-SMS

Понятие задания
Пользователь может запросить у системы выполнение какой-либо работы (конечно, связанной с запуском определенных приложений) с помощью специальным образом записанного и переданного системе текста. Это и есть задание. Задания составляются на языке управления заданиями JCL (Job Control Language) и направляются в систему пользователями через входные устройства и сетевые коммуникации, а также через ранее запущенные приложения. В задании зашифровано, какие программы, в какой последовательности и с какими данными должны быть исполнены, а также в какой форме и куда должны быть направлены результаты выполнения программ.

Понятие задания
Понятие задания - 2
Функции и компоненты подсистемы JES2
Функции и компоненты подсистемы JES2 - 2
Функции и компоненты подсистемы JES2 - 3
Функции и компоненты подсистемы JES2 - 4
Структура пакетного задания JCL
Структура пакетного задания JCL - 2
Структура пакетного задания JCL - 3
Оператор JOB

Элементы z/OS UNIX
Системные сервисы UNIX, получившие в новейших версиях название z/OS UNIX, являются неотъемлемым компонентом z/OS, превратившим ее в открытую операционную систему [19], [20]. Начиная с версии OS/390 V1R2 реализована полная поддержка стандартов POSIX (Portable Operating System Interfaces Unix) и XPG 4.2 (X/Open Portability Guide), принятых многими разработчиками UNIX-систем. Таким образом, в z/OS UNIX реализовано два открытых системных интерфейса:

Элементы z/OS UNIX
Механизм выполнения приложений UNIX в z/OS
Механизм выполнения приложений UNIX в z/OS - 2
Организация файловой системы HFS
Организация файловой системы HFS - 2
Пользовательский интерфейс z/OS UNIX

Утилита работы со списком наборов данных (Dslist)
Работа пользователей операционной системы z/OS, как правило, осуществляется в режиме удаленного доступа через специальные терминалы или рабочие станции, подключенные к мэйнфрейму при помощи сетевых коммуникаций. Сегодня в качестве рабочих станций чаще всего используются персональные компьютеры (ПК), работающие под управлением операционных систем Windows или UNIX (Linux). В этом случае для взаимодействия с мэйнфреймом используются специальные программы эмуляции терминала, которые устанавливают связь с одним из приложений, выполняющимся на мэйнфрейме, воспроизводят на экране ПК исходящие от него сообщения и передают ему управляющие воздействия пользователя, вводимые с клавиатуры.

Утилита работы со списком наборов данных
Утилита работы со списком наборов данных - 2
Утилита работы со списком наборов данных - 3
Средства диалогового взаимодействия
Средства диалогового взаимодействия - 2
Средства диалогового взаимодействия - 3
Средства редактирования данных в PDF
Средства редактирования данных в PDF - 2
Средства редактирования данных в PDF - 3
Средства редактирования данных в PDF - 4

Базовые средства создания программ
Исходный модуль, содержащий текст программы на одном из поддерживаемых языков программирования, может быть создан средствами TSO/ISPF/UNIX shell или подготовлен, а затем импортирован с рабочей станции. Для размещения исходного модуля может быть использован последовательный или библиотечный (PDS, PDSE) набор данных или файл z/OS UNIX. Компиляция исходного текста программы осуществляется встроенным языковым компилятором или ассемблером. z/OS включает как новые 64-разрядные компиляторы для таких языков, как, например, С/С++ и Cobol, так и множество старых версий.

Базовые средства создания программ
Базовые средства создания программ - 2
Language Environment
Language Environment - 2
Средства разработки пакетного режима
Средства разработки пакетного режима - 2
Средства разработки программ в ISPF/PDF
Средства разработки программ в ISPF/PDF - 2
Средства разработки программ в ISPF/PDF - 3
Средства разработки программ в ISPF/PDF - 4

Назначение и возможности z/VM
Операционная система z/VM представляет второе направление операционных систем IBM, ориентированных на платформу zSeries. z/VM построена на основе концепции "виртуальных машин" (Virtual Machine), которая означает, что в рамках одной системы может одновременно функционировать множество виртуальных машин, каждая из которых функционально эквивалентна реальной ЭВМ. Каждая виртуальная машина использует свою часть ресурсов системы (процессорное время, оперативную память, периферийные устройства).

Назначение и возможности z/VM
Назначение и возможности z/VM - 2
Архитектура и основные компоненты z/VM
Управляющая программа z/VM
Управляющая программа z/VM - 2
Управляющая программа z/VM - 3
Диалоговый монитор z/VM
Диалоговый монитор z/VM - 2
Диалоговый монитор z/VM - 3
Виртуализация сетевого взаимодействия в z/VM

Электронный бизнес и требования к IT-инфраструктуре
С середины 90-х годов руководители многих компаний во всем мире начали осознавать, что истинное значение Internet заключается не в просмотре Web-страниц и пользовании электронной почтой, а в тех новых возможностях, которые он открывает для совершенствования деловых процессов, сокращения затрат и увеличения прибыли предприятий. Электронный бизнес - это не просто электронный вариант торговых сделок, его задача - использовать современные технологии для реорганизации бизнес-процессов с целью улучшения обслуживания клиентов.

Электронный бизнес и IT-инфраструктура
Электронный бизнес и IT-инфраструктура - 2
Электронный бизнес и IT-инфраструктура - 3
Общая характеристика IBM WebSphere
IBM WebSphere: группа Foundation Tools
WebSphere Application Servers
WebSphere Application Server - Express
WebSphere Application Server (Base)
WebSphere Application Server Network Deployment
WebSphere Application Server Enterprise

Серверы баз данных DB2 UDB: основные особенности
Параллельная обработка на SMP означает, что на машине с SMP UDB будет одновременно выполнять несколько транзакций (операторов SQL) параллельно, автоматически распределяя их между процессорами. Кроме того, UDB может выполнить параллельную обработку одного запроса (оператора SQL), разбивая его на подзадачи и направляя каждую подзадачу на свой процессор. Более того, если данные для оператора SQL распределены на нескольких дисковых подсистемах, то для параллельного извлечения данных в UDB будут использоваться функции параллельного ввода/вывода.

Серверы баз данных DB2 UDB
Серверы баз данных DB2 UDB - 2
Серверы баз данных DB2 UDB - 3
Серверы баз данных DB2 UDB - 4
Серверы баз данных DB2 UDB - 5
Серверы баз данных DB2 UDB - 6
Серверы баз данных DB2 UDB - 7
Серверы баз данных DB2 UDB - 8
Управление контентом - особенности
Управление контентом - особенности - 2

Основные определения и концепции
Сообщение в терминах WebSphere MQ - последовательность данных, значимых для приложений и/или пользователя. Сообщение MQ, как правило, состоит из двух частей - служебной и содержательной. В служебной части находится информация, которая представляет интерес в процессе пересылки - тип сообщения, путь его следования, время создания и пр. Служебная часть сообщения создается как приложениями, так и серверами, которые осуществляют его пересылку к месту назначения.

Основные определения и концепции
Передача сообщений между приложениями
Передача информации в WebSphere
Гарантированность доставки
Многоплатформенность
Администрирование WebSphere MQ
Взаимодействие приложений с MQ
Программирование WebSphere MQ
Другие продукты семейства WebSphere MQ
MQ Integrator Broker

Краткая историческая справка
История развития технологий Lotus [6.4] начинается с 80-х годов прошлого столетия, в эпоху появления и развития персональных компьютеров (ПК). Компания Lotus Development Corporation, разрабатывавшая программное обеспечение ПК, выпустила в 1989 году первую версию продукта Lotus Notes, поддерживающего распределенную систему управления документами (совместную работу над документом) с сервером Notes. С 1995 года, когда на сервере были реализованы функции работы с Web-приложениями, он стал называться Domino. К 1996 году компания Lotus продала во всем мире почти 10 млн. лицензий на Lotus Notes. Продуктом заинтересовалась IBM, и в 1996 году она приобрела компанию Lotus.

Краткая историческая справка
Проблема поддержки совместной работы
Проблема поддержки совместной работы - 2
Особенности IBM Lotus Software
Базовые технологии IBM Lotus/Domino
Базовые технологии IBM Lotus/Domino - 2
Средства поддержки совместной работы
Программные средства управления документами
Программные средства управления знаниями
Средства поддержки электронного обучения

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

Области применения мэйнфреймов zSeries
Области применения мэйнфреймов zSeries - 2
Области применения мэйнфреймов zSeries - 3
Реализация проекта внедрения SAP R/3
Реализация проекта внедрения SAP R/3 - 2
Система аварийного восстановления данных
Вычислительный комплекс Банка России
Вычислительные комплексы РЖД
Вычислительные комплексы РЖД - 2
Области применения мэйнфреймов zSeries

Операционные системы -вопросы теории

Основные функции операционных систем
По современным представлениям ОС должна уметь делать следующее.
Обеспечивать загрузку пользовательских программ в оперативную память и их исполнение (этот пункт не относится к ОС, предназначенным для прошивки в ПЗУ).
Обеспечивать управление памятью. В простейшем случае это указание единственной загруженной программе адреса, на котором кончается память, доступная для использования, и начинается память, занятая системой. В многопроцессных системах это сложная задача управления системными ресурсами.
Обеспечивать работу с устройствами долговременной памяти, такими как магнитные диски, ленты, оптические диски, флэш-память и т. д. Как правило, ОС управляет свободным пространством на этих носителях и структурирует пользовательские данные в виде файловых систем.
Предоставлять более или менее стандартизованный доступ к различным периферийным устройствам, таким как терминалы, модемы, печатающие устройства или двигатели, поворачивающие рулевые плоскости истребителя.
Предоставлять некоторый пользовательский интерфейс. Слово некоторый здесь сказано не случайно — часть систем ограничивается командной строкой, в то время как другие на 90% состоят из интерфейсной подсистемы. Встраиваемые системы часто не имеют никакого пользовательского интерфейса.
Существуют ОС, функции которых этим и исчерпываются. Одна из хорошо известных систем такого типа — дисковая операционная система MS DOS.
Более развитые ОС предоставляют также следующие возможности:
параллельное (или псевдопараллельное, если машина имеет только один процессор) исполнение нескольких задач;
организацию взаимодействия задач друг с другом;
организацию межмашинного взаимодействия и разделения ресурсов;
защиту системных ресурсов, данных и программ пользователя, исполняющихся процессов и самой себя от ошибочных и зловредных действий пользователей и их программ;
аутентификацию (проверку того, что пользователь является тем, за кого он себя выдает), авторизацию (проверка, что тот, за кого себя выдает пользователь, имеет право выполнять ту или иную операцию) и другие средства обеспечения безопасности.

Основные функции операционных систем
Выбор типа операционной системы часто представляет собой нетривиальную задачу. Некоторые приложения накладывают жесткие требования, которым удовлетворяет только небольшое количество систем. Например, задачи управления промышленным или исследовательским оборудованием в режиме жесткого реального времени вынуждают нас делать выбор между специализированными ОС реального времени и некоторыми ОС общего назначения, такими как Unix System V Release 4 (хотя Unix SVR4 теоретически способна обеспечивать гарантированное время реакции, системы этого семейства имеют ряд недостатков с точки зрения задач РВ, поэтому чаще всего предпочтительными оказываются специализированные ОС -- QNX, VxWorks, OS-9 и т. д.)

Выбор операционной системы
Генеалогия ОС семейства СР/М
Проблема
Открытые системы
Www opengroup org
Классификация ОС
Классификация операционных систем
ДОС (Дисковые Операционные Системы)
ОС общего назначения
Системы виртуальных машин

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

Введение в двоичную арифметику
Сложение одноразрядных двоичных чисел
Сложение с учетом переноса
Сложение двух 8разрядных чисел (83 + 56 = 139)
Разрядный двоичный сумматор
Вычитание чисел (83 — 56 = 27)
Двоичное представление
Двоично десятичное представление чисел
Представление рациональных чисел
Число с двоичной фиксированной точкой

Машинные языки
Процессоры, которые могут исполнять программы на одном и том же машинном языке, называются бинарно-совместимыми. Отношение бинарной совместимости не всегда симметрично: например, более новый процессор может иметь дополнительные команды — тогда он будет бинарно-совместим с более старым процессором того же семе,йства, но не наоборот.

Микропрограммные автоматы
Нейросети
Косвеннорегистровый режим со смещением
Стековый кадр Стековый кадр является
Регистровый стек процессора SPARC
Формирование использования
Стековый кадр
Стековые кадры в системе команд SPARC
Регистровый файл SPARC в виде
Базовоиндексный режим

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

Создание процессов в Unix
Создание процесса в системах семейства Unix
Создание процесса
Сборка в момент загрузки
Программные модули в N9000
Модуль N9000
Архитектура AS/400
Фрагмент структуры взаимозависимостей
Динамические библиотеки
Использование

Управление оперативной памятью
Основной ресурс системы, распределением которого занимается ОС — это оперативная память. Поэтому организация памяти оказывает большое влияние на структуру и возможности ОС. В настоящее время сложилась даже более интересная ситsssуация — переносимая операционная система UNIX, рассчитанная на машины со страничным диспетчером памяти, произвела жесткий отбор, и теперь практически все машины общего назначения, начиная от х86 и заканчивая суперкомпьютерами или, скажем процессором Alpha, имеют именно такую организацию адресного пространства.

Открытая память
Управление памятью в однопроцессной ОС
Загруженная программа и brk_addr
Выделение дополнительной
Алгоритмы динамического управления памятью
Внешняя фрагментация
Последовательности
Результат работы программы примера
Внутренняя фрагментация
Антисортировка

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

Страничная виртуальная память
Сегментная виртуальная память
Блоксхема алгоритма диспетчера памяти
Распределение адресного пространства
Адресное пространство х86
Разрядный адрес
Разрядный адрес - 2
Сегменты страницы и системные вызовы
Виртуальная память и режимы процессора VAX
Слово состояния процессора VAX

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

Канальные процессоры и прямой доступ к памяти
Структура контроллера ПДП
Прерывания
Прерывания в PDP11
Www microchip com PICMicro
Исключения
Обработка исключения
Исходный текст функций
Обработчик арифметический
Многопроцессорные архитектуры

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

Программные каналы Unix
Код создающий конвейер
Почтовые ящики VMS
Линки транспьютера
Сеть транспьютеров - физические линки
Передача данных через линк
Алгоритм работы команд in и out
Системы управляемые событиями
Визуальное событие
Обработчик оконный

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

Кооперативная многозадачность
Кооперативный переключатель
Внутрений цикл программы
RESET или клавиш CTRL+ALT+DEL
Вытесняющая многозадачность
Функция переключения
Планировщик Linux 2 5
Контексты современных процессоров
Планировщики с приоритетами
Приоритеты процессов в транспьютере

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

Сети доступа к дискам
Сеть FCAL с кольцами и коммутаторами
Сеть доступа к дискам (SAN)
Доступ к внешним устройствам
Подключение внешнего устройства к шине
Фиксированная и географическая адресация
Простые внешние устройства
Принципиальная схема ТТЛсовместимых
Порт ввода
Принципиальная схема порта вводавывода

Драйверы внешних устройств
Драйвер (driver) представляет собой специализированный программный модуль, управляющий внешним устройством. Слово driver происходит от глагола to drive (вести) и переводится с английского языка как извозчик или шофер: тот, кто ведет транспортное средство. Драйверы обеспечивают единый интерфейс для доступа к различным устройствам, тем самым устраняя зависимость пользовательских программ и ядра ОС от особенностей аппаратуры.

Подсистема ввода вывода OS/2
Подсистема ввода вывода Windows 9x/ME
Асинхронный ввод вывод
Запросы к драйверу в VMS
Стратегическая функция и очередь запросов
Сервисы ядра доступные драйверам
Автоконфигурация
Выделение памяти
Ограничения для буферов ПДП
Таймеры

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

Устойчивость к сбоям питания
RESET
Модификация FAT
Модификация структур данных сложной ФС
Потерянный блок
Пересекающиеся файлы
Восстановление ФС после сбоя
Инод сирота
Ручное восстановление файловой системы
Файловые системы с регистрацией намерений


Словари биржевых терминов - перейти
Как работает биржа - перейти
Лекции по биржевой торговле - перейти
Биржевые сделки - перейти
Товарные рынки - перейти
Технический анализ - перейти
Технический анализ - перейти
Теханализ трендов - перейти
Алгебра и пакет Mathematica 5 - перейти
Введение - перейти
Исторический обзор и первое знакомство - перейти
Первое знакомство — калькулятор - перейти
Числа, их представление и операции над ними - перейти
Разложение целых чисел на множители - перейти
Арифметика: простые числа - перейти