Скачать презентацию Лекция 1 Понятие операционной системы Основные функции Скачать презентацию Лекция 1 Понятие операционной системы Основные функции

OS_Lektsia_1_Vvedenie.pptx

  • Количество слайдов: 51

Лекция № 1 Понятие операционной системы. Основные функции ОС. История развития ОС Лекция № 1 Понятие операционной системы. Основные функции ОС. История развития ОС

ПОНЯТИЕ ОПЕРАЦИОННОЙ СИСТЕМЫ ПОНЯТИЕ ОПЕРАЦИОННОЙ СИСТЕМЫ

Понятие операционной системы • Операционная система – представляет собой комплекс взаимосвязан ных программ, который Понятие операционной системы • Операционная система – представляет собой комплекс взаимосвязан ных программ, который действует как интерфейс между приложениями и пользователями с одной стороны, и аппаратурой компьютера с другой стороны. ОС Прикладное ПО

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

Понятие операционной системы Понятие операционной системы

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

Понятие операционной системы Операционная система как менеджер ресурсов обеспечивает выполнение следующих функций: – Буферизация Понятие операционной системы Операционная система как менеджер ресурсов обеспечивает выполнение следующих функций: – Буферизация на диске данных, предназначенных для печати, и организации очереди на печать – Управление ресурсами и их защита для многопользовательских компьютеров – Упорядоченное и контролируемое распределение процессоров, памяти и других ресурсов между различными программами

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

Понятие операционной системы Операционная система как защитник пользователей и программ: • Проблема обеспечения безопасной Понятие операционной системы Операционная система как защитник пользователей и программ: • Проблема обеспечения безопасной совместной работы нескольких пользователей • Никто не должен удалять или повреждать чужие файлы • Программы одних пользователей не должны произвольно вмешиваться в работу программ других пользователей • Должны пресекаться попытки несанкционированного использования вычислительной системы • Операционная система организует безопасную работу пользователей и их программ

Понятие операционной системы Операционная система как постоянно функционирующее ядро: • Операционная система это программа, Понятие операционной системы Операционная система как постоянно функционирующее ядро: • Операционная система это программа, постоянно работающая на компьютере и взаимодействующая со всеми прикладными программами • Во многих современных операционных системах постоянно работает на компьютере лишь ее часть – ядро ОС

Операционная система как постоянно функционирующее ядро • Ядро — центральная часть операционной системы (ОС), Операционная система как постоянно функционирующее ядро • Ядро — центральная часть операционной системы (ОС), обеспечивающая приложениям координированный доступ к ресурсам компьютера, таким как процессорное время, память и внешнее аппаратное обеспечение. Также обычно ядро предоставляет сервисы файловой системы и сетевых протоколов.

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

Основные компоненты ОС • Операционная система – весьма сложная по архитектуре программная система, в Основные компоненты ОС • Операционная система – весьма сложная по архитектуре программная система, в которой можно выделить следующие основные компоненты: – Управление процессами – Управление оперативной памятью – Управление файлами – Управление системой ввода вывода – Поддержка сетей (networking) – Система защиты – Система поддержки командного интерпретатора – Графическая оболочка

ИСТОРИЯ РАЗВИТИЯ ОС ИСТОРИЯ РАЗВИТИЯ ОС

История операционных систем • История развития операционных систем тесно связана с историей развития вычислительных История операционных систем • История развития операционных систем тесно связана с историей развития вычислительных систем: – Первое поколение ЭВМ (1945 – 1955 гг. ): электронные лампы и коммутационные панели; – Второе поколение ЭВМ (1955 – 1965 гг. ): транзисторы – системы пакетной разработки; – Третье поколение ЭВМ (1965 – 1980 гг. ): интегральные схемы многозадачность; – Четвертое поколение ЭВМ (1980 – по наши дни): персональные компьютеры;

