Понятие «операционная система» и ее виды
Операционная система (ОС) представляет собой комплекс системных и служебных программных средств. С одной стороны, она опирается на базовое ПО, входящее в его систему BIOS, с другой — она сама является основой для ПО более высоких уровней: прикладных и большинства служебных приложений. Приложениями ОС принято называть программы, предназначенные для работы под управлением данной системы.
Основная функция всех ОС — посредническая. Она заключается в обеспечении нескольких видов взаимодействия:
• взаимодействие между пользователем с одной стороны и программным и аппаратным обеспечением ЭВМ с другой стороны, называемое интерфейсом пользователя;
• взаимодействие между программным и аппаратным обеспечением, называемое аппаратно-программным интерфейсом;
• взаимодействие между программным обеспечением разного уровня, называемое программным интерфейсом.
ОС появились и развивались в процессе совершенствования аппаратного обеспечения компьютеров, поэтому эти события исторически тесно связаны. Развитие компьютеров привело к появлению огромного количества различных ОС, из которых далеко не все широко известны. Для одной и той же аппаратной платформы существует несколько ОС. Различия между ними рассматриваются в двух категориях: внутренние и внешние. Внутренние различия характеризуются методами реализации основных функций. Внешние различия определяются наличием и доступностью приложений данной системы, необходимых для удовлетворения технических требований, предъявляемых к конкретному рабочему месту.
ОС можно подразделить по типу аппаратного обеспечения, на котором ОС работают.
Серверные ОС одновременно обслуживают множество пользователей и позволяют им делить между собой программно-аппаратные ресурсы сервера. Серверы также предоставляют возможность работы с печатающими устройствами, файлами или сетью Интернет. У интернет- провайдеров обычно работают несколько серверов для того, чтобы поддерживать одновременный доступ к сети множества клиентов. На серверах хранятся страницы веб-сайтов и обрабатываются входящие запросы. Unix и специальная серверная версия ОС Windows являются примерами серверных ОС. Теперь для этой цели стала использоваться и ОС Linux.
Следующую категорию составляют ОС для персональных компьютеров. Их работа заключается в предоставлении удобного интерфейса для одного пользователя. Такие системы широко используются и повседневной работе. Основными ОС в этой категории являются WindowsХР / Vista / 7, AppleMacOS и Linux.
Другим видом ОС являются системы реального времени. Главным параметром таких систем является время. Например, в системах управления производством компьютеры, работающие в режиме реального времени, собирают данные о промышленном процессе и используют их для управления оборудованием. Такие процессы должны удовлетворять жестким временным требованиям. Если по конвейеру передвигается автомобиль, то каждое действие должно быть осуществлено в строго определенный момент времени. Если сварочный робот сварит шов слишком рано или слишком поздно, то нанесет непоправимый вред изделию. Системы VxWorks и QNX являются ОС реального времени.
Встроенные ОС используются в смартфонах, карманных компьютерах и бытовой технике. Карманный компьютер — это маленький компьютер, помещающийся в кармане и выполняющий небольшой набор функции, например, телефонной книжки и блокнота. Смартфон — это мобильный телефон, обладающий многими возможностями карманного компьютера. Встроенные микропроцессорные системы, управляющие работой устройств бытовой техники, не считаются компьютерами, но обладают теми же характеристиками, что и системы реального времени, и при этом имеют малые размер и память и ограничения мощности, что выделяет их в отдельный класс. Примерами таких ОС являются GoogleAndroid и AppleiOS.
Самые маленькие ОС работают на смарт-картах, представляющих собой устройство размером с кредитную карту и содержащих центральный процессор. На такие ОС накладываются очень жесткие ограничения по мощности процессора и памяти. Некоторые из них могут управлять только одной операцией, например электронным платежом, но другие ОС выполняют более сложные функции.
Основными функциями ОС являются:
1) распределение ресурсов ЭВМ между процессами — выделение процессам ресурсов ЭВМ в зависимости от их приоритета;
2) поддержание файловой системы — организация хранения и поиска программ и данных на внешних носителях;
3) обеспечение интерфейса пользователя — прием и выполнение команд пользователя.
Рассмотрим эти функции ОС подробнее.
Распределение ресурсов ЭВМ между процессами
После запуска программы создается соответствующий ей процесс, которому выделяются ресурсы ЭВМ. Каждый процесс получает адресное пространство в ОЗУ, содержащее стек, регистры, счетчик команд и другие необходимые элементы. Также ресурсами являются время процессора и доступ к устройствам ввода-вывода.
В каждый момент времени процесс может находиться в одном из следующих состояний:
• создание — подготовка условий для исполнения процессором;
• выполнение — непосредственное исполнение процессором;
• ожидание по причине занятости какого-либо требуемого ресурса;
• готовность — процесс не исполняется, но все необходимые для выполнения процесса, кроме времени процессора, предоставлены;
• завершение — нормальное или аварийное окончание работы процесса, после которого время процессора и другие ресурсы ему не предоставляются.
Процесс могут породить ОС, пользователь или другой процесс. ОС может выполнять несколько процессов одновременно, однако в каждый момент времени выполняется только один процесс. Таким образом, создается иллюзия многозадачности за счет мгновенного перераспределения ресурсов ЭВМ, прежде всего времени процессора. Завершение процесса осуществляется ОС, другими процессами или пользователем, например, закрывающим программу.
Специальная программа-планировщик, являющаяся частью ОС, распределяет ресурсы ЭВМ между процессами. Таким образом, процессы конкурируют за ресурсы. Каждый процесс имеет приоритет, в соответствии с которым он получает ресурсы ЭВМ. Наибольший приоритет имеют компоненты ОС, наименьший — программы пользователя. Приоритет процесса зависит также от частоты запроса процессом ресурсов. Чем более требователен процесс к ресурсам, тем более высокий приоритет он имеет.
образом, файловая система ОС является промежуточным звеном между пользователем и ВЗУ.
Возможны следующие действия с файлами:
• создание — за файлом закрепляется название и выделяется место на диске;
• открытие — поиск файла на диске и выделение памяти в ОЗУ для обмена данными с файлом;
• закрытие — сохранение текущего состояния файла после действий с ним;
• изменение — модификация содержимого файла;
• копирование и перемещение файла;
• переименование — закрепление за файлом нового имени;
• удаление — освобождение места на диске, занимаемого файлом.
На любом диске обязательно присутствует корневой каталог. Корневой каталог представляет собой совокупность записей о файлах и других каталогах, которые он содержит (рис. 10.6). Каждая запись содержит следующие параметры:
• имя файла;
• расширение файла;
• объем файла в байтах;
• дата и время создания файла;
• дата и время последнего открытия (доступа) файла;
• атрибуты файла: только для чтения, скрытый файл, системный файл, архивированный файл.
Корневой каталог имеет фиксированное место на диске и размер. Все остальные каталоги имеют такую же структуру, но могут храниться в любом месте области данных диска, как и файлы. Каталоги необходимы для упорядоченного хранения файлов. В ОС Winodows каталоги называются папками.
Рис. Пример структуры каталогов |
В ОС Windows имя файла не может превышать 255 символов и может содержать латинские и русские буквы, знаки пунктуации. В одном каталоге не может находить
Расширения файлов используются ОС, чтобы определить, какую программу необходимо запустить для обработки файла с данным расширением. Расширение определяет тип файла, но не тип — расширение.
Тип | Назначение |
EXE, СОМ | Исполняемые файлы — программы |
DOC, RTF, TXT | Документы |
LNK | Файл ярлыка |
DLL, SYS | Системные файлы |
BMP, JPG, GIF, PNG | Файлы изображений |
MID, MP3, WAV, WMA | Звуковые файлы |
ASF, AVI, MOV, MP4, MPG | Видеофайлы |
Основные расширения файлов приведены в следующей таблице
От файловой системы требуется выполнение следующих действий:
• определение по имени файла физического расположения его частей;
• определение наличия свободного места и выделение его для вновь создаваемых файлов.
Скорость выполнения этих операций напрямую зависит от самой файловой системы.
Разные файловые системы используют различные механизмы для реализации указанных задач и имеют свои преимущества и недостатки. Файловая система FAT (FileAllocationTable — таблица размещения файлов), использующихся в ОС MS-DOS и Windows, представляет собой образ носителя в миниатюре, где детализация ведется до кластерного уровня. Поэтому операция поиска физических координат файла при его большой фрагментации будет затруднительна.
Еще хуже обстоит дело с поиском свободного места для больших файлов. Приходится просматривать практически всю таблицу, поэтому быстродействие падает. Современная файловая система NTFS (NewTechnologyFileSystem — файловая система нового типа) в ОС WindowsХР / Vista / 7 использует более компактную форму записи, что ускоряет поиск файла. Поэтому операции с выделением места под файл проходят быстрее. Ключевое преимущество файловой системы NTFS — возможность ограничения доступа к файлам и каталогам.