Классификация операционных систем
В настоящее время существует большое разнообразие ОС. Они классифицируются по следующим признакам:
1) по числу процессов, которые могут одновременно выполняться под управлением ОС;
2) по количеству пользователей, одновременно обслуживаемых системой;
3) по режиму обработки пользовательских программ;
4) по типу средств вычислительной техники, для управления ресурсами которых система предназначена.
Число пользовательских программ (процессов), одновременно обрабатываемых системой, определяет режим работы системы. Если ОС выполняет пользовательские программы строго одну после другой, т.е. в каждый момент времени в процессе обработки находится только одна программа, то говорят об одно- или монопрограммном режиме работы системы. При этом каждая программа выполняется без ее прерывания в процессе вычисления. Если же в один и тот же момент времени в процессе выполнения может находиться много программ (обрабатываться несколько запросов пользователей), то говорят о много- или мультипрограммном режиме работы системы.
По числу пользователей различают однопользовательские и многопользовательские ОС. В однопользовательском режиме вычислительная система используется только одним пользователем. В этом случае достаточно однопрограммного режима работы. Однако если и здесь желательно определенные запросы пользователя выполнять параллельно (типичный пример - печать результатов как фоновый процесс), то однопрограммного режима работы уже недостаточно даже для одного пользователя. В многопользовательском режиме несколько пользователей одновременно применяют вычислительную систему.
В соответствии с третьим признаком ОС делятся на:
- системы с пакетной обработкой, когда из программ, подлежащих выполнению, формируется пакет, который предъявляется ЭВМ;
- системы разделения времени, обеспечивающие одновременный диалоговый (интерактивный) доступ к ЭВМ нескольких пользователей через терминалы;
- системы реального времени, которые должны обеспечивать гарантированное время ответа на внешние события.
В пакетном режиме обрабатываются потоки пакетов запросов (процессов). Пользователь предварительно полностью декларирует все части своего пакета запросов - до того, как он будет введен в систему. После этого заданный пакет запросов обрабатывается вычислительной системой - без того, чтобы пользователь мог как-либо влиять на этот процесс. В этом случае пользователи непосредственно с ОС не взаимодействуют. Данный тип ОС предназначен для наиболее эффективного использования ресурсов ЭВМ, особенно процессора.
ОС разделения времени - это система, которая обеспечивает одновременное обслуживание многих пользователей (работающих «в линию» с ЭВМ - on-line-users), позволяя каждому пользователю взаимодействовать со своим процессом. В этом режиме пользователь передает ОС один запрос после другого в диалоге с системой. При обработке запросов пользователя, как правило, возникает дальнейший диалог с форме задания данных и вывода результатов. Таким образом, имеет место взаимодействие между пользователем (и вообще окружением системы) и ОС, а также пользовательской программой в запросе пользователя. Составные части запроса могут формулироваться примерно в той же форме, что и на языке программирования, т. е. путем ввода последовательности знаков, или же путем выбора из меню (например, с помощью пиктограмм). Технически ввод может производиться с помощью клавиатуры или следующих устройств:
- светового пера,
- мыши,
- контактного экрана,
- речевого ввода (ограниченно).
Вывод в диалоге осуществляется с помощью печатающих устройств, экрана или других оптических и акустических сигналов, включая синтезированную речь. В диалоге могут использоваться различные уровни работы с ОС, такие, как уровень команд, которые могут быть направлены прямо ОС, или уровень специальных применений, например систем обработки текстов, редакторов или проблемно-ориентированных диалоговых программ. С помощью специальных команд можно переходить от одного уровня к другому.
Диалоговый режим требует особых свойств интерфейса между пользователем и системой. В идеальном случае пользователь должен иметь возможность легко вести диалог, лучше всего без использования дополнительных письменных инструкций. Это требует предоставления ему дополнительной информации (объяснение системных функций и состояния системы в данный момент), а также помощи при выдаче сообщений об ошибках (диагностика ошибок и пути их устранения). Особое значение имеет простота и наглядность представления требуемой информации о текущем состоянии системы. Далее, все системные функции должны возможно больше соответствовать ожиданиям и интуиции пользователя. Это приводит в область эргономики программного оборудования, которая имеет своей целью по возможности простое и понятное оформление пользовательского интерфейса.
ОС реального времени - это система, которая обслуживает внешние процессы, развивающиеся на устройствах, работающих «в линию» с ЭВМ, имеющие жесткие ограничения на время ответа. Действиями системы управляют сигналы прерывания от внешних процессов. Если они не будут быстро обработаны (в течение микросекунд, миллисекунд или секунд в зависимости от процесса), то ход внешнего процесса может исказиться. Эти системы часто проектируются для частного применения, например для управления технологическим процессом.
По четвертому признаку ОС делятся на однопроцессорные, многопроцессорные, сетевые и распределенные.
ОС не могут, как правило, предоставить пользователям возможности, которыми не обладает ЭВМ. Они в состоянии только эффективно использовать аппаратные средства компьютера.
УПРАВЛЕНИЕ ФАЙЛАМИ
Для обеспечения удобства работы с записанными на диск сведениями их размещают в файлах. Файлом называется поименованная целостная совокупность данных на внешнем носителе информации. В этом контексте под данными понимается любая информация, включающая программы и исходные данные для их выполнения, результаты выполнения программ, тексты, иллюстрации и т.п.
Под файловой системой понимают функциональную часть операционной системы, обеспечивающую управление файлами, которые хранятся во внешней памяти.
Файловые системы, как правило, имеют только программный интерфейс. Однако это не означает, что их услугами невозможно воспользоваться через пользовательский интерфейс операционной системы, которая может транслировать команды, вводимые пользователем, в программные запросы к файловой системе.
В данном разделе будут рассмотрены как непосредственно сами файлы, их типы и характеристики, так и функции системы управления файлами.
Файлы
Файлом называется поименованная целостная совокупность данных на внешнем носителе информации. Пользователь вычислительной системы организует информацию в файлах, вводя в них определенную логическую структуру. В соответствии с ней файл определяется как совокупность элементарных единиц информации одной природы - записей. Записи в свою очередь подразделяются на поля.
С каждым файлом в операционной системе связываются:
- составное имя файла;
- тип файла;
- атрибуты файла.
Имя файла
Составное (полное) имя файла представляет собой совокупность имени файла и расширения имени файла.
Имя файла - это последовательность символов, в качестве которых допускается использовать буквы латинского алфавита от А (а) до Z (z), цифры от 0 до 9, а также символы @, #, $, %, &, (, ), -, _, ~, ‘, { и }. Можно также использовать буквы национального алфавита, поддерживаемого активизированной кодовой страницей. Никаких ограничений на порядок следования символов в имени файла не налагается, а одноименные строчные и прописные буквы в ряде операционных систем (в частности, в DOS) не различаются. Возможно, легче запомнить недопустимые в имени файла символы: /, запятая, ; , +, [, ], =, ", *,?, :, ., < и >. В качестве имен файлов по вполне понятным причинам нельзя использовать имена посимвольных устройств. Длина имени файла в разных операционных системах может составлять до 8 (в MS DOS) или до 256 (в UNIX и Windows 95 или Windows NT) символов.
Имя файла - это обязательный элемент и поэтому при доступе к файлу оно должно указываться всегда.
Расширение имени файла характеризует тип (содержимое) файла и представляется последовательностью из не более трех символов, допустимых для имени файла. При этом ограничения на использование имен устройств в качестве расширения отсутствуют.
Расширение имени файла является необязательным элементом и поэтому при создании файла может не задаваться. Однако это снижает информативность составного именования файла.
В командах операционной системы и программах на языках программирования составное имя файла записывается как имя файла, за которым следует расширение, отделенное от имени точкой.
Если файл не имеет расширения, то оно, естественно, при обращении к нему не указывается. В этом случае точка тоже может быть опущена. Но если требуется подчеркнуть отсутствие расширения в том контексте, где оно подразумевается по умолчанию, то точка необходима.
Умолчания расширений файлов поддерживают многие распространяемые программные продукты. При работе с таким программным обеспечением крайне желательно придерживаться принятых в нем соглашений. В этом случае явно указывать расширения существующих и создаваемых файлов необязательно, что упрощает диалог. Но сказанное не означает, что расширений имен файлов реально не существует и что они реально не будут созданы.
Таким образом, расширение имени файла не указывается в двух случаях:
- когда оно отсутствует;
- когда оно подразумевается по умолчанию и правила умолчания не противоречат тому, что требуется выполнить.
С учетом сказанного пользователь может в остальном использовать произвольные расширения, но желательно, чтобы они, как и имена файлов, несли какую-либо смысловую нагрузку.
Перечень умолчаний расширений имен файлов, используемых существующими программными продуктами, а также часто используемых расширений, ставших в определенном смысле стандартными, в алфавитном порядке приведен в табл. 2.1.
Таблица 2.1
Расширение
| Назначение
|
|
| ARC
| Архив
| ASM
| Программа на языке Ассемблера
| BAK
| Предыдущая (резервная) версия файла
| BAS
| Программа на языке Basic
| BAT
| Командный файл
| BIN
| Двоичный файл, в том числе машинная программа
или драйвер
| C
| Программа на языке C
| CFG
| Файл, описывающий конфигурацию (параметры)
программы
| CHI
| Документ текстового редактора ChiWriter
| COB
| Программа на языке Cobol
| COM
| Позиционно-независимая машинная программа
| CPI
| Файл кодовых страниц периферийных устройств
| DAT
| Файл данных
| DB
| База данных
| DBF
| Файл данных с развитой организацией (dBase)
| DOC
| Документ, подготовленный одним из текстовых
редакторов, в частности, MicroSoft Word
| DRV
| Драйвер
| EXE
| Позиционно-зависимая машинная программа
| EXT
| Файл расширений
| FNT
| Файл со шрифтами для принтера
| FOR
| Программа на языке Fortran
| HLP
| Файл, содержащий экранный интерактивный справочник
| INI
| Файл, описывающий конфигурацию (параметры)
| LET
| Письмо
| | | | Продолжение табл. 2.1
|
| LIB
| Библиотека подпрограмм
| LSP
| Программа на языке Lisp
| LST
| Листинг программы
| MAC
| Макрокоманда на языке Ассемблера
| MAP
| Листинг компоновщика
| MNU
| Файл меню
| MSG
| Файл сообщений программы
| OBJ
| Объектная программа
| OVG
| Оверлейный файл
| OVL
| Оверлейный файл
| OVR
| Оверлейный файл
| PAS
| Программа на языке Pascal
| PCX
| Иллюстрация графического редактора PC PaintBrush
| PIC
| Иллюстрация
| PIF
| Оверлейный файл
| PRN
| Файл, подготовленный для вывода на принтер
| PRG
| Программа на языке Clipper, FoxPro
| SYS
| Драйвер, если имя файла отлично от IO, MSDOS и CONFIG
| TMP
| Временный файл
| TPL
| Библиотека объектных модулей Turbo Pascal -я
| TPU
| Объектный модуль Turbo Pascal - я
| TXT
| Текстовый файл
| $$$
| Временный файл
| ZIP
| Архив
|
Расширение СОМ (от COMmand - командный) зарезервировано для файлов, содержащих готовые к выполнению машинные программы, не требующие перемещения при загрузке их в оперативную память для выполнения независимо от адреса загрузки. Иными словами, программа инвариантна к адресу загрузки. Она может быть загружена в оперативную память и выполнена без настройки содержащихся в ней адресов по месту загрузки. Размер такой программы не может превышать одного сегмента (64 Кбайт). СОМ-программу можно назвать позиционно независимой.
Расширение ЕХЕ (от EXEcutable - выполняемый) зарезервировано для файлов, содержащих готовые к выполнению машинные программы, которые при загрузке на выполнение в оперативную память требуют настройки адресов, что увеличивает общее время выполнения программ. Такой программе предшествует заголовок, содержащий необходимую для перемещения информацию, а ее размер может быть больше 64 Кбайт. ЕХЕ-программу называют позиционно зависимой.
Как позиционно независимые, так и позиционно зависимые программы являются перемещаемыми в том смысле, что могут быть размещены для выполнения в любом месте оперативной памяти. В отличие от перемещаемой абсолютная программа должна загружаться в память по вполне определенному адресу.
Любой файл, содержащий исполняемую программу, будем называть программным.
Расширение BAT (от BATch - командный) зарезервировано для командных файлов, т.е. текстовых файлов, содержащих программы на командном языке операционной системы.
Файлы с расширениями СОМ, ЕХЕ и BAT (если их содержимое соответствует выше сказанному) называются исполняемыми. Исполняемыми являются также файлы и с другими расширениями, если они содержат готовые к выполнению машинные программы или программы на командном языке. Однако такие файлы не всегда могут быть выполнены без предварительного явного изменения расширения в соответствии с их содержимым. Некоторые операционные системы (в частности DOS) распознают формат СОМ- и ЕХЕ - файлов (но только их) по содержимому, а не по расширению. Поэтому файлы с перемещаемыми программами могут иметь любое расширение, но тогда при запуске такого файла на выполнение расширение придется указать явно. Изменение расширений программных файлов можно иногда применять для защиты от компьютерных вирусов. Вместе с тем командный файл обязательно должен иметь расширение BAT, чтобы его можно было выполнить.
Типы файлов
Как правило, операционная система различает файлы в двух форматах : двоичные и текстовые.
Двоичный файл - это файл общего вида, на содержимое которого не накладывается никаких ограничений. Считается, что он состоит из последовательности байтов (рис.2.1,а), возможно, сгруппированных в логические записи фиксированной длины. Последняя запись может быть неполной. В двоичных файлах хранятся исполняемые программы и "снимки" основной памяти, т.е. какие-либо данные во внутреннем представлении. Несмотря на то, что ограничения на содержимое двоичных файлов отсутствуют, файлы с исполняемыми программами при их запуске на выполнение должны иметь определенную структуру, что операционная система обязательно анализирует. В других же случаях (при записи в двоичный файл или чтении из такого файла) его содержимое абсолютно никакой роли не играет и ни на что не влияет.
Текстовым (ASCII - American Standard Code for Information Interchange - американский стандартный код для обмена информацией) файлом называется файл, содержимое которого без преобразования может быть выдано на экран дисплея или принтер и непосредственно воспринято человеком. Такой файл состоит из последовательности строк постоянной (рис.2.1,б) или переменной длины (рис.2.1,в), которые можно считать логическими записями. Каждая строка содержит только текстовые символы (символы пишущей машинки) и завершается маркером конца строки EOL (End Of Line). Роль маркера EOL играет символ возврата каретки CR (Carriage Return), за которым, возможно, следует символ перевода строки LF (Line Feed). В качестве исключения внутри строк текстового файла допустим символ горизонтальной табуляции HT (Horizontal Tabulation), заменяющий несколько расположенных подряд пробелов и обеспечивающий сдвиг остатка строки вправо, к очередной позиции табуляции, при выдаче файла на устройство вывода. Текстовый файл обычно завершается маркером конца файла EOF (End Of File), роль которого играет символ подстановки SUB (SUBstitute). Однако иногда маркер EOF может отсутствовать. Часто между некоторыми строками текстового файла размещают еще один управляющий символ - символ перевода формата FF (Format Feed), обеспечивающий прогон бумаги на принтере до начала следующей страницы. На экране же дисплея он отображается как таковой и ни к каким действиям не приводит. В текстовых файлах хранят различные текстовые документы, в том числе исходные программы, данные к ним, а также окончательные результаты их выполнения. Конечно, для хранения данных экономнее использовать двоичные файлы, однако такие файлы не могут быть проинтерпретированы человеком. Поэтому данные записывают одной программой в двоичный файл только тогда, когда они в последующем понадобятся другой или этой же программе.
Многие программные продукты, в частности, текстовые редакторы, создают файлы, близкие к текстовым, но содержащие дополнительные управляющие символы, например, для задания шрифтов, интервалов, разбивки текста на абзацы или строки и т.п. При копировании таких файлов на экран дисплея или принтер средствами операционной системы отнюдь не всегда удается получить нормально читаемый документ. Несмотря на наличие управляющих символов, их иногда называют текстовыми (но не ASCII-) файлами.
а) б) в)
Рис. 2.1. Структура файла
Атрибуты файла
Атрибуты файла определяют способы его использования и права доступа к нему. Атрибуты файла содержатся в дескрипторе файла или блоке управления файлом. Набор атрибутов файла, входящих в состав дескриптора, зависит
от конкретной операционной системы. Дескриптор файла может включать следующие элементы:
- информацию о правах доступа, которая включает идентификацию владельца, список назначенных пользователей и права доступа, установленные для каждого класса пользователей. Частью этой информации являются пароли, если они используются;
- флаги, устанавливающие способы использования файла :
R (Read-only) - файл предназначен только для чтения и не может быть ни изменен, ни удален (без повторного запроса на удаление); однако можно скопировать файл и изменить или удалить его копию;
A (Archive) - архивный файл (лучше говорить «неархивированный»); атрибут приписывается каждому создаваемому файлу и сбрасывается средствами архивирования и резервирования файлов; может использоваться этими средствами для определения файлов, подлежащих архивации или резервированию;
H (Hidden) - скрытый файл, имя которого может не выводиться (при соответствующей конфигурации оболочки) на экран дисплея;
S (System) - системный файл;
- физическое размещение во внешней памяти. Если весь файл целиком занимает один последовательный участок внешней памяти, то достаточно указать его начало и длину. Если же записи файла рассредоточены, то дескриптор содержит либо непосредственно полную информацию о размещении, либо указатель на некоторую таблицу, где находится по крайней мере начало этой информации;
- тип организации файла (последовательная, индексно-последовательная и т. д.);
- дескриптор устройства - информацию о физическом устройстве, на котором размещается файл. Чтобы устранить копирование этой информации в дескрипторе каждого файла, расположенного на данном устройстве, можно вместо дескриптора устройства хранить указатель на него;
- тип файла, включающий в себя такую информацию, как назначение файла (например, данные, исходная программа на Паскале, объектный файл) и его представление (например, двоичное, в коде ASCII);
- статус, указывающий, является ли файл временным, подлежащим уничтожению по окончании использующего его процесса, или постоянным. Для постоянных файлов статус может указывать, должны ли автоматически создаваться копии файла;
- административная информация, которая включает дату создания файла, дату последнего изменения, число обращений, идентификацию использующих его процессов и срок хранения файла.
Как правило, дескриптор файла хранится во внешней памяти вместе с описываемым им файлом. Он передается в основную память только после открытия соответствующего файла. Дескриптором файла управляет файловая система - пользователь не может непосредственно к нему обращаться. Во время работы с файлом удобно держать копию дескриптора в оперативной памяти, чтобы сократить количество обменов при обращении к файлу.
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|