Основные функции операционной системы кратко. ?Системные и прикладные программные модули. Какие функции выполняет операционная система

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

А)собственнике (владельце) системы

Б) потребителе информации

В) разработчике системы

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

А) на собственнике (владельце) системы

Б) на разработчике системы

В) на потребителе информации

Что не является операционной системой?

В) Ехсеl

Производительность работы компьютера (быстрота выполнения операций) зависит от...

А) размера экрана дисплея

Б) частоты процессора

В) напряжения питания

В) быстроты нажатия на клавиши

Какое устройство может оказывать вредное воздействие на здоровье человека?

А) Принтер

Б) Монитор

В) Системный блок

Файл - это...

А) единица измерения информации

Б) текст, распечатанный на принтере

В) программа или данные на диске

Какое устройство обладает наименьшей скоростью обмена информацией?

А) CD-ROM дисковод

Б) жесткий диск

В) дисковод для гибких дисков

Г) микросхемы оперативной памяти

Заражение компьютерными вирусами может произойти в процессе

А) печати на принтере

Б) работы с файлами

В) форматирования дискеты

Г) выключения компьютера

Какой из способов подключения к Интернету обеспечивает наибольшие возможности для доступа к информационным ресурсам...

А) удаленный доступ по коммутируемому телефонному каналу

Б) постоянное соединение по оптоволоконному каналу

В) постоянное соединение по выделенному телефонному каналу

Гипертекст - это

А) очень большой текст

Б) текст, в котором используется шрифт большого размера

В) структурированный текст, в котором могут осуществляться переходы по выделенным меткам

Электронная почта (e-mail) позволяет передавать...

А) только сообщения

Б) только файлы

В) сообщения и приложенные файлы

19. Задан адрес электронной почты в сети Интернет: [email protected]. Каково имя владельца этого электронного адреса?

Б) minzdravsoc.ru

В) user_name

Браузеры (например, Microsoft Internet Explorer) являются...

А) средством просмотра web-страниц

Б) серверами Интернета

В) антивирусными программами

Основным элементом электронных таблиц является...

А) ячейка

Б) строка

В) столбец

Г) таблица

22. Задан адрес электронной почты в сети Интернет: [email protected] Каково доменное имя, на котором хранится почта?

Б) user_name@ minzdravsoc.ru

Г)minzdravsoc.ru

А) на любую web-страницу любого сервера Интернета

Б) на любую web-страницу в пределах данного домена

В) на любую web-страницу данного сервера

Г) в пределах данной web-страницы

Компьютер, подключенный к Интернету, обязательно имеет...

А) IP – адрес

Б) web-сервер

В) домашнюю web-страницу

В) доменное имя

Модем - это...

А) почтовая программа

Б) сетевой протокол

В) сервер Интернета

Г) техническое устройство

26. Задан адрес электронной почты в сети Интернет: [email protected] . Каково имя домена верхнего уровня?

Б) minzdrasoc.ru

Какие функции выполняет операционная система?

А) обеспечение организации и хранения файлов

Б) подключения устройств ввода/вывода

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

Г) организация диалога с пользователем, управления аппаратурой и ресурсами компьютера

28. Информационная система учреждения предназначена:

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

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

29. Информационно-справочные системы предназначены:

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

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

30. Единое информационное пространство:

А) информационная система, предназначенная для автоматизации всего технологического процесса деятельности специалиста

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

31. Компоненты единого информационного пространства:

А) информационный

Б) организационно-управленческий

В) кадровый

Г) программно-технический

32. Программно-технический компонент единого информационного пространства:

А) выработка единой системной программной политики

Б) формирование баз единой информации на всех уровнях информационного обмена

33. Организационно-управленческий компонент единого информационного пространства:

А) унификация формирования и функционирования информационно-аналитических подразделений и служб

Б) выработка единой системной программной политики

В) разработка и внедрение типовых взаимоувязанных по уровням схем информационного обеспечения управления

Принципы создания АРМ

А) гибкость

Б) системность

В) устойчивость

