Понятие и назначение операционной системы
← 11.2. Контрольные вопросы и задания | 12.2. Классификация программного обеспечения → |
Операционная система (ОС) – комплекс системных и управляющих программ, предназначенных для наиболее эффективного использования всех ресурсов вычислительной системы (ВС) Вычислительная система – взаимосвязанная совокупность аппаратных средств вычислительной техники и программного обеспечения, предназначенная для обработки информации и удобства работы с ней.
Назначение ОС – организация вычислительного процесса в вычислительной системе, рациональное распределение вычислительных ресурсов между отдельными решаемыми задачами; предоставление пользователям многочисленных сервисных средств, облегчающих процесс программирования и отладки задач. Операционная система исполняет роль своеобразного интерфейса. Интерфейс – совокупность аппаратуры и программных средств, необходимых для подключения периферийных устройств к ПЭВМ между пользователем и ВС, т.е. ОС предоставляет пользователю виртуальную ВС. Это означает, что ОС в значительной степени формирует у пользователя представление о возможностях ВС, об удобстве работы с ней, о ее пропускной способности. Различные ОС на одних и тех же технических средствах могут предоставить пользователю различные возможности для организации вычислительного процесса или автоматизированной обработки данных.
В программном обеспечении ВС операционная система занимает основное положение, поскольку осуществляет планирование и контроль всего вычислительного процесса. Любой из компонентов программного обеспечения обязательно работает под управлением ОС.
В соответствии с условиями применения различают три режима ОС: пакетной обработки, разделения времени и реального времени. В режиме пакетной обработки ОС последовательно выполняет собранные в пакет задания. В этом режиме пользователь не имеет контакта с ЭВМ, получая лишь результаты вычислений. В режиме разделения времени ОС одновременно выполняет несколько задач, допуская обращение каждого пользователя к ЭВМ. В режиме реального времени ОС обеспечивает управление объектами в соответствии с принимаемыми входными сигналами. Время отклика ЭВМ с ОС реального времени на возмущающее воздействие должно быть минимальным.
Операционная система – комплекс программ, обеспечивающих поддержку работы аппаратных средств ЭВМ, сетей и всех программ.
При включении питания компьютера в первую очередь в ОЗУ загружается часть операционной системы, под управлением которой проверяются работоспособность и вся последующая работа ЭВМ. Завершается работа ЭВМ также под управлением ОС.
Программы, написанные для решения практических задач, называют прикладными. Системными называют программы, которые осуществляют организацию вычислительного процесса и распределение ресурсов ЭВМ (процессорного времени, оперативной памяти, дискового пространства и т.п.). ОС представляет собой комплекс взаимодействующих системных программ.
Каждая системная программа выполняет свою определенную функцию. Так, системные программы – утилиты – предназначены для выполнения часто повторяющихся операций, например: форматирование магнитных дисков, дефрагментация дисков, архивация файлов, восстановление случайно удаленных файлов, поиск и удаление вирусов и т. д.
Драйверы — системные программы, обеспечивающие работу принтеров, дисководов, дисплеев, клавиатуры и т. п. Слово «драйвер» происходит от англ. слова driver – шофер, водитель.
При выполнении на ЭВМ различных программ пользователю приходится многократно выполнять типичные операции, которые одинаковы для многих прикладных и системных программ. К таким операциям, в частности, относятся: запись, поиск, считывание, копирование, перемещение и удаление файлов.
Так, чтобы считать файл с жесткого диска, необходимо найти в таблице размещения файлов (FAT) его описание, определить, где он находится на жестком диске (определить дорожку, сектор), подвести считывающую головку к нужной позиции, считать данные в определенное место ОЗУ.
ОС стремится создать пользователю наиболее комфортные условия при выполнении подобных типичных, часто повторяемых операций. Если говорить образно, то операционная система — это слуга, который заботится об удобствах своего хозяина-пользователя.
Операционные системы делятся:
- по количеству одновременно работающих пользователей на однопользовательские и многопользовательские ОС;
- по числу задач, одновременно выполняемых под управлением ОС, на однозадачные и многозадачные;
- по количеству используемых процессоров на однопроцессорные и многопроцессорные;
- по разрядности процессора на 8-разрядные, 16-разрядные, 32-разрядные, 64-разрядные;
- по типу пользовательского интерфейса на командные (текстовые) и объектно-ориентированные (графические);
- по способу использования аппаратных и программных ресурсов на сетевые и локальные.
Главное отличие многопользовательских ОС от однопользовательских – средства защиты информации каждого пользователя от несанкционированного доступа других пользователей. Каждому пользователю выделяется свой сегмент оперативной памяти.
В многозадачном режиме каждой задаче (программе, приложению) поочередно выделяется какая-то доля процессорного времени. Поскольку процесс переключения идет очень быстро, а выделяемые задачам доли процессорного времени достаточно малы, то у пользователя создается впечатление одновременного выполнения сразу нескольких задач.
Можно одновременно запустить на счет математическую систему, включить принтер для печати текста, запустить проигрыватель музыкальных произведений, вести поиск вирусов и рисовать в графическом редакторе или раскладывать пасьянс. Заметить замедление работы ЭВМ можно будет, пожалуй, лишь по «притормаживанию» воспроизведения видео- и аудиофайлов на компьютерах с «медлительными» процессорами.
Различают вытесняющую и невытесняющую многозадачность.
При работе ЭВМ важнейший разделяемый ресурс – процессорное время. Распределение процессорного времени между несколькими одновременно выполняемыми программами может осуществляться двумя способами.
При невытесняющей многозадачности активный процесс выполняется до тех пор, пока он сам, по собственной инициативе, не отдаст управление операционной системе для того, чтобы та выбрала из очереди другой готовый к выполнению процесс.
При вытесняющей многозадачности решение о переключении процессора с одного процесса на другой принимается операционной системой, а не самим активным процессом.
Многозадачные ОС подразделяются на три типа в соответствии с использованными при их разработке критериями эффективности:
- системы пакетной обработки;
- системы разделения времени;
- системы реального времени.
Системы пакетной обработки предназначаются для решения задач в основном вычислительного характера, не требующих быстрого получения результатов. Главная цель систем пакетной обработки – решение максимального числа задач в единицу времени. Для достижения этой цели в системах пакетной обработки используется следующая схема функционирования.
В начале работы формируется пакет заданий (мультипрограммная смесь). В мультипрограммной смеси желательно одновременное присутствие вычислительных задач и задач с интенсивным вводом-выводом информации. Выбор нового задания из пакета заданий зависит от внутренней ситуации, складывающейся в системе, т. е. выбирается «выгодное» для ОС задание. Следовательно, в таких ОС невозможно гарантировать выполнение того или иного задания в течение определенного периода времени.
Взаимодействие пользователя с вычислительной машиной, на которой установлена ОС пакетной обработки, сводится к тому, что пользователь приносит задание, отдает его диспетчеру-оператору, а в конце дня получает результат. Очевидно, что такой порядок снижает эффективность работы пользователя.
ОС разделения времени позволяют исправить основной недостаток систем пакетной обработки – изоляцию пользователя от процесса выполнения его задач. Каждому пользователю системы разделения времени предоставляется терминал, с которого он может управлять вычислительным процессом. Так как в системах разделения времени каждой задаче выделяется только квант процессорного времени, ни одна задача не занимает процессор надолго и время ответа оказывается приемлемым. Если квант выбран достаточно малым, то у всех пользователей, одновременно работающих на одной и той же ЭВМ, складывается впечатление, что каждый из них единолично использует машину.
Операционные системы разделения времени обладают меньшей пропускной способностью, чем системы пакетной обработки, так как на выполнение принимается каждая запущенная пользователем задача, а не та, которая «выгодна» операционной системе, и, кроме того, имеются накладные расходы на более частое переключение процессора с задачи на задачу. Критерием эффективности систем разделения времени является не максимальная пропускная способность ЭВМ (скорость обработки информации), а удобство и эффективность работы отдельного пользователя.
Системы реального времени применяются для управления различными техническими объектами, такими, например, как конвейер, станок, робот, космический аппарат, научная экспериментальная установка, гальваническая линия, доменная печь, автомат для контроля качества выпускаемой продукции и т. п. Во всех этих случаях существует предельно допустимое время, в течение которого должна быть выполнена та или иная программа, управляющая объектом. Говорят так: «Система должна иметь гарантированное время реакции, т. е. задержка ответа не должна превышать определенного времени». В противном случае может произойти авария: спутник выйдет из зоны видимости, экспериментальные данные, поступающие с датчиков, будут потеряны, толщина гальванического покрытия не будет соответствовать норме, бракованные изделия попадут в приемник годной продукции.
Таким образом, критерием эффективности для систем реального времени является их способность выдерживать заранее заданные интервалы времени между запуском программы и получением результата (управляющего воздействия).
Наибольшую известность получили следующие ОС: СР/M, MS-DOS, OS/2, Windows, UNIX и MacOS (для компьютеров Macintosh фирмы Apple).
В качестве примера однопользовательских однозадачных ОС можно назвать CP/M, MS-DOS, однопользовательских многозадачных — OS/2, Windows. Операционная система UNIX является многопользовательской многозадачной ОС. Операционная система РАФОС является многопользовательской однозадачной.
Современные ОС содержат множество системных программ и по этой причине часто занимают на диске больше места, чем прикладная программа, которая использует сервис, предоставляемый ОС.
Первоначальный успех ОС СР/М в значительной степени был обусловлен ее предельной простотой и компактностью. Первая версия занимала всего 4 Кбайта. Компактность была весьма важна в условиях ограниченных объемов памяти первых персональных ЭВМ (ПЭВМ). Данная ОС использовалась для работы на 8-разрядных ПЭВМ.
Операционная система MS-DOS – это промышленный стандарт для 16-разрядных ЭВМ на основе микропроцессоров 8086...80486. Все программы MS-DOS хранятся на магнитных дисках, поэтому она называется дисковой операционной системой (Disk Operating System). Буквы MS – сокращенное название фирмы-разработчика Microsoft. Было выпущено несколько модификаций этой ОС, поэтому можно говорить о целом семействе операционных систем MS-DOS.
В MS-DOS входят следующие основные модули (достаточно самостоятельные системные программы).
1. Базовая система ввода-вывода (БСВВ), которая осуществляет автоматический контроль работоспособности основных узлов ЭВМ при включении питания. БСВВ часто обозначается латинскими буквами BIOS, что является аббревиатурой аналогичного английского названия Basic Input/Output System. В БСВВ размещаются программы (драйверы), управляющие работой стандартных устройств ЭВМ: дисплея, клавиатуры, жестких дисков, принтера.
2. Блок начальной загрузки, предназначенный для считывания с системного диска в ОЗУ остальных модулей MS-DOS.
3. Модуль расширения базовой системы ввода-вывода, который позволяет расширять функции, заложенные в BIOS, дополнить BIOS другими драйверами, предназначенными для работы с новыми устройствами. Дополнительные драйверы внешних устройств подключаются с помощью файлов config.sys и autoexec.bat.
4. Модуль обработки прерывания. Напомним, что прерыванием называется такой режим работы процессора, когда по запросу внешнего устройства кратковременно прекращается выполнение основной программы и происходит обслуживание внешнего устройства. По окончании обслуживания вновь продолжается выполнение основной программы.
5. Командный процессор — программа, которая размещается в файле command.com. Она осуществляет прием команд с клавиатуры, выполняет встроенные команды MS-DOS, загрузку и исполнение прикладных и системных программ, а также запуск файла autoexec.bat.
MS-DOS является командной (текстовой) ОС. Это означает, что для выполнения необходимых операций следует набрать с помощью клавиатуры соответствующую команду. Такой ввод неудобен и приводит к возникновению большого числа ошибок.
Для облегчения работы с помощью дисковой операционной системы разработаны графические надстройки, которые называются операционными оболочками. Наибольшей популярностью в России пользуются Norton Commander, DOS Navigator и Volkov Commander.
Семейство операционных систем OS/2 (Operating System/2) позволяет организовать параллельную работу нескольких прикладных программ. Операционная система работает в режиме вытесняющей многозадачности. При этом система жестко выделяет определенное время для работы каждого приложения.
Эта операционная система, разработанная фирмой IBM, является ближайшим конкурентом для ОС MS Windows, разработанной фирмой Microsoft. Достоинство операционных систем семейства MS Windows – унифицированный пользовательский интерфейс (оболочка), благодаря которому в различных программах сохраняются одинаковые принципы управления их работой. Эта ОС обеспечивает возможность выполнения одновременно нескольких задач. При этом пользовательский интерфейс каждой программы размещается в отдельной прямоугольной области, которая называется окном. На рис. 12.1. показано три открытых окна. В первом окне размещена панель управления, во втором – проводник, а в третьем – текстовый редактор.
Рис. 12.1. Пример одновременного выполнения нескольких задач в ОС MS Windows
Окна можно перемещать по экрану, изменять размеры, накладывать друг на друга или уменьшать до размера графического значка (пиктограммы или ярлыка).
Унификация пользовательского интерфейса (оболочки) программ, работающих под управлением этой ОС, значительно упрощает освоение новых программ. Например, нажатие клавиши F1 вызывает помощь, а одновременное нажатие клавиш Alt и F4 приводит к завершению (закрытию) работы программы.
Назначение многих кнопок пользовательского интерфейса (рис. 12.2) интуитивно понятно благодаря выразительному графическому обозначению. Заметим, что почти каждую операцию с помощью ОС MS Windows можно выполнить несколькими различными способами.
Рис. 12.2. Стандартный вид кнопок пользовательского интерфейса в ОС MS Windows
При создании операционной системы семейства Windows фирма Microsoft использовала объектно-ориентированный подход. На уровне пользователя объектно-ориентированный подход выражается в том, что интерфейс представляет собой подобие реального мира, а работа с ЭВМ сводится к действиям с обычными объектами. Так, папки можно открывать, закрывать, перемещать, убирать в портфель. Документы можно просматривать, исправлять, перекладывать с одного места на другое, уничтожать или выбрасывать в корзину.
В ОС MS Windows заложен принцип — WYSIWYG (What You See Is What You Get – что видите, то и получаете), за счет которого на принтере формируется такое же изображение, как и на экране дисплея. При работе в DOS вид текста на экране монитора и отпечатанного на принтере может оказаться разным. Это зависит от выбранного на принтере шрифта.
Другой удачный принцип – Plug and Play (вставь и играй, точнее, подключи и используй) позволяет без ручной настройки подключать новые устройства к ЭВМ, например принтер или лазерный проигрыватель. ОС, поддерживающая этот принцип, автоматически подбирает драйвер, необходимый для работы нового подключенного к ЭВМ устройства.
В Windows используется технология Drag and Drop (перетащи и положи). Благодаря технологии Drag and Drop легко изменить положение любого окна и его размеры. Для удаления какого-либо документа по этой технологии достаточно с помощью мыши взять пиктограмму (компактное графическое изображение приложения) и, перетащив, положить ее поверх мусорной корзины. Аналогично запускается музыкальное произведение: графическое изображение файла нужно положить поверх графического изображения проигрывателя.
На рис. 12.3. показаны три пиктограммы и два ярлыка (на ярлыках присутствует изображение стрелки). С помощью пиктограмм и ярлыков легко запускать программы на выполнение. Пиктограммы и ярлыки принято называть общим термином «значки».
Рис. 12.3. Пиктограммы и ярлыки
В Windows можно составлять документы из частей, которые готовятся в различных приложениях. Для связывания и внедрения документов используется технология OLE (Object Linking and Embedding), что означает «связывание и внедрение объектов».
При работе в операционной системе Windows программы принято называть приложениями. В документ, подготовленный в текстовом редакторе, можно вставить рисунок, созданный в графическом редакторе. При этом достаточно дважды щелкнуть мышью по рисунку, чтобы вызвать графический редактор и сделать нужные исправления. Создается впечатление, что текстовый редактор снабжен дополнительными возможностями графического редактора.
Безусловно, уровень сервиса операционных систем семейства OS/2 и MS Windows значительно выше уровня MS-DOS. Однако за облегчение работы приходится платить бóльшими затратами на аппаратное обеспечение: увеличивать объем ОЗУ, винчестера, повышать быстродействие процессора. Для установки Windows 2000 требуется 650 Мбайт свободного пространства на жестком диске и ОЗУ объемом 32...128 Мбайт.
Главными отличительными чертами ОС UNIX является ее модульность, легкая переносимость на другие типы ЭВМ и обширный набор системных программ, которые позволяют создать благоприятную обстановку для системных программистов, т. е. для тех специалистов, основной задачей которых является разработка новых системных программ. Данная ОС органически сочетается с языком Си, на котором написана основная часть модулей. Операционная система UNIX давно побила все рекорды долголетия.
Система была разработана в 1969 году и быстро завоевала большую популярность, особенно среди телефонных компаний, поскольку обеспечивала работу в сети в режиме диалога и в реальном масштабе времени. Авторами UNIX являются Кен Томпсон (Ken Thompson) и Дэннис Ричи (Dennis M. Ritchie).
К началу 1984 года система UNIX была уже инсталлирована (т. е. установлена) приблизительно на 100 000 машин по всему миру, причем на машинах разных изготовителей с широким диапазоном вычислительных возможностей — от микропроцессоров до больших ЭВМ.
Популярность и успех системы UNIX объясняется несколькими причинами:
- система написана на языке высокого уровня, благодаря чему ее легко читать, понимать, изменять и переносить на другие машины. По оценкам, сделанным Дэнисом Ричи, первый вариант операционной системы на языке Си имел на 20...40 % больший объем и работал медленнее по сравнению с вариантом на языке Ассемблера, однако преимущества использования языка высокого уровня намного перевешивают недостатки;
- система является многопользовательской, многозадачной; каждый пользователь может одновременно выполнять несколько процессов;
- архитектура машины скрыта от пользователя, благодаря этому облегчен процесс написания программ, работающих при различных конфигурациях аппаратных средств.
Сетевые операционные системы предназначены для эффективного решения задач распределенной обработки данных. Такая обработка ведется не на отдельном компьютере, а на нескольких компьютерах, объединенных сетью. Сетевые операционные системы поддерживают распределенное выполнение процессов, их взаимодействие, обмен данными между ЭВМ, доступ пользователей к общим ресурсам и другие функции, которые превращают распределенную в пространстве систему в целостную многопользовательскую систему.
Все сетевые операционные системы делятся на две группы: одноранговые ОС и ОС с выделенными серверами.
В одноранговых сетях каждая ЭВМ может выполнять функции как сервера, так и рабочей станции, а в сетях с выделенными серверами роли расписаны более жестко: рабочие станции не предоставляют свои ресурсы для других ЭВМ. Услуги предоставляют только серверы.
Перечислим несколько популярных сетевых операционных систем.
До недавнего времени наиболее широко используемыми были различные версии операционной системы Netware, разработанные фирмой Novell. Фирма Novell была основана в 1983 году и считается крупнейшим в мире поставщиком сетевого программного обеспечения.
К одноранговым операционным системам можно отнести NetWare Lite и Personal NetWare, а к ОС с выделенным сервером – NetWare 2.2, NetWare 3.12, NetWare 4.0 и NetWare 5.0.
Фирма Microsoft выпустила несколько версий сетевых операционных систем: Windows NT 3.51 и 4.0, Windows 2000.
Центральное место среди сетевых операционных систем занимает UNIX. Большая популярность пришла к UNIX в 1983 году, когда появилась версия 4.2BSD, имевшая сетевые средства TCP/IP, что позволяло использовать эту систему для работы в глобальной сети ARPANET.
Классическая ОС UNIX дала жизнь многочисленным своим потомкам, число которых превышает несколько десятков (AIX, SCO, HP-UX, IRIX, Solaris, Linux и др.).
Linux – свободно распространяемая версия операционной системы UNIX для платформ x86, Motorola 68k, Digital Alpha, Sparc, Mips и Motorola PowerPC. В Linux не используется никаких частей программного обеспечения, принадлежащих каким-либо коммерческим организациям. По этой причине она получила достаточно широкое распространение.
Первая версия ОС Linux была разработана в 1991 году Т. Линусом (Финляндия), а затем в ее разработке участвовало большое число людей из разных стран. Последние версии являются продуктами коллективного творчества большого числа программистов.
Корни практически всех ранних отечественных диалектов ОС UNIX ведут к UNIX V6.
В начале 80-х годов ХХ века начались работы в Институте атомной энергии им. И. В. Курчатова (КИАЭ). В шутку диалект КИАЭ получил название УНАС (в противовес UNIX, т. е. У НИХ). В состав разработчиков входили Алексей Руднев, Валерий Бардин, Сергей Аншуков.
В 1982 – 1983 годах другой коллектив из Института прикладной кибернетики (ИПК) Минавтопрома стал заниматься иным диалектом – МНОС (машинно-независимая операционная система). Руководителем работ был Михаил Давидов, а костяк команды составили Вадим Антонов, Дмитрий Володин и Сергей Леонтьев.
Результатом объединения коллективов стало рождение ОС ДЕМОС (Диалоговой единой мобильной операционной системы), которая помимо отечественных аналогов вычислительной машины PDP-11 (СМ-4, СМ-1420) была перенесена на ЕС ЭВМ и «Эльбрус». В 1987 году был образован кооператив «Демос». Через пять лет, в 1992 году, коллектив разделился, и появились на свет известные сейчас компании «Релком» и «Демос».
Как и многое в мире бизнеса, развитие ОС идет в условиях острой конкуренции, и здесь можно выделить две наиболее мощные сетевые ОС: UNIX и Windows NT.
О динамике изменения спроса на операционные системы говорят следующие цифры. В 1997 году продажи рабочих станций с установленной операционной системой Windows NT возросли на 80%, а продажи станций с ОС UNIX упали на 7 %.
В секторе программного обеспечения и операционных систем ведущее положение занимают фирмы IBM, Microsoft, UNISYS, Novell. Доход от продаж операционных систем в среднем превышает 20 млрд долларов в год. Рассмотрим наиболее распространенные типы операционных систем.
Операционные системы для персональных компьютеров делятся:
- на одно- и многозадачные (в зависимости от числа параллельно выполняемых прикладных процессов);
- на одно- и многопользовательские (в зависимости от числа пользователей, одновременно работающих с операционной системой);
- на непереносимые и переносимые на другие типы компьютеров;
- на несетевые и сетевые, обеспечивающие работу в локальной вычислительной сети ЭВМ.
Операционная система образует автономную среду, не связанную ни с одним из языков программирования. Любая же прикладная программа связана с операционной системой и может эксплуатироваться только на тех компьютерах, где имеется аналогичная системная среда. Прикладные программные средства, разработанные в среде одной операционной системы, не могут быть использованы для работы в среде другой операционной системы, если нет специального комплекса программ (конвертера), позволяющего это сделать. В таком случае говорят о программной несовместимости компьютеров.
Внимание! Программа, созданная в среде одной операционной системы, не функционирует в среде другой операционной системы, если в ней не обеспечена возможность конвертации (преобразования) программ.
Для работы с операционной системой необходимо овладеть языком этой среды – совокупностью команд, структура которых определяется синтаксисом этого языка.
Операционная система выполняет следующие функции:
- управление работой каждого блока персонального компьютера и их взаимодействием;
- управление выполнением программ;
- организацию хранения информации во внешней памяти;
- взаимодействие пользователя с компьютером, т.е. поддержку интерфейса пользователя.
Обычно операционная система хранится на жестком диске, а при его отсутствии выделяется специальный гибкий диск, который называется системным диском. При включении компьютера операционная система автоматически загружается с диска в оперативную память и занимает в ней определенное место. Операционная система создается не для отдельной модели компьютера, а для серии компьютеров, в структуре которых заложена и развивается во всех последующих моделях определенная концепция.
Понятие файла. В основе любой операционной системы лежит принцип организации работы внешнего устройства хранения информации. Несмотря на то, что внешняя память может быть технически реализована на разных материальных носителях (например, в виде гибкого магнитного диска или магнитной ленты), их объединяет принятый в операционной системе принцип организации хранения логически связанных наборов информации в виде так называемых файлов.
Файл – логически связанная совокупность данных или программ, для размещения которой во внешней памяти выделяется именованная область.
Файл служит учетной единицей информации в операционной системе. Любые действия с информацией в операционной системе осуществляются над файлами: запись на диск, вывод на экран, ввод с клавиатуры, печать, считывание информации CD-ROM и пр.
На диске файл не требует для своего размещения непрерывного пространства, обычно он занимает свободные кластеры в разных частях диска. Сведения о номерах этих кластеров хранятся в специальной FAT- таблице, о которой идёт речь в подглаве 9.2. Кластер – минимальная единица пространства диска, которое может быть отведено файлу. Самый маленький файл занимает один кластер, большие файлы — несколько десятков кластеров.
Справка. Сектор — 512 байт. На гибком диске обычно 80 дорожек. На каждой дорожке: для 5" диска (5-дюймового) – 9 секторов; для 3,5" (3,5-дюймового) диска – 18 секторов. Кластер – группа смежных секторов. Кластер для гибкого диска – 1,2 сектора (512 байт, 1 Кбайт). Кластер для жесткого диска – 4, 8, 16 секторов (2...8 Кбайт).
В файлах могут храниться разнообразные виды и формы представления информации: тексты, рисунки, чертежи, числа, программы, таблицы и т.п. Особенности конкретных файлов определяются их форматом. Под форматом понимается элемент языка, в символическом виде описывающий представление информации в файле.
Текстовая информация хранится в файле в кодах ASCII, в так называемом текстовом формате. Содержимое текстовых файлов можно просмотреть на экране дисплея с помощью разных программных средств.
Для характеристики файла используются следующие параметры:
- полное имя файла;
- объем файла в байтах;
- дата создания файла;
- время создания файла;
- тип файла;
- специальные атрибуты файла: R (Read only) – только для чтения, Н (Hidden) – скрытый файл, S (System) – системный файл, A (Archive) – архивированный файл.
С понятием файла в операционной системе тесно связано понятие логического диска. Логический диск создается и управляется специальной программой (драйвером). Он имеет уникальное имя в виде одной латинской буквы, например С, D, E, F и т.д. Логический диск может реализовываться на жестком диске, на гибком диске, на CD-ROM, в оперативной памяти (электронный диск) и т.п. На одном физическом диске может быть создано несколько логических дисков.
Способы обращения к файлу. К файлу можно обращаться с помощью имени, полного имени, спецификации. Для того чтобы воспользоваться одним из этих вариантов, надо знать ряд правил и соглашений, позволяющих унифицировать в операционной системе процедуру обращения к файлу. Рассмотрим эти варианты.
Правило образования имени. Имя файла всегда уникально и служит для отличия одного файла от другого. Имя файла образуется из символов, цифр, знаков подчеркивания.
Внимание! При образовании имени нельзя использовать символы .*?:;,<> = .
По имени к файлу обращаются редко, обычно только в тех прикладных программах, когда это специально предусмотрено, а также при вводе имени файла, где хранится команда операционной системы.
В качестве имени файла можно использовать символьное имя устройства.
Правило образования полного имени. Обычно к файлу обращаются с помощью полного имени, за исключением оговоренных выше случаев. Полное имя файла более подробно характеризует файл и образуется из имени файла и типа (расширения), разделенных точкой.
Тип файла служит для характеристики хранящейся в файле информации и образуется не более чем из трех символов, причем используются, как и при образовании имени, только буквы латинского алфавита.
Внимание! В полном имени недопустимы пробелы между именем и типом.
При образовании типа, как и при образовании имени, нельзя использовать русские буквы и символы .*?:;,<> = пробел.
При работе на персональном компьютере установлен ряд соглашений по заданию типа файла, некоторые из которых приведены в табл. 12.1.
Таблица 12.1. Соглашения по типу файлов
Тип | Назначение |
.ARJ | Архивный файл |
.ВАК | Копия файла, создаваемая при перезаписи файла оригинала |
.BAS | Программа на языке Бейсик |
.ВАТ | Командный файл |
.СОВ | Программа на языке Кобол |
.COD | Версия файла типа .OBJ на языке ассемблера |
.СОМ | Командный системный файл, исполняемый файл |
.DAT | Файл данных |
.DOC | Файл документов (текстовый) |
.EXE; | Исполняемый файл |
.FOR | Программа на языке Фортран |
.HEX | Символьное шестнадцатеричное представление двоичных данных в коде ASCII |
.HLP | Файл для справочной информации |
.LIB | Библиотека программ |
.OBJ | Скомпилированная объектная программа на машинном языке |
.OVL | Оверлейный файл прикладной программы |
.OVR | Оверлейный файл программы компилятора |
.PAS | Программа на языке Паскаль |
.PIC | Данные выводимого на экран изображения |
,PRN | Листинг (распечатка программы) |
.SYS | Файлы, расширяющие возможности операционной системы, например драйверы |
.SYM | Таблица символов для компилятора |
TER | Описание терминала (для асинхронной передачи) |
.IMP | Временный файл |
.TXT | Текстовый файл |
.$$$ | Временный файл |
Внимание! Пользуйтесь всегда соглашениями по типу файла из табл. 12.1. При несоблюдении этих соглашений вы затрудните дальнейшую работу – и свою, и коллег.
При обращении к файлу типа ВАТ, СОМ, ЕХЕ достаточно задать только его имя, тип не указывается. При одинаковых именах приоритет – в порядке, указанном выше.
Практические рекомендации. Хотя операционная система разрешает в имени и типе файла наличие написанных в любой последовательности символов с учетом ограничений, рекомендуется использовать буквы латинского алфавита и цифры, а имя начинать с буквы.
При назначении имен файлов рекомендуется образовывать их так, чтобы они отражали смысловое содержание файла.
Как обращаться к группе файлов ?
Часто возникает ситуация, когда надо работать не с одним файлом, а с группой файлов.
Эти операции достаточно легко выполнить, пользуясь при формировании имен и типов файлов шаблоном.
Шаблон имени файла – специальная форма, в которой в полях имени и типа файла используются символы «*» или «?»
Символ «*» служит для замены любой последовательности символов. В шаблоне может быть использовано в поле имени и типа по одному символу * .
Символ «?» служит для замены одного символа. В шаблоне может быть использовано несколько таких символов.
Организация доступа к файлу. Структура каталога. Надеемся, что вы хорошо представляете себе организацию хранения книг в библиотеке и соответственно процедуру поиска нужной книги по ее шифру из каталога. Перенесите свое представление об этом на способ хранения файлов на диске и организацию к нему доступа.
Другим примером может служить папка с документами различного или одинакового типа. Понятие«каталог» и понятие «папка» используются в операционных системах в качестве объектов, предназначенных для хранения файлов и обеспечения доступа к ним. В дальнейшем будем для однозначности использовать термин «каталог».
Доступ – процедура установления связи с памятью и размещенным в ней файлом для записи и чтения данных.
Имя логического диска, стоящее перед именем файла в спецификации, указывает логический диск, на котором следует искать файл. На этом же диске организован каталог, где хранятся полные имена файлов, а также их характеристики: дата и время создания; объем (в байтах); специальные атрибуты. По аналогии с библиотечной системой организации каталогов полное имя файла, зарегистрированное в каталоге, будет служить шифром, по которому операционная система находит месторасположение файла на диске.
Каталог – справочник файлов с указанием месторасположения на диске. В операционной системе Windows понятию «каталог» соответствует понятие «папка». Различают два состояния каталога – текущее (активное) и пассивное. Текущий (активный) каталог – каталог, в котором работа пользователя производится в текущее машинное время. Пассивный каталог – каталог, с которым в данный момент времени нет связи.