Файловые таблицы FAT 16, FAT 32
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Операционные системы

Функции и задачи ОС

 

Операционная система (ОС), являясь основой общесистемного ПО, обеспечивает функционирование и взаимосвязь всех компонентов компьютера и предоставляет пользователю доступ к его аппаратным возможностям.

ОС – это набор программ, обеспечивающий организацию вычислительного процесса на ЭВМ.

Основные задачи:

1) увеличение пропускной способности ЭВМ (за счет организации непрерывной обработки потока задач с автоматическим переходом от одной задачи к другой и эффективного распределения ресурсов ЭВМ по нескольким задачам);

2) уменьшение времени реакции системы на запросы пользователями ответов от ЭВМ;

3) упрощение работы разработчиков программных средств и сотрудников обслуживающего персонала ЭВМ (за счет предоставления им значительного количества языков программирования и разнообразных сервисных программ).

Функции ОС:

1) управление данными;

2) управление задачами (заданиями, процессами);

3) связь с человеком-оператором. В различных ОС эти функции реализуются в различных масштабах и с помощью различных технических, программных, информационных методов и средств.

 

Одноранговые сетевые ОС

 

В одноранговых сетях все компьютеры равны в правах доступа к ресурсам друг друга. Каждый пользователь может по своему желанию объявить какой-либо ресурс своего компьютера разделяемым, после чего другие пользователи могут его эксплуатировать. В таких сетях на всех компьютерах устанавливается одна и та же ОС, которая предоставляет всем компьютерам в сети потенциально равные возможности. Одноранговые сети могут быть построены, например, на базе ОС LANtastic, Personal Ware, Windows for Workgroup, Windows NT Workstation.

В одноранговых сетях также может возникнуть функциональная несимметричность: одни пользователи не желают разделять свои ресурсы с другими, и в таком случае их компьютеры выполняют роль клиента, за другими компьютерами администратор закрепил только функции по организации совместного использования ресурсов, а значит, они являются серверами, в третьем случае, когда локальный пользователь не возражает против использования его ресурсов и сам не исключает возможности обращения к другим компьютерам, ОС, устанавливаемая на его компьютере, должна включать и серверную, и клиентскую части. В отличие от сетей с выделенными серверами, в одноранговых сетях отсутствует специализация ОС в зависимости от преобладающей функциональной направленности - клиента или сервера. Все вариации реализуются средствами конфигурирования одного и того же варианта ОС. Одноранговые сети проще в организации и эксплуатации, однако, они применяются в основном для объединения небольших групп пользователей, не предъявляющих больших требований к объемам хранимой информации, ее защищенности от несанкционированного доступа и к скорости доступа. При повышенных требованиях к этим характеристикам более подходящими являются двухранговые сети, где сервер лучше решает задачу обслуживания пользователей своими ресурсами, так как его аппаратура и сетевая операционная система специально спроектированы для этой цели.

Понятие процесса

Основными понятиями управления прохождением задач в ЭВМ являются процесс, задача, работа, программа, ресурс и т.д.

Процесс – минимальный программный объект, обладающий собственными системными ресурсами (запущенная программа). Это программный модуль, выполняемый в центральном процессоре (CPU).

Процессор – любое устройство в составе ЭВМ, способное автоматически выполнять допустимые для него действия (процессоры, каналы и устройства, работающие с каналами).

Классификация процессов:

1) по временным характеристикам различают:

– интерактивные;

– пакетные;

– реального времени.

2) по генеалогическому признаку различают:

– порождающие;

– порожденные.

3) по результативности различают:

– эквивалентные;

– тождественные;

– равные.

4) по времени развития делятся:

– последовательные;

– параллельные;

– комбинированные.

5) по месту развития:

– внешние;

– внутренние.

6) по принадлежности к ОС:

– системные;

– пользовательские.

7) по связности различают:

– взаимосвязанные;

– изолированные;

– информационно независимые;

– взаимодействующие;

– взаимосвязанные по ресурсам;

– конкурирующие.

Порядок взаимосвязи процессов определяется правилами синхронизации.

Процессы могут находится в отношении:

– предшествования;

– приоритетности;

– взаимного исключения.

Не следует смешивать понятие процесса и программы. Программа – это план действий, а процесс - это само действие, поэтому понятие процесса включает в себя:

– программный код;

– данные;

– содержимое стека;

содержимое адресного и других регистров процессора.

Каждый процесс представлен в ОС набором данных, называемых таблица управления процессом (PCB – process control block). В PCB процесс описывается набором значений, параметров, характеризующих его текущее состояние и используемых ОС для управления прохождением процесса через компьютер.

Планирование процессоров

Стратегии планирования процессора:

1. Первый пришел – первый обслуживается - first come – First served (FCFS). FCFS является наиболее простой стратегией планирования процессов и заключается в том, что процессор передается тому процессу, который раньше всех других его запросил.

Когда процесс попадает в очередь готовых процессов, УТП (PSB) присоединяется к хвосту очереди.

Среднее время ожидания для стратегии FCFS часто весьма велико и зависит от порядка поступления процессов в очередь готовых процессов.

Стратегии FCFS присущ так называемый «эффект конвоя». В том случае, когда в компьютере имеется один большой процесс и несколько малых, то все процессы собираются в начале очереди готовых процессов, а затем в очереди к оборудованию. Таким образом, он приводит к снижению загруженности как процессора, таки периферийного оборудования.

2. Стратегия «наиболее короткая работа выполняется первой» SJF – Shortest Job First. Одним из методов борьбы с «эффектом конвоя» является стратегия, позволяющая процессу из очереди выполняться первым.

 

Основные свойства файлов

Файлы бывают разных типов: обычные файлы, специальные файлы, файлы-каталоги.

Обычные файлы в свою очередь подразделяются на текстовые и двоичные. Текстовые файлы состоят из строк символов, представленных в ASCII-коде. Это могут быть документы, исходные тексты программ и т.п. Текстовые файлы можно прочитать на экране и распечатать на принтере. Двоичные файлы не используют ASCII-коды, они часто имеют сложную внутреннюю структуру, например, объектный код программы или архивный файл. Все операционные системы должны уметь распознавать хотя бы один тип файлов - их собственные исполняемые файлы.

Специальные файлы - это файлы, ассоциированные с устройствами ввода-вывода, которые позволяют пользователю выполнять операции ввода-вывода, используя обычные команды записи в файл или чтения из файла. Эти команды обрабатываются вначале программами файловой системы, а затем на некотором этапе выполнения запроса преобразуются ОС в команды управления соответствующим устройством. Специальные файлы, так же как и устройства ввода-вывода, делятся на блок-ориентированные и байт-ориентированные.