Г) эффективность

Д) верно все

35. Принцип гибкости при создании АРМ, это:

А)возможность приспособления АРМ к предполагаемой модернизации, как программного обеспечения, так и технических средств

Б) заключается в выполнении заложенных в АРМ функций, независимо от воздействия как внутренних, так и внешних факторов

36. Принцип устойчивости при создании АРМ, это:

А) возможность приспособления АРМ к предполагаемой модернизации как программного обеспечения, так и технических средств.

Б) заключается в выполнении заложенных в АРМ функций, независимо от воздействия как внутренних, так и внешних факторов

37. Информационная система:

А) совокупность взаимосвязанных аппаратно-программных средств, предназначенных для ввода информации

Б) совокупность взаимосвязанных аппаратно-программных средств, предназначенных для автоматизации обработки информации

38. Требования к АРМ:

А) своевременное удовлетворение информационных потребностей пользователя

Б) минимальное время ответа на запросы пользователя

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

Г) надежность и простота обслуживания

Д) невозможность работы в составе вычислительной сети

39. Компоненты глобальной информационной сети Интернет:

А) аппаратный

Б) программный

В) информационный

Г) кадровый

40. Аппаратный компонент Интернета представлен:

В) представлен сетевыми документами, то есть документами, хранящимися на компьютерах, подключенных к сети

41. Программный компонент Интернета представлен:

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

Б) компьютерами самых разных моделей и систем, а так же линиями связи любой физической природы

В) сетевыми документами, то есть документами, хранящимися на компьютерах,подключенных к сети

42. Информационный компонент Интернета представлен:

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

Б) компьютерами самых разных моделей и систем, а так же линиями связи любой физической природы

В) сетевыми документами, то есть документами, хранящимися на компьютерах, подключенных к сети

©2015-2019 сайт
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-26

3.2. Основные функции и виды операционных систем

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

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

Основными функциями ОС являются следующие:

    запуск программ и контроль за их прохождением;

    управление оперативной памятью;

    управление устройствами ввода и вывода;

    управление внешней памятью;

    управление взаимодействием одновременно работающих задач;

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

Операционная система обычно состоит из управляющей части и набора системных программ (обслуживающая часть).

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

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

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

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

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

New Page 1

Теория операционных систем. Урок 1 . Назначение и функции операционной системы (ОС).

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

Функции операционной системы:

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

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

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

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

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

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

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

Разберем классификацию операционных систем и их функциональное назначение более подробно.

Операционные системы для автономного компьютера.

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

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

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

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

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

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

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

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

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

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

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

  • разрешение конфликтов между процессами.

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

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

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

Часто в информационное описание процесса включатся вспомогательные данные, характеризующие историю пребывания процесса в системе. Это может быть, например, время, которое процесс потратил, к примеру, на вычисления, а какую на операции ввода/вывода. Также у процесса может быть задан статус, привилегия и так далее.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Работа с сетью.

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

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

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

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

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


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

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

Дополнительные функции:

1) параллельной или псевдопараллельное выполнение задач (многозадачность);

7) многопользовательский режим работы и разграничение прав доступа;


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

Монопольные, которые могут использоваться только одной программой (печать, МЛ);

Разделяемые, которые допускают их совместное использование одновременно несколькими процессами (НМД, ОП).

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

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

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

Однозадачные (например, MS-DOS, MSX) и

Многозадачные (OC EC, OS/2, UNIX, Windows 95).

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

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

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

Однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);

Многопользовательские (UNIX, Windows NT).

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

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

вытесняющая многозадачность (Windows NT, OS/2, UNIX).

невытесняющая многозадачность (NetWare, Windows 3.x);

Поддержка многонитевости. Важным свойством операционных систем является возможность распараллеливания вычислений в рамках одной задачи. Многонитевая ОС разделяет процессорное время не между задачами, а между их отдельными ветвями (нитями).

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

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


  1. Определение операционной системы. Место ОС в программном обеспечении вычислительных систем
Существуют две группы отделений ОС:

1) ОС - набор программ, управляющих оборудованием;

2) ОС - набор программ, управляющих други программами.

Обе они имеют свой точный технический смысл.

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

ОС - это комплекс программ, связывающие прикладное ПО с физическими устройствами.

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

1) обслуживание пользователя;

2) обслуживание самой ОС.

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


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

  1. Место ОС в вычислительной системе
В логической структуре вычислительной системы ОС занимает положение между устройствами с их микроархитектурой, машинном языком и возможно собственными (встроенными) микропрограммами с одной стороны и прикладными программами с другой.

Основные функции, выполняемые ОС:

1) выполнение программ по запросу (ввод/вывод данных, запуск и остановка других программ, выделение и освобождение дополнительной памяти);

2) загрузки программ в оперативную память и их выполнение;

3) стандартизованный доступ к периферийным устройствам (устройства ввода/вывода);

4) управление оперативной памятью (распределение между процессами, организация виртуальной памяти);

5) управление доступом к данным на энергонезависимых носителях, организованным в той или иной файловой системе;

6) обеспечение пользовательского интерфейса;

7) сохранение информации об ошибках системы.

Дополнительные функции:

1) паралллельной или псевдопараллельное выполнение задач (многозадачность);

2) эффективное распределение ресурсов вычислительной системы между процессами;

3) разграничение доступа различных процессов к ресурсам;

4) организация надежных вычислений, основанная на разграничении доступа к ресурсам;

5) взаимодействие между процессорами, обмен данными, взаимная синхронизация;

6) защита самой системы, а также пользовательских данных и программ от действий пользователей или приложений;

7) многопользовательский режим работы и разграничение прав доступа
7)

Компоненты операционной системы:

1) загрузчик

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

Объекты ядра ОС:

Процессы

События

Семафоры

Мьютексы

Файлы, проецируемые в память.

3) командный процессор (интерпретатор)

4) Драйверы устройств

5) интерфейс
8)

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

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

Основные идеи

ОС как расширенная машина

Использование большинства компьютеров на уровне машинного языка затруднительно. Особенно это касается ввода и вывода. Например, для организации чтит блока данных с диска может использоваться 16 различных команд, в каждой из которых требуется порядка 15 параметров, таких как: номер блока на диске, номер сектора на дорожке и так далее. Когда выполнение операций с диском завершается, контролер возвращает 23 значения, отражающих наличие и типы ошибок, которые очевидно надо анализировать.

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

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

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

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

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

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

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

Пакетный режим

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

[править]Разделение времени и многозадачность

Уже пакетный режим в своём развитом варианте требует разделения процессорного времени между выполнением нескольких программ.

Необходимость в разделении времени (многозадачности, мультипрограммировании) проявилась ещё сильнее при распространении в качестве устройств ввода-вывода телетайпов (а позднее, терминалов с электронно-лучевыми дисплеями) (1960-е годы). Поскольку скорость клавиатурного ввода (и даже чтения с экрана) данных оператором много ниже, чем скорость обработки этих данных компьютером, использование компьютера в «монопольном» режиме (с одним оператором) могло привести к простою дорогостоящих вычислительных ресурсов.

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

[править]Разделение полномочий

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

Реализация разделения полномочий в операционных системах была поддержана разработчиками процессоров, предложивших архитектуры с двумя режимами работы процессора - «реальным» (в котором исполняемой программе доступно всё адресное пространство компьютера) и «защищённым» (в котором доступность адресного пространства ограничена диапазоном, выделенном при запуске программы на исполнение).

[править]Реальный масштаб времени

Применение универсальных компьютеров для управления производственными процессами потребовало реализации «реального масштаба времени» («реального времени») - синхронизации исполнения программ с внешними физическими процессами.

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

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

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

Ресурсы подразделяют на:

1) cистемные - низкоуровневые, которыми управляет сама операционная система. Время работы процессора, оперативная память, память на постоянных носителях, возможностиразнообразных внешних устройств и время их работы - все это система должна предоставлять пользователям и этим должна управлять.

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

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

