№64 Назначение и основные функции операционных систем. Основные
понятия – процесс, файл, пользователь
Схема, иллюстрирующая
место операционной системы в многоуровневой структуре компьютера
Операционная система, сокр. ОС (англ. operating system) — комплекс
управляющих и обрабатывающих программ, которые, с одной стороны,
выступают как интерфейс между устройствами вычислительной системы и
прикладными программами, а с другой — предназначены для управления
устройствами, управления вычислительными процессами, эффективного
распределениявычислительных ресурсов между вычислительными процессами и
организации надёжных вычислений. Это определение применимо к
большинству современных ОС общего назначения.
В логической структуре типичной вычислительной системы ОС занимает
положение между устройствами с их микроархитектурой,машинным языком и,
возможно, собственными (встроенными) микропрограммами — с одной стороны
— и прикладными программами с другой.
Разработчикам программного обеспечения ОС позволяет абстрагироваться от
деталей реализации и функционирования устройств, предоставляя
минимально необходимый набор функций (см. интерфейс программирования
приложений).
В большинстве вычислительных систем ОС являются основной, наиболее
важной (а иногда единственной) частью системного ПО.
Функции операционных систем
Основные функции:
*
Выполнение по запросу программ тех
достаточно элементарных (низкоуровневых) действий, которые являются
общими для большинства программ и часто встречаются почти во всех
программах (ввод и вывод данных, запуск и остановка других программ,
выделение и освобождение дополнительной памяти и др.).
*
Загрузка программ в оперативную память и
их выполнение.
*
Стандартизованный доступ к периферийным
устройствам (устройства ввода-вывода).
*
Управление оперативной памятью
(распределение между процессами, организация виртуальной памяти).
*
Управление доступом к данным на
энергонезависимых носителях (таких как жёсткий диск, оптические диски и
др.), организованным в той или иной файловой системе.
*
Обеспечение пользовательского интерфейса.
*
Сетевые операции, поддержка стека
сетевых протоколов.
Дополнительные функции:
*
Параллельное или псевдопараллельное
выполнение задач (многозадачность).
*
Эффективное распределение ресурсов
вычислительной системы между процессами.
*
Разграничение доступа различных
процессов к ресурсам.
*
Организация надёжных вычислений
(невозможности одного вычислительного процесса намеренно или по ошибке
повлиять на вычисления в другом процессе), основана на разграничении
доступа к ресурсам.
*
Взаимодействие между процессами: обмен
данными, взаимная синхронизация.
*
Защита самой системы, а также
пользовательских данных и программ от действий пользователей
(злонамеренных или по незнанию) или приложений.
*
Многопользовательский режим работы и
разграничение прав доступа (см. аутентификация, авторизация).
Понятие операционной системы
Существуют две группы определений ОС: «набор программ, управляющих
оборудованием» и «набор программ, управляющих другими программами». Обе
они имеют свой точный технический смысл, который, однако, становится
ясен только при более детальном рассмотрении вопроса о том, зачем
вообще нужны ОС.
Есть приложения вычислительной техники, для которых ОС излишни.
Например, встроенные микрокомпьютеры содержатся сегодня во многих
бытовых приборах, автомобилях (иногда по десятку в каждом), сотовых
телефонах и т. п. Зачастую такой компьютер постоянно исполняет лишь
одну программу, запускающуюся по включении. И простые игровые приставки
— также представляющие собой специализированные микрокомпьютеры — могут
обходиться без ОС, запуская при включении программу, записанную на
вставленном в устройство «картридже» иликомпакт-диске. Тем не менее,
некоторые микрокомпьютеры и игровые приставки всё же работают под
управлением особых собственных ОС. В большинстве случаев это
UNIX-подобные системы (последнее особенно верно в отношении
программируемого коммутационного оборудования: межсетевых экранов,
маршрутизаторов).
ОС нужны, если:
*
вычислительная система используется для
различных задач, причём программы, исполняющие эти задачи, нуждаются в
сохранении данных и обмене ими. Из этого следует необходимость
универсального механизма сохранения данных; в подавляющем большинстве
случаев ОС отвечает на неё реализацией файловой системы. Современные
ОС, кроме того, предоставляют возможность непосредственно «связать»
вывод одной программы со вводом другой, минуя относительно медленные
дисковые операции;
*
различные программы нуждаются в
выполнении одних и тех же рутинных действий. Например, простой ввод
символа с клавиатуры и отображение его на экране может потребовать
исполнения сотен машинных команд, а дисковая операция — тысяч. Чтобы не
программировать их каждый раз заново, ОС предоставляют системные
библиотеки часто используемых подпрограмм (функций);
*
между программами и пользователями
системы необходимо распределять полномочия, чтобы пользователи могли
защищать свои данные от несанкционированного доступа, а возможная
ошибка в программе не вызывала тотальных неприятностей;
*
необходима возможность имитации
«одновременного» исполнения нескольких программ на одном компьютере
(даже содержащем лишь один процессор), осуществляемой с помощью приёма,
известного как «разделение времени». При этом специальный компонент,
называемый планировщиком, делит процессорное время на короткие отрезки
и предоставляет их поочерёдно различным исполняющимся программам
(процессам);
*
наконец, оператор должен иметь
возможность так или иначе управлять процессами выполнения отдельных
программ. Для этого служат операционные среды, одна из которых —
оболочка и набор стандартных утилит — является частью ОС (прочие,
такие, как графическая операционная среда, образуют независимые от ОС
прикладные платформы).
Таким образом, современные универсальные ОС можно охарактеризовать,
прежде всего, как
*
использующие файловые системы (с
универсальным механизмом доступа к данным),
*
многопользовательские (с разделением
полномочий),
*
многозадачные (с разделением времени).
Многозадачность и распределение полномочий требуют определённой
иерархии привилегий компонентов самой ОС. В составе ОС различают три
группы компонентов:
*
ядро, содержащее планировщик; драйверы
устройств, непосредственно управляющие оборудованием; сетевая
подсистема, файловая система;
*
системные библиотеки;
*
оболочка с утилитами.
Большинство программ, как системных (входящих в ОС), так и прикладных,
исполняются в непривилегированном («пользовательском») режиме работы
процессора и получают доступ к оборудованию (и, при необходимости, к
другим ресурсам ядра, а также ресурсам иных программ) только
посредством системных вызовов. Ядро исполняется в привилегированном
режиме: именно в этом смысле говорят, что ОС (точнее, её ядро)
управляет оборудованием.
В определении состава ОС значение имеет критерий операциональной
целостности (замкнутости): система должна позволять полноценно
использовать (включая модификацию) свои компоненты. Поэтому в полный
состав ОС включают и набор инструментальных средств (от текстовых
редакторов до компиляторов, отладчиков и компоновщиков).
Ядро операционной системы
Ядро — центральная часть операционной системы, управляющая выполнением
процессов, ресурсами вычислительной системы и предоставляющая процессам
координированный доступ к этим ресурсам. Основными ресурсами являются
процессорное время, память и устройства ввода-вывода. Доступ к файловой
системе и сетевое взаимодействие также могут быть реализованы на уровне
ядра.
Как основополагающий элемент ОС, ядро представляет собой наиболее
низкий уровень абстракции для доступа приложений к ресурсам
вычислительной системы, необходимым для их работы. Как правило, ядро
предоставляет такой доступ исполняемым процессам соответствующих
приложений за счёт использования механизмов межпроцессного
взаимодействия и обращения приложений к системным вызовам ОС.
Описанная задача может различаться в зависимости от типа архитектуры
ядра и способа её реализации.
Объекты ядра ОС:
*
Процессы
*
Файлы
*
События
*
Потоки
*
Семафоры
*
Мьютексы
*
Каналы
*
Файлы, проецируемые в память
Процесс (информатика)
[править]
Материал из Википедии — свободной энциклопедии
Процесс — выполнение пассивных инструкций компьютерной программы на
процессоре ЭВМ. Стандарт ISO 9000:2000 Definitions определяет процесс
как совокупность взаимосвязанных и взаимодействующих действий,
преобразующих входящие данные в исходящие.
Компьютерная программа сама по себе это только пассивная совокупность
инструкций, в то время как процесс — это непосредственное выполнение
этих инструкций.
Часто процессом называют выполняющуюся программу и все её элементы:
адресное пространство, глобальные переменные, регистры, стек, открытые
файлы и т. д.
[править]Создание процесса
Простейшей операционной системе (например, внутри холодильника или
автомата для продажи газированной воды) не требуется создание новых
процессов, поскольку внутри них работает одна-единственная программа,
запускаемая во время включения устройства. В более сложных системах
надо создавать новые процессы. Обычно они создаются:
1.
При запуске ОС,
2.
При появлении запроса на создание
процесса — происходит в случае, если работающий процесс создает новый
процесс.
[править]Завершение процесса
Завершение процесса происходит как:
1.
Обычный выход
2.
Выход по исключению или ошибке
Процесс (информатика)
Процесс — выполнение пассивных инструкций компьютерной программы на
процессоре ЭВМ. Стандарт ISO 9000:2000 Definitions определяет процесс
как совокупность взаимосвязанных и взаимодействующих действий,
преобразующих входящие данные в исходящие.
Компьютерная программа сама по себе это только пассивная совокупность
инструкций, в то время как процесс — это непосредственное выполнение
этих инструкций.
Часто процессом называют выполняющуюся программу и все её элементы:
адресное пространство, глобальные переменные, регистры, стек, открытые
файлы и т. д.
Создание процесса
Простейшей операционной системе (например, внутри холодильника или
автомата для продажи газированной воды) не требуется создание новых
процессов, поскольку внутри них работает одна-единственная программа,
запускаемая во время включения устройства. В более сложных системах
надо создавать новые процессы. Обычно они создаются:
1.
При запуске ОС,
2.
При появлении запроса на создание
процесса — происходит в случае, если работающий процесс создает новый
процесс.
Завершение процесса
Завершение процесса происходит как:
1.
Обычный выход
2.
Выход по исключению или ошибке
Файл
Материал из Википедии — свободной энциклопедии
Файл (англ. file — папка, скоросшиватель) — концепция в вычислительной
технике: сущность, позволяющая получить доступ к какому-либо ресурсу
вычислительной системы и обладающая рядом признаков:
*
фиксированное имя (последовательность
символов, число или что-то иное, однозначно характеризующее файл);
*
определённое логическое представление и
соответствующие ему операции чтения/записи.
Может быть любой — от последовательности бит до базы
данных с произвольной организацией или любым промежуточным вариантом.
Первому случаю соответствуют операции чтения/записи
потока и/или массива (то есть последовательные или с доступом по
индексу), второму — команды СУБД. Промежуточные варианты — чтение и
разбор всевозможных форматов файлов.
В информатике используется следующее определение: файл — поименованная
совокупность байтов произвольной длины, находящихся на носителе
информации.
В отличие от переменной, файл (в частности, его имя) имеет смысл вне
конкретной программы. Работа с файлами реализуется средствами
операционных систем.
Ресурсами, доступными через файлы, в принципе, может быть что угодно,
представимое в цифровом виде. Чаще всего в их перечень входят:
*
области данных (необязательно на диске);
*
устройства (как физические, так и
виртуальные);
*
потоки данных (в частности, вход или
выход процесса);
*
сетевые ресурсы;
*
объекты операционной системы.
Файлы первого типа исторически возникли первыми и распространены
наиболее широко, поэтому часто «файлом» называют и область данных,
соответствующую имени.
Пользователь — лицо или организация, которое использует действующую
систему для выполнения конкретной функции.[1]
В частности, Пользователь АС — лицо, участвующее в функционировании
автоматизированной системы или использующее результаты её
функционирования.[2]
С точки зрения информационной безопасности, пользователем является
только человек. Программа же, работающая по его заданиям, является уже
субъектом. С её помощью пользователь взаимодействует с абонентской
системой, возможно включённой в сеть, и получает создаваемую ею рабочую
среду. Пользователем является человек, использующий систему либо сеть
для решения стоящих перед ним задач. Его именуют конечным
пользователем. Сведения о пользователе называются профилем пользователя
или учётной записью пользователя.
Самого пользователя, либо систему с которой он работает, также называют
абонентом информационной сети. Учётная запись, разрешающая абоненту
получать доступ к ресурсам, называется абонементом. Для устранения
маскировки и получения права доступа к этим ресурсам пользователю
выдаётся пароль, свёртка (реже — копия) которого хранится в абонентской
системе. На этой основе осуществляется идентификация и аутентификация
пользователя и предоставление разрешения на работу с ресурсами.
Для удобной и эффективной работы создаются языки запросов и интерфейсы
пользователя.
Пользователи получают разнообразные виды услуг, предоставляемые
прикладными службами. По характеру работы различают отдельных
пользователей и рабочие группы.