Каталог - это, с одной стороны, группа файлов, объединенных пользователем исходя из некоторых соображений (например, файлы, содержащие программы игр, или файлы, составляющие один программный пакет), а с другой стороны - это файл, содержащий системную информацию о группе файлов, его составляющих. В каталоге содержится список файлов, входящих в него, и устанавливается соответствие между файлами и их характеристиками (атрибутами).

В разных файловых системах могут использоваться в качестве атрибутов разные характеристики, например:

– информация о разрешенном доступе;

– пароль для доступа к файлу;

– владелец файла;

– создатель файла;

– признак "только для чтения";

– признак "скрытый файл";

– признак "системный файл";

– признак "архивный файл";

– признак "двоичный/символьный";

– признак "временный" (удалить после завершения процесса);

– признак блокировки;

– длина записи;

– указатель на ключевое поле в записи;

– длина ключа;

– времена создания, последнего доступа и последнего изменения;

– текущий размер файла;

– максимальный размер файла.

Каталоги могут непосредственно содержать значения характеристик файлов, как это сделано в файловой системе MS-DOS, или ссылаться на таблицы, содержащие эти характеристики, как это реализовано в ОС UNIX (рисунок 2.31). Каталоги могут образовывать иерархическую структуру за счет того, что каталог более низкого уровня может входить в каталог более высокого уровня

 

Монолитные системы

В общем случае "структура" монолитной системы представляет собой отсутствие структуры. ОС написана как набор процедур, каждая из которых может вызывать другие, когда ей это нужно. При использовании этой техники каждая процедура системы имеет хорошо определенный интерфейс в терминах параметров и результатов, и каждая вольна вызвать любую другую для выполнения некоторой нужной для нее полезной работы.

Для построения монолитной системы необходимо скомпилировать все отдельные процедуры, а затем связать их вместе в единый объектный файл с помощью компоновщика (примерами могут служить ранние версии ядра UNIX или Novell NetWare). Каждая процедура видит любую другую процедуру (в отличие от структуры, содержащей модули, в которой большая часть информации является локальной для модуля, и процедуры модуля можно вызвать только через специально определенные точки входа).

Многоуровневые системы

Обобщением предыдущего подхода является организация ОС как иерархии уровней. Уровни образуются группами функций операционной системы - файловая система, управление процессами и устройствами и т.п. Каждый уровень может взаимодействовать только со своим непосредственным соседом - выше- или нижележащим уровнем. Прикладные программы или модули самой операционной системы передают запросы вверх и вниз по этим уровням.

Первой системой, построенной таким образом была простая пакетная система THE, которую построил Дейкстра и его студенты в 1968 году. Система имела 6 уровней. Уровень 0 занимался распределением времени процессора, переключая процессы по прерыванию или по истечении времени. Уровень 1 управлял памятью - распределял оперативную память и пространство на магнитном барабане для тех частей процессов (страниц), для которых не было места в ОП, то есть слой 1 выполнял функции виртуальной памяти. Слой 2 управлял связью между консолью оператора и процессами. С помощью этого уровня каждый процесс имел свою собственную консоль оператора. Уровень 3 управлял устройствами ввода-вывода и буферизовал потоки информации к ним и от них. С помощью уровня 3 каждый процесс вместо того, чтобы работать с конкретными устройствами, с их разнообразными особенностями, обращался к абстрактным устройствам ввода-вывода, обладающим удобными для пользователя характеристиками. На уровне 4 работали пользовательские программы, которым не надо было заботиться ни о процессах, ни о памяти, ни о консоли, ни об управлении устройствами ввода-вывода. Процесс системного оператора размещался на уровне 5.

В системе THE многоуровневая схема служила, в основном, целям разработки, так как все части системы компоновались затем в общий объектный модуль. Дальнейшее обобщение многоуровневой концепции было сделано в ОС MULTICS. В системе MULTICS каждый уровень (называемый кольцом) является более привилегированным, чем вышележащий. Когда процедура верхнего уровня хочет вызвать процедуру нижележащего, она должна выполнить соответствующий системный вызов, то есть команду TRAP (прерывание), параметры которой тщательно проверяются перед тем, как выполняется вызов. Хотя ОС в MULTICS является частью адресного пространства каждого пользовательского процесса, аппаратура обеспечивает защиту данных на уровне сегментов памяти, разрешая, например, доступ к одним сегментам только для записи, а к другим - для чтения или выполнения. Преимущество подхода MULTICS заключается в том, что он может быть расширен и на структуру пользовательских подсистем. Например, профессор может написать программу для тестирования и оценки студенческих программ и запустить эту программу на уровне n, в то время как студенческие программы будут работать на уровне n+1, так что они не смогут изменить свои оценки. Многоуровневый подход был также использован при реализации различных вариантов ОС UNIX. Хотя такой структурный подход на практике обычно работал неплохо, сегодня он все больше воспринимается монолитным. Модель клиент-сервер Модель клиент-сервер - это еще один подход к структурированию ОС. В широком смысле модель клиент-сервер предполагает наличие программного компонента - потребителя какого-либо сервиса - клиента, и программного компонента - поставщика этого сервиса - сервера. Взаимодействие между клиентом и сервером стандартизуется, так что сервер может обслуживать клиентов, реализованных различными способами и, может быть, разными производителями. При этом главным требованием является то, чтобы они запрашивали услуги сервера понятным ему способом. Инициатором обмена обычно является клиент, который посылает запрос на обслуживание серверу, находящемуся в состоянии ожидания запроса. Один и тот же программный компонент может быть клиентом по отношению к одному виду услуг, и сервером для другого вида услуг. Модель клиент-сервер является скорее удобным концептуальным средством ясного представления функций того или иного программного элемента в той или иной ситуации, нежели технологией. Эта модель успешно применяется не только при построении ОС, но и на всех уровнях программного обеспечения, и имеет в некоторых случаях более узкий, специфический смысл, сохраняя, естественно, при этом все свои общие черты. Применительно к структурированию ОС идея состоит в разбиении ее на несколько процессов - серверов, каждый из которых выполняет отдельный набор сервисных функций - например, управление памятью, создание или планирование процессов. Каждый сервер выполняется в пользовательском режиме. Клиент, которым может быть либо другой компонент ОС, либо прикладная программа, запрашивает сервис, посылая сообщение на сервер. Ядро ОС (называемое здесь микроядром), работая в привилегированном режиме, доставляет сообщение нужному серверу, сервер выполняет операцию, после чего ядро возвращает результаты клиенту с помощью другого сообщения.

 