1) pазделяемыми - когда несколько процессов могут их использовать одновременно (в один и тот же момент времени) или параллельно (в течение некоторого интервала времени процессы используют ресурс попременно)

2) неделимыми.
10)

Прежде всегонеободимо уяснить смысл термина операция или операционная. В теории управления под операцией понимают определенное управляющее воздействие, и мы вправе понимать под термином операционная система - управляющая система или управлемая система.

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

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

Не знаю,надо или нет,но есть такой раздел "Операционная среда. Прикладная среда"

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


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

  1. Поток. Контекст. Волокна
Понятию «поток» соответствует последовательный переход процессора от одной команды программы к другой. ОС распределяет процессорное время между потоками. Существуют Однопоточные и многопоточные ОС.

Сетевое обеспечение

Распределенная система – набор процессоров, которые не распределяют память или каждый процессор имеет свою локальную память. Процессоры в распределённой системе соединены посредством компьютерной сети и обеспечивают пользователям доступ к различным системным ресурсам, позволяющим увеличить скорость вычислений, объем доступной информации, повысить надежность.

Командный интерфейс системы

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

Создание и управление процессов;

Управление вводом/выводом;

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

Управление основной памятью;

Доступ к файловой системе;

Поддержку работы сети.

Программа, которая вводит и интерпретирует команды управления, в различных системах имеет разные названия:

Интерпретатор управляющих карт;

Процессор команд консолей;

-shell Unix ).

Функцией команды является прием и выполнение введенного утверждения.

1. Функции операционных систем

2. Система прерываний

3. Защита памяти.

4. Виртуа́льная па́мять

5. Управление данными

6. Фа́йловая систе́ма

7.

8. Утили́та

9. Дра́йвер

10. Технология Plug-and-Play

11. Мультимедиа

Функции операционных систем

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

− обеспечивать загрузку прикладных программ в память и их исполнение,

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

− обеспечивать работу с устройствами долговременной памяти, такими как магнитные диски, оптические диски, флэш-память и т. д.,

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

− предоставлять некоторый пользовательский интерфейс (слово некоторый здесь сказано не случайно - часть систем ограничивается командной строкой, в то время как другие на 90% состоят из интерфейсной подсистемы).

Существуют ОС, функции которых этим и исчерпываются. Одна из хорошо известных систем такого типа - дисковая операционная система MS DOS.

Более развитые ОС предоставляют также следующие возможности:

− параллельное (или псевдопараллельное, если машина имеет только один процессор) исполнение нескольких задач,

− организацию взаимодействия задач друг с другом,

− организацию межмашинного взаимодействия и разделения ресурсов,

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

− аутентификацию (проверку того, что пользователь является тем, за кого он себя выдает), авторизацию (проверка, что тот, за кого себя выдает пользователь, имеет право выполнять ту или иную операцию) и другие средства обеспечения безопасности.

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

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

Можно считать, что центральный процессор переключает свое внимание с устройства на устройство и с функции на функцию. На что именно обращено внимание ЦП в каждый данный момент, определяется выполняемой им программой.

Во время работы в ЦП поступает (и вырабатывается в нем самом) большое количество различных сигналов. Сигналы, которые выполняемая в ЦП программа способна воспринять, обработать и учесть, составляют поле зрения ЦП или другими словами – входят в зону его внимания.

Для того чтобы ЦП, выполняя свою работу, имел возможность реагировать на события, происходящие вне его зоны внимания, наступления которых он “не ожидает”, существует система прерываний ЭВМ.

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

Механизм прерывания обеспечивается соответствующими аппаратно-программными средствами компьютера.

Любая особая ситуация, вызывающая прерывание, сопровождается сигналом, называемым запросом прерывания (ЗП). Запросы прерываний от внешних устройств поступают в процессор по специальным линиям, а запросы, возникающие в процессе выполнения программы, поступают непосредственно изнутри микропроцессора. Механизмы обработки прерываний обоих типов схожи. Рассмотрим функционирование компьютера при появлении сигнала запроса прерывания, опираясь в основном на обработку аппаратных прерываний (рис. 1.3.1).

