Назначение и функции операционной системы

Содержание

Слайд 2

Взаимодействие пользователей и программ между собой и аппаратурой компьютера

Взаимодействие пользователей и программ между собой и аппаратурой компьютера

Слайд 3

ОС как виртуальная машина

Назначение ОС состоит в предоставлении пользователю/программисту некоторой расширенной виртуальной

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

Слайд 4

Для того чтобы успешно решать свои задачи, современный пользователь или даже прикладной

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

Слайд 5

ОС как система управления ресурсами

процессоры,
основная память,
таймеры,
наборы данных,
диски,
накопители

ОС как система управления ресурсами процессоры, основная память, таймеры, наборы данных, диски,
на магнитных лентах,
принтеры,
сетевые устройства и некоторые другие.

Операционная система является механизмом, распределяющим ресурсы компьютера. Ресурсы распределяются между процессами.
К числу основных ресурсов современных вычислительных систем могут быть отнесены такие ресурсы, как:

Слайд 6

Управление ресурсами вычислительной системы

планирование ресурса — то есть определение, какому процессу,

Управление ресурсами вычислительной системы планирование ресурса — то есть определение, какому процессу,
когда и в каком количестве (если ресурс может выделяться частями) следует выделить данный ресурс;
удовлетворение запросов на ресурсы;
отслеживание состояния и учет использования ресурса — то есть поддержание оперативной информации о том, занят или свободен ресурс и какая доля ресурса уже распределена;
разрешение конфликтов между процессами.

Управление ресурсами включает решение следующих общих, не зависящих от типа ресурса задач

Слайд 7

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

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

Слайд 8

Подсистемы ОС

Функции операционной системы автономного компьютера обычно группируются либо в соответствии с

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

Слайд 9

Функциональные компоненты операционной системы автономного компьютера

Управление процессами
Управление памятью
Управление файлами и внешними устройствами
Защита

Функциональные компоненты операционной системы автономного компьютера Управление процессами Управление памятью Управление файлами
данных и администрирование
Интерфейс прикладного программирования
Пользовательский интерфейс

Слайд 10

Процесс (задача)

Процесс – представляет собой базовое понятие большинства современных ОС и

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

Слайд 11

Управление процессами

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

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

Слайд 12

Для каждого вновь создаваемого процесса ОС генерирует системные информационные структуры, содержащие данные

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

Слайд 13

Защита ресурсов

Важной задачей операционной системы является защита ресурсов, выделенных данному процессу, от

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

Слайд 14

Состояния процесса

На протяжении периода существования процесса его выполнение может быть многократно прервано

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

Слайд 15

Управление процессами

Подсистема управления процессами планирует выполнение процессов, то есть распределяет процессорное

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

Слайд 16

Управление памятью

Память является для процесса таким же важным ресурсом, как и процессор,

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

Слайд 17

Управление памятью

Управление памятью включает:
распределение имеющейся физической памяти между всеми существующими в системе

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

Слайд 18

Управление файлами и внешними устройствами

Операционная система виртуализирует отдельный набор данных, хранящихся на

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

Слайд 19

Управление файлами и внешними устройствами

Программа, управляющая конкретной моделью внешнего устройства и учитывающая

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

Слайд 20

Защита данных и администрирование

Безопасность данных вычислительной системы обеспечивается:
средствами отказоустойчивости ОС, направленными на

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

Слайд 21

Поддержка отказоустойчивости реализуется операционной системой на основе резервирования. Поддержка отказоустойчивости также входит

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

Слайд 22

Интерфейс прикладного программирования

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

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

Слайд 23

Функции такого типа реализуют универсальные действия, часто требующиеся в различных приложениях, такие,

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

Слайд 24

Пользовательский интерфейс

Операционная система должна обеспечивать удобный интерфейс не только для прикладных программ,

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

Слайд 25

В ранних системах пакетного режима функции пользовательского не требовали наличия терминала -

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

Пользовательский интерфейс

Слайд 26

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

Операционная система компьютерной сети во многом аналогична ОС автономного компьютера

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

Слайд 27

Сетевые и распределенные ОС

В зависимости от того, какой виртуальный образ создает операционная

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

Слайд 28

Два значения термина «сетевая ОС»

Набор операционных систем отдельных компьютеров, составляющих сеть.
Операционная система

Два значения термина «сетевая ОС» Набор операционных систем отдельных компьютеров, составляющих сеть.
отдельного компьютера позволяет ему работать в сети, то есть предоставляет свои ресурсы в общее пользование и/или потреблять ресурсы других компьютеров сети.

Слайд 29

Функциональные компоненты сетевой ОС

Функциональные компоненты сетевой ОС

Слайд 30

Основные функциональные компоненты сетевой ОС

 средства управления локальными ресурсами компьютера реализуют все функции

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

Слайд 31

Транспортные средства ОС

Управляют передачей сообщений между клиентской и серверными частями по коммуникационной

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

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

Слайд 32

Работа сетевой ОС (упрощённо)

Пользователь компьютера А решил разместить свой файл на диске

Работа сетевой ОС (упрощённо) Пользователь компьютера А решил разместить свой файл на
другого компьютера сети — компьютера В.
Программный модуль ОС, отвечающий за интерфейс с пользователем, принимает эту команду и передает ее клиентской части ОС компьютера А.
Клиентская часть ОС «просит» о получении доступа к ресурсам компьютера B.

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

Слайд 33

Сетевые службы и сетевые сервисы

Совокупность серверной и клиентской частей ОС, предоставляющих доступ