ОС с выделенными серверами

 

Если компьютер предоставляет свои ресурсы другим пользователям сети, то он играет роль сервера. При этом компьютер, обращающийся к ресурсам другой машины, является клиентом. Как уже было сказано, компьютер, работающий в сети, может выполнять функции либо клиента, либо сервера, либо совмещать обе эти функции.

Если выполнение каких-либо серверных функций является основным назначением компьютера (например, предоставление файлов в общее пользование всем остальным пользователям сети или организация совместного использования факса, или предоставление всем пользователям сети возможности запуска на данном компьютере своих приложений), то такой компьютер называется выделенным сервером. В зависимости от того, какой ресурс сервера является разделяемым, он называется файл-сервером, факс-сервером, принт-сервером, сервером приложений и т.д. Очевидно, что на выделенных серверах желательно устанавливать ОС, специально оптимизированные для выполнения тех или иных серверных функций. Поэтому в сетях с выделенными серверами чаще всего используются сетевые операционные системы, в состав которых входит нескольких вариантов ОС, отличающихся возможностями серверных частей. Например, сетевая ОС Novell NetWare имеет серверный вариант, оптимизированный для работы в качестве файл-сервера, а также варианты оболочек для рабочих станций с различными локальными ОС, причем эти оболочки выполняют исключительно функции клиента. Другим примером ОС, ориентированной на построение сети с выделенным сервером, является операционная система Windows NT. В отличие от NetWare, оба варианта данной сетевой ОС - Windows NT Server (для выделенного сервера) и Windows NT Workstation (для рабочей станции) - могут поддерживать функции и клиента и сервера. Но серверный вариант Windows NT имеет больше возможностей для предоставления ресурсов своего компьютера другим пользователям сети, так как может выполнять более широкий набор функций, поддерживает большее количество одновременных соединений с клиентами, реализует централизованное управление сетью, имеет более развитые средства защиты. Выделенный сервер не принято использовать в качестве компьютера для выполнения текущих задач, не связанных с его основным назначением, так как это может уменьшить производительность его работы как сервера. В связи с такими соображениями в ОС Novell NetWare на серверной части возможность выполнения обычных прикладных программ вообще не предусмотрена, то есть сервер не содержит клиентской части, а на рабочих станциях отсутствуют серверные компоненты. Однако в других сетевых ОС функционирование на выделенном сервере клиентской части вполне возможно. Например, под управлением Windows NT Server могут запускаться обычные программы локального пользователя, которые могут потребовать выполнения клиентских функций ОС при появлении запросов к ресурсам других компьютеров сети. При этом рабочие станции, на которых установлена ОС Windows NT Workstation, могут выполнять функции невыделенного сервера.

Несмотря на то, что в сети с выделенным сервером все компьютеры в общем случае могут выполнять одновременно роли и сервера, и клиента, эта сеть функционально не симметрична: аппаратно и программно в ней реализованы два типа компьютеров - одни, в большей степени ориентированные на выполнение серверных функций и работающие под управлением специализированных серверных ОС, а другие - в основном выполняющие клиентские функции и работающие под управлением соответствующего этому назначению варианта ОС. Функциональная несимметричность, как правило, вызывает и несимметричность аппаратуры - для выделенных серверов используются более мощные компьютеры с большими объемами оперативной и внешней памяти. Таким образом, функциональная несимметричность в сетях с выделенным сервером сопровождается несимметричностью операционных систем (специализация ОС) и аппаратной несимметричностью (специализация компьютеров).

Взаимодействие процессов

Совместно выполняемые процессы могут быть либо независимыми либо взаимодействующими. Взаимодействие процессов понимается в смысле взаимного обмена данными через общий буфер данных.

Взаимодействие процессов удобно рассматривать в схеме производитель-потребитель. Например, программа вывода на печать производит последовательность символов, которые потребляются драйвером принтера, или компилятор производит ассемблерный текст, который затем потребляется ассемблером.

Для взаимодействия процесса-производителя и процесса-потребителя создается совместный буфер заполняемый процессом-производителем и потребляемым процессом потребителя.

Буфер имеет фиксированные размеры и, следовательно, процессы могут находится в состоянии ожидания, когда:

– буфер заполнен – ожидает процесс-производитель;

– буфер пуст – ожидает процесс-потребитель.

Буфер может предоставляться и поддерживаться самой ОС, например, с помощью средств межпроцессной коммуникации, либо должен быть организован прикладным программистом. При этом оба процесса используют общий участок памяти.

Взаимодействие заключается в передаче данных между процессами или совместном использовании некоторых ресурсов и обычно реализуется с помощью таких механизмов, как транспортеры, очереди, сигналы, семафоры.

Транспортеры (каналы). Являются средством взаимодействия родственных процессов, представляют собой область памяти имеющую файловую организацию, для которой обеспечивается запись и считывание данных в транспортеры. Реализуется очередь обслуживания. Порядок записи данных на транспортер не изменен, не допускается повторное считывание данных. Обмен данными происходит не непосредственно, а через транспортер. Из вызвавшего процесса задается размер транспортера. Дочерние процессы могут использовать родительский транспортер.

Очереди. Эти механизмы могут обеспечивать передачу или использование общих данных без перемещения данных, а с передачей элемента очереди, содержащего указатель данных и объем массива данных. Очередь используется вместе с механизмом общей памяти.

Элемент очереди может быть считан с уничтожением или без уничтожения этого элемента. Чтение элемента может осуществляться в соответствии с механизмом очереди или стека. Чтение элементов очереди осуществляет только создающий очереди процесс, все другие процессы могут только записать элемент в очередь. Создающий процесс может выполнять следующие действия над очередью:

– создание очереди;

– просмотр очереди;

– чтение очереди;

– закрытие очереди.

Записывающий процесс осуществляет действия:

– открыть очередь;

– записать в очередь;

– закрыть в очередь.

Имя очереди, которое присваивается создающим процессам имеет вид полной спецификации файла. Ожидание элементов в очереди организуется с помощью семафора, сигнализирующего о записи элемента в очередь. Для работы с очередью определены такие дополнительные функции:

–определение количества элементов в очереди в текущий момент;

– очистка очереди создавшим ее процессом.

Преимущество очереди: передача данных по указателю без копирования, гибкое изменение порядка передачи и доступа, возможность просмотра элементов очереди без их удаления.

Сигналы. Сигнал является механизмом передачи требования одного процесса к другому на немедленное выполнение действия.