Рис. 1.3.1. Выполнение прерывания в компьютере: tр - время реакции процессора на запрос прерывания; tс - время сохранения состояния прерываемой программы и вызова обработчика прерывания; tв - время восстановления прерванной программы

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

Время реакции – это время между появлением сигнала запроса прерывания и началом выполнения прерывающей программы (обработчика прерывания) в том случае, если данное прерывание разрешено к обслуживанию.

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

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

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

Время реакции определяется для запроса с наивысшим приоритетом.

Глубина прерывания – максимальное число программ, которые могут прерывать друг друга. Глубина прерывания обычно совпадает с числом уровней приоритетов, распознаваемых системой прерываний. Работа системы прерываний при различной глубине прерываний (n) представлена на рис. 1.3.2. Здесь предполагается, что с увеличением номера запроса прерывания увеличивается его приоритет.

Рис. 1.3.2. Работа системы прерываний при различной глубине прерываний

Без учета времени реакции, а также времени запоминания и времени восстановления:

Прерывания делятся на аппаратные и программные.

Аппаратные прерывания используются для организации взаимодействия с внешними устройствами. Запросы аппаратных прерываний поступают на специальные входы микропроцессора. Они бывают:

· маскируемые, которые могут быть замаскированы программными средствами компьютера;

· немаскируемые, запрос от которых таким образом замаскирован быть не может.

Программные прерывания вызываются следующими ситуациями:

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

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

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

При поступлении запроса прерывания компьютер выполняет следующую последовательность действий:

· определение наиболее приоритетного незамаскированного запроса на прерывание (если одновременно поступило несколько запросов);

· определение типа выбранного запроса;

· сохранение текущего состояния счетчика команд и регистра флагов;

· определение адреса обработчика прерывания по типу прерывания и передача управления первой команде этого обработчика;

· выполнение программы - обработчика прерывания;

· восстановление сохраненных значений счетчика команд и регистра флагов прерванной программы;

· продолжение выполнения прерванной программы.

Этапы 1-4 выполняются аппаратными средствами ЭВМ автоматически при появлении запроса прерывания. Этап 6 также выполняется аппаратно по команде возврата из обработчика прерывания.

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

Распознавание наличия сигналов запроса прерывания и определение наиболее приоритетного из них может проводиться различными методами. Рассмотрим один из них.

Цепочечная однотактная система определения приоритета запроса прерывания

На рис. 1.3.3 приведена схема, обеспечивающая получение номера наиболее приоритетного запроса прерывания из присутствующих в компьютере на момент подачи сигнала опроса ("дейзи-цепочка")

Данная схема используется для анализа запросов аппаратных прерываний. Приоритет запросов прерываний (ЗПi) уменьшается с уменьшением номера запроса. В тот момент, когда компьютер должен определить наличие и приоритет внешнего аппаратного прерывания (обычно после окончания выполнения каждой команды), процессор выдает сигнал опроса. Если на входе ЗП3 присутствует сигнал высокого уровня (есть запрос), то на элементе 11 формируется общий сигнал наличия запроса прерывания и дальнейшее прохождение сигнала опроса блокируется. Если ЗП3=0, то анализируется сигнал ЗП2 и так далее. На шифраторе (элемент 12) формируется номер поступившего запроса прерывания.

Этот номер передается в процессор лишь при наличии общего сигнала запроса прерывания.

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

Рис. 1.3.3. Схема определения номера наиболее приоритетного запроса прерывания

Микропроцессоры типа х86 имеют два входа запросов внешних аппаратных прерываний:

· NMI - немаскируемое прерывание, используется обычно для запросов прерываний по нарушению питания;

· INT - маскируемое прерывание, запрос от которого можно программным образом замаскировать путем сброса флага IF в регистре флагов.

Рис. 1.3.4. Структура контроллера приоритетных прерываний

