Ядро определяет программный интерфейс. На втором уровне находятся стандартные программы операционной системы и оболочка, которые работают с ядром и предоставляют пользовательский интерфейс. Программы второго уровня стараются делать машинно-независимыми. В идеале замена ядра равнозначна замене версии операционной системы.
Любые данные хранятся во внешней памяти ЭВМ в виде файлов. Файлами нужно управлять: создавать, удалять, копировать, изменять и др. Такие средства пользователю в виде пользовательского и программного интерфейсов предоставляет операционная система. Способ организации файлов и управления ими называется файловой системой [filesystem]. Файловая система определяет, например, какие символы могут использоваться для имени файла, каков максимальный размер файла, каково имя корневого каталога и др. Способ организации файлов влияет на скорость доступа к нужному файлу, на безопасность хранения файлов и др.
Одна и та же операционная система может работать одновременно с несколькими файловыми системами. Как правило, функции файловой системы реализуются средствами ядра операционной системы.
Пример
Для ПЭВМ используется несколько видов файловых систем:
FAT16 [File Allocation Table] – используетсявОС Windows95, OS\2, MS-DOS;
FAT32 и VFAT [Virtual FAT] – используетсявОС Windows95;
NTFS [NT File System]– используетсявОС Windows NT;
HPFS [High Performance File System]– используетсявОС OS\2;
Linux Native, Linux Swap – используютсявОС Linux.
Файловая система FAT наиболее просто устроена. Имя корневого каталога имеет всегда вид: А:\, В:\, С:\ и т.д. Имя файла состоит из трёх частей: путь, собственно имя, расширение.
Путь [path] – это имя каталога, в котором файл расположен. Расширение [extension] указывает на тип файла. Например, на рис. 1.6 полное имя файла C:\Windows\System\gdi.exe, путь - C:\Windows\System\, расширение – exe, собственно имя - gdi.
Согласно правилам FAT собственно имя файла может содержать до 8 символов, а расширение имени, отделяемое от имени точкой – до 3-х. При именовании файлов прописные и строчные буквы не различаются. Полное имя файла включает в себя наименование логического устройства, на котором находится файл и имя каталога, в котором файл расположен. Система хранит информацию о размере файла и дате его создания.
По организации данных VFAT напоминает FAT. Однако она позволяет использовать длинные имена файлов: имена до 255 символов, полные имена до 260. Система позволяет хранить также дату последнего доступа к файлу, что создаёт дополнительные возможности для борьбы с вирусами.
Файловая система может быть реализована в виде драйвера, с которым через операционную систему общаются все программы, читающие или записывающие информацию на внешние устройства.
Файловая система может включать в себя средства безопасности хранения информации. Например, файловая система NTFS имеет средства автоматического исправления ошибок и замены дефектных секторов. Специальный механизм отслеживает и фиксирует все действия, выполняемые над магнитными дисками, поэтому в случае сбоя целостность информации восстанавливается автоматически. Кроме этого, файловая система может иметь средства защиты информации от несанкционированного доступа.
Защита информации – это очень большая проблема. В рамках работы операционной системы под защитой информации подразумевается в основном обеспечение целостности информации и защита от несанкционированного доступа. Обеспечение целостности возлагается в основном на файловую систему, а защита от несанкционированного доступа – на ядро. Обычным механизмом такой защиты является использование паролей и уровней привилегий. Для каждого пользователя определяются границы доступа к файлам и приоритетность его программ. Наивысший приоритет имеет системный администратор.
Сетевые средства и распределённые системы
Составной частью современных операционных систем являются средства, которые позволяют связываться через вычислительную сеть с приложениями, работающими на других ЭВМ. Для этого операционная система решает в основном две задачи: обеспечение доступа к файлам на удалённых ЭВМ и возможность запуска программы на удалённой ЭВМ.
Первая задача наиболее естественно решается с помощью использования так называемой сетевой файловой системы [networkfilesystem - NFS], которая организует работу пользователя с удалёнными файлами так, как будто эти файлы находятся на магнитном диске самого пользователя.
Вторая задача решается с помощью механизма вызова удалённой процедуры [remoteprocedurecall — RPC], который реализуется средствами ядра и также скрывает от пользователя разницу между локальными и удалёнными программами.
Наличие средств для управления ресурсами удалённых ЭВМ, является основой для создания распределённых вычислительных систем. Распределённая вычислительная система [distributedcomputersystem] – это совокупность нескольких связанных ЭВМ, работающих независимо, но выполняющих общее задание. Такую систему можно рассматривать как многопроцессорную.
Важной особенностью современных операционных систем является то, что в основу взаимодействия прикладной программы и операционной системы заложена модель «клиент-сервер». Все обращения пользовательской программы (клиента) к операционной системе обрабатываются специальной программой (сервером). При этом используется механизм, аналогичный вызову удаленной процедуры, что позволяет легко перейти от взаимодействия между процессами в пределах одной ЭВМ к распределенной системе.
Технология «plug and play».
Под технологией «plugandplay» (PnP-технология) понимается способ взаимодействия между операционной системой и внешними устройствами. Операционная система проводит опрос всех периферийных устройств и должна получить от каждого устройства определённый ответ, из которого можно определить, какое устройство подключено и какой драйвер требуется для его нормальной работы. Цель использования данной технологии заключается в упрощении подключения новых внешних устройств. Пользователь должен быть избавлен от сложной работы по настройке внешнего устройства, требующей высокой квалификации.
Сервисные и инструментальные системы
Сервисная система – программный продукт, изменяющий и дополняющий пользовательский и программный интерфейсы операционной системы. Сервисные системы различаются на операционные среды, оболочки и утилиты.
Операционная среда – система, изменяющая и дополняющая как пользовательский, так и программный интерфейс. Операционная среда создаёт для пользователя и прикладных программ иллюзию работы в полноценной операционной системе. Появление операционной среды обычно означает, что используемая операционная система не полностью удовлетворяет требованиям практики.
Источник [2].
Оболочка [shell] – система, изменяющая пользовательский интерфейс. Оболочка создаёт для пользователя интерфейс, отличный от такового самой операционной системы. Задача оболочки – упрощение некоторых общеупотребительных действий с операционной системой. Однако оболочка не заменит ОС, и потому пользователь-профессионал должен изучать также командный интерфейс самой ОС.
Источник [2].
Утилита [utility] – это система, дополняющая пользовательский интерфейс. Утилиты реализуют важные функции по управлению ЭВМ, которые, как правило, недостаточно полно представлены в программах, поставляемых с операционной системой.
Наиболее важными функциями утилит являются:
обслуживание жёсткого диска: форматирование, восстановление удалённых файлов, дефрагментация, низкоуровневое редактирования дисков и др.;
обслуживание файлов и каталогов: поиск, сортировка, копирование по определённому условию и т.д.;
работа с архивами: создание архивов и их обновление, сжатие файлов;
защита от компьютерных вирусов: обнаружение вирусов, лечение файлов;
предоставление пользователю расширенной информации и ПЭВМ и ОС;
шифрование информации.
Источник [2].
Пример
Наиболее известные операционные среды - Windows3.11 и DESQview, которые предназначались для расширения возможностей ОС MS-DOS. Для пользователя работа с этими оболочками выглядела подобно работе в многозадачной ОС с графическим интерфейсом, поэтому многие зачастую ошибочно называли Windows3.11 операционной системой.
ОС Unix имеет в своём составе, как правило, несколько оболочек, которые отличаются друг от друга в основном форматом и набором команд. Самой популярной оболочкой для MS-DOS являлась программа NortonCommander, которая стала прообразом для многих других подобных программ для ОС Windows95: WindowsCommander, FAR-Manager и др.
В своём составе Windows95 имеет некоторые утилиты: для проверки диска Scandisk, для дефрагментации диска Defrag, планировщик заданий Scheduler, которые устанавливаются на ПЭВМ по желанию пользователя. Наиболее известными утилитами как для MS-DOS, так и для Windows95 остаётся комплекс программ NortonUtilities.
Широко используемыми утилитами являются архиваторы. К ним относятся, например, WinZip, WinRar, WinArj, которые отличаются по сути только используемым алгоритмом сжатия.