Обработчик сигнала создается процессом и помещается в начале первого потока процесса. Является аналогом обработки прерывания. При передаче управления обработчику передается адрес возврата и тип принятого сигнала. Процесс, посылающий сигнал типа флаг, может передать дополнительную информацию обработчику сигнала. Характер выполняемых действий при возникновении сигнала: обработка системной ошибки при появлении сигнала, блокирования сигнала, передача управления подпрограмме.

Семафоры. Являются механизмами передачи сообщений от одного потока к другому о наступлении некоторого события различают семафоры системные и ОП. Семафоры ОП - двойное слово в памяти системы, его описатель – адрес места в памяти. Такие семафоры не создаются и не открываются, а устанавливаются в определенное состояние. Процессы, использующие семафоры ОП, должны иметь доступ к соответствующему сегменту памяти. ОС такие семафоры не обслуживает и не сообщает об их освобождении и захвате. При создании семафора или его открытии возвращается описатель семафора, включающий его имя. ОС контролирует завершение каждого процесса, владеющего системным семафором, и освобождает его для процессов.

Если семафор свободен, то он захватывается вызывающим его процессом, если семафор занят, то вызвавший его поток переходит в режим ожидания освобождения семафора или ожидает истечения времени. Если семафор освобождается всеми использующими его процессами, то он удаляется из системы.

Управление семафором реализуется с помощью функций:

– установки семафора с целью сигнализации;

– ожидания вызывающим потоком, пока семафор не будет выключен;

ожидание потоком выключения потоком одного из нескольких семафоров.

 

Возможности Windows NT

 

Windows NT Workstation, прежде всего, может использоваться как клиент в сетях Windows NT Server, а также в сетях NetWare, UNIX, Vines. Она может быть рабочей станцией и в одноранговых сетях, выполняя одновременно функции и клиента, и сервера. Windows NT Workstation может применяться в качестве ОС автономного компьютера при необходимости обеспечения повышенной производительности, секретности, а также при реализации сложных графических приложений, например, в системах автоматизированного проектирования.

Windows NT Server может быть использован, прежде всего, как сервер в корпоративной сети. Здесь весьма полезной оказывается его возможность выполнять функции контроллера доменов, позволяя структурировать сеть и упрощать задачи администрирования и управления. Он используется также в качестве файл-сервера, принт-сервера, сервера приложений, сервера удаленного доступа и сервера связи (шлюза). Кроме того, Windows NT Server может быть использован как платформа для сложных сетевых приложений, особенно тех, которые построены с использованием технологии клиент-сервер.

Так, под управлением Windows NT Server может работать сервер баз данных Microsoft SQL Server, а также серверы баз данных других известных фирм, такие как Oracle и Sybase, Adabas и InterBase.

На платформе Windows NT Server может быть установлена новая мощная система администрирования Microsoft System Management Server, функцией которой является инвентаризация аппаратной и программной конфигурации компьютеров сети, автоматическая установка программных продуктов на рабочие станции, удаленное управление любым компьютером и мониторинг сети.

Windows NT Server может использоваться как сервер связи с мейнфреймам. Для этого создан специальный продукт Microsoft SNA Server, позволяющий легко объединить в одной сети IBM PC-совместимые рабочие станции и мощные мейнфреймы.

Наконец, Windows NT Server является платформой для нового производительного почтового сервера Microsoft Exchange.

Классификация ОС

 

Операционные системы могут различаться особенностями реализации внутренних алгоритмов управления основными ресурсами компьютера (процессорами, памятью, устройствами), особенностями использованных методов проектирования, типами аппаратных платформ, областями использования и многими другими свойствами.

Классификация по различным признакам:

ОС для рабочих групп

 

Сетевые операционные системы имеют разные свойства в зависимости от того, предназначены они для сетей масштаба рабочей группы (отдела), для сетей масштаба кампуса или для сетей масштаба предприятия.

– Сети отделов - используются небольшой группой сотрудников, решающих общие задачи. Главной целью сети отдела является разделение локальных ресурсов, таких как приложения, данные, лазерные принтеры и модемы. Сети отделов обычно не разделяются на подсети.

– Сети кампусов - соединяют несколько сетей отделов внутри отдельного здания или внутри одной территории предприятия. Эти сети являются все еще локальными сетями, хотя и могут покрывать территорию в несколько квадратных километров. Сервисы такой сети включают взаимодействие между сетями отделов, доступ к базам данных предприятия, доступ к факс-серверам, высокоскоростным модемам и высокоскоростным принтерам.

– Сети предприятия (корпоративные сети) - объединяют все компьютеры всех территорий отдельного предприятия. Они могут покрывать город, регион или даже континент. В таких сетях пользователям предоставляется доступ к информации и приложениям, находящимся в других рабочих группах, других отделах, подразделениях и штаб-квартирах корпорации.

Главной задачей операционной системы, используемой в сети масштаба отдела, является организация разделения ресурсов, таких как приложения, данные, лазерные принтеры и, возможно, низкоскоростные модемы. Обычно сети отделов имеют один или два файловых сервера и не более чем 30 пользователей. Задачи управления на уровне отдела относительно просты. В задачи администратора входит добавление новых пользователей, устранение простых отказов, инсталляция новых узлов и установка новых версий программного обеспечения. Операционные системы сетей отделов хорошо отработаны и разнообразны, также, как и сами сети отделов, уже давно применяющиеся и достаточно отлаженные. Такая сеть обычно использует одну или максимум две сетевые ОС. Чаще всего это сеть с выделенным сервером NetWare 3.x или Windows NT, или же одноранговая сеть, например сеть Windows for Workgroups.

Следующим шагом в эволюции сетей является объединение локальных сетей нескольких отделов в единую сеть здания или группы зданий. Такие сети называют сетями кампусов. Сети кампусов могут простираться на несколько километров, но при этом глобальные соединения не требуются.

Операционная система, работающая в сети кампуса, должна обеспечивать для сотрудников одних отделов доступ к некоторым файлам и ресурсам сетей других отделов. Услуги, предоставляемые ОС сетей кампусов, не ограничиваются простым разделением файлов и принтеров, а часто предоставляют доступ и к серверам других типов, например, к факс-серверам и к серверам высокоскоростных модемов. Важным сервисом, предоставляемым операционными системами данного класса, является доступ к корпоративным базам данных, независимо от того, располагаются ли они на серверах баз данных или на миникомпьютерах.

Следующим шагом в эволюции сетей является объединение локальных сетей нескольких отделов в единую сеть здания или группы зданий. Такие сети называют сетями кампусов. Сети кампусов могут простираться на несколько километров, но при этом глобальные соединения не требуются.