Единственный вход запроса маскируемых прерываний микропроцессора не позволяет подключить к нему напрямую сигналы запросов от большого числа различных внешних устройств, которые входят в состав современного компьютера: таймера, клавиатуры, "мыши", принтера, сетевой карты и т.д. Для их подключения к одному входу INT микропроцессора используется контроллер приоритетных прерываний (рис. 1.3.4). Его функции:

· восприятие и фиксация запросов прерываний от внешних устройств;

· определение незамаскированных запросов среди поступивших запросов;

· проведение арбитража: выделение наиболее приоритетного запроса из незамаскированных запросов в соответствии с установленным механизмом назначения приоритетов;

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

· передача в микропроцессор по шине данных типа прерывания, выбранного в процессе арбитража, для запуска соответствующей программы - обработчика прерывания; это действие выполняется по сигналу разрешения прерывания INTA от микропроцессора, который выдается в случае, если прерывания в регистре флагов микропроцессора не замаскированы (IF=1).

Переход к соответствующему обработчику прерывания осуществляется (в реальном режиме работы микропроцессора) посредством таблицы векторов прерываний. Эта таблица (рис. 1.3.5) располагается в самых младших адресах оперативной памяти, имеет объем 1 Кбайт и содержит значения сегментного регистра команд (CS) и указателя команд (IP) для 256 обработчиков прерываний.

Рис. 1.3.5. Структура таблицы векторов прерываний

Обращение к элементам таблицы осуществляется по 8-разрядному коду - типу прерывания (табл. 1.3.1).

Таблица 1.3.1.

Различные источники задают тип прерывания по-разному:

· программные прерывания вводят его изнутри процессора или содержат его в номере команды INT n;

· аппаратные маскируемые прерывания вводят его от контроллера приоритетных прерываний по шине данных;

· немаскируемому аппаратному прерыванию назначен тип 2.

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

Супервизор прерываний выполняет следующие действия:

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

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

Устанавливает необходимый режим обработки пребывания;

Передает управление подпрограмме обработки прерывания.

После выполнения подпрограммы обработки прерывания управление передается супервизору в модуль управления диспетчеризацией задач. Диспетчер задач производит:

Выбор готовой к выполнению задачи (в соответствии с дисциплиной обслуживания)

Восстановление контекста задачи;

Установка прежнего режима работы системы прерываний;

Передачу управления выбранной задаче.

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

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

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

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

Защита памяти.

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

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

2. задается одно из следующих обращений к области памяти собственной программы:

· разрешается доступ к данному блоку, как для записи, так и для считывания;

· разрешается только считывание;

· разрешается обращение любого вида по адресу взятого только из счетчика команд;

· разрешается обращение по адресу из любого реестра кроме счетчика команд.

Если нарушается защита памяти, использование программы приостанавливается и вырабатывается запрос прерывания по нарушению защиты памяти.

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

Виртуа́льная па́мять

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

В настоящее время эта технология имеет аппаратную поддержку на всех современных процессорах.

В случае расположения данных на внешних запоминающих устройствах память может быть представлена, например, специальным разделом на жёстком диске (partition) или отдельным файлом на обычном разделе диска.

Также существует термин swap (англ. swap, /swɔp/) также означающий виртуальную память (точнее способ её представления), или же означает подкачку данных с диска.

Применение механизма виртуальной памяти позволяет:

· упростить адресацию памяти клиентским программным обеспечением;

· рационально управлять оперативной памятью компьютера (хранить в ней только активно используемые области памяти);

· изолировать процессы друг от друга (процесс полагает, что монопольно владеет всей памятью).

Управление данными

Управление данными (англ. data management) - процесс, связанный с накоплением, организацией, запоминанием, обновлением, хранением данных и поиском информации.

К управлению да́нными относятся:

§ Анализ данных

§ Моделирование данных

§ Управление базами данных

§ Работа с хранилищами данных

§ Извлечение, преобразование и загрузка данных

§ Добыча данных

§ Обеспечение качества данных

§ Защита данных

