Файл: Функции операционных систем персональных компьютеров.pdf
Добавлен: 29.03.2023
Просмотров: 127
Скачиваний: 2
Рисунок 3. Драйвера как часть ОС |
4. Диспетчеризация оперативной памяти
Важнейшая аппаратная составляющая компьютера – оперативная память (ОЗУ).
«В многопрограммных ОС «пользовательская» часть памяти – важнейший ресурс вычислительной системы – должна быть распределена для размещения нескольких процессов, в том числе процессов ОС. Эта задача распределения выполняется операционной системой динамически специальной подсистемой управления памятью (memory management). Эффективное управление памятью жизненно важно для многозадачных систем. Если в памяти будет находиться небольшое число процессов, то значительную часть времени процессы будут находиться в состоянии ожидания ввода-вывода и загрузка процессора будет низкой.»[11]
Во время работы в оперативную память записываются программы (в двоичном коде) и данные к ним. Например, как только мы вызываем Word, ядро этого текстового процессора переписывается с жесткого диска в оперативную память, где и хранится вплоть до закрытия этой программы (при свертывании окна, визуализирующего данное приложение, сам код программы остается в ОЗУ). В оперативную же память считываются и в ней же программно и обрабатываются тексты. Как известно, можно вызвать несколько приложений, а также разные файлы данных для этих приложений (несколько документов, несколько книг электронных таблиц, рисунков и т.п. Кроме того, в ОЗУ постоянно находится ядро операционной системы и основные драйверы, поскольку без них, как уже говорилось выше, компьютер не может функционировать. В ходе выполнения самих программ им может потребоваться дополнительно занять какое-то место в оперативной памяти для выполнения своих внутренних операций, сохранения результатов и т.п. Учтем также, что все программы при трансляции начинаются с некой ячейки памяти с нулевым адресом. При загрузке же программы ее начальный адрес отнюдь не нулевой, но смещен на место свободной памяти. Таким образом, операционная система должна «знать» какое место в памяти занято, какое – свободно, уметь своевременно освобождать место в оперативной памяти (например, при закрытии программ). При этом желательно размещать программы (процессы) в единой области памяти, а не фрагментарно. В литературе отмечается, что при управлении оперативной памятью имеет место ряд проблем, допускающих различные подходы к построению такого управления, поэтому в различных операционных системах можно столкнуться с различной реализацией управления ОЗУ. В ходе преодоления проблемы фрагментации памяти ОС реализует следующие функции:
- Перемещение всех занятых участков в сторону старших или младших адресов при каждом завершении процесса или для вновь создаваемого процесса в случае отсутствия раздела достаточного размера.
- Коррекция таблиц свободных и занятых областей.
- Изменение адресов команд и данных, к которым обращаются процессы при их перемещении в памяти, за счет использования относительной адресации.
- Аппаратная поддержка процесса динамического преобразования относительных адресов в абсолютные адреса основной памяти.
- Защита памяти, выделяемой процессу, от взаимного влияния других процессов[12].
Итак, управление памятью является весьма непростым процессом, поддерживаемым рядом таблиц (также размещенных в ОЗУ), взаимодействием с механизмами загрузки и выгрузки в/из памяти программных продуктов и данных к ним, а также взаимодействия с самими программными продуктами с целью предоставления им места в свободной памяти и освобождения этого места.
Отметим также, что, если задаче не хватает места в оперативной памяти, операционная система использует внешнюю память (в первую очередь – жесткий диск), что, естественно, замедляет выполнения задачи, а также усложняет программную реализацию функции управления памятью. При распределении оперативной памяти операционная система может использовать ряд принципов, проиллюстрированных на рисунке 4.
Рисунок 4. Медоды распределения памяти, используемые ОС |
Таким образом, операционные системы хранят информацию о распределении оперативной памяти, при необходимости подключают и память на внешних устройствах, управляют загрузкой программ в память и их выгрузкой.
5. Файловая система как важнейшая функция ОС
Файловой системой называется составная часть операционной системы, отвечающая за хранение данных в долговременной памяти (жёсткий диск, флеш-память, компакт-диски и пр.).
«В широком смысле понятие «файловой системы» подразумевает:
- совокупность всех файлов на носителе (диск, флэш и пр,
- наборы структур данных, которые используются для управления файлами и их организации, как-то каталоги, дескрипторы файлов, таблицы распределения свободного и занятого пространства на носителе,
- комплекс программных средств, предоставляемых операционной системой и специальными приложениями, посредством которых реализуется управление файлами, в том числе: создание, копирование, перемещение, уничтожение, чтение, запись, именование и переименование, поиск и другие действия[13].
- «Основные задачами файловой системы это:
- Хранение информации
- Структурирование файлов
- Обеспечение прав доступа к данным
- Защита данных
- Создание однородной среды для разных носителей информации»[14]
Файловая система дает возможность программам обходиться набором весьма простых действий для выполнения операций над некоторым абстрактным объектом, представляющим файл[15]. Существенно, что пользователи и программисты избавлены от необходимости знать детали истинного размещения информации на диске (или ином носителе), буферизации данных и других низкоуровневых проблем передачи информации с запоминающего устройства в ОЗУ и записи из внутренней памяти на носитель. Эти функции возлагаются на файловую систему. Файловая система распределяет внешнюю память, поддерживает именование файлов, отображает имена файлов в соответствующие адреса во внешней памяти, поддерживает доступ к данным, разделение, защиту и восстановление данных.
Таким образом, файловая система выполняет функцию посредника, который берет на себя все проблемы физической организации долговременного хранилища информации и создает для программ более простую логическую модель такого хранилища, в рамках которой предоставляет им ряд команд, удобных в использовании для работы с файлами.
Классическая схема организации программного обеспечения файловой системы представлена на следующем рисунке:
Рисунок 5. Организация программного обеспечения файловой системы[16] |
При обсуждении файловой системы следует особо остановиться на именах файлов, которые обычно состоят из двух частей – собственно имени и расширения. Эти части принято разделять точкой. Если собственно имя определяется создателем файла (рекомендуется давать имя, отражающее смысл файла, т.е. функционально являющееся содержательным заголовком), то расширение определяет тип файла, т.е. говорит о том, как этот файл кодируется и какую программу следует сопоставить для обработки файла данного типа. Например, файлы с расширением txt – простые тексты, «понимаемые» любым текстовым редактором, расширения doc, docx, docm и др. говорят о создании и обработке их текстовым процессором Word. Расширение pdf говорит о том, что файл создан и обрабатывается в первую очередь приложениями, созданными компанией Adobe. Это весьма компактные файлы, содержащие тексты, графику, хорошо приспособленные для размещения на сайтах сети Интернет. Файлы с расширением gif, tiff, gpeg – графические, обрабатываемые соответственно графическими редакторами.
Отдельно остановимся на расширении exe (от execute – исполнять). Это файлы – программы. Операционная система не только загружает их в оперативную память, соответственно настраивая адреса в этих программах, но и передает этим файлам управление.
Для более удобной для пользователя логической организации информации существуют файлы – каталоги. Они как бы разделяют пространство носителя на отдельные составляющие, в которых, в свою очередь, хранятся файлы и подкаталоги. Таким образом, файловая система предоставляет пользователю возможность группировать свои файлы по какому-либо признаку. Заметим, что такая операционная система как Windows по умолчанию при своей установке также создает ряд каталогов (папок) в режиме умолчания. Например, каталог «Рабочий стол», «Документы», «Windows» и др.
В книге Олифер Н. А., Олифер В. Г. «Сетевые операционные системы» приведено подробное описание файловых систем. В частности, приведены схемы логической организации файловой системы:
а - одноуровневая; |
|
Рисунок 6. Логическая организация файловой системы[17] |
Вообще файловая система предусматривает как логическую, так и физическую организацию файлов, а также обеспечивает защиту файлов с помощью атрибутов, предоставляющих права доступа к файлам:
«В разных файловых системах может быть определен свой список различных прав доступа. Этот список может включать такие операции как:
- создание файла,
- уничтожение файла,
- открытие файла,
- закрытие файла,
- чтение файла,
- запись в файл,
- дополнение файла,
- поиск в файле,
- получение атрибутов файла,
- установление новых значений атрибутов,
- переименование,
- выполнение файла,
- чтение каталога, и другие операции с файлами и каталогами»[18].
Заметим также, что файловая система управляет псевдофайлами, т.е. файлами, направленными не на носитель, а на устройства ввода-вывода, обеспечивая таким образом связь с дисплеем, принтером, клавиатурой и т.п.
Как видим, файловая система несет многочисленные разнообразные функции, причем она органически связана не только с аппаратурой, но и с другими разделами операционной системы.
6. Сервисные программы операционной системы и графический интерфейс
Внутренняя структура операционной системы, как правило, скрыта от пользователя. Однако при установке ОС пользователю предоставляется ряд приложений, обеспечивающих удобства при работе с компьютером и решение наиболее важных для большинства пользователей задач. В первую очередь пользователь получает средства для управления файлами, вызова приложений, выхода в сеть. Так, графический интерфейс является важнейшей частью операционной системы.
Среди предоставляемых приложений, предоставляемых ОС Windows, особо отметим такое важное, как «Проводник». Эта программа позволяет копировать, перемещать, удалять, переименовывать файлы, создавать каталоги (папки) и подкаталоги и пр. В состав ОС Windows входят также два текстовых редактора: «Блокнот» и «Wordpad». Первый работает только с простыми текстами в формате ASCII (txt файлы), второй уже дает возможность варьировать шрифты, абзацы, хотя, конечно, он значительно менее функционален чем текстовый процессор «Word» и его аналоги. Предоставлен пользователю браузер для работы с Интернет, простой графический редактор, способный, однако, обрабатывать наиболее часто используемые форматы графических файлов.
В последние версии ОС Windows включено приложение Skype. Существует значительное число файлов, служащих для тестирования звуков, графики и т.п.
Операционная система дает возможность настраивать себя и в определенной мере свой интерфейс. Так, пользователь может сам выбрать рисунок для Рабочего стола, в том числе и из собственных фотографий, может настроить программы, которые будут по умолчанию загружаться для обработки файлов с определенными расширениями, может предоставить доступ к своим файлам и папкам пользователям локальной сети и т.д. Пользователь может настраивать текущие дату и время, громкость динамиков или наушников, яркость экрана, режим энергосбережения и пр.
Программа «Диспетчер задач» позволяет прервать выполнение любой программы нажатием клавиш CTRL-ALT-DELETE, после чего, например, снять зависшую задачу, либо вообще завершить работу компьютера. Имеются также приложения, ориентированные на работу людей с ослабленным зрением, на отслеживание изменений в компьютере. Последние приложения используются в первую очередь администраторами сетей.
Приведенный список далеко не исчерпывает все возможные приложения, поставляемые вместе с операционной системой. Кроме того, от версии к версии, число таких приложений увеличивается, а их состав все более соответствует основным запросам потребителей.