Операционная система, работающая в сети кампуса, должна обеспечивать для сотрудников одних отделов доступ к некоторым файлам и ресурсам сетей других отделов. Услуги, предоставляемые ОС сетей кампусов, не ограничиваются простым разделением файлов и принтеров, а часто предоставляют доступ и к серверам других типов, например, к факс-серверам и к серверам высокоскоростных модемов. Важным сервисом, предоставляемым операционными системами данного класса, является доступ к корпоративным базам данных, независимо от того, располагаются ли они на серверах баз данных или на миникомпьютерах.

 

15. Вытесняющие и невытесняющие алгоритмы планирования

 

Существует два основных типа процедур планирования процессов - вытесняющие (preemptive) и невытесняющие (non-preemptive).

Non-preemptive multitasking - невытесняющая многозадачность - это способ планирования процессов, при котором активный процесс выполняется до тех пор, пока он сам, по собственной инициативе, не отдаст управление планировщику операционной системы для того, чтобы тот выбрал из очереди другой, готовый к выполнению процесс.

Preemptive multitasking - вытесняющая многозадачность - это такой способ, при котором решение о переключении процессора с выполнения одного процесса на выполнение другого процесса принимается планировщиком операционной системы, а не самой активной задачей.

Основным различием между preemptive и non-preemptive вариантами многозадачности является степень централизации механизма планирования задач. При вытесняющей многозадачности механизм планирования задач целиком сосредоточен в операционной системе, и программист пишет свое приложение, не заботясь о том, что оно будет выполняться параллельно с другими задачами. При этом операционная система выполняет следующие функции: определяет момент снятия с выполнения активной задачи, запоминает ее контекст, выбирает из очереди готовых задач следующую и запускает ее на выполнение, загружая ее контекст.

При невытесняющей многозадачности механизм планирования распределен между системой и прикладными программами. Прикладная программа, получив управление от операционной системы, сама определяет момент завершения своей очередной итерации и передает управление ОС с помощью какого-либо системного вызова, а ОС формирует очереди задач и выбирает в соответствии с некоторым алгоритмом (например, с учетом приоритетов) следующую задачу на выполнение. Такой механизм создает проблемы как для пользователей, так и для разработчиков.

 

Файловая система H T FS

 

NTFS выросла из файловой системы NPFS, разрабатываемой совместно IBM и Microsoft для проекта OS/2. Она начала использоваться вместе с Windows NT 3.1 в 1993 году. Windows NT 3.1 должна была составить конкуренцию серверам на базе NetWare и Unix, поэтому NTFS вобрала в себя все технологические достижения того времени. Вот основные из них:

1. Работа с большими дисками. NTFS имеет размер кластера 512 байт, что в принципе оптимально, но его можно менять до 64 Кб. Более важно то, что NTFS способна теоретически работать с томами размером в 16,777, 216 терабайт. Теоретически, потому что таких жестких дисков пока не существует.

2. Устойчивость. NTFS содержит две копии аналога FAT, которые называются MFT (Master File Table). В отличие от FAT MS-DOS, MFT больше напоминает таблицу БД. Если оригинал MTF поврежден в случае аппаратной ошибки (например, появление bad-сектора), то система при следующей загрузке использует копию MTF и автоматически создает новый оригинал, уже с учетом повреждений. Но это не самое главное. Главное, что NTFS использует систему транзакций при записи файлов на диск. Эта система пришла из СУБД, где защита целостности данных – жизненно-важное дело. Уже это говорит о ее эффективности. В упрощенном виде она работает так:

– Драйвер ввода/вывода NTFS инициирует процесс записи, одновременно сообщая сервису Log File Service вести регистрацию всего происходящего;

– данные пишутся в КЭШ, под управлением сервиса Cash Manager;

– Cash Manager посылает данные Virtual Memory Manager (менеджеру виртуальной памяти) для записи на диск в фоновом режиме;

– Virtual Memory Manager посылает данные драйверу диска, пропустив их через Fault Tolerant Driver;

– драйвер диска шлет их контроллеру, который уже пишет их либо в КЭШ, либо прямо на диск;

– если это операция проходит без ошибок, запись регистрации удаляется;

– если происходит сбой, запись остается в таблице транзакций, и при следующем доступе к диску Log File Service обнаруживает эту запись и просто восстанавливает все, как было до этой операции.

Такая система гарантирует абсолютную сохранность данных в случае копирования, перемещения и удаления файлов или директорий. При внесении изменений в файл вы теряете те изменения, которые находились в момент сбоя в памяти или в КЭШе контроллера, и не успели записать на диск.

3. Защищенность. NTFS рассматривает файлы как объекты. Каждый файловый объект обладает свойствами такими как его имя, дата создания, дата последнего обновления, архивный статус и дескриптор безопасности. Файловый объект также содержит набор методов, которые позволяют с ним работать, такие, как open, close, read и write. Пользователи, включая сетевые, для обращения к файлу вызывают эти методы, а Security Reference Monitor определяет, имеет ли пользователь необходимые права для вызова какого-либо из этих методов. Кроме этого, файлы можно шифровать.

4. Компрессия данных. NTFS позволяет сжимать отдельные каталоги и файлы, в отличие от DriveSpace который позволял сжимать только диски целиком. Это очень удобно, для экономии пространства на диске, например можно сжимать «на лету» большие географические файлы формата BMP или текстовые файлы, причем для пользователя все это будет прозрачно.

5. Поддержка формата ISO Unicode .формат Unicode использует 16 бит для кодировки каждого символа, в отличие от ASCII, который использовал 8 или 7 бит. Для простого пользователя это означает то, что теперь он может называть файлы на любом языке, хоть на китайском – система это будет поддерживать, не требуя изменить кодовую страницу, как это делал DOS и W9x.

Закон об авторском праве

 

Законодательством РФ об авторском праве и смежных правах сост. из настоящего закона, являющегося частью гражданского законодательства РФ и действует на всей территории РФ, издаваемый в соответствии с настоящим законом и других актов законодательства РФ о «правовой охране программ ЭВМ и БД». В соответствие со статьёй 2 законодательства РФ об авторском праве и смежных правах, автором признаётся физическое лицо, трудом которого создан продукт. БД - объективная форма предоставления и организации совокупности данных, так же эти данные должны быть найдены и обработаны с помощью ЭВМ. Программа для ЭВМ – объективная форма предоставления совокупности данных и команд предназначенных для функционирования ЭВМ и других компьютерных устройств с целью получения результата включая дополнительные материалы в ходе работы ЭВМ и порождаемые ей аудио – визуальные отображения. Охрана программы для ЭВМ распространяется на все виды программ, в том числе и на операционные системы, которые могут быть выражены на любом языке и в любой форме, включая исходные данные, подход, и т.д.

 

