ПО — неотъемлемая часть любой ЭВМ, без которой невозможно получить необходимые результаты всевозможных вычислительных операций. Можно все программное обеспечение разделить на классы: ОС и сервисные программы (это специальные системные программы, с помощью которых можно обслуживать как саму ОС, так и подготавливать для работы носители данных, выполнять перекодирование данных и производить некоторые другие работы связанные с обслуживаем ОС), инструментальные языки и среды программирования, прикладные программы.
Под ОС понимают: комплекс управляющих и обрабатывающих программ, который, с одной стороны, выступает как интерфейс между аппаратной частью компьютера и пользователем с его задачами, а с другой – предназначен для наиболее эффективного использования ресурсов вычислительной системы и организации надежных вычислений.
билет 1 тема 3
Требования к ОС. Классификация ОС.
ПО — неотъемлемая часть любой ЭВМ, без которой невозможно получить необходимые результаты
всевозможных вычислительных операций. Можно все программное обеспечение разделить на классы:
ОС и сервисные программы (это специальные системные программы, с помощью которых можно
обслуживать как саму ОС, так и подготавливать для работы носители данных, выполнять
перекодирование данных и производить некоторые другие работы связанные с обслуживаем ОС),
инструментальные языки и среды программирования, прикладные программы.
Под ОС понимают: комплекс управляющих и обрабатывающих программ, который, с одной стороны,
выступает как интерфейс между аппаратной частью компьютера и пользователем с его задачами, а с
другой – предназначен для наиболее эффективного использования ресурсов вычислительной системы и
организации надежных вычислений. Любой и компонентов прикладного ПО обязательно работает под
управлением ОС.
Основные функции ОС:
1.прием от пользователя заданий и команд, сформулированных на соответствующем языке виде команд
или указаний (специальных команд) с помощью соответствующего манипулятора (например, мыши), и их
обработка.
2. прием и исполнение программных запросов на запуск, приостановку, остановку других программ.
3. загрузка в оперативную память подлежащих исполнению программ.
4. инициация программы (передача данной конкретной программе управления, в результате чего
процессор приступает к её выполнению.)
5. идентификация всех программ и данных 6. организация и управление всеми операциями ввода/вывода.
6. распределение памяти и организация виртуальной памяти. 7. планирование и диспетчеризация задач.
8. организация механизмов обмена сообщениями и данными между выполняющимися программами.
9. защита одной программы от влияния другой.
10. предоставление услуг в случае частичного сбоя системы.
11 обеспечение работы систем программирования.
12. обеспечение работы СУБД.
13. обеспечение работы систем управления файлами (организация удобного доступа к данным,
организованным как файлы. Именно благодаря данной системе вместо низкоуровнего доступа к данным
с указанием конкретных физических адресов записи используется логический доступ с указанием имени
файла и записи в нем. СУФ можно выделить как отдельную категорию ПО).
Любая программа имеет дело с некоторыми исходными данными, которые она обрабатывает, порождая в
конечном итоге некоторые выходные данные и результаты вычислений. Исходные данные с
периферийных устройств попадают в оперативную память, с которой непосредственно работает
процессор, выполняя вычисления по программе. Результаты вычислений также должны быть выведены на
внешние устройства. Программирование операций ввода/ вывода относится к самым трудоемким
задачам. При создании таких программ нужно знать не только архитектуру процессора, но и архитектуру
подсистемы ввода/вывода (протоколы обмена данными, алгоритм работы контроллера устройства
ввода/вывода). В пятидесятые годы при разработке первых систем программирования прежде всего
создавали программные модули для системы ввода/вывода. Благодаря этому при создании прикладных
программ программисты могли просто обращаться к соответствующим функциям ввода/вывода. Состав
и количество библиотек систем программирования постоянно увеличивались. В конечном итоге возникла
ситуация, когда при создании программ в двоичных машинных кодах программистам уже не требовалось
знание множества особенностей управления конкретными ресурсами вычислительной системы, а
необходимо было только конкретное обращение к некоторой программной подсистеме с целью
получения требуемых сервисов. Эта программная подсистема и есть ОС. А набор её функций, сервисов и
правил обращения к ним как раз и образует то базовое понятие, которое называется операционной
средой.
Операционная среда – это набор соответствующих интерфейсов, необходимых программа и
пользователям для обращения к ОС с целью получения определенных сервисов.Классификация ОС:
ОС могут различаться особенностями реализации внутренних алгоритмов управления основными
ресурсами компьютера (процессорами, памятью, устройствами), особенностями используемых методов
проектирования, типов аппаратных платформ, областей применения и многими другими свойствами.
В зависимости от особенностей используемого алгоритма управления процессором выделяют
следующие типы ОС:
Поддержка многозадачности: по числу одновременно выполняемых задач ОС: однозадачные
(MSDOS), многозадачные (Unix, Windows). Многозадачные системы подразделяются на три типа в
соответствии с использованными при их разработке критериями эффективности: /системы пакетной
обработки (ОС ЕС, предназначались для решения задач вычислительного характера, не требующих
быстрого получения результатов. В начале работы формируется пакет заданий, каждое задание содержит
требования к системным ресурсам; из пакета заданий формируется мультипрограммная смесь, т.е.
множество одновременно выполняемых задач. После выполнения всего пакета заданий пользователю
выдается результат. В настоящее время такие системы почти не используются.); /системы разделения
времени (Unix, Windows, призваны исправить основной недостаток систем пакетной обработки –
изоляцию пользователя программиста от процесса выполнения его задач. Каждому пользователю
предоставляется терминал, с которого он может вести диалог со своей программой. Каждой задаче
выделяется только квант процессорного времени.); /системы реального времени (QNX, RT/11
применяются для управления различными техническими объектами. Способность выдержать заранее
заданные интервалы времени между запуском программы и получением результата. Это время
называется временем реакции системы. Мультипрограммная смесь представляет собой фиксированный
набор заранее разработанных программ, а выбор программы на выполнение осуществляется исходя из
текущего состояния объекта или исходя из расписания.)
Поддержка многопользовательского режима: по числу одновременно работающих пользователей:
однопользовательские (MSDOS, Windows 3.x), многопользовательские (Unix, Windows на платформе
NT). Главное отличие многопольз. систем от однопольз. – наличие средств защиты информации каждого
пользователя.
Многопроцессорная обработка: отсутствие или наличие в ОС средств поддержки многопроцессорной
обработки. Такие функции имеются (Solaris фирмы Sun, Open Server фирмы Santa Crus Operations, OS/2
фирмы IBM, Windows NT фирмы Microsoft, NetWare фирмы Novell). Данные системы могут
классифицироваться по способу организации вычислительного процесса в системе: /Ассиметричная ОС
– целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по
остальным процессорам. /Симметричная ОС – полностью децентрализована и использует весь пул
процессоров, разделяя их между системными и прикладными задачами.
Поддержка многонитивости: системы поддерживающие и не поддерживающие распараллеливания.
По основному архитектурному принципу ОС разделяются на:
микроядерные (QNX; микроядро также работает в привилегированном режиме, но выполняет только
минимум функций по управлению аппаратурой. Функции ОС более высокого уровня выполняют
специализированные компаненты ОС – серверы, работающие в пользовательском режиме.),
монолитные (Windows 9.x, OS Linux; используется монолитное ядро, которое компонуется как одна
программа, работающая а привилегированном режиме и использующая быстрые переходы от одной
процедуры на другую, не требующие переключения из привилегированного режима в пользовательский и
наоборот).