Сетевые службы и сетевые сервисы Совокупность серверной и клиентской частей ОС, предоставляющих
к конкретному типу ресурса компьютера через сеть, называется сетевой службой.
Сетевая служба предоставляет пользователям сети некоторый набор услуг. Эти услуги иногда называют также сетевым сервисом (от англоязычного термина «service»).
«Служба» - сетевой компонент, который реализует некоторый набор услуг, «сервис» — описание того набора услуг, который предоставляется данной службой.
Сервис — это интерфейс между потребителем услуг и поставщиком услуг (службой).

Слайд 34

Каждая служба связана с определенным типом сетевых ресурсов и/или определенным способом доступа

Каждая служба связана с определенным типом сетевых ресурсов и/или определенным способом доступа
к этим ресурсам.
Например:
служба печати обеспечивает доступ пользователей сети к разделяемым принтерам сети и предоставляет сервис печати,
почтовая служба предоставляет доступ к информационному ресурсу сети — электронным письмам.

Слайд 35

Клиент-серверная природа сетевых служб

Сервер предоставляет свои ресурсы клиенту, а клиент ими пользуется.

Сетевые

Клиент-серверная природа сетевых служб Сервер предоставляет свои ресурсы клиенту, а клиент ими
службы по своей природе являются клиент- серверными системами .
Сетевая служба может быть представлена в операционной системе либо обеими (клиентской и серверной) частями, либо только одной из них.

Слайд 36

Подходы к построению сетевых операционных систем

сетевые службы глубоко встроены в ОС;
 сетевые службы

Подходы к построению сетевых операционных систем сетевые службы глубоко встроены в ОС;
объединены в виде некоторого набора — оболочки; 
сетевые службы производятся и поставляются в виде отдельного продукта.

Слайд 37

Варианты построения сетевых ОС

Варианты построения сетевых ОС

Слайд 38

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

компьютер, занимающийся исключительно обслуживанием запросов других компьютеров,

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

В зависимости от того, как распределены функции между компьютерами сети, они могут выступать в трех разных ролях

Слайд 39

ОС в одноранговых сетях

ОС в одноранговых сетях

Слайд 40

Сеть с выделенными серверами

Сеть с выделенными серверами

Слайд 41

Гибридная сеть

Гибридная сеть

Слайд 42

Задачи и упражнения

Какие из утверждений верны?
 А) «сетевая операционная система» — это

Задачи и упражнения Какие из утверждений верны? А) «сетевая операционная система» —
совокупность операционных систем всех компьютеров сети;
 В) «сетевая операционная система» — это операционная система отдельного компьютера, способного работать в сети;
 С) «сетевая операционная система» — это набор сетевых служб, выполненный в виде оболочки.

Слайд 43

Какие из следующих утверждений верны?
 А) ОС выделенного сервера никогда не содержит

Какие из следующих утверждений верны? А) ОС выделенного сервера никогда не содержит
клиентских частей сетевых служб;
 В) в одноранговых ОС всегда имеются и клиентские, и серверные части сетевых служб;
 С) в сетях с выделенными серверами могут поддерживаться одноранговые связи.

Слайд 44

ДЗ

Какой минимум функциональных возможностей надо добавить к локальной ОС, чтобы она стала

ДЗ Какой минимум функциональных возможностей надо добавить к локальной ОС, чтобы она
сетевой?
Приведите примеры одноранговых ОС и ОС с выделенным сервером.

Слайд 45

Вопросы и упражнения

1. Поясните определение операционной системы как расширенной машины.
2. В

Вопросы и упражнения 1. Поясните определение операционной системы как расширенной машины. 2.
соответствии с определением ОС ее главными функциями являются предоставление удобств пользователю и эффективное управление ресурсами компьютера. Какая их этих двух функций должна была доминировать в мультипрограммных ОС времен IBM/360? А в первых ОС для персональных компьютеров?
3. В чем состоит отличие в виртуальных машинах, предоставляемых операционной системой простому пользователю и прикладному программисту?
4. Сравните интерфейс прикладного программиста с операционной системой и интерфейс системного программиста с реальной аппаратурой. Что можно сказать о разнообразии и мощности интерфейсных функций, имеющихся в распоряжении каждого из них?

Слайд 46

Вопросы и упражнения

5. Назовите абстрактно сформулированные задачи ОС по управлению любым типом

Вопросы и упражнения 5. Назовите абстрактно сформулированные задачи ОС по управлению любым
ресурса. Конкретизируйте эти задачи применительно к процессору, памяти, внешним устройствам.
6. Вставьте пропущенные определения: «Пользователю... ОС не требуется знать, на каком из компьютеров сети хранятся файлы, с которыми он работает, а пользователю... ОС эти сведения обычно необходимы».
7. Какие из утверждений верны?
 А) «сетевая операционная система» — это совокупность операционных систем всех компьютеров сети;
 В) «сетевая операционная система» — это операционная система отдельного компьютера, способного работать в сети;
 С) «сетевая операционная система» — это набор сетевых служб, выполненный в виде оболочки.

Слайд 47

Вопросы и упражнения

8. Какой минимум функциональных возможностей надо добавить к локальной ОС,

Вопросы и упражнения 8. Какой минимум функциональных возможностей надо добавить к локальной
чтобы она стала сетевой?
9. Перечислите основные сетевые службы. Какие из них, как правило, встроены в операционную систему?
10. Какие из утверждений верны?
А) редиректор — клиентская часть сетевой службы;
 В) редиректор — модуль, входящий в состав клиентской части сетевой службы, распознающий и перенаправляющий запросы к нужному сетевому серверу или локальной ОС.