Общедоступная лицензия GNU

 

GNU стремится гарантировать свободу в распространении и изменении свободно распространяемых программ.

GNU дает возможность, свободно распространять копии, свободно распространять программы и получать за эту работу плату.

Для защиты прав, необходимо наложить ограничения, которые запрещают, кому бы то ни было нарушать эти права или просить вас отказаться от этих прав.

Эти ограничения накладывают определенную ответственность, если вы распространяете копии программ или модифицируете их.

Права защищаются в два этапа

1) защита программ;

2) передача лицензии на легальное копирование, распространение и модифицирование программ.

Для защиты каждого автора на свободно-распространяемые программы отсутствуют гарантии.

Если программа кем-то модифицирована и передана дальше, необходимо чтобы получатели знали что это не оригинал.

Условия копирования, распространения и модификации.

Эта лицензия применима к любой программе или другой работе, которая содержит уведомление о том, что она может распространяться в соответствии с требованиями генеральной общедоступной лицензии, другая деятельность отличная от копирования, распространения и модификации не попадает под действие этой лицензии.

1) вы можете копировать и распространят точные копии исходных текстов программы на любом носителе, который снабжен заметным уведомлением об отсутствии гарантии. Записи относящиеся к лицензии отсутствии гарантии изменять нельзя.

2) вы можете модифицировать свою копию программы.

 

Система прерываний

 

Система прерываний предназначена для того, чтобы центр. процессор, выполняя свою работу имел возможность реагировать на события, наступление которых не предполагается. Прерывания бывают внутренними - программные и аппаратурные; и внешними - поступающие от внешних источников. Внутренние прерывания вызываются событиями, которые связаны с работой процессора и являются синхронными с его операциями (пример: возник из-за арифметического переполнения, при сложении и вычитании чисел с фиксированной точкой, при попытке деления на ноль). Внеш. прерывания вызываются асинхронными событиями, кот. происходят вне прерывания процесса (пример: прерывание от таймера или от системы вв/в). Обработка прерываний. Вне которого фиксирует ячейку, заносятся характеристики произошедшего прерывания. Запоминается состояние прерванного процесса. Это состояние определяется значением счетчика команды словом состояния процессора. В счётчик команд заносится адрес, который является уникальным для каждого типа прерываний. Всего может быть 256 видов прерываний, каждая из которых имеет свой номер 2-х разрядное 16-ричное число. 4 Обраб-ся прерывание. 5 Возобновляется нормальная работа. Шаги 1-3 обычно реализ-ся аппаратной частью, 4-5 – ОС. Прерыв-я бывают аппаратур-е, логич-ие и программные. Аппар-е выраб-ся устройствами, требующими внимания микропроцессора. Запросы на лог. прерывания выраб-ся внутри микропроцессора при появлении внештатных операций. Запрос на прогр-е прерывания формир-ся по команде INTn, где n- номер вызываемого прерывания. Первым действием проги обраб-ки прерываний явл. запоминание той части состояния процесса, кот. еще не была заполнена. Затем прога обработки прер-я д. идентифицировать прер-е , т.е. определить, какое прер-е поступило. Затем необходимо выполнить те действия, кот. соответ. прерыванию. После обработки прер-я необход-о обеспечить возобновление нормальной работы. При наличии нескольких источников запросов прерывания, часть из нихм. поступать одндвременно, поэтому устан-ся опред. порядок или приоритет обслуж-я поступаюш. запросов. Сущ. возможность разрешать или запрещать прер-я опред. видов.

Структура сетевой ОС

 

При описании операционной системы часто указываются особенности ее структурной организации и основные концепции, положенные в ее основу.

К таким базовым концепциям относятся:

Жизненный цикл процесса

 

Важнейшей частью операционной системы, непосредственно влияющей на функционирование вычислительной машины, является подсистема управления процессами. Процесс (или по-другому, задача) - абстракция, описывающая выполняющуюся программу. Для операционной системы процесс представляет собой единицу работы, заявку на потребление системных ресурсов. Подсистема управления процессами планирует выполнение процессов, то есть распределяет процессорное время между несколькими одновременно существующими в системе процессами, а также занимается созданием и уничтожением процессов, обеспечивает процессы необходимыми системными ресурсами, поддерживает взаимодействие между процессами.

Состояние процессов

В многозадачной (многопроцессной) системе процесс может находиться в одном из трех основных состояний:

Выполнение - активное состояние процесса, во время которого процесс обладает всеми необходимыми ресурсами и непосредственно выполняется процессором;

Ожидание - пассивное состояние процесса, процесс заблокирован, он не может выполняться по своим внутренним причинам, он ждет осуществления некоторого события, например, завершения операции ввода-вывода, получения сообщения от другого процесса, освобождения какого-либо необходимого ему ресурса; готовность - также пассивное состояние процесса, но в этом случае процесс заблокирован в связи с внешними по отношению к нему обстоятельствами: процесс имеет все требуемые для него ресурсы, он готов выполняться, однако процессор занят выполнением другого процесса.

В ходе жизненного цикла каждый процесс переходит из одного состояния в другое в соответствии с алгоритмом планирования процессов, реализуемым в данной операционной системе. Типичный граф состояний процесса показан на рисунке 2.1.

В состоянии выполнение в однопроцессорной системе может находиться только один процесс, а в каждом из состояний ожидание и готовность - несколько процессов, эти процессы образуют очереди соответственно ожидающих и готовых процессов. Жизненный цикл процесса начинается с состояния готовность, когда процесс готов к выполнению и ждет своей очереди. При активизации процесс переходит в состояние выполнение и находится в нем до тех пор, пока либо он сам освободит процессор, перейдя в состояние ожидания какого-нибудь события, либо будет насильно "вытеснен" из процессора, например, вследствие исчерпания отведенного данному процессу кванта процессорного времени. В последнем случае процесс возвращается в состояние готовность. В это же состояние процесс переходит из состояния ожидание, после того, как ожидаемое событие произойдет.

Восстановление Win NT

 

