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


         

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

Основные функции операционных систем
По современным представлениям ОС должна уметь делать следующее.
Обеспечивать загрузку пользовательских программ в оперативную память и их исполнение (этот пункт не относится к ОС, предназначенным для прошивки в ПЗУ).
Обеспечивать управление памятью. В простейшем случае это указание единственной загруженной программе адреса, на котором кончается память, доступная для использования, и начинается память, занятая системой. В многопроцессных системах это сложная задача управления системными ресурсами.
Обеспечивать работу с устройствами долговременной памяти, такими как магнитные диски, ленты, оптические диски, флэш-память и т. д. Как правило, ОС управляет свободным пространством на этих носителях и структурирует пользовательские данные в виде файловых систем.
Предоставлять более или менее стандартизованный доступ к различным периферийным устройствам, таким как терминалы, модемы, печатающие устройства или двигатели, поворачивающие рулевые плоскости истребителя.
Предоставлять некоторый пользовательский интерфейс. Слово некоторый здесь сказано не случайно — часть систем ограничивается командной строкой, в то время как другие на 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
Модификация структур данных сложной ФС
Потерянный блок
Пересекающиеся файлы
Восстановление ФС после сбоя
Инод сирота
Ручное восстановление файловой системы
Файловые системы с регистрацией намерений

Операционные системы. Управление ресурсами

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

Операционная система с точки зрения системного программиста
Ресурс - "средство системы обработки данных, которое может быть выделено процессу обработки данных на определенный интервал времени". Простыми словами: ресурс - это все те аппаратные и программные средства и данные, которые необходимы для выполнения программы. Ресурсы можно подразделить на первичные и вторичные.

ОС с точки зрения системного программиста
ОС с точки зрения системного программиста - 2
Классификация и предварительный обзор ОС
Классификация и предварительный обзор ОС - 2
Классификация и предварительный обзор ОС - 3
Классификация и предварительный обзор ОС - 4
Классификация и предварительный обзор ОС - 5
Классификация и предварительный обзор ОС - 6
Классификация и предварительный обзор ОС - 7
Точка зрения пользователя

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

Целостность данных и файловой системы
Целостность данных и файловой системы - 2
Целостность данных и файловой системы - 3
Целостность данных и файловой системы - 4
Целостность данных и файловой системы - 5
Целостность данных и файловой системы - 6
Загружаемая файловая система
Контрольные вопросы
Постановка проблемы
Постановка проблемы - 2

Операционные системы распределенных вычислительных систем

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

Продолжение

Операционная система Windows 98 -Пособие для начинающих

Windows 98 – многозадачная операционная система: позволяет работать с несколькими программами одновременно. Windows 98 создана для персональных компьютеров IBM PC. Дружественный, интуитивный интерфейс программы способствует ее быстрому освоению. Работать с Windows 98 значительно приятнее и удобнее, чем с ее предшественниками. Для работы в среде Windows необходимо на экране выбирать из предложенного набора нужную операцию с помощью мыши.

Состав персонального компьютера
Состав системного блока
Логические имена дисков
Клавиатура
Интерфейс пользователя
Управление Windows
Рабочий стол
Окна Windows
Окна Windows - 2
Файловая система


Частные деньги - перейти
Международные деньги и расчеты - перейти
Ведения международного бизнеса - перейти
Международная валютно-финансовая система - перейти
Международные экономические отношения - перейти
Экономические концепции - перейти
После капитализма - перейти
Демократия и экономика - мировой опыт - перейти
Теория операционных систем - перейти
Введение - перейти
Данные в вычислительных системах - перейти
Машинные языки - перейти
Загрузка программ - перейти
Управление оперативной памятью - перейти
Сегментная и страничная виртуальная память - перейти