Автор работы: Пользователь скрыл имя, 23 Апреля 2012 в 14:09, реферат
ОПЕРАЦИОННАЯ СИСТЕМА (ОС) — 1) система оперативного получения, фиксации и обработки учетно-бухгалтерской информации о деятельности компании и ее подразделений, функционирующая как на документальной основе (получение и обработка документов), так и на основе сообщений, уведомлений, передаваемых через средства связи; 2) программное обеспечение, осуществляющее управление выполнением компьютерных программ, распределением памяти, организацией данных.
Защита
памяти — это избиpaтeльнaя
Таким
образом, функциями ОС по
Способность ОС к «экранированию» сложностей реальной аппаратуры очень ярко проявляется в одной из основных подсистем ОС — файловой системе. Операционная система виртуализирует отдельный набор данных, хранящихся на внешнем накопителе, в виде файла — простой неструктурированной последовательности байтов, имеющей символьное имя. Для удобства работы с данными файлы группируются в каталоги, которые, в свою очередь, образуют группы — каталоги более высокого уровня. Пользователь может с помощью ОС выполнять над файлами и каталогами такие действия, как поиск по имени, удаление, вывод содержимого на внешнее устройство (например, на дисплей), изменение и сохранение содержимого.
Чтобы представить большое количество наборов данных, разбросанных случайным образом по цилиндрам и поверхностям дисков различных типов, в виде хорошо всем знакомой и удобной иерархической структуры файлов и каталогов, операционная система должна решить множество задач. Файловая система ОС выполняет преобразование символьных имен файлов, с которыми работает пользователь или прикладной программист, в физические адреса данных на диске, организует совместный доступ к файлам, защищает их от несанкционированного доступа.
При
выполнении своих функций файловая
система тесно взаимодействует
с подсистемой управления внешними
устройствами, которая по запросам
файловой системы осуществляет передачу
данных между дисками и оперативной
памятью.
Подсистема
управления внешними устройствами, называемая
также подсистемой ввода-
Программа, управляющая конкретной моделью внешнего устройства и учитывающая все его особенности, обычно называется драйвером этого устройства (от английского drive — управлять, вести). Драйвер может управлять единственной моделью устройства, например модемом U-1496E компании ZyXEL, или же группой устройств определенного типа, например любыми Hayes-совместимыми модемами. Для пользователя очень важно, чтобы операционная система включала как можно больше разнообразных драйверов, так как это гарантирует возможность подключения к компьютеру большого числа внешних устройств различных производителей. От наличия подходящих драйверов во многом зависит успех операционной системы на рынке (например, отсутствие многих необходимых драйверов внешних устройств было одной из причин низкой популярности OS/2).
Созданием драйверов устройств занимаются как разработчики конкретной ОС, так и специалисты компаний, выпускающих внешние устройства. Операционная система должна поддерживать хорошо определенный интерфейс между драйверами и остальной частью ОС, чтобы разработчики из компаний-производителей устройств ввода-вывода могли поставлять вместе со своими устройствами драйверы для данной операционной системы.
Прикладные программисты могут пользоваться интерфейсом драйверов при разработке своих программ, но это не очень удобно — такой интерфейс обычно представляет собой низкоуровневые операции, обремененные большим количеством деталей.
Поддержание
высокоуровневого унифицированного интерфейса
прикладного программирования к разнородным
устройствам ввода-вывода является одной
из наиболее важных задач ОС. Со времени
появления ОС UNIX такой унифицированный
интерфейс в большинстве операционных
систем строится на основе концепции файлового
доступа. Эта концепция заключается в
том, что обмен с любым внешним устройством
выглядит как обмен с файлом, имеющим имя
и представляющим собой неструктурированную
последовательность байтов. В качестве
файла может выступать как реальный файл
на диске, так и алфавитно-цифровой терминал,
печатающее устройство или сетевой адаптер.
Здесь мы опять имеем дело со свойством
операционной системы подменять реальную
аппаратуру удобными для пользователя
и программиста абстракциями.
Безопасность
данных вычислительной системы обеспечивается
средствами отказоустойчивости ОС, направленными
на защиту от сбоев и отказов аппаратуры
и ошибок программного обеспечения,
а также средствами защиты от несанкционированного
доступа. В последнем случае ОС защищает
данные от ошибочного или злонамеренного
поведения пользователей системы.
Первым рубежом обороны при защите данных от несанкционированного доступа является процедура логического входа. Операционная система должна убедиться, что в систему пытается войти пользователь, вход которого разрешен администратором. Функции защиты ОС вообще очень тесно связаны с функциями администрирования, так как именно администратор определяет права пользователей при их обращении к разным ресурсам системы — файлам, каталогам, принтерам, сканерам и т. п. Кроме того, администратор ограничивает возможности пользователей в выполнении тех или иных системных действий. Например, пользователю может быть запрещено выполнять процедуру завершения работы ОС, устанавливать системное время, завершать чужие процессы, создавать учетные записи пользователей, изменять права доступа к некоторым каталогам и файлам. Администратор может также урезать возможности пользовательского интерфейса, убрав, например, некоторые пункты из меню операционной системы, выводимого на дисплей пользователя.
Важным средством защиты данных являются функции аудита ОС, заключающиеся в фиксации всех событий, от которых зависит безопасность системы. Например, попытки удачного и неудачного логического входа в систему, операции доступа к некоторым каталогам и файлам, использование принтеров и т. п. Список событий, которые необходимо отслеживать, определяет администратор ОС.
Поддержка отказоустойчивости реализуется операционной системой, как правило, на основе резервирования. Чаще всего в функции ОС входит поддержание нескольких копий данных на разных дисках или разных дисковых накопителях. Резервируются также принтеры и другие устройства ввода-вывода. При отказе одного из избыточных устройств операционная система должна быстро и прозрачным для пользователя образом произвести реконфигурацию системы и продолжить работу с резервным устройством. Особым случаем обеспечения отказоустойчивости является использование нескольких процессоров, то есть мультипроцессирование, когда система продолжает работу при отказе одного из процессоров, хотя и с меньшей производительностью. (Необходимо отметить, что многие ОС использует мультипроцессорную конфигурацию компьютера только для ускорения работы и при отказе одного из процессоров прекращают работу.)
Поддержка
отказоустойчивости также входит в
обязанности системного администратора.
В состав ОС обычно входят утилиты,
позволяющие администратору выполнять
регулярные операции резервного копирования
для обеспечения быстрого восстановления
важных данных.
Прикладные
программисты используют в своих
приложениях обращения к ОС, когда
для выполнения тех или иных действий
им требуется особый статус, которым
обладает только операционная система.
Например, в большинстве современных ОС
все действия, связанные с управлением
аппаратными средствами компьютера, может
выполнять только ОС. Помимо этих функций
прикладной программист может воспользоваться
набором сервисных функций ОС, которые
упрощают написание приложений. Функции
такого типа реализуют универсальные
действия, часто требующиеся в различных
приложениях, такие, например, как обработка
текстовых строк. Эти функции могли бы
быть выполнены и самим приложением, однако
гораздо проще использовать уже готовые,
отлаженные процедуры, включенные в состав
операционной системы. В то же время даже
при наличии в ОС соответствующей функции
программист может реализовать ее самостоятельно
в рамках приложения, если предложенный
операционной системой вариант его не
вполне устраивает.
Возможности
операционной системы доступны прикладному
программисту в виде набора функций,
называющегося интерфейсом
Для разработчиков приложений все особенности конкретной операционной системы представлены особенностями ее API. Поэтому операционные системы с различной внутренней организацией, но с одинаковым набором функций API кажутся им одной и той же ОС, что упрощает стандартизацию операционных систем и обеспечивает переносимость приложений между внутренне различными ОС, соответствующими определенному стандарту на API. Например, следование общим стандартам API UNIX, одним из которых является стандарт Posix, позволяет говорить о некоторой обобщенной операционной системе UNIX, хотя многочисленные версии этой ОС от разных производителей иногда существенно отличаются внутренней организацией.
Приложения выполняют обращения к функциям API с помощью системных вызовов. Способ, которым приложение получает услуги операционной системы, очень похож на вызов подпрограмм. Информация, нужная ОС и состоящая обычно из идентификатора команды и данных, помещается в определенное место памяти, в регистры и/или стек. Затем управление передается операционной системе, которая выполняет требуемую функцию и возвращает результаты через память, регистры или стеки. Если операция проведена неуспешно, то результат включает индикацию ошибки.
Способ
реализации системных вызовов зависит
от структурной организации ОС, которая,
в свою очередь, тесно связана
с особенностями аппаратной платформы.
Кроме того, он зависит от языка
программирования. При использовании
ассемблера программист устанавливает
значения регистров и/или областей памяти,
а затем выполняет специальную инструкцию
вызова сервиса или программного прерывания
для обращения к некоторой функции ОС.
При использовании языков высокого уровня
функции ОС вызываются тем же способом,
что и написанные пользователем подпрограммы,
требуя задания определенных аргументов
в определенном порядке.
Операционная система должна обеспечивать удобный интерфейс не только для прикладных программ, но и для человека, работающего за терминалом. Этот человек может быть конечным пользователем, администратором ОС или программистом.
В ранних операционных системах пакетного режима функции пользовательского интерфейса были сведены к минимуму и не требовали наличия терминала. Команды языка управления заданиями набивались на перфокарты, а результаты выводились на печатающее устройство.
Современные ОС поддерживают развитые функции пользовательского интерфейса для интерактивной работы за терминалами двух типов: алфавитно-цифровыми и графическими.
При работе за алфавитно-цифровым терминалом пользователь имеет в своем распоряжении систему команд, мощность который отражает функциональные возможности данной ОС. Обычно командный язык ОС позволяет запускать и останавливать приложения, выполнять различные операции с файлами и каталогами, получать информацию о состоянии ОС (количество работающих процессов, объем свободного пространства на дисках и т. п.), администрировать систему. Команды могут вводиться не только в интерактивном режиме с терминала, но и считываться из так называемого командного файла, содержащего некоторую последовательность команд.
Программный модуль ОС, ответственный за чтение отдельных команд или же последовательности команд из командного файла, иногда называют командным интерпретатором.
Ввод
команды может быть упрощен, если
операционная система поддерживает
графический пользовательский интерфейс.
В этом случае пользователь для выполнения
нужного действия с помощью мыши
выбирает на экране нужный пункт меню
или графический символ.