Типы операционных систем
Для каждой модели компьютера разрабатываются индивидуальные операционные системы. Более того, для одной и той же модели, как правило, имеется несколько различных операционных систем с разным назначением и разными возможностями и свойствами. Так, существуют операционные системы, которые могут управлять одновременным выполнением нескольких программ — многопрограммные — или только одной — однопрограммные ОС. Есть системы, которые могут обслуживать только одного — однопользовательские — или сразу нескольких человек — многопользовательские ОС. Для обеспечения работы локальных и глобальных сетей разработаны сетевые операционные системы. Для IBM-совместимых персональных компьютеров разработано несколько различных семейств операционных систем: MS DOS, Windows, OS/2, Unix и некоторые другие. Наиболее простой операционной системой считается однопользовательская и однопрограммная операционная система MS DOS. Системы Windows, OS/2 и Unix более сложны из-за их многопрограммности, а также включенных в них сетевых возможностей. Первая версия операционной системы MS DOS была разработана в 1981-1982-х годах. Как было отмечено ранее, за годы существования MS DOS разработано большое число версий и модификаций этой системы. Ее последней версией была версия MS DOS 6.22. Затем была разработана значительно более мощная и удобная в использовании операционная система Windows, для которой к моменту написания пособия были выпущены версии Windows 95, Windows 98 и Windows ME. Для указанных версий операционных систем часто используют одно общее обозначение Windows 9.x. Название Windows имеют и сетевые операционные системы Windows NT и Windows 2000, Windows XP. Заметим, что MS DOS оказалась как бы «поглощенной», включенной в состав операционных систем Windows 9.x.
Интерфейс пользователя Взаимодействие пользователя и операционной системы всегда осуществляется по специальным правилам, характерным, особым для каждой операционной системы способом. Эти правила образуют интерфейс пользователя, который является частным случаем рассмотренного выше общего понятия интерфейса. ВНИМАНИЕ Совокупность стандартных соглашений, средств, методов и правил взаимодействия пользователя с той или иной программной системой называется пользовательским интерфейсом (или интерфейсом пользователя) системы. Существуют следующие разновидности пользовательского интерфейса операционных систем: текстовый, табличный и графический интерфейс. Разберем основные особенности тестового интерфейса пользователя, который используется в операционной системе MS DOS. Взаимодействие между пользователем и операционной системой происходит в форме диалога. Это означает, что операционная система после загрузки подает некоторый сигнал о своей готовности к приему указаний, команд пользователя. В операционной системе MS DOS этот сигнал представляет собой выводимое на экран дисплея приглашение к вводу. Обычно приглашение представляет собой символ >, слева от которого может быть выведена некоторая служебная, вспомогательная информация, например, имя некоторого дискового устройства, текущее время, текущая дата и некоторые другие данные. Так, в приглашении 07-04-02 С:\> показано, что текущая дата — это 7 апреля 2002 года, а текущим дисковым устройством является устройство С:. Для запроса на выполнение какой-либо функции операционной системы пользователь должен ввести с клавиатуры справа от символа > указание, команду операционной системе. Команда операционной системы представляет собой записанный по специальным правилам текст, обработав который операционная система «поймет», что именно требует от нее пользователь, и выполнит запрошенное пользователем действие.
ВНИМАНИЕ Командой операционной системы называется записанный по специальным правилам текст, представляющий собой указание операционной системе на выполнение какой-либо из ее функций. Например, узнать версию установленной на компьютере операционной системы можно с помощью следующей команды: 07-04-02 C:\>ver Напоминаем, что команда находится справа от знака приглашения >. В данном случае — это слово «ver» (от version — версия). Если на машине установлена операционная система MS DOS версии 6.22, то выполнение этой команды приведет к выводу на экран дисплея ответа MS DOS Version 6.22 Выполнение любой команды операционной системы фактически сводится к выполнению некоторой программы, которая является составной частью операционной системы, либо к вызову с системного диска и последующему выполнению дополнительной программы. Такие дополнительные, не входящие непосредственно в состав операционной системы программы принято называть утилитами (utility — полезный, практичный). Обычно утилиты выполняют некоторые сервисные функции, типа проверки качества рабочих поверхностей магнитных дисков. Отсутствие какой-либо утилиты на системном диске в целом не нарушает работоспособности операционной системы. Просто в этом случае будет недоступна для выполнения соответствующая ее функция. А вот отсутствие какой-либо составной части операционной системы выводит из рабочего состояния всю систему. Если по ходу выполнения команды операционной системе потребуется дополнительная информация, она задаст вопрос, на который пользователь должен дать ответ. Эти вопрос и ответ также оформляются в виде текстов заранее обговоренной формы и содержания. Если же при выполнении команды встретится нестандартная ситуация, то операционная система сформирует и выведет на экран дисплея информационное или диагностическое сообщение, описывающее сложившуюся ситуацию. Она же подскажет возможные пути дальнейших действий пользователя. После успешного или безуспешного завершения выполнения команды операционная система вновь выводит на экран приглашение и ожидает следующей команды пользователя. Таким образом, диалог пользователя и операционной системы протекает в виде обмена текстовыми фразами. Собственно поэтому интерфейс такого типа и называют текстовым. Так как приглашение MS DOS вместе с командой пользователя обычно занимает на экране дисплея одну строку, то эту строку стали называть командной строкой, а текстовый интерфейс приобрел еще одно название — интерфейс командной строки. Заметим, что популярная сетевая операционная система Unix также использует интерфейс командной строки.
Практика работы с операционной системой MS DOS очень быстро показала, что для большинства пользователей текстовый интерфейс сложен и неудобен, так как пользователю приходится запоминать правила записи достаточно большого количества необходимых в работе команд. Кроме того, нужно вводить с клавиатуры довольно длинные последовательности символов, из которых состоит команда, а если при ее вводе сделана ошибка (что происходило довольно часто) — требуется выполнить повторный ввод команд. Поэтому стали разрабатывать всевозможные вспомогательные программы, которые должны обеспечивать более удобный для пользователя способ взаимодействия с операционной системой. Такие программы получили название оболочек. Являясь по сути дела надстройками над операционной системой, оболочки изменяют стиль и правила взаимодействия пользователя и операционной системы, обеспечивая при этом доступ к ее основным возможностям. ВНИМАНИЕ Оболочкой называется вспомогательная программа, обеспечивающая более удобный для пользователя способ работы с операционной системой. Еще раз подчеркнем, что оболочки не являются независимыми программами, они могут функционировать только совместно с операционной системой, для которой они разработаны. Для MS DOS было разработано несколько различных оболочек — Qdos, Dos Shell, Norton Commander, Volkov Commander, Windows 3.x, среди которых наибольшей популярностью пользовались оболочки Norton Commander (сокращенно — NC), Volkov Commander (VC) и Windows 3.x. Различные оболочки используют разный интерфейс пользователя. Так, оболочки Norton Commander и Volkov Commander используют табличный интерфейс, отличительной особенностью которого является указание или выбор команды или ее элементов в готовой таблице, а не ввод текста команды. Подробнее особенности табличного интерфейса пользователя рассматриваются в седьмой главе данного пособия, которая посвящена изучению оболочки Norton Commander. Оболочки семейства Windows 3.x, в которое, входят Windows 3.0, Windows 3.10, Windows 3.11, отличаются графическим интерфейсом. Особенностью этого интерфейса является широкое использование условных, легко запоминающихся значков, закрепленных за теми или иными действиями, программами, устройствами и т. д. Пользователю достаточно определенным образом указать на нужный значок, и операционная система выполнит связанное с ним действие. Графический интерфейс оказался настолько удачным, что стал основным для операционных систем семейства Windows 9.x, которые пришли на смену операционной системе MS DOS и ее оболочкам Windows 3.x.
ВНИМАНИЕ Windows 3.x — семейство оболочек для операционной системы MS DOS, a Windows 9.x — семейство самостоятельных операционных систем. Подробнее графический интерфейс пользователя рассматривается в главе пособия, которая посвящена изучению интерфейса операционной системы Windows. Файл Одной из важнейших функций любой операционной системы является хранение и поиск информации на внешних запоминающих устройствах. Напоминаем, что внешние запоминающие устройства представляют собой своеобразные информационные склады, где программы и данные хранятся длительное время, до тех пор пока они не понадобятся для решения какой-либо задачи. А теперь представьте себе, что товары на каком-либо складе хранятся без всякой системы. Чем больше склад — тем труднее отыскать нужный товар. Или возьмем, например, шкаф, в котором хранятся различные документы, книги, отчеты, справки и т. д. В случае отсутствия определенной организации хранения поиск нужных документов, особенно если их количество значительно, может оказаться весьма сложной задачей, требующей много времени. Итак, для хранения информации, как и для хранения товаров, необходима определенная система, организация хранения, обеспечивающая быстрый и надежный способ поиска требуемых программ и данных. Для обеспечения надежного хранения и поиска информации на внешних запоминающих устройствах программы и данные в операционных системах организованы в файлы (to file — регистрировать, хранить документы в каком-либо определенном порядке). ВНИМАНИЕ Файлом называется поименованная совокупность данных, имеющая определенную внутреннюю организацию, общее назначение и занимающая некоторый участок внешнего носителя информации.
Можно представлять себе файл, находящийся на внешнем запоминающем устройстве, как документ в портфеле, в ящике стола, в шкафу для документации, а само устройство — как весь портфель, ящик, шкаф. Заметим, что документы могут содержать какие-либо данные или же планы (программы) выполнения каких-либо действий. Из приведенного выше определения следует, что файл имеет собственное имя и занимает определенное место на внешнем носителе информации, например, конкретные сектора и дорожки на одном из дисковых устройств. Укрепляя развитую ранее аналогию, заметим, что документы имеют названия, а при наличии определенной системы за каждым документом закреплено конкретное место хранения, что и позволяет провести аналогию между файлом и отдельным документом. ВНИМАНИЕ Итак, файл — это либо документ, либо программа в электронном виде, хранящиеся на одном из внешних устройств — магнитном или оптическом диске, магнитной ленте и т. д. Файл может содержать: программу в машинных кодах, текст программы на алгоритмическом языке, текст документа, отчет, ведомость на зарплату, статью, числовые данные, запись человеческой речи или музыкальной мелодии, рисунок, иллюстрацию, чертеж, фотографию, видеофильм и т. д. Действия с файлами Над файлами могут быть выполнены следующие основные операции: создание, открытие, закрытие, изменение (редактирование), копирование, перемещение, переименование и уничтожение. § Создание файла осуществляется по указанию пользователя или автоматически, средствами различных программных систем, таких как операционные системы, оболочки, инструментальные системы программирования и т. д. За создаваемым файлом закрепляется некоторое название, ему выделяется место на дисковом носителе, и он определенным образом регистрируется в операционной системе. Вновь созданный файл может быть заполнен какой-либо информацией. В некоторых ситуациях создаются пустые файлы, то есть файлы, не содержащие никаких данных, но полностью готовые к их приему. Создание файла образно можно представлять себе как подготовку некоторого документа и выделение ему соответствующего места хранения. А создание пустого файла аналогично подбору названия для документа и определению места для его хранения. При этом формирование содержания документа откладывается на некоторое время. § Открытие файла означает подготовку файла к работе с какой-либо программной системой. Процесс подготовки, в частности, включает в себя поиск файла на дисковом носителе и подготовку различных вспомогательных таблиц, с помощью которых информация либо заносится в файл, либо выбирается из него. Как правило, открытие файла осуществляется автоматически той программной системой, которая используется для работы с ним. Открытие файла можно представлять как поиск в шкафу нужного документа и перенос его на рабочий стол для прочтения или внесения в документ каких-либо изменений. § Закрытие файла означает разрыв связи между файлом и программной системой и сохранение его текущего состояния. Закрытие файла, как и его открытие, осуществляется программной системой по специальному указанию пользователя или же автоматически. Закрытие файла аналогично возврату документа, в который вносились изменения, на место его постоянного хранения. Если оставить документ на рабочем столе, то он может оказаться случайно испорченным или уничтоженным, и все изменения, внесенные в него, окажутся потерянными. § Изменением файла считается внесение любых изменений в данные, являющиеся его содержимым. Изменения, вносимые в содержащие какой-либо текст файлы, принято называть редактированием файла. § Копирование файла означает, что на том же самом или на другом внешнем устройстве или носителе информации создается точная копия исходного файла. Оригинал при этом остается на своем старом месте, и таким образом, на внешних устройствах получается два полностью одинаковых экземпляра исходного файла. Копирование файла можно трактовать как снятие копии с документа и ее размещение для хранения в другом месте, например в другом шкафу. Это может быть сделано, скажем, для обеспечения надежности хранения документа или с какой-либо иной целью. § Перемещение файла означает, что после копирования файла на другое место оригинал уничтожается, в результате остается только один его экземпляр. Перемещение файла можно представлять как перенос документа с одного места его хранения в другое, например в другой шкаф. § Переименование файла означает закрепление за файлом нового названия, при этом старое его название безвозвратно теряется. § Уничтожение (удаление) файла приходится выполнять в тех случаях, когда устаревшая информация, хранящаяся в файлах, загромождает внешний носитель и теряется возможность записи на этот носитель новой полезной информации. В операционных системах удаление осуществляется так, что во многих случаях сохраняется возможность восстановления случайно уничтоженного файла. Можно представлять себе, что ненужный в дальнейшем документ выброшен в корзину для бумаг. Если случайно был выброшен важный документ, то, хорошенько порывшись в корзине, этот документ можно найти и продолжить работу с ним. Разумеется, если содержимое корзины не было окончательно уничтожено. Атрибуты файла Каждый файл обладает рядом характерных свойств — атрибутов. Важнейшими атрибутами файла являются: название, расширение, длина, время и дата создания. Название файла. Название, или имя файла, точно так же как и имя человека, название документа, книги, служит для того, чтобы иметь возможность отличить один файл от другого, указать на нужный файл. В различных операционных системах названия файлов формируются по разным правилам. Например, в операционной системе MS DOS название файла представляет из себя последовательность букв латинского алфавита, цифр и некоторых специальных знаков (~, _, -, $, &, @, %,^,!, (.), {. },#,','). Название может содержать от одного до восьми символов и выбирается произвольным образом. Однако желательно подбирать названия файлам так, чтобы пользователь мог легко вспомнить, что именно хранится в этом файле. Например, файл, содержащий отчет за 4-й квартал, можно назвать otchet4, файл с ведомостью на зарплату — vedzarpl, а файл с каким-либо рисунком целесообразно назвать picture. Обратите внимание! В операционной системе MS DOS название файла не может содержать пробелов, букв русского алфавита и точек. Кроме того, оно не может содержать более восьми символов. Вообще говоря, это достаточно существенные ограничения. Например, файл, содержащий отчет предприятия за 4-й квартал, который мы назвали otchet4, желательно было бы назвать «Отчет за 4-й квартал», в крайнем случае «Otchet za 4 kvartal», применив так называемую транслитерацию, когда слова одного языка записываются буквами другого. В операционных системах Unix и Windows 9.x сняты ограничения на длину названия, использование пробелов и точек в названии. А в операционной системе Windows 9.x, кроме того, в названии можно использовать русские буквы. Таким образом, файл в Unix может иметь название «Otchet za 4 kvartal», а в Windows 9.x допускается и название «Отчет за 4-й квартал». Расширение файла. Кроме названия каждый файл может иметь или не иметь расширение. Расширение используется для того, чтобы определенным образом охарактеризовать содержимое файла. Например, расширения doc и txt указывают на то, что файл содержит какой-либо документ или текст, а расширение bmp имеет файл, содержащий изображение в формате битовой карты. Расширение, если оно есть, отделяется от названия файла точкой. В операционной системе MS DOS расширение может содержать от одного до трех символов, например, otchet4.doc, vedzarpl.txt, picture.bmp, а в системах Unix и Windows 9.x допускается более трех символов. Если расширения нет, то точка в названии файла не ставится. Название вместе с расширением называют полным именем файла. Если файл создается с помощью какой-либо программной системы, то, как правило, он автоматически получает стандартное для данной системы расширение, и пользователю достаточно выбрать или указать только название. Впоследствии по стандартным расширениям программная система опознает «свои» файлы. В операционных системах предусмотрен целый ряд стандартных расширений. В таблице 6.1 приведены некоторые часто встречающиеся расширения MS DOS и Windows 9.x.
Таблица 6. 1. Некоторые расширения MS DOS и Windows 9.x
Файлы с расширением.соm (common — общий) и. ехе (execute — выполнение) содержат программы на машинном языке. Эти файлы часто называют программными файлами. Различия между .com- файлами и. ех е -файлами касаются их внутренней организации. На способах обращения с файлами эти различия никак не сказываются. Файлы срасширением.bat (batch — пачка) содержат произвольные последовательности команд операционной системы. Такие файлы принято называть командными файлами. Использованный в табл. 6.1 термин «выполняемый файл» объединяет понятия «программный файл» и «командный файл». Другими словами, «выполняемый файл» означает, что файл содержит либо программу на машинном языке, которая может быть непосредственно выполнена процессором компьютера (файлы с расширениями.ехе и.com), либо последовательность команд операционной системы (файл с расширением.bat), которые тоже выполняются, но только путем обращения к соответствующим программам и средствам операционной системы. При внесении в файл каких-либо изменений целесообразно сохранить предыдущий вариант файла с тем, чтобы при необходимости отменить сделанные изменения и вернуться к первоначальному варианту. Поэтому многие программные системы после внесения в файл изменений автоматически формируют резервный файл, в котором находится первоначальный вариант содержимого файла. Резервный файл имеет то же самое имя, что и исходный файл, но любое его расширение заменяется стандартным для резервных файлов расширением.bak (back — назад, обратно). Например, если изменения были внесены в файл otchet4.doc, то самый последний вариант файла будет иметь то же самое название otchet4.doc, и при этом автоматически будет создан резервный файл otchet4.bak, в котором сохранится старый вариант содержимого файла. Попутно заметим, что если изменения вносятся в большое число файлов, то на диске постепенно скапливается много резервных файлов, поэтому время от времени приходится выполнять «уборку» на диске — уничтожать ставшие уже ненужными или устаревшие резервные файлы. В целом ряде случаев программная документация поставляется покупателю не на бумаге, а в виде текстовых файлов на дисковых носителях. Обычно таким файлам приписывают расширение.doc (documet — документ). Кроме того, некоторые текстовые редакторы автоматически дают «своим» файлам (то есть файлам, подготовленным с их помощью) это же расширение.doc. Расширение.txt (text — текст) — еще один распространенный вариант расширений, закрепляемых за файлами, которые содержат разнообразные тексты. А файлам с числовыми данными удобно давать расширение.dat (data — данные). Ранее упоминалось о том, что достаточно часто в программах предусматривается встроенная справочная система, обращаться к которой можно во время выполнения программы. Такая система, как правило, содержит всю необходимую справочную информацию в файлах «помощи» с расширением.hip (help — помощь). Для обеспечения другой важной функции операционной системы — выполнения операций по обмену данными между программой и различными внешними устройствами — в составе системы имеется ряд специализированных на управлении конкретными внешними устройствами программ, которые принято называть драйверами (drive — управлять). Драйверы поставляются либо в комплекте программ и файлов операционной системы, либо вместе с устройством, которым они управляют. Отсутствие или применение не соответствующего устройству драйвера делает его бесполезным. Поэтому, приобретая какое-либо внешнее устройство, необходимо обращать внимание на наличие драйвера — программы управления этим устройством. Наиболее часто используемыми драйверами являются драйверы управления клавиатурой, дисплеем, принтером, мышью и т. д. Файлы, содержащие драйверы, имеют расширения.ехе или.sys (system — система). Иногда программным системам приходится сохранять промежуточную, рабочую информацию на дисковых устройствах. Для этого формируются специальные файлы, которые достаточно часто получают расширение.tmp (temporary — временный). Как правило, временные файлы после окончания работы программы автоматически уничтожаются. Но бывают ситуации, когда такие файлы все-таки остаются на диске, и тогда по указанному расширению их легко опознать и при необходимости уничтожить. Различные графические редакторы также закрепляют за файлами, подготовленными с их помощью, определенные расширения. Одно из таких расширений — расширение.bmp (bit map — битовая карта). Длина файла. Следующим важным атрибутом файла является его длина. Длина файла равна объему занимаемого файлом участка диска или ленты, и, следовательно, измеряется в байтах. Значение этого атрибута используется для определения возможности размещения файла на свободном участке дискового носителя и в некоторых других целях. Время и дата создания файла. При первоначальной записи файла на диск, а также при внесении в файл изменений с помощью системных часов (специальной программы, входящей в состав операционной системы) автоматически фиксируются время и дата записи файла на дисковое устройство. При выключенном компьютере работа системных часов поддерживается за счет специальных батареек или других источников питания. Поэтому системные часы довольно точно отслеживают время. Атрибуты даты и времени используются для опознания последних по времени вариантов файла. Кроме рассмотренных основных атрибутов файла в операционной системе MS DOS файлы имеют еще четыре атрибута — только для чтения, системный, скрытый и архивный. Каждый из этих атрибутов имеет ровно два состояния — атрибут включен или атрибут выключен. Включение атрибута только для чтения (иногда его называют атрибутом разграничения доступа) означает, что файл недоступен для внесения в него каких-либо изменений. Кроме того, усложнено уничтожение такого файла. После выключения атрибута только для чтения файл доступен для любых операций. Атрибут системный обычно включен только у основных файлов операционной системы. У всех остальных файлов атрибут системный, как правило, выключен. Атрибут скрытый включен у тех файлов, которые при просмотре списка файлов, находящихся на дисковом устройстве, командой операционной системы в этот список не включаются. Остальные файлы имеют выключенное значение атрибута скрытый. Для обеспечения надежности хранения информации на дисковых устройствах необходимо иметь одну или две копии файлов, содержащих важную информацию. Для этого организуют архивные файлы. При записи файла в архив атрибут архивный включается. Это значит, что копия последнего варианта файла находится в архиве. При внесении любых изменений в такой файл атрибут архивный выключается. Это значит, что в архиве имеется устаревший вариант файла (или же файл вообще не архивирован). Специальные программы-архиваторы, отслеживая значение атрибута архивный, могут обновлять в архиве только те файлы, в которых были сделаны изменения. Это позволяет оптимизировать работу архиваторов. Каждый из рассмотренных атрибутов задается одним битом. Эти биты вместе с некоторой дополнительной информацией образуют байт атрибутов. Групповое имя файлов. При выполнении операций с файлами иногда возникают ситуации, когда одно и то же действие нужно выполнить с целой группой файлов. Например, нужно переписать (скопировать) несколько файлов с диска С: на диск А: с целью последующего переноса этих файлов на другую машину. Или, скажем, требуется уничтожить все устаревшие резервные файлы с целью освобождения места на дисковом устройстве для записи полезной информации. Конечно, такие действия можно выполнять последовательно, задавая одно и то же нужное действие для каждого файла группы. Однако этот подход может потребовать очень много времени и сил, особенно если группа состоит из достаточно большого числа файлов. В операционной системе MS DOS предусмотрен способ, упрощающий коллективные действия с файлами. Действие, которое нужно выполнить над группой файлов, задается только один раз, но вместе с действием указывается не полное имя одиночного файла, а специальное имя, которое позволяет операционной системе выделить, опознать все файлы группы и затем выполнить над ними нужное действие. Такое имя называют групповым именем, шаблоном или маской. Групповое имя образуется с помощью символов * и?. Символ *, встретившийся в групповом имени, трактуется операционной системой как «любая последовательность любых символов названия». То есть этому символу соответствует любое количество любых символов названия. Так, групповому имени а* соответствуют любые названия, начинающиеся с буквы «а»: а1, azbuka, a2z4. Символ? воспринимается ОС как любой одиночный символ, то есть ему соответствует ровно один произвольный символ имени. Например, шаблону otchet7.doc соответствуют любые имена с расширением.doc, в названии которых за отрезком названия otchet следует ровно один символ, например otchet1.doc, otchet4.doc, otchet%.doc, otchet*.doc и т. д. Рассмотрим еще несколько примеров: §??.txt — файлы с любыми двухбуквенными именами и расширением.txt; § *.bak — файлы с любыми именами и расширением.bak; § progl.* — файлы с названием progl и любым расширением; § *.* — файлы с любыми названиями и любыми расширениями. Каталог Чтобы прочитать содержимое файла, необходимо знать его местоположение на дисковом устройстве. Каждый файл занимает на диске определенную группу секторов. Следовательно, местоположение файла можно задавать, указывая номера секторов и дорожек, занятых файлом. Однако такой способ указания местоположения файла очень неудобен, так как в этом случае пользователю необходимо знать номера всех секторов диска, которые отведены под файл. Как было выяснено ранее, для повышения эффективности обмена данными несколько подряд расположенных секторов объединяются в кластер, и обмен осуществляют сразу всей группой секторов. Такая схема организации обмена существенно увеличивает скорость выполнения операций обмена данными с винчестерскими дисками. Кроме того, чтобы не задавать три отдельных числа (номер рабочей поверхности, номер дорожки и номер сектора) в качестве адреса сектора, с которого начинается кластер, для всех кластеров диска введена единая, сплошная нумерация. Таким образом, для определения кластера, в котором начинается файл, теперь достаточно указывать только одно число — порядковый номер кластера на диске. На любом дисковом носителе имеется несколько служебных таблиц, содержащих всю необходимую информацию о положении файлов на этом дисковом носителе. Совокупность всех служебных таблиц образует файловую систему диска. Одна из таких таблиц, с которой в основном приходится иметь дело пользователю, называется каталогом (директорией). ВНИМАНИЕ Каталогом называется таблица файловой системы диска, которая содержит список всех записанных на этот диск файлов. Для каждого файла в этой таблице указываются значения всех его атрибутов, а также номер первого выделенного файлу кластера. С точки зрения своего назначения, каталог можно сравнить с оглавлением в книге, в котором для каждой главы указан начальный номер страницы, или с описью документов, хранящихся в шкафу. Как в книге для определения положения той или иной главы можно по названию главы в содержании книги определить, на какой странице она начинается, так и операционная система по названию файла находит в каталоге кластер, в котором он начинается.
Таблица 6.2. Фрагмент каталога
Таблицу 6.2 можно рассматривать как пример фрагмента каталога, за тем исключением, что в реальных каталогах информация представлена не символами, а в виде соответствующих машинных кодов. Байт атрибутов в таблице представлен в шестнадцатеричной форме. Приведенное в ней значение байта атрибутов 0016 означает, что все неосновные атрибуты файла выключены и, следовательно, файлы, присутствующие во фрагменте каталога, являются обычными файлами. Вообще говоря, выше изложена несколько упрощенная схема работы файловой системы при поиске и считывании файла с дискового устройства. На самом деле аналогия между каталогом и оглавлением в книге только частичная из-за того, что кластеры выделяются файлу на диске не сплошным массивом, а вразброс, в то время как в книге все страницы главы размещаются подряд. Представьте себе, что одна из глав книги занимает страницы 5,15,16, 17, 31, 123,124 вместо того, чтобы занимать страницы 5,6,7,8,9,10,11 подряд. Такое несплошное выделение кластеров файлам организовано для того, чтобы оптимизировать использование свободного пространства диска при многочисленных уничтожениях и записях файлов. Для того чтобы все-таки знать, какие именно кластеры и в каком порядке выделены для хранения файла, в файловой системе предусмотрена другая таблица, имеющаяся на любом дисковом устройстве. Эта таблица называется FAT (File Allocation Table — таблица размещения файла). Каталог содержит только номер начального кластера файла. А таблица FAT — номера всех остальных занятых файлом кластеров. В подавляющем большинстве случаев пользователю не приходится работать с таблицей FAT, так как она заполняется при записи файла и анализируется при его считывании автоматически. Каталог и одна или две таблицы FAT (для обеспечения большей надежности таблица FAT, как правило, дублируется) автоматически создаются в процессе форматирования на любом дисковом носителе. Созданный автоматически каталог принято называть корневым. Корневой каталог вместе с таблицами FAT и начальным (нулевым, стартовым) сектором диска образуют его системную область. Рассмотренная выше простая структура каталога, в котором все файлы образуют один общий список, может обеспечить удовлетворительную работу операционной системы только в случае небольших объемов диска и ограничивает общее число файлов, которые могут быть записаны на диск. Так, на гибких дисках объемом 1,44 Мбайт корневой каталог может содержать сведения не более чем о 224 файлах. А когда объем диска становится достаточно большим и, следовательно, на диске могут быть записаны сотни и тысячи файлов, простая структура каталога приводит к существенному замедлению процесса поиска файла на диске или переполнению каталога. Представьте себе список хранящихся в шкафу документов из нескольких тысяч названий. Совершенно очевидно, что работать с таким списком очень неудобно. В реальной жизни документы в шкафах сгруппированы по каким-либо признакам в папки. При этом в описи содержимого шкафа указываются не отдельные документы, а папки. Аналогичным образом каталог в операционных системах имеет более сложную структуру. Произвольные группы файлов каталога могут объединяться и образовывать подкаталоги. В некоторых операционных системах подкаталоги называются папками. Фактически подкаталоги, как и корневой каталог, являются таблицами, размещаемыми на диске и содержащими информацию об отнесенных к подкаталогу файлах. В отличие от корневого каталога, положение подкаталогов на диске не привязано к системной области. Поэтому размеры подкаталогов могут быть достаточно произвольными, что позволяет снять ограничение на количество указываемых в подкаталоге файлов. Подкаталоги создаются пользователями по своему усмотрению. Каждый подкаталог имеет собственное имя (обычно без расширения), которое подбирается по тем же правилам, что и имя файла. Группировка и включение файлов в подкаталог могут производиться п
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|