§ Управление метаданными (репозиториями данных)

· Архитектура данных

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

В задачах поиска предполагается, что все данные хранятся в памяти с определенной идентификацией и, говоря о доступе, имеют в виду прежде всего доступ к данным (называемым ключами), однозначно идентифицирующим связанные с ними совокупности данных.

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

Существуют два класса методов, реализующих доступ к данным по ключу:

· методы поиска по дереву,

· методы хеширования.

Деревом называется конечное множество, состоящее из одного или более элементов, называемых узлами, таких, что:

· между узлами имеет место отношение типа "исходный-порожденный";

· есть только один узел, не имеющий исходного. Он называется корнем;

· все узлы за исключением корня имеют только один исходный; каждый узел может иметь несколько порожденных;

· отношение "исходный-порожденный" действует только в одном направлении, т.е. ни один потомок некоторого узла не может стать для него предком.

Хеширование используется тогда, когда все множество ключей заранее известно и на время обработки может быть размещено в оперативной памяти. В этом случае строится специальная функция, однозначно отображающая множество ключей на множество указателей, называемая хеш-функцией (от английского "to hash" - резать, измельчать). Имея такую функцию можно вычислить адрес записи в файле по заданному ключу поиска. В общем случае ключевые данные, используемые для определения адреса записи организуются в виде таблицы, называемой хеш-таблицей.

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

Фа́йловая систе́ма

Фа́йловая систе́ма (англ. file system) - регламент, определяющий способ организации, хранения и именования данных на носителях информации. Она определяет формат физического хранения информации, которую принято группировать в виде файлов. Конкретная файловая система определяет размер имени файла, максимальный возможный размер файла, набор атрибутов файла. Некоторые файловые системы предоставляют сервисные возможности, например, разграничение доступа или шифрование файлов.

Файловая система связывает носитель информации, с одной стороны, и API для доступа к файлам - с другой. Когда прикладная программа обращается к файлу, она не имеет никакого представления о том, каким образом расположена информация в конкретном файле, так же, как и на каком физическом типе носителя (CD, жёстком диске, магнитной ленте или блоке флеш-памяти) он записан. Всё, что знает программа - это имя файла, его размер и атрибуты. Эти данные она получает от драйвера файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жёстком диске).

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

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

Иерархия каталогов

Практически всегда файлы на дисках объединяются в каталоги.

В простейшем случае все файлы на данном диске хранятся в одном каталоге. Такая одноуровневая схема использовалась в CP/M и первых версиях MS-DOS. Иерархическая файловая система со вложенными друг в друга каталогами впервые появилась в UNIX.

Каталоги на разных дисках могут образовывать несколько отдельных деревьев, как в DOS/Windows, или же объединяться в одно дерево, общее для всех дисков, как в UNIX-подобных системах.

На самом деле, в DOS/Windows системах также, как и в UNIX-подобных существует один корневой каталог со вложенными директориями, имеющими названия «c:», «d:» и т. д. В эти каталоги монтируются разделы жёсткого диска. То есть, c:\ - это всего лишь ссылка на file:///c:/. Однако, в отличие от UNIX-подобных файловых систем, в Windows запись в корневой каталог запрещена, как и просмотр его содержимого.

В UNIX существует только один корневой каталог, а все остальные файлы и каталоги вложены в него. Чтобы получить доступ к файлам и каталогам на каком-нибудь диске, необходимо примонтировать этот диск командой mount. Например, чтобы открыть файлы на CD, нужно, говоря простым языком, сказать операционной системе: «возьми файловую систему на этом компакт-диске и покажи её в каталоге /mnt/cdrom». Все файлы и каталоги, находящиеся на CD, появятся в этом каталоге /mnt/cdrom, который называется точкой монтирования (англ. mount point). В большинстве UNIX-подобных систем съёмные диски (дискеты и CD), флеш-накопители и другие внешние устройства хранения данных монтируют в каталог /mnt, /mount или /media. Unix и UNIX-подобные операционные системы также позволяет автоматически монтировать диски при загрузке операционной системы.