В процессе установки будет предложено создать диск аварийного восстановления. С его помощью можно восстановить работоспособность системы, если изменение каких-либо параметров привело к катастрофическому рез-ту и невозможности загрузки. Создавать диск аварийного восстановления в этот момент не имеет смысла. На этот диск, кроме настройки аппаратной части, записываются и установки ПО. Поэтому, если создать диск в процессе установки потом воспользоваться им, то все настройки ПО и сведения об установленных прогах будут потеряны. И после восстановления все проги придется переустанавливать. Нужно не забыть создать такой диск после установки основных прог.

Установка Win NT

 

Для начала установки Windows NT надо выполнить загрузку компа с первой установочной дискеты или CD-ROM. После приветствия проги и сообщения о начале установки производится анализ конфигурации компа. Прога установки производит анализ установленных в системе ж\д и выводит инф-ю о них на экран. Если имеющееся на компе устр-во не обнаружено автоматически, то его надо включить вручную. Нажмите клавишу S и выберите имеющееся у вас устр-во из предложенного списка. Если в списке ее нет, то используйте драйвер фирмы изготовителя (на дискете). После этого прога установки предложит вам полный список найденного оборудования. Далее прога предложит указать, в какой раздел (лог. диск компа) установить новую ОС. Далее нужно выбрать каталог, в кот. будут находится файлы Win NT. Затем прога установки произведёт копирование необходимых файлов предложит перезапустить комп.

Возможности Windows NT

 

Windows NT Workstation, прежде всего, может использоваться как клиент в сетях Windows NT Server, а также в сетях NetWare, UNIX, Vines. Она может быть рабочей станцией и в одноранговых сетях, выполняя одновременно функции и клиента, и сервера. Windows NT Workstation может применяться в качестве ОС автономного компьютера при необходимости обеспечения повышенной производительности, секретности, а также при реализации сложных графических приложений, например, в системах автоматизированного проектирования.

Windows NT Server может быть использован, прежде всего, как сервер в корпоративной сети. Здесь весьма полезной оказывается его возможность выполнять функции контроллера доменов, позволяя структурировать сеть и упрощать задачи администрирования и управления. Он используется также в качестве файл-сервера, принт-сервера, сервера приложений, сервера удаленного доступа и сервера связи (шлюза). Кроме того, Windows NT Server может быть использован как платформа для сложных сетевых приложений, особенно тех, которые построены с использованием технологии клиент-сервер.

Так, под управлением Windows NT Server может работать сервер баз данных Microsoft SQL Server, а также серверы баз данных других известных фирм, такие как Oracle и Sybase, Adabas и InterBase.

На платформе Windows NT Server может быть установлена новая мощная система администрирования Microsoft System Management Server, функцией которой является инвентаризация аппаратной и программной конфигурации компьютеров сети, автоматическая установка программных продуктов на рабочие станции, удаленное управление любым компьютером и мониторинг сети.

Windows NT Server может использоваться как сервер связи с мейнфреймам. Для этого создан специальный продукт Microsoft SNA Server, позволяющий легко объединить в одной сети IBM PC-совместимые рабочие станции и мощные мейнфреймы.

Наконец, Windows NT Server является платформой для нового производительного почтового сервера Microsoft Exchange.

Администрирование Win NT

 

Админ-ие дисков - прога, вызов кот. осущ-ся как ПУСК-ПРОГИ-АДМИНИСТР-ИЕ-АДМИН ДИСКОВ, использ-ся для логического разбиения ж\д, форматирования ж\д, присвоение диску др. лог. имени. После запуска проги появл-ся окно, в кот. отображена текущая конфигурация дисков компа. Привод-ся размеры дисков, их метки, название файловой системы. Диагностика компа. Для диагностики оборудования компа с Win NT использ-ся прога ДИАГНОСТИКА (ПУСК-ПРОГИ-АДМИНИСТРАТИВНЫЕ ЗАДАЧИ-ДИАГНОСТИКА). После вызова появл-ся окно, различные закладки которого позволяют увидеть текущие параметры оборудования компа.

Операционные системы

Функции и задачи ОС

 

Операционная система (ОС), являясь основой общесистемного ПО, обеспечивает функционирование и взаимосвязь всех компонентов компьютера и предоставляет пользователю доступ к его аппаратным возможностям.

ОС – это набор программ, обеспечивающий организацию вычислительного процесса на ЭВМ.

Основные задачи:

1) увеличение пропускной способности ЭВМ (за счет организации непрерывной обработки потока задач с автоматическим переходом от одной задачи к другой и эффективного распределения ресурсов ЭВМ по нескольким задачам);

2) уменьшение времени реакции системы на запросы пользователями ответов от ЭВМ;

3) упрощение работы разработчиков программных средств и сотрудников обслуживающего персонала ЭВМ (за счет предоставления им значительного количества языков программирования и разнообразных сервисных программ).

Функции ОС:

1) управление данными;

2) управление задачами (заданиями, процессами);

3) связь с человеком-оператором. В различных ОС эти функции реализуются в различных масштабах и с помощью различных технических, программных, информационных методов и средств.

 

Одноранговые сетевые ОС

 

В одноранговых сетях все компьютеры равны в правах доступа к ресурсам друг друга. Каждый пользователь может по своему желанию объявить какой-либо ресурс своего компьютера разделяемым, после чего другие пользователи могут его эксплуатировать. В таких сетях на всех компьютерах устанавливается одна и та же ОС, которая предоставляет всем компьютерам в сети потенциально равные возможности. Одноранговые сети могут быть построены, например, на базе ОС LANtastic, Personal Ware, Windows for Workgroup, Windows NT Workstation.

В одноранговых сетях также может возникнуть функциональная несимметричность: одни пользователи не желают разделять свои ресурсы с другими, и в таком случае их компьютеры выполняют роль клиента, за другими компьютерами администратор закрепил только функции по организации совместного использования ресурсов, а значит, они являются серверами, в третьем случае, когда локальный пользователь не возражает против использования его ресурсов и сам не исключает возможности обращения к другим компьютерам, ОС, устанавливаемая на его компьютере, должна включать и серверную, и клиентскую части. В отличие от сетей с выделенными серверами, в одноранговых сетях отсутствует специализация ОС в зависимости от преобладающей функциональной направленности - клиента или сервера. Все вариации реализуются средствами конфигурирования одного и того же варианта ОС. Одноранговые сети проще в организации и эксплуатации, однако, они применяются в основном для объединения небольших групп пользователей, не предъявляющих больших требований к объемам хранимой информации, ее защищенности от несанкционированного доступа и к скорости доступа. При повышенных требованиях к этим характеристикам более подходящими являются двухранговые сети, где сервер лучше решает задачу обслуживания пользователей своими ресурсами, так как его аппаратура и сетевая операционная система специально спроектированы для этой цели.

