Главная страница
Навигация по странице:

  • Для этого в 1950-х – 1960-х гг. – были созданы диспетчеры (dispatchers) - предшественники ОС, системные

  • диспетчер

  • Диспетчер осуществлял

  • Недостатки его в том

  • 1 этап (40е года) – диспетчеры файлов

  • 2 этап (60-70е года) – мультипрограммные ОС

  • Системные вызовы

  • Вопросы_к_экзамену_по_операционным. Функции и механизмы программдиспетчеров, предшественников операционных систем


    Скачать 1.12 Mb.
    НазваниеФункции и механизмы программдиспетчеров, предшественников операционных систем
    Дата28.01.2018
    Размер1.12 Mb.
    Формат файлаdoc
    Имя файлаВопросы_к_экзамену_по_операционным.doc
    ТипДокументы
    #35354
    страница1 из 19
      1   2   3   4   5   6   7   8   9   ...   19
    1. Функции и механизмы программ-диспетчеров, предшественников операционных систем.


    В ранних mainframe-компьютерах (1940-1950 гг.), первым из которых был компьютер ENIAC (1947 г., США), операционные системы отсутствовали. Обращение к памяти в этих компьютерах осуществлялось по реальным (физическим) адресам, а обращение к внешним устройствам (например, к устройству ввода с перфокарт или накопителю на магнитной ленте) осуществлялось специальными командами, также по физическим адресам. Подобные компьютеры были весьма громоздкими, каждый из них занимал большой зал, в котором пользователи по очереди работали на компьютере, используя столь неудобный интерфейс, как инженерный пульт. Каждый пользователь перед уходом "с машины" (как тогда говорили) останавливал и "обнулял" ее нажатием кнопок на пульте и уступал место следующему пользователю, который вводил свою программу и данные с перфокарт или перфоленты, набирал ее начальный адрес тумблерами на пульте и запускал ее с помощью специальной кнопки. При любом сбое или ошибке в программе, в ситуации приходилось разбираться, изучая комбинации лампочек на пульте, воспроизводящие в двоичном виде содержимое регистров.

    Разумеется, подобный способ взаимодействия с компьютером был очень неудобен. Требовалась хотя бы минимальная автоматизация. Для этого в 1950-х – 1960-х гг. – были созданы диспетчеры (dispatchers) - предшественники ОС, системные программы, управлявшие прохождением пакета задач, вводимых с перфокарт. Например, такой диспетчер (названный ДМ-222) использовался на ЭВМ М-222 в середине 1970-х гг., на котором студенты мат-меха, в том числе и автор курса, пропускали свои студенческие задания. Выглядело это следующим образом. Студент писал свою программу (или исправления к ней – так называемую "добивку") на специальных бланках и сдавал в перфорацию, затем получал перфокарты и отдавал колоду перфокарт с программой оператору машинного зала. Через несколько часов он мог рассчитывать получить результаты своей программы – колоду перфокарт обратно и распечатку результатов. В машинном зале оператор вводил очередное задание с перфокарт. Программа-диспетчер копировала образ введенной колоды перфокарт с заданием на ленту ввода, на которой хранились все образы заданий в хронологическом порядке их ввода, независимо от требуемых для них ресурсов – времени и объема памяти. Диспетчер осуществлял запуск заданий по очереди, по принципу FIFO (First-In-First-Out) – в порядке поступления. Выбирая из очереди некоторое задание, диспетчер размещал его в памяти и запускал. По окончании задания (или при его прерывании вследствие ошибки) на печатающее устройство выдавалась распечатка результатов. Затем управление передавалось следующему заданию. Такой режим доступа к компьютеру был, конечно, гораздо удобнее, чем работа с пульта. Недостатки его в том, что, во-первых, программы пропускались по очереди (отсутствовала одновременная обработка нескольких заданий), во-вторых, ресурсы, требуемые для выполнения задания, никак не учитывались, и программа, требующая для выполнения всего 1 мин., должна была ожидать завершения большой задачи, требовавшей для выполнения, например, пяти часов, - только потому, что последняя была раньше введена в систему.

    ИЗ ЛЕКЦИЙ:

    1 этап (40е года) – диспетчеры файлов: Процессор был связан с оперативной памятью и вводом/выводом. Напрямую ввод/вывод с оперативной памятью не взаимодействовали. Программы-диспетчеры появились для автоматизации загрузки и линковки данных, которые писались под конкретную машину. Когда осознали, что многие части кода повторяются, решили отвести специально место в оперативной памяти для библиотек, отсюда возникли задачи:

    1. автоматизировать линковку (связь приложений с ячейками памяти),

    2. оптимизировать взаимодействия с устройствами ввода/вывода.

    Прерывание - специальный сигнал, который останавливает центральный процесс и заставляет переключиться с одной задачи на другую.
    1. Функции и механизмы мультипрограммных операционных систем.


    В 1960-х – 1970-х гг. были разработаны классические операционные системы, которые все более и более усложнялись. Все более сложными становились их системы файлов и другие компоненты ОС. Наиболее известные из операционных систем этого периода: среди зарубежных - ATLAS, MULTICS, OS IBM/360, среди отечественных – ОС ДИСПАК для ЭВМ БЭСМ-6. Для классических операционных систем были характерны следующие основные возможности:

    1. Мультипрограммирование (multi-programming) – одновременная обработка нескольких заданий;

    2. пакетная обработка (batch mode) – обработка пакета заданий, введенных с перфокарт или с терминалов, с учетом их приоритетов и требуемых ресурсов

    3. разделение времени (time sharing) – параллельная работа нескольких пользователей с терминалов (телетайпов или дисплеев), управлявших прохождением своих заданий, выполнявших их ввод в текстовых редакторах, компиляцию, выполнение и отладку;

    4. управление процессами – параллельное (или попеременное, если компьютер был однопроцессорным) выполнение пользовательских процессов; возможность явного запуска параллельного процесса.

    ИЗ ЛЕКЦИЙ:

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

    Задачи, решавшиеся на данном этапе:

    1. Разделение времени между программы привело к созданию таймера и смене контекста, выполнения нескольких программ.

    2. Виртуализация памяти: только ОС имеет право писать физические адреса памяти, ПО может работать только с выделенной памятью.

    3. Системные вызовы - обращение программного обеспечения к операционной системе с просьбой предоставить какие-либо возможности.

    4. Мульти планирование времени

    5. Синхронизация и коммуникация между программами

    6. Разделение доступа к внешней информации, файлам
    1.   1   2   3   4   5   6   7   8   9   ...   19


    написать администратору сайта