Классификация файловых систем

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

Для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2 и др. Поскольку доступ к дискам в разы медленнее, чем доступ к оперативной памяти, для прироста производительности во многих файловых системах применяется асинхронная запись изменений на диск. Для этого применяется либо журналирование, например в ext3, ReiserFS, JFS, NTFS, XFS, либо механизм soft updates и др. Журналирование широко распространено в Linux, применяется в NTFS. Soft updates - в BSD системах. Reiser4 не применяет журналирование, все операции в ней атомарны.

Для носителей с последовательным доступом (например, магнитные ленты): QIC и др.

Для оптических носителей - CD и DVD: ISO9660, ISO9690, HFS, UDF и др.

Виртуальные файловые системы: AEFS и др.

Сетевые файловые системы: NFS, CIFS, SSHFS, GmailFS и др.

Для флэш-памяти: YAFFS, ExtremeFFS.

Немного выпадают из общей классификации специализированные файловые системы: ZFS (собственно файловой системой является только часть ZFS), VMFS (т.н. кластерная файловая система, которая предназначена для хранения других файловых систем) и др.

Задачи файловой системы

Основные функции любой файловой системы нацелены на решение следующих задач:

· именование файлов;

· программный интерфейс работы с файлами для приложений;

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

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

В многопользовательских системах появляется еще одна задача: защита файлов одного пользователя от несанкционированного доступа другого пользователя, а также обеспечение совместной работы с файлами, к примеру при открытии файла одним из пользователей, для других этот же файл временно будет доступен в режиме «только чтение».

Графи́ческий интерфе́йс по́льзователя

Графи́ческий интерфе́йс по́льзователя (ГИП), графический пользовательский интерфейс (ГПИ) (англ. Graphical user interface, GUI) - разновидность пользовательского интерфейса, в котором элементы интерфейса (меню, кнопки, значки, списки и тп.), представленные пользователю на дисплее, исполнены в виде графических изображений.

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

История

Впервые концепция ГИП была предложена учеными из исследовательской лаборатории Xerox PARC в 1970-х.

В 1973 году в лаборатории Xerox PARC собрали молодых людей, недовольных политикой США (войной во Вьетнаме) и дали свободу исследований. В результате на свет появляется концепция графического интерфейса WIMP (Windows, Icons, Menus, Point-n-Click). В рамках этой концепции создаётся компьютер Alto.

В 1979 году Three Rivers Computer Company выпускает рабочую станцию PERQ, похожую по принципам построения на Alto. В 1981 Xerox выпускает продолжение Alto - Star.

Коммерческое воплощение концепция ГИП получила в продуктах корпорации Apple Computer. В операционной системе AmigaOS ГИП с многозадачностью был использован в 1985 году. В настоящее время ГИП является стандартной составляющей большинства доступных на рынке операционных систем и приложений.

Примеры систем, использующих ГИП: Mac OS, Solaris, GNU/Linux, Microsoft Windows, NeXTSTEP, OS/2, BeOS.

Классификация

Можно выделить следующие виды ГИП:[источник не указан 121 день]

· простой: типовые экранные формы и стандартные элементы интерфейса, обеспечиваемые самой подсистемой ГИП;

· истинно-графический, двумерный: нестандартные элементы интерфейса и оригинальные метафоры, реализованные собственными средствами приложения или сторонней библиотекой;

· трёхмерный: на данный момент слабо классифицирован.

Одним из требований к хорошему графическому интерфейсу программной системы является концепция «делай то, что я имею ввиду» или DWIM (англ. Do What I Mean). DWIM требует, чтобы система работала предсказуемо, чтобы пользователь заранее интуитивно понимал, какое действие выполнит программа после получения его команды.

Утили́та

Утили́та (англ. utility или tool) - компьютерная программа, расширяющая стандартные возможности оборудования и операционных систем, выполняющая узкий круг специфических задач.

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

Утилиты зачастую входят в состав операционных систем или идут в комплекте со специализированным оборудованием.




Top