История операционных систем: (1945 – 1955 гг. ) – ОС отсутствуют – Полный доступ История операционных систем: (1945 – 1955 гг. ) – ОС отсутствуют – Полный доступ к ресурсам ЭВМ на машинном языке. – Высокая стоимость приобретения и эксплуатации ЭВМ и низкая стоимостью труда программистов. – Монопольный интерактивный режим. – Основная цель – максимизировать использование аппаратного обеспечения. – Основной режим работы компьютера – простой и ожидание каких-либо действий программиста. – Недостаточное использование дорогостоящего вычислительного оборудования.

История развития ОС: второе поколение: (1955 -1965 гг. ) n n n n Компьютеры История развития ОС: второе поколение: (1955 -1965 гг. ) n n n n Компьютеры на основе транзисторов; Повышена надежность компьютеров Снижение потребления электроэнергии Упрощение систем охлаждения Уменьшение размеров компьютеров Удешевление эксплуатации и обслуживания Коммерческое использование ЭВМ 11. 02. 2018 8: 13: 15 17

История развития ОС: второе поколение: (1955 -1965 гг. ) n n Бурное развитие алгоритмических История развития ОС: второе поколение: (1955 -1965 гг. ) n n Бурное развитие алгоритмических языков (ALGOL 58, LISP, COBOL, ALGOL 60, PL 1 и т. д. ) Появление компиляторов, редакторов связей, библиотек математических и служебных подпрограмм Упрощение процесса программирования Разделение персонала на программистов и операторов, специалистов по эксплуатации и разработчиков вычислительных машин 11. 02. 2018 8: 13: 16 18

История развития ОС: второе поколение: (1955 -1965 гг. ) Для ввода информации в ЭВМ История развития ОС: второе поколение: (1955 -1965 гг. ) Для ввода информации в ЭВМ первых поколений использовались 80 колонные перфокарты и 8 дорожечные перфоленты 11. 02. 2018 8: 13: 16 19

История развития ОС: второе поколение: (1955 -1965 гг. ) n n Изменился процесс прогона История развития ОС: второе поколение: (1955 -1965 гг. ) n n Изменился процесс прогона программ Для повышения эффективности использования компьютера задания с похожими требуемыми ресурсами собираются вместе, образуя пакет заданий 11. 02. 2018 8: 13: 16 20