Понятие процесса

Основными понятиями управления прохождением задач в ЭВМ являются процесс, задача, работа, программа, ресурс и т.д.

Процесс – минимальный программный объект, обладающий собственными системными ресурсами (запущенная программа). Это программный модуль, выполняемый в центральном процессоре (CPU).

Процессор – любое устройство в составе ЭВМ, способное автоматически выполнять допустимые для него действия (процессоры, каналы и устройства, работающие с каналами).

Классификация процессов:

1) по временным характеристикам различают:

– интерактивные;

– пакетные;

– реального времени.

2) по генеалогическому признаку различают:

– порождающие;

– порожденные.

3) по результативности различают:

– эквивалентные;

– тождественные;

– равные.

4) по времени развития делятся:

– последовательные;

– параллельные;

– комбинированные.

5) по месту развития:

– внешние;

– внутренние.

6) по принадлежности к ОС:

– системные;

– пользовательские.

7) по связности различают:

– взаимосвязанные;

– изолированные;

– информационно независимые;

– взаимодействующие;

– взаимосвязанные по ресурсам;

– конкурирующие.

Порядок взаимосвязи процессов определяется правилами синхронизации.

Процессы могут находится в отношении:

– предшествования;

– приоритетности;

– взаимного исключения.

Не следует смешивать понятие процесса и программы. Программа – это план действий, а процесс - это само действие, поэтому понятие процесса включает в себя:

– программный код;

– данные;

– содержимое стека;

содержимое адресного и других регистров процессора.

Каждый процесс представлен в ОС набором данных, называемых таблица управления процессом (PCB – process control block). В PCB процесс описывается набором значений, параметров, характеризующих его текущее состояние и используемых ОС для управления прохождением процесса через компьютер.

Планирование процессоров

Стратегии планирования процессора:

1. Первый пришел – первый обслуживается - first come – First served (FCFS). FCFS является наиболее простой стратегией планирования процессов и заключается в том, что процессор передается тому процессу, который раньше всех других его запросил.

Когда процесс попадает в очередь готовых процессов, УТП (PSB) присоединяется к хвосту очереди.

Среднее время ожидания для стратегии FCFS часто весьма велико и зависит от порядка поступления процессов в очередь готовых процессов.

Стратегии FCFS присущ так называемый «эффект конвоя». В том случае, когда в компьютере имеется один большой процесс и несколько малых, то все процессы собираются в начале очереди готовых процессов, а затем в очереди к оборудованию. Таким образом, он приводит к снижению загруженности как процессора, таки периферийного оборудования.

2. Стратегия «наиболее короткая работа выполняется первой» SJF – Shortest Job First. Одним из методов борьбы с «эффектом конвоя» является стратегия, позволяющая процессу из очереди выполняться первым.

 

Файловые таблицы FAT 16, FAT 32

Файл – область памяти, выделенная для хранения массива данных. В файлах могут храниться программы на алгоритмических или машинных языках. Исходные данные для работы программ и результаты и результаты заполнения программ, тексты и графические изображения. В настоящее время в ОС для ПК используются десятки файловых систем. В файловой системе MS-DOS используются:

– FAT16;

– FAT32;

– FAT12 (для дискет).

FAT – это таблица размещения файлов, т.е. у каждого файла есть свой адрес, который записан в эту таблицу.

FAT16 – на запись адреса отводится 16 бит. С их помощью можно выразить 216 = 65536 разных адресов. Если размер диска 2 Гб., то на каждый адрес приходится 32 Кб.

Если же 2,5 Гб., то тогда на каждый адрес приходится более 64 Кб, но это не допустимо.

FAT32 – для этой таблицы размеры кластеров следующие:

Объем диска;

Размер кластера;

До 8 Гб;

8 – 16 Гб;

16 – 32 Гб;

свыше 32 Гб;

4 Кб;

8 Кб;

16 Кб;

32 Кб.

Кластеры выдаются одному файлу в любом свободном месте дисковой памяти и не обязательно являются смежными. Файлы хранящиеся в разбросанных по диску кластерах называются фрагментированными.

 

Основные свойства файлов

Файлы бывают разных типов: обычные файлы, специальные файлы, файлы-каталоги.

Обычные файлы в свою очередь подразделяются на текстовые и двоичные. Текстовые файлы состоят из строк символов, представленных в ASCII-коде. Это могут быть документы, исходные тексты программ и т.п. Текстовые файлы можно прочитать на экране и распечатать на принтере. Двоичные файлы не используют ASCII-коды, они часто имеют сложную внутреннюю структуру, например, объектный код программы или архивный файл. Все операционные системы должны уметь распознавать хотя бы один тип файлов - их собственные исполняемые файлы.

Специальные файлы - это файлы, ассоциированные с устройствами ввода-вывода, которые позволяют пользователю выполнять операции ввода-вывода, используя обычные команды записи в файл или чтения из файла. Эти команды обрабатываются вначале программами файловой системы, а затем на некотором этапе выполнения запроса преобразуются ОС в команды управления соответствующим устройством. Специальные файлы, так же как и устройства ввода-вывода, делятся на блок-ориентированные и байт-ориентированные.

Каталог - это, с одной стороны, группа файлов, объединенных пользователем исходя из некоторых соображений (например, файлы, содержащие программы игр, или файлы, составляющие один программный пакет), а с другой стороны - это файл, содержащий системную информацию о группе файлов, его составляющих. В каталоге содержится список файлов, входящих в него, и устанавливается соответствие между файлами и их характеристиками (атрибутами).

В разных файловых системах могут использоваться в качестве атрибутов разные характеристики, например:

– информация о разрешенном доступе;

– пароль для доступа к файлу;

– владелец файла;

– создатель файла;

– признак "только для чтения";

– признак "скрытый файл";

– признак "системный файл";

– признак "архивный файл";

– признак "двоичный/символьный";

– признак "временный" (удалить после завершения процесса);

– признак блокировки;

– длина записи;

– указатель на ключевое поле в записи;

– длина ключа;

– времена создания, последнего доступа и последнего изменения;

– текущий размер файла;

– максимальный размер файла.

Каталоги могут непосредственно содержать значения характеристик файлов, как это сделано в файловой системе MS-DOS, или ссылаться на таблицы, содержащие эти характеристики, как это реализовано в ОС UNIX (рисунок 2.31). Каталоги могут образовывать иерархическую структуру за счет того, что каталог более низкого уровня может входить в каталог более высокого уровня

 

Дата: 2019-05-28, просмотров: 175.