4.1. Обеспечение интерфейса пользователя
4.2. Обеспечение автоматического запуска
4.3. Организация файловой системы
4.4. Обслуживание файловой системы
4.4.1. Создание и именование файлов
4.4.2. Создание каталогов (папок)
4.4.3. Копирование и перемещение файлов
4.4.4. Удаление файлов и каталогов (папок)
4.5. Управление установкой, исполнением и удалением приложений
4.6. Обеспечение взаимодействия с аппаратным обеспечением
4.7.1. Средства проверки дисков
4.7.2. Средства “сжатия” дисков
4.7.3. Средства управления виртуальной памятью
4.1. Обеспечение интерфейса пользователя
Операционная система представляет комплекс системных и служебных программных средств. С одной стороны, она опирается на базовое программное обеспечение компьютера, входящее в его систему В105 (базовая система ввода-вывода), с другой стороны, она сама является опорой для программного обеспечения более высоких уровней — прикладных и большинства служебных приложений. Приложениями операционной системы принято называть программы, предназначенные для работы под управлением данной системы.
Основная функция всех операционных систем — посредническая. Она заключаются в обеспечении нескольких видов интерфейса:
- интерфейса между пользователем и программно-аппаратными средствами компьютера (интерфейс пользователя);
- интерфейса между программным и аппаратным обеспечением (аппаратно-программный интерфейс);
- интерфейса между разными видами программного обеспечения (программный интерфейс).
Даже для одной аппаратной платформы, например такой, как IBM PC, существует несколько операционных систем. Различия между ними рассматривают в двух категориях: внутренние и внешние. Внутренние различия характеризуются методами реализации основных функций. Внешние различия определяются наличием и доступностью приложений данной системы, необходимых для удовлетворения технических требований, предъявляемых к конкретному рабочему месту.
4.1.1. Режимы работы с компьютером
Все операционные системы способны обеспечивать как пакетный, так и диалоговый режим работы с пользователем. В пакетном режиме операционная система автоматически исполняет заданную последовательность команд. Суть диалогового режима состоит в том, что операционная система находится в ожидании команды пользователя и, получив ее, приступает к исполнению, а исполнив, возвращает отклик и ждет очередной команды. Диалоговый режим работы основан на использовании прерываний процессора и прерываний BIOS (которые, в свою очередь, также основаны на использовании прерываний процессора) Опираясь на эти аппаратные прерывания, операционная система создает свой комплекс системных прерываний. Способность операционной системы прервать текущую работу и отреагировать на события, вызванные пользователем с помощью управляющих устройств, воспринимается нами как диалоговый режим работы.
4.1.2. Виды интерфейсов пользователя
По реализации интерфейса пользователя различают неграфические и графические операционные системы. Неграфические операционные системы реализуют интерфейс командной строки. Основным устройством управления в данном случае является клавиатура. Управляющие команды вводят в поле командной строки, где их можно и редактировать. Исполнение команды начинается после ее утверждения, например нажатием клавиши Enter. Для компьютеров платформы IBM PC интерфейс командной строки обеспечивается семейством операционных систем под общим названием MS-DOS (версии от MS-DOS 1.0 до MS-DOS 6.2).
Графические операционные системы реализуют более сложный тип интерфейса, в котором в качестве органа управления кроме клавиатуры может использоваться мышь или адекватное устройство позиционирования. Работа с графической операционной системой основана на взаимодействии активных и пассивных экранных элементов управления.
В качестве активного элемента управления выступает указатель мыши — графический объект, перемещение которого на экране синхронизировано с перемещением мыши.
В качестве пассивных элементов управления выступают графические элементы управления приложений (экранные кнопки, значки, переключатели, флажки, раскрывающиеся списки, строки меню и многие другие).
Характер взаимодействия между активными и пассивными элементами управления выбирает сам пользователь. В его распоряжении приемы наведения указателя мыши на элемент управления, щелчки кнопками мыши и другие средства.
4.2. Обеспечение автоматического запуска
Все операционные системы обеспечивают свой автоматический запуск. Для дисковых операционных систем в специальной (системной) области диска создается запись программного кода. Обращение к этому коду выполняют программы, находящиеся в базовой системе ввода-вывода (BIOS). Завершая свою работу, они дают команду на загрузку и исполнение содержимого системной области диска.
Недисковые операционные системы характерны для специализированных вычислительных систем, в частности для компьютеризированных устройств автоматического управления. Математическое обеспечение, содержащееся в микросхемах ПЗУ таких компьютеров, можно условно рассматривать как аналог операционной системы. Ее автоматический запуск осуществляется аппаратно. При подаче питания процессор обращается к фиксированному физическому адресу ПЗУ (его можно изменять аппаратно с использованием логических микросхем), с которого начинается запись программы инициализации операционной системы.
4.3. Организация файловой системы
Все современные дисковые операционные системы обеспечивают создание файловой системы, предназначенной для хранения данных на дисках и обеспечения доступа к ним. Принцип организации файловой системы — табличный. Поверхность жесткого диска рассматривается как трехмерная матрица, измерениями которой являются номера поверхности, цилиндра и сектора. Под цилиндром понимается совокупность всех дорожек, принадлежащих разным поверхностям и находящихся на равном удалении от оси вращения. Данные о том, в каком месте диска записан тот или иной файл, хранятся в системной области диска в специальных таблицах размещения файлов (FAT-таблицах). Поскольку нарушение FAT-таблицы приводит к невозможности воспользоваться данными, записанными на диске, к ней предъявляются особые требования надежности, и она существует в двух экземплярах, идентичность которых регулярно контролируется средствами операционной системы.
Наименьшей физической единицей хранения данных является сектор. Размер сектора равен 512 байт. Поскольку размер FAT-таблицы ограничен, то для дисков, размер которых превышает 32 Мбайт, обеспечить адресацию к каждому отдельному сектору не представляется возможным. В связи с этим группы секторов условно объединяются в кластеры. Кластер является наименьшей единицей адресации к данным. Размер кластера, в отличие от размера сектора, не фиксирован и зависит от емкости диска.
Операционные системы MS DOS, OS/2, Windows 95 и Windows NT реализуют 16-разрядные поля в таблицах размещения файлов. Такая файловая система называется FAT 16. Она позволяет разместить в FAT-таблицах не более 65 536 записей (216) о местоположении единиц хранения данных и, соответственно, для дисков объемом от 1 до 2 Гбайт длина кластера составляет 32 Кбайт (64 сектора). Это не вполне рациональный расход рабочего пространства, поскольку любой файл (даже очень маленький) полностью оккупирует весь кластер, которому соответствует только одна адресная запись в таблице размещения файлов. Даже если файл достаточно велик и располагается в нескольких кластерах, все равно в его конце образуется некий остаток, нерационально расходующий целый кластер.
Для современных жестких дисков потери, связанные с неэффективностью файловой системы, весьма значительны и могут составлять от 25% до 40% полной емкости диска, в зависимости от среднего размера хранящихся файлов. С дисками же размером более 2 Гбайт файловая система FAT 16 вообще работать не может.
В настоящее время только операционная система Windows 98 обеспечивает более совершенную организацию файловой системы — FAT32 с 32-разрядными полями в таблице размещения файлов. Для дисков размером до 8 Гбайт эта система обеспечивает размер кластера 4 Кбайт (8 секторов).
4.4. Обслуживание файловой структуры
Несмотря на то, что данные о местоположении файлов хранятся в табличной структуре, пользователю они представляются в виде иерархической структуры — людям так удобнее, а все необходимые преобразования берет на себя операционная система. К функции обслуживания файловой структуры относятся следующие операции, происходящие под управлением операционной системы:
- создание файлов и присвоение им имен;
- создание каталогов (папок) и присвоение им имен;
- переименование файлов и каталогов (папок);
- копирование и перемещение файлов между дисками компьютера и между каталогами (папками)одного диска;
- удаление файлов и каталогов (папок);
- навигация по файловой структуре с целью доступа к заданному файлу, каталогу (папке);
- управление атрибутами файлов.
4.4.1. Создание и именование файлов
Файл — это именованная последовательность байтов произвольной длины. Поскольку из этого определения вытекает, что файл может иметь нулевую длину, то фактически создание файла состоит в присвоении ему имени и регистрации его в файловой системе — это одна из функций операционной системы. Даже когда мы создаем файл, работая в какой-то прикладной программе, в общем случае для этой операции привлекаются средства операционной системы.
По способам именования файлов различают “короткое” и “длинное” имя. До появления операционной системы Windows 95 общепринятым способом именования файлов на компьютерах IBM PC было соглашение 8.3. Согласно этому соглашению, принятому в MS DOS, имя файла состоит из двух частей: собственно имени и расширения имени. На имя файла отводится 8 символов, а на его расширение — 3 символа. Имя от расширения отделяется точкой. Как имя, так и расширение могут включать только алфавитно-цифровые символы латинского алфавита.
Соглашение 8.3 не является стандартом, и потому в ряде случаев отклонения от правильной формы записи допускаются как операционной системой, так и ее приложениями. Так, например, в большинстве случаев система “не возражает” против использования некоторых специальных символов (восклицательный знак, символ подчеркивания, дефис, тильда и т. п.), а некоторые версии MS DOS даже допускают использование в именах файлов символов русского и других алфавитов. Сегодня имена файлов, записанные в соответствии с соглашением 8.3, считаются “короткими”.
Основным недостатком “коротких” имен является их низкая содержательность. Далеко не всегда удается выразить несколькими символами характеристику файла, поэтому с появлением операционной системы Windows 95 было введено понятие “длинного” имени. Такое имя может содержать до 256 символов. Этого вполне достаточно для создания содержательных имен файлов. “Длинное” имя может содержать любые символы, кроме девяти специальных: \ / : * ? " < > |.В имени разрешается использовать пробелы и несколько точек. Расширением имени считаются все символы, идущие после последней точки.
Наряду с “длинным” именем операционные системы Windows 95 и Windows 98 создают также и короткое имя файла — оно необходимо для возможности работы с данным файлом на рабочих местах с устаревшими операционными системами.
Особенности Windows 95 и Windows 98. Использование “длинных” имен файлов в операционных системах Windows 95 и Windows 98 имеет ряд особенностей.
1. Если “длинное” имя файла включает пробелы, то в служебных операциях его надо заключать в кавычки. Рекомендуется не использовать пробелы, а заменять их символами подчеркивания.
2. В корневой папке диска (на верхнем уровне иерархической файловой структуры) нежелательно хранить файлы с длинными именами — в отличие от прочих папок в ней ограничено количество единиц хранения, причем чем длиннее имена, тем меньше файлов можно разместить в корневой папке.
3. Кроме ограничения на длину имени файла (256 символов) существует гораздо более жесткое ограничение на длину полного имени файла (в него входит путь доступа к файлу, начиная от вершины иерархической структуры). Полное имя не может быть длиннее 260 символов.
4. Разрешается использовать символы любых алфавитов, в том числе и русского, но если документ готовится для передачи, с заказчиком (потребителем документа) необходимо согласовать возможность воспроизведения файлов с такими именами на его оборудовании.
5. Прописные и строчные буквы не различаются операционной системой. Для нее имена Письмо.txt и письмо.txt соответствуют одному и тому же файлу. Однако символы разных регистров исправно отображаются операционной системой, и, если для наглядности надо использовать прописные буквы, это можно делать.
6. Программисты давно научились использовать расширение имени файла для передачи операционной системе, исполняющей программе или пользователю информации о том, к какому типу относятся данные, содержащиеся в файле, и о формате, в котором они записаны. В ранних операционных системах этот факт использовался мало. По существу, операционные системы MS DOS анализировали только расширения .ВАТ (пакетные файлы с командами MS DOS), .ЕХЕ, .СОМ (исполнимые файлы программ) и .SYS (системные файлы конфигурации). В современных операционных системах любое расширение имени файла может нести информацию для операционной системы. Системы Windows 95/98 имеют средства для регистрации свойств типов файлов по расширению их имени, поэтому во многих случаях выбор расширения имени файла не является частным делом пользователя. Приложения этих систем предлагают выбрать только основную часть имени и указать тип файла, а соответствующее расширение имени приписывают автоматически.
4.4.2. Создание каталогов (папок)
Каталоги (папки) — важные элементы иерархической структуры, необходимые для обеспечения удобного доступа к файлам, если файлов на носителе слишком много. Файлы объединяются в каталоги по любому общему признаку, заданному их создателем (по типу, по принадлежности, по назначению, по времени создания и т. п.). Каталоги низких уровней вкладываются в каталоги более высоких уровней и являются для них вложенными. Верхним уровнем вложенности иерархической структуры является корневой каталог диска.
Все современные операционные системы позволяют создавать каталоги. Правила присвоения имени каталогу ничем не отличаются от правил присвоения имени файлу, хотя негласно для каталогов не принято задавать расширения имен.
Мы знаем, что в иерархических структурах данных адрес объекта задается маршрутом (путем доступа), ведущим от вершины структуры к объекту. При записи пути доступа к файлу, проходящего через систему вложенных каталогов, все промежуточные каталоги разделяются между собой определенным символом. Во многих операционных системах в качестве такого символа используется “\” (обратный слэш), например:
Рис. 4.1. Пример записи полного адреса файла
Особенности Windows 95 и Windows 98. До появления операционной системы Windows 95 при описании иерархической файловой структуры использовался введенный выше термин каталог. С появлением этой системы был введен новый термин — папка. В том, что касается обслуживания файловой структуры носителя данных, эти термины равнозначны: каждому каталогу файлов на диске соответствует одноименная папка операционной системы. Основное отличие понятий папка и каталог проявляется не в организации хранения файлов, а в организации хранения объектов иной природы. Так, например, в Windows 95 и Windows 98 существуют специальные папки, представляющие собой удобные логические структуры, которым не соответствует ни один каталог диска.
4.4.3. Копирование и перемещение файлов
В неграфических операционных системах операции копирования и перемещения файлов выполняются вводом прямой команды в поле командной строки. При этом указывается имя команды, путь доступа к каталогу-источнику и путь доступа к каталогу-приемнику.
В графических операционных системах существуют приемы работы с устройством позиционирования, позволяющие выполнять эти команды наглядными методами.
4.4.4. Удаление файлов и каталогов (папок)
Средства удаления данных не менее важны для операционной системы, чем средства их создания, поскольку ни один носитель данных не обладает бесконечной емкостью. Существует как минимум три режима удаления данных: удаление, уничтожение и стирание, хотя операционные системы обеспечивают только два первых режима (режим надежного стирания данных можно обеспечить лишь специальными программными средствами).
Удаление файлов является временным. В операционных системах Windows 95 и Windows 98 оно организовано с помощью специальной папки, которая называется Корзина. При удалении файлов и папок они перемещаются в Корзину. Эта операция происходит на уровне файловой структуры операционной системы (изменяется только путь доступа к файлам). На уровне файловой системы жесткого диска ничего не происходит — файлы остаются в тех же секторах, где и были записаны.
Уничтожение файлов происходит при их удалении в операционной системе MS DOS или при очистке Корзины в операционных системах Windows 95/98. В этом случае файл полностью удаляется из файловой структуры операционной системы, но на уровне файловой системы диска с ним происходят лишь незначительные изменения. В таблице размещения файлов он помечается как удаленный, хотя физически остается там же, где и был. Это сделано для минимизации времени операции. При этом открывается возможность записи новых файлов в кластеры, помеченные как “свободные”.
Для справки укажем, что операция стирания файлов, выполняемая специальными служебными программами, состоит именно в том, чтобы заполнить якобы свободные кластеры, оставшиеся после уничтоженного файла, случайными данными. Поскольку даже после перезаписи данных их еще можно восстановить специальными аппаратными средствами (путем анализа остаточного магнитного гистерезиса), для надежного стирания файлов требуется провести не менее пяти актов случайной перезаписи в одни и те же сектора. Эта операция весьма продолжительна, и поскольку массовому потребителю она не нужна, то ее не включают в стандартные функции операционных систем.
4.4.5. Навигация по файловой структуре
Навигация по файловой структуре является одной из наиболее используемых функций операционной системы. Удобство этой операции часто воспринимают как удобство работы с операционной системой. В операционных системах, имеющих интерфейс командной строки, навигацию осуществляют путем ввода команд перехода с диска на диск или из каталога в каталог. В связи с крайним неудобством такой навигации, широкое применение нашли специальные служебные программы, называемые файловыми оболочками.
Как и операционные системы, файловые оболочки бывают неграфическими и графическими. Наиболее известная неграфическая файловая оболочка для MS-DOS — диспетчер файлов Norton Commander, а роль графической файловой оболочки для NS DOS в свое время исполняли программы Windows 1.0 и Windows 2.0, которые постепенно развились до понятия операционной среды (в версиях Windows 3.х) и далее до самостоятельной операционной системы (Windows 95/98).
4.4.6. Управление атрибутами файлов
Кроме имени и расширения имени файла операционная система хранит для каждого файла дату его создания (изменения) и несколько флатовых величин, называемых атрибутами файла. Атрибуты — это дополнительные параметры, определяющие свойства файлов. Операционная система позволяет их контролировать и изменять; состояние атрибутов учитывается при проведении автоматических операций с файлами.
Основных атрибутов четыре:
- Только для чтения (Read Only);
- Скрытый (Hidden);
- Системный (System);
- Архивный (Archive).
Атрибут Только для чтения ограничивает возможности работы с файлом. Его установка означает, что файл не предназначен для внесения изменений.
Атрибут Скрытый сигнализирует операционной системе о том, что данный файл не следует отображать на экране при проведении файловых операций. Это мера защиты против случайного (умышленного или неумышленного) повреждения файла.
Атрибутом Системный помечаются файлы, обладающие важными функциями в работе самой операционной системы. Его отличительная особенность в том, что средствами операционной системы его изменить нельзя. Как правило, большинство файлов, имеющих установленный атрибут Системный, имеют также и установленный атрибут Скрытый.
Атрибут Архивный в прошлом использовался для работы программ резервного копирования. Предполагалось, что любая программа, изменяющая файл, должна автоматически устанавливать этот атрибут, а средство резервного копирования должно его сбрасывать. Таким образом, очередному резервному копированию подлежали только те файлы, у которых этот атрибут был установлен. Современные программы резервного копирования используют другие средства для установления факта изменения файла, и данный атрибут во внимание не принимается, а его изменение вручную средствами операционной системы не имеет практического значения.
4.5. Управление установкой, исполнением и удалением приложений
4.5.1. Понятие многозадачности
Работа с приложениями составляет наиболее важную часть работы операционной системы. Это очевидно, если вспомнить, что основная функция операционной системы состоит в обеспечении интерфейса приложений с аппаратными и программными средствами вычислительной системы, а также с пользователем. С точки зрения управления исполнением приложений, различают однозадачные и многозадачные операционные системы.
.Однозадачные операционные системы (например, MS DOS) передают все ресурсы вычислительной системы одному исполняемому приложению и не допускают ни параллельного выполнения другого приложения (полная многозадачность), ни его приостановки и запуска другого приложения (вытесняющая многозадачность). В тоже время параллельно с однозадачными операционными системами возможна работа специальных программ, называемых резидентными. Такие программы не опираются на операционную систему, а непосредственно работают с процессором, используя его систему прерываний.
Большинство современных графических операционных систем — многозадачные. Они управляют распределением ресурсов вычислительной системы между задачами и обеспечивают:
- возможность одновременной или поочередной работы нескольких приложений;
- возможность обмена данными между приложениями;
- возможность совместного использования программных, аппаратных, сетевых и прочих ресурсов вычислительной системы несколькими приложениями.
4.5.2. Вопросы надежности
От того, как операционная система управляет работой приложений, во многом зависит надежность всей вычислительной системы. Операционная система должна предоставлять возможность прерывания работы приложений по желанию пользователя и снятия сбойной задачи без ущерба для работы других приложений. При этом требование надежности операционной системы может входить в противоречие с требованием ее универсальности.
Так, например, наиболее универсальные операционные системы Windows 95 и Windows 98 могут испытывать общесистемные сбои из-за работы с приложениями, недостаточно четко соблюдающими спецификацию операционной системы. Операционная система Windows NT обладает повышенной устойчивостью и не выходит из строя при сбое приложений, но имеет меньшую универсальность, и, соответственно, парк доступных приложений для нее ограничен.
Это, в частности, предопределяет сферу использования данных операционных систем. Системы Windows 95/98 находят применение в массовых многоцелевых вычислительных системах, а система Windows NT — на специализированных рабочих местах, для которых требуется повышенная надежность при ограничении круга используемых программ.
Вопрос надежности операционной системы особо остро стоит для программистов. В процессе отладки программ возможны многочисленные сбои из-за несовершенства их кода. При отладке “сырых” программ в Windows 95/98 “сброс” или “зависание” компьютера происходит много чаще, чем в операционной системе Windows NT. Поэтому общепринятой является практика, когда программа разрабатывается и отлаживается в операционной системе Windows NT, а ее окончательная сборка и компиляция выполняются в Windows 95/98.
4.5.3. Установка приложений
Для правильной работы приложений на компьютере они должны пройти операцию, называемую установкой. Необходимость в установке связана с тем, что разработчики программного обеспечения не могут заранее предвидеть особенности аппаратной и программной конфигурации вычислительной системы, на которой предстоит работать их программам. Таким образом, дистрибутивный комплект (установочный пакет) программного обеспечения, как правило, представляет собой не законченный программный продукт, а полуфабрикат, из которого в процессе установки на компьютере формируется полноценное рабочее приложение. При этом осуществляется привязка приложения к существующей аппаратно-программной среде и его настройка на работу именно в этой среде.
Устаревшие операционные системы (например, MS DOS) не имеют средств для управления установкой приложений. Единственное средство, которое они предоставляют, — возможность запуска устанавливающей программы, прилагаемой к дистрибутивному комплекту. Такая установка отличается крайней простотой, но и невысокой надежностью, поскольку правильность привязки приложения к окружающей программно-аппаратной среде зависит от того, насколько разработчик устанавливающей программы сумел заранее предусмотреть возможные варианты конфигурации вычислительной системы конкретного пользователя.
Современные графические операционные системы берут на себя управление установкой приложений. Они управляют распределением ресурсов вычислительной системы между приложениями, обеспечивают доступ устанавливаемых приложений к драйверам устройств вычислительной системы, формируют общие ресурсы, которые могут использоваться разными приложениями, выполняют регистрацию установленных приложений и выделенных им ресурсов.
4.5.4. Удаление приложений
Процесс удаления приложений, как и процесс установки, имеет свои особенности и может происходить под управлением вычислительной системы. В таких операционных системах, где каждое приложение самообеспечено собственными ресурсами (например, в MS DOS), его удаление не требует специального вмешательства операционной системы. Для этого достаточно удалить каталог, в котором размещается приложение, со всем его содержимым.
В операционных системах, реализующих принцип совместного использования ресурсов (например, в Windows 95/98), процесс удаления приложений имеет особенности. Нельзя допустить, чтобы при удалении одного приложения были удалены ресурсы, на которые опираются другие приложения, даже если эти ресурсы были когда-то установлены вместе с удаляемым приложениям. В связи с этим удаление приложений происходит под строгим контролем операционной системы. Полнота удаления и надежность последующего функционирования операционной системы и оставшихся приложений во многом зависят от корректности установки и регистрации приложений в реестре операционной системы.
4.6. Обеспечение взаимодействия с аппаратным обеспечением
Средства аппаратного обеспечения вычислительной техники отличаются гигантским многообразием. Существуют сотни различных моделей видеоадаптеров, звуковых карт, мониторов, принтеров, сканеров и прочего оборудования. Ни один разработчик программного обеспечения не в состоянии предусмотреть все варианты взаимодействия своей программы, например, с печатающим устройством.
Гибкость аппаратных и программных конфигураций вычислительных систем поддерживается за счет того, что каждый разработчик оборудования прикладывает к нему специальные программные средства управления — драйверы. Драйверы имеют точки входа для взаимодействия с прикладными программами, а диспетчеризация обращений прикладных программ к драйверам устройств — это одна из функций операционной системы. Строго говоря, выпуская устройство, например модем, его разработчик прикладывает к нему несколько драйверов, предназначенных для основных операционных систем, как-то: Windows 95/98, Windows NT, MS DOS и т. п.
В операционных системах MS DOS драйверы устройств загружаются как. резидентные программы, напрямую работающие с процессором и другими устройствами материнской платы. Здесь участие операционной системы сводится лишь к тому, чтобы предоставить пользователю возможность загрузки драйвера — далее он сам перехватывает прерывания, используемые для обращения к устройству, и управляет его взаимодействием с вызывающей программой. Загрузка драйверов устройств может быть ручной (после первоначальной загрузки компьютера пользователь сам выдает команды на загрузку драйверов) или автоматической, когда команды на загрузку и настройку драйверов включаются в состав файлов, автоматически читаемых при загрузке компьютера. В MS DOS такие файлы называются файлами конфигурации; их всего два — это файлы autoexec.bat и config.sys. В них прежде всего включают команды загрузки драйвера мыши, дисковода CD-ROM, звуковой карты, расширенной памяти (оперативная память, лежащая за пределами 1 Мбайт, рассматривается в MS DOS как дополнительное устройство и требует специального драйвера), а также прочих устройств.
В таких операционных системах, как Windows 95/98 и Windows NT, операционная система берет на себя все функции по установке драйверов устройств и передаче им управления от приложений. Во многих случаях операционная система даже не нуждается в драйверах, полученных от разработчика устройства, а использует драйверы из собственной базы данных.
Наиболее современные операционные системы Windows 95/98 позволяют управлять не только установкой и регистрацией программных драйверов устройств, но и процессом аппаратно-логического подключения. Каждое подключенное устройство может использовать до трех аппаратных ресурсов устройств материнской платы: адресов внешних портов процессора, прерываний процессора и каналов прямого доступа к памяти. Если устройство подключается к материнской плате через шину PCI, то есть техническая возможность организовать между ним и материнской платой обратную связь. Это позволяет операционной системе анализировать требования устройств о выделении им ресурсов и гибко реагировать на них, исключая захват одних и тех же ресурсов разными устройствами. Такой принцип динамического распределения ресурсов операционной системой получил название plug-and-play, а устройства, удовлетворяющие этому принципу, называются самоустанавливающимися.
Если же устройство подключается к устаревшей шине ISA и не является самоустанавливающимся, то в этом случае операционная система не может динамически выделять ему ресурсы, но, тем не менее, при распределении ресурсов для самоустанавливающихся устройств, она учитывает ресурсы, захваченные им.
4.7. Обслуживание компьютера
Предоставление основных средств обслуживания компьютера — одна из функций операционной системы. Обычно она решается внешним образом — включением в базовый состав операционной системы первоочередных служебных приложений.
4.7.1. Средства проверки дисков
Надежность работы дисков (особенно жесткого диска) определяет не только надежность работы компьютера в целом, но и безопасность хранения данных, ценность которых может намного превышать стоимость самого компьютера. Поэтому наличие средств для проверки дисков является обязательным требованием к любой операционной системе.
Средства проверки принято рассматривать в двух категориях: средства логической проверки, то есть проверки целостности файловой структуры, и средства физической диагностики поверхности. Логические ошибки, как правило, устраняются средствами самой операционной системы, а физические дефекты поверхности только локализуются — операционная система принимает во внимание факт повреждения магнитного слоя в определенных секторах и исключает их из активной работы.
Логические ошибки файловой структуры имеют два характерных проявления: это потерянные кластеры или общие кластеры. Потерянные кластеры образуются в результате неправильного (или аварийного) завершения работы с компьютером. Так, например, ни в одной операционной системе нельзя выключать компьютер, если на нем запущены приложения, осуществляющие обмен информацией с дисками. Кроме того, в операционных системах Windows также нельзя выключать компьютер, если не исполнена специальная процедура завершения работы с операционной системой. Механизм образования потерянных кластеров выглядит так:
- во время работы с файлом приложение манипулирует с кластерами, занимая или освобождая их и регистрирует сведения об этом в FAT-таблице, но не записывает полные сведения о файле в каталог;
- если при завершении работы с приложением происходит сохранение результатов деятельности, оно вносит окончательные изменения в FAT-таблицы и регистрирует данные, записанные в кластерах, как файл в каталоге;
- если при завершении работы с приложением файл уничтожается, информация не фиксируется в каталоге, а использованные кластеры освобождаются;
- если компьютер выключается до завершения работы с приложением, кластеры остаются помеченными как “занятые”, но ссылки на них в каталоге не создается, так что согласно данным FAT-таблицы этим кластерам не соответствует ни один файл.
Ошибка, связанная с потерянными кластерами, легко парируется средствами операционной системы. При этом можно либо полностью освободить данные кластеры, либо превратить их в полноценные файлы, которые можно просмотреть в поисках ценной информации, утраченной во время сбоя.
Ошибка, проявляющаяся как общие кластеры, характеризуется тем, что, согласно данным FAT-таблиц, два или более файлов претендуют на то, что их данные находятся в одном и том же месте диска. При нормальной работе такой ситуации быть не может, и это свидетельствует об ошибке в FAT-таблицах. Причиной появления общих кластеров может стать самопроизвольное изменение данных в FAT-таблицах или некорректное восстановление ранее удаленных данных с помощью внесистемных средств. Некорректность может быть обусловлена нарушением порядка операций восстановления данных или неадекватностью средств восстановления данных (например, использованием средств MS DOS для восстановления файлов, записанных средствами Windows).
Ошибка, связанная с общими кластерами, парируется повторной записью обоих конфликтующих файлов. Один из них обязательно испорчен и подлежит последующему удалению, но велика вероятность того, что испорчены оба файла.
Дополнительно к вышеуказанным логическим ошибкам операционные системы Windows 95 и Windows 98 определяют логические ошибки, связанные с некорректной записью даты создания файла и с представлением “короткого” имени файла для заданного “длинного” имени.
4.7.2. Средства “сжатия” дисков
Некоторые операционные системы предоставляют служебные средства для программного “сжатия” дисков путем записи данных на диск в уплотненном виде посредством специального драйвера (резидентного для MS DOS или работающего в фоновом режиме для Windows).
4.7.3. Средства управления виртуальной памятью
Ранние операционные системы ограничивали возможность использования приложений по объему необходимой для их работы оперативной памяти. Так, например, без специальных драйверов (менеджеров оперативной памяти) операционные системы MS DOS ограничивали предельный размер исполняемых программ величиной около 640 Кбайт.
Современные операционные системы не только обеспечивают непосредственный доступ ко всему полю оперативной памяти, установленной в компьютере, но и позволяют ее расширить за счет создания так называемой виртуальной памяти на жестком диске. Виртуальная память реализуется в виде так называемого файла подкачки. В случае недостаточности оперативной памяти для работы приложения часть ее временно опорожняется с сохранением образа на жестком диске. В процессе работы приложений происходит многократный обмен между основной установленной оперативной памятью и файлом подкачки. Поскольку электронные операции в оперативной памяти происходят намного быстрее, чем механические операции взаимодействия с диском, увеличение размера оперативной памяти компьютера всегда благоприятно сказывается на ускорении операций и повышении производительности всей вычислительной системы.
Операционная система не только берет на себя весь необходимый обмен данными между ОЗУ и диском, но и позволяет в определенной степени управлять размером файла подкачки вручную.
4.7.4. Средства кэширования дисков
Поскольку, как уже было отмечено, взаимодействие процессора с дисками компьютера происходит намного медленнее операций обмена с оперативной памятью, операционная система принимает специальные меры по сохранению части прочитанных с диска данных в оперативной памяти. В случае, если по ходу работы процессору вновь потребуется обратиться к ранее считанным данным или программному коду, он может найти их в специальной области ОЗУ, называемой дисковым кэшем. В ранних операционных системах функции кэширования диска возлагались на специальное внешнее программное средство, подключаемое через файлы конфигурации. В современных операционных системах эту функцию включают в ядро системы, и она работает автоматически, без участия пользователя, хотя определенная возможность настройки размера кэша за ним сохраняется.
4.7.5. Средства резервного копирования данных
Если на компьютере выполняется практическая работа, объем ценных (а зачастую и уникальных) данных нарастает с каждым днем. Ценность данных, размещенных на компьютере, принято измерять совокупностью затрат, которые может понести владелец в случае их утраты. Важным средством защиты данных является регулярное резервное копирование на внешний носитель. В связи с особой важностью этой задачи операционные системы обычно содержат базовые средства для выполнения резервного копирования.
4.8. Прочие функции операционных систем
Кроме основных (базовых) функций операционные системы могут предоставлять различные дополнительные функции. Конкретный выбор операционной системы определяется совокупностью предоставляемых функций и конкретными требованиями к рабочему месту.
Прочие функции операционных систем могут включать следующие:
- возможность поддерживать функционирование локальной компьютерной сети без специального программного обеспечения;
- обеспечение доступа к основным службам Интернета средствами, интегрированными в состав операционной системы;
- возможность создания системными средствами сервера Интернета, его обслуживание и управление, в том числе дистанционное посредством удаленного соединения;
- наличие средств защиты данных от несанкционированного доступа, просмотра и внесения изменений;
- возможность оформления рабочей среды операционной системы, в том числе и средствами, относящимися к категории мультимедиа;
- возможность обеспечения комфортной поочередной работы различных пользователей на одном персональном компьютере с сохранением персональных настроек рабочей среды каждого из них;
- возможность автоматического исполнения операций обслуживания компьютера и операционной системы по заданному расписанию или под управлением удаленного сервера;
- возможность работы с компьютером для лиц, имеющих физические недостатки, связанные с органами зрения, слуха и другими.
Кроме всего вышеперечисленного, современные операционные системы могут включать минимальный набор прикладного программного обеспечения, которое можно использовать для исполнения простейших практических задач:
- чтение, редактирование и печать текстовых документов;
- создание и редактирование простейших рисунков;
- выполнение арифметических и математических расчетов;
- ведение дневников и служебных блокнотов;
- создание, передача и прием сообщений электронной почты;
- создание и редактирование факсимильных сообщений;
- воспроизведение и редактирование звукозаписи;
- воспроизведение видеозаписи;
- разработка и воспроизведение комплексных электронных документов, включающих текст, графику, звукозапись и видеозапись.
На этом возможности операционных систем не исчерпываются. По мере развития аппаратных средств вычислительной техники и средств связи функции операционных систем непрерывно расширяются, а средства их исполнения совершенствуются.
Вопросы для самоконтроля
1. Что такое операционная система?
2. Перечислите основные функции операционной системы.
3. Расскажите о видах интерфейса пользователя, применяемых в разных операционных системах.
4. Опишите организацию хранения файлов на дисках компьютера.
5. Перечислите функции операционной системы по обслуживанию файловой структуры.
6. Объясните правила, по которым формируются короткое имя файла и длинное имя файла.
7. В чем заключается операция установки приложения?