История развития ОС: второе поколение: (1955 -1965 гг. ) n Системы пакетной обработки: (прообраз История развития ОС: второе поколение: (1955 -1965 гг. ) n Системы пакетной обработки: (прообраз современных операционных систем): n n n Автоматизация запуска одной программы из пакета за другой Увеличение коэффициента загрузки процессора Формализованный язык управления заданиями Программист сообщает системе и оператору, какую работу он хочет выполнить на машине Системные программы, предназначенные для управления вычислительным процессом Первая система пакетной обработки BESYS (1957 г. )

История развития ОС: третье поколение: (1965 -1980 гг. ) n Компьютеры на основе интегральных История развития ОС: третье поколение: (1965 -1980 гг. ) n Компьютеры на основе интегральных микросхем; Многозадачность это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются несколько задач Пока одна программа выполняет операцию ввода вывода, процессор выполняет другую программу. 11. 02. 2018 8: 13: 16 22

История развития ОС: третье поколение: (1965 -1980 гг. ) Многозадачность Потребовала создание системы распределения История развития ОС: третье поколение: (1965 -1980 гг. ) Многозадачность Потребовала создание системы распределения памяти. Разделы памяти 11. 02. 2018 8: 13: 16 23

История развития ОС: третье поколение: (1965 -1980 гг. ) n Spooling (Simultaneous Peripheral Operation История развития ОС: третье поколение: (1965 -1980 гг. ) n Spooling (Simultaneous Peripheral Operation On Line) или подкачка-откачка данных – метод работы с внешними устройствами вывода (реже ввода) в многозадачной ОС или многомашинной среде, при которой задачам создается иллюзия одновременного доступа к устройству. n Задачи работают в режиме off-line. n Выводимые данные накапливаются системой, а затем выводятся на устройство так, чтобы вывод различных задач не смешивался. 11. 02. 2018 8: 13: 16 24

История развития ОС: третье поколение: (1965 -1980 гг. ) n Spooling (Simultaneous Peripheral Operation История развития ОС: третье поколение: (1965 -1980 гг. ) n Spooling (Simultaneous Peripheral Operation On Line) или подкачка-откачка данных n Позволяет совместить реальные операции ввода вывода одного задания с выполнением другого задания n Требует наличия аппарата прерываний n Планирование заданий: задание выбирается в зависимости от наличия запрошенных ресурсов, срочности вычислений и т. д. 11. 02. 2018 8: 13: 16 25

История развития ОС: третье поколение: (1965 -1980 гг. ) Наиболее существенные изменения в ОС История развития ОС: третье поколение: (1965 -1980 гг. ) Наиболее существенные изменения в ОС n n n Интерфейс между прикладной программой и ОС организуется в виде набора системных вызовов Организация очереди из заданий в памяти и выделение процессора одному из заданий требуют планирования заданий Для переключения процессора с одного задания на другое возникает потребность в сохранении содержимого регистров и структур данных, необходимых для продолжения выполнения задания, иначе говоря, контекста 11. 02. 2018 8: 13: 16 26

История развития ОС: третье поколение: (1965 -1980 гг. ) Наиболее существенные изменения в ОС История развития ОС: третье поколение: (1965 -1980 гг. ) Наиболее существенные изменения в ОС n n n Поскольку память является ограниченным ресурсом, требуются стратегии управления памятью, упорядочивающие процессы размещения, замещения и выборки информации из памяти Для обеспечения санкционированного обмена данными между программами, нужны средства коммуникации Для корректного обмена данными необходимо предусмотреть координацию программами своих действий, т. е. средства синхронизации 11. 02. 2018 8: 13: 16 27

История развития ОС: третье поколение: (1965 -1980 гг. ) n Системы разделения времени – История развития ОС: третье поколение: (1965 -1980 гг. ) n Системы разделения времени – рассчитаны на многотерминальные системы, когда каждый пользователь работает за своим терминалом. n n Возможность одновременной работы многих пользователей на одной компьютерной системе Процессор переключается между задачами не только на время операций ввода вывода, но и просто по прошествии определенного интервала времени, вследствие чего пользователи могут взаимодействовать со своими программами во время их выполнения, то есть интерактивно. 11. 02. 2018 8: 13: 16 28

История развития ОС: третье поколение: (1965 -1980 гг. ) Примеры систем разделения времени n История развития ОС: третье поколение: (1965 -1980 гг. ) Примеры систем разделения времени n Первая серьезная ОС с режимом разделения времени CTSS (Compatible Time Sharing System) была разработана в Массачусетсском технологическом институте (M. I. T. ) на специально переделанном компьютере IBM 7094. n Многопользовательская система MULTICS (MULTiplexed Information and Computing Service ) – обеспечивала одновременную работу сотни пользователей. 11. 02. 2018 8: 13: 16 29

История развития ОС: третье поколение: (1965 -1980 гг. ) • Еще одним важным моментом История развития ОС: третье поколение: (1965 -1980 гг. ) • Еще одним важным моментом развития во времена третьего поколения был феноменальный рост числа миникомпьютеров, начиная с выпуска машины PDP-1 корпорацией DEC, за которой последовала целая серия других PDP, завершенная — PDP-11. PDP 11 11. 02. 2018 8: 13: 16 30

История развития ОС: третье поколение: (1965 -1980 гг. ) OS UNIX • Кен Томпсон История развития ОС: третье поколение: (1965 -1980 гг. ) OS UNIX • Кен Томпсон (Ken Thompson), работавший над проектом MULTICS, написал усеченную однопользовательскую версию системы MULTICS для миникомпьютера РDР 7. • Эта работа позже развилась в операционную систему UNIX, ставшую популярной в академическом мире, в правительственных управлениях и во многих компаниях. • Программный код для UNIX был на 90 % написан на языке высокого уровня С. 11. 02. 2018 8: 13: 17 31

История развития ОС: третье поколение: (1965 -1980 гг. ) OS UNIX • По причине История развития ОС: третье поколение: (1965 -1980 гг. ) OS UNIX • По причине широкой доступности исходного кода различные организации создали собственные (несовместимые) версии UNIX, основные из них: • System V корпорации AT&T; • BSD (Berkeley Software Distribution) Калифорнийского университета Беркли. • Для обеспечения работы программ в любой системе UNIX, был разработан стандарт POSIX. • Стандарт POSIX определяет минимальный интерфейс системного вызова, который должны поддерживать все системы UNIX. 11. 02. 2018 8: 13: 17 32

История развития ОС: четвертое поколение: (1980 - наши дни) n n Персональные компьютеры; Появление История развития ОС: четвертое поколение: (1980 - наши дни) n n Персональные компьютеры; Появление больших интегральных схем (БИС) • Первое поколение персональных компьютеров основывалось на 8 разрядных микропроцессорах INTEL 8080 или Zilog 80. • Эти компьютеры работали под управлением дисковой операционной системы CP/M. • В начале 80 х была разработана система MS-DOS 11. 02. 2018 8: 13: 17 33

История развития ОС: четвертое поколение: (1980 - наши дни) Графический интерфейс пользователя (GUI) • История развития ОС: четвертое поколение: (1980 - наши дни) Графический интерфейс пользователя (GUI) • Первая реализация: корпорация Macintosh видеосюжет с рекламой нового компьютера фирмы Apple (1984 г). 11. 02. 2018 8: 13: 17 Персональный компьютер Apple Macintosh (1984 г. ) был сконструирован в виде моноблока, имел: высококачественную графику, звук, сетевую карту, управлялся графической операционной системой Mac. OS. 34

История развития ОС: четвертое поколение: (1980 - наши дни) n ОС Windows • Выпускается История развития ОС: четвертое поколение: (1980 - наши дни) n ОС Windows • Выпускается с 1985 г. • До 1995 г. представляла собой графическую оболочку к MS DOS. • 1993 г. – Windows NT, которая поддерживала: • • Вытесняющую многозадачность Виртуальную память Графический интерфейс пользователя Виртуальную машину для DOS приложений. 11. 02. 2018 8: 13: 17 35

История развития ОС: четвертое поколение: (1980 - наши дни) ● ● В середине 80 История развития ОС: четвертое поколение: (1980 - наши дни) ● ● В середине 80 х стали бурно развиваться сети компьютеров, работающих под управлением сетевых или распределенных операционных систем В сетевой ОС пользователи знают о наличии другого сетевого компьютера и могут воспользоваться его ресурсами. Требуются: ● программная поддержка сетевых интерфейсных устройств ● средства для удаленного входа в другие компьютеры 11. 02. 2018 8: 13: 17 36

История развития ОС: четвертое поколение: (1980 - наши дни) ● Распределенная ОС выглядит как История развития ОС: четвертое поколение: (1980 - наши дни) ● Распределенная ОС выглядит как обычная однопользовательская система, в которой ● ● ● Пользователь не знает и не должен знать, где хранятся его файлы и где выполняются его программы Может не знать, подключен ли компьютер к сети Прикладные программы могут обрабатываться на нескольких процессорах 11. 02. 2018 8: 13: 18 37

История развития ОС: четвертое поколение: (1980 - наши дни) ● ● ОС LINUX В История развития ОС: четвертое поколение: (1980 - наши дни) ● ● ОС LINUX В 1987 г. была выпущена микроядерная ОС MINIX (прототип LINUX) В 1991 г. была выпущена LINUX, в отличие от MINIX, она стала монолитной. Чуть позже вышла ОС Free. BSD (основой для нее послужила BSD UNIX) 11. 02. 2018 8: 13: 18 38

ОСНОВНЫЕ ПОНЯТИЯ, КОНЦЕПЦИИ ОС ОСНОВНЫЕ ПОНЯТИЯ, КОНЦЕПЦИИ ОС

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

Основные понятия ОС • Прерывания(hardware interrupt) – это событие, генерируемое внешним (по отношению к Основные понятия ОС • Прерывания(hardware interrupt) – это событие, генерируемое внешним (по отношению к процессору) устройством. – Посредством аппаратных прерываний аппаратура либо информирует центральный процессор о том, что произошло какое либо событие, требующее немедленной реакции (например, пользователь нажал клавишу), либо сообщает о завершении асинхронной операции ввода вывода (например, закончено чтение данных с диска в основную память). – Каждый тип аппаратных прерываний имеет собственный номер, однозначно определяющий источник прерывания.

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

Основные функции классической ОС • Шесть основных функций, которые выполняют классические операционные системы: – Основные функции классической ОС • Шесть основных функций, которые выполняют классические операционные системы: – Планирование заданий и использования процессора. – Обеспечение программ средствами коммуникации и синхронизации. – Управление памятью. – Управление файловой системой. – Управление вводом выводом. – Обеспечение безопасности • Каждая из приведенных функций обычно реализована в виде подсистемы, являющейся структурным компонентом ОС.

СТРУКТУРА ОС СТРУКТУРА ОС

Структура операционных систем Монолитное ядро • • Каждая процедура может вызывать каждую Все процедуры Структура операционных систем Монолитное ядро • • Каждая процедура может вызывать каждую Все процедуры работают в привилегированном режиме Ядро совпадает со всей операционной системой Пользовательские программы взаимодействуют с ядром через системные вызовы Программа пользователя - точки входа в ядро – системные вызовы ОС = ядро Привилегированный режим Программа пользователя 45

Внутреннее строение операционных систем Многоуровневые системы (Layered systems) Процедура уровня N может вызывать только Внутреннее строение операционных систем Многоуровневые системы (Layered systems) Процедура уровня N может вызывать только процедуры уровня N 1 Все или почти все уровни работают в привилегированном режиме Ядро совпадает или почти совпадает со всей операционной системой Пользовательские программы взаимодействуют с ОС через интерфейс пользователя Система THE N N • • 5 Интерфейс пользователя 4 Управление вводом-выводом 3 Драйвер связи с консолью 2 Управление памятью 1 Планирование задач и процессов 0 Hardware 46

Внутреннее строение операционных систем Микроядерная (microkernel) архитектура Функции микроядра: • • взаимодействие между программами Внутреннее строение операционных систем Микроядерная (microkernel) архитектура Функции микроядра: • • взаимодействие между программами планирование использования процессора первичная обработка прерываний и операций ввода вывода базовое управление памятью Приложение 1 Приложение 2 Менеджер сети Микроядро Привилегированный режим ОС Менеджер памяти Менеджер файлов 47

Внутреннее строение операционных систем Микроядерная (microkernel) архитектура • Взаимодействие частей ОС между собой и Внутреннее строение операционных систем Микроядерная (microkernel) архитектура • Взаимодействие частей ОС между собой и с программами пользователей путем передачи сообщений через микроядро • В привилегированном режиме работает только микроядро • Микроядро составляет лишь малую часть ОС 48

Внутреннее строение операционных систем Смешанные системы – почему? • Монолитное ядро – необходимость перекомпиляции Внутреннее строение операционных систем Смешанные системы – почему? • Монолитное ядро – необходимость перекомпиляции при каждом изменении, сложность отладки, высокая скорость работы. • Многоуровневые системы – необходимость перекомпиляции при изменениях, отлаживается только измененный уровень, меньшая скорость работы • Микроядро – простота отладки, возможность замены компонент без перекомпиляции и остановки системы, очень медленные 49

Внутреннее строение операционных систем Смешанные системы – примеры • Linux – монолитная система с Внутреннее строение операционных систем Смешанные системы – примеры • Linux – монолитная система с элементами микроядерной архитектуры (подгружаемые модули). • 4. 4 BSD – запуск монолитной системы под управлением микроядра • Windows NT – почти микроядерная система с элементами монолитности Многоуровневый подход применяется почти во всех ОС в их отдельных компонентах 50

Внутреннее строение операционных систем Виртуальные машины Каждому пользователю предоставляется своя копия виртуального hardware Пользователь Внутреннее строение операционных систем Виртуальные машины Каждому пользователю предоставляется своя копия виртуального hardware Пользователь Linux Windows-XP MS-DOS Виртуальное hardware Реальная операционная система Реальное hardware 51