- •Содержание
- •Раздел I. Теоретические сведения 10
- •Раздел II. Лабораторные работы 131
- •Раздел III. Тест выходного контроля знаний 172
- •Введение
- •Раздел I. Теоретические сведения
- •1. Определение, функции и состав операционных систем
- •1.1. История развития операционных систем
- •1.2. Классификация операционных систем
- •Количество пользователей:
- •Способы построения ядра системы:
- •Особенности методов построения:
- •2. Управление локальными ресурсами
- •2.1. Управление процессами
- •2.1.1. Состояния процессов. Контекст и дескриптор процесса
- •2.1.2. Нити
- •2.1.3. Алгоритмы планирования процессов
- •2.1.3.1. Алгоритмы планирования процессов в ос unix
- •2.1.3.2. Алгоритмы планирования процессов в Windows nt
- •2.1.4. Средства синхронизации и взаимодействия процессов
- •2.1.4.1. Критическая секция. Тупики
- •2.2. Управление памятью
- •2.2.1. Методы распределения памяти без использования дискового прстранства
- •2.2.2.1. Страничное распределение памяти
- •2.2.2.2. Сегментное распределение памяти
- •2.2.2.3. Странично-сегментное распределение памяти. Свопинг
- •2.2.3. Иерархия запоминающих устройств. Принцип кэширования данных
- •2.3. Управление вводом/выводом
- •2.3.1. Физическая организация устройств ввода/вывода. Организация программного обеспечения ввода/вывода
- •2.3.2. Драйверы устройств
- •2.3.3. Независимый от устройств слой операционной системы. Пользовательский слой программного обеспечения ввода/вывода
- •2.4. Файловая система
- •2.4.1. Имена файлов. Типы файлов
- •2.4.2. Логическая организация файла. Физическая организация и адрес файла
- •2.4.3. Права доступа к файлу
- •2.4.4. Общая модель файловой системы. Современные архитектуры файловых систем
- •2.4.5. Файловые системы fat, fat32 и hpfs
- •3. Управление распределенными ресурсами
- •3.1. Блокирующие и неблокирующие примитивы. Буферизуемые и небуферизуемые примитивы
- •3.2. Вызов удаленных процедур
- •3.3. Синхронизация в распределенных системах. Алгоритм синхронизации логических часов. Алгоритмы взаимного исключения
- •3. 4. Распределенные файловые системы. Организация файлового сервера
- •3.4.1. Файловые системы ntfs, dfs и efs
- •4. Сетевые операционные системы
- •4.1. Одноранговые сетевые ос и ос с выделенными серверами
- •4.2. Сетевые операционные системы масштаба отдела и масштаба предприятия
- •5. Операционная система ms dos
- •5.1. Основные команды ms dos
- •6. Операционная система unix
- •6.1. Некоторые команды ос unix и стандартные файлы
- •6.2. Редакторы VI и ex
- •6.3. Связь пользователь-пользователь
- •6.4. Средства разработки программ
- •7. Операционная система linux
- •7.1. Приобретение и общие принципы инсталляции linux
- •Инсталлируйте программы linux в новую(вые) файловую(вые) систему(мы).
- •7.2. Создание загрузочной дискеты или инсталляция lilo. Программное обеспечение, которое поддерживает ос linux
- •8. Операционная система Windows nt
- •9. Средства защиты информации в сети
- •Уровни обработки
- •9.1. Обеспечение безопасности в Windows nt
- •9.2. Принципы защиты информации в ос unix
- •10. Общие сведения о системном реестре
- •10.1. Разделы реестра
- •10.2. Работа с редактором реестра. Резервное копирование и восстановление реестра
- •11. Программные средства человеко-машинного интерфейса в ос Windows xp: мультимедиа и аудио
- •12. Современные концепции и технологии проектирования распределенных операционных систем
- •Одним из аспектов совместимости является способность ос выполнять программы, написанные для других ос или для более ранних версий данной операционной системы, а также для другой аппаратной платформы.
- •13. Far manager — текстовая системная оболочка
- •Раздел II. Лабораторные работы
- •Лабораторная работа 1. Инсталляция и конфигурирование операционной системы, начальная загрузка
- •Лабораторная работа 2. Работа в ос Windows xp
- •Лабораторная работа 3. Работа с командной строкой
- •Лабораторная работа 4. Работа с Far manager
- •Варианты заданий к лабораторным работам № 2, 3, 4
- •Вариант 2
- •Вариант 3
- •Лабораторная работа 5. Работа в верхнем меню Far manager
- •Лабораторная работа 6. Основы администрирования в ос Windows хр
- •Лабораторная работа 7. Наблюдение за работой системы с помощью диспетчера задач
- •Лабораторная работа 8. Наблюдение за работой системы с помощью системных журналов и монитора
- •Лабораторная работа 9. Настройка работы служб Windows xp
- •Лабораторная работа 10. Решение задач управления ресурсами
- •Раздел III. Тест выходного контроля знаний
- •Вопросы
- •Заключение
- •Глоссарий
- •Литература
2.4.1. Имена файлов. Типы файлов
Файлы идентифицируются именами. Пользователи дают файлам символьные имена, при этом учитываются ограничения ОС как на используемые символы, так и на длину имени. В файловой системе FAT длина имен ограничивается известной схемой 8.3 (8 символов – собственно имя, 3 символа – расширение имени), а в ОС UNIX System V имя не может содержать более 14 символов. Однако пользователю удобнее работать с длинными именами, поскольку они позволяют дать файлу действительно мнемоническое название, по которому даже через большой промежуток времени можно будет вспомнить, что содержит этот файл. Поэтому современные файловые системы поддерживают длинные символьные имена файлов. Например, в файловой системе NTFS имя файла может содержать до 255 символов.
При переходе к длинным именам возникает проблема совместимости с ранее созданными приложениями, использующими короткие имена. Чтобы приложения могли обращаться к файлам в соответствии с принятыми ранее соглашениями, файловая система должна уметь предоставлять эквивалентные короткие имена (псевдонимы) файлам, имеющим длинные имена. Например, файловая система VFAT, представляющая собой существенно измененный вариант FAT, поддерживает длинные имена.
Обычно разные файлы могут иметь одинаковые символьные имена. В этом случае файл однозначно идентифицируется так называемым составным именем, представляющим собой последовательность символьных имен каталогов (так называемый путь). В некоторых системах одному и тому же файлу не может быть дано несколько разных имен, а в других такое ограничение отсутствует. В последнем случае операционная система присваивает файлу дополнительно уникальное имя, так, чтобы можно было установить соответствие между файлом и его уникальным именем. Уникальное имя представляет собой числовой идентификатор и используется программами операционной системы. Примером такого уникального имени файла является номер индексного дескриптора в системе UNIX.
Файлы бывают разных типов: обычные файлы, специальные файлы, файлы-каталоги. Обычные файлы представляют собой набор блоков на устройстве внешней памяти, на котором поддерживается файловая система. Обычные файлы в свою очередь подразделяются на текстовые и двоичные. Текстовые файлы состоят из строк символов, представленных в ASCII-коде. Двоичные файлы не используют ASCII-коды, они имеют сложную внутреннюю структуру, например, объектный код программы или архивный файл. Файловая система обеспечивает представление обычного файла как последовательности байтов.
Специальные файлы не хранят данные. Они обеспечивают механизм отображения физических внешних устройств в имена файлов файловой системы. Каждому устройству, поддерживаемому системой, соответствует, по меньшей мере, один специальный файл. Каждому специальному файлу соответствует программное обеспечение, называемое драйвером соответствующего устройства. При выполнении чтения или записи по отношению к специальному файлу, производится прямой вызов соответствующего драйвера, программный код которого отвечает за передачу данных между процессом пользователя и соответствующим физическим устройством. Итак, специальные файлы – это файлы, ассоциированные с устройствами ввода/вывода, которые позволяют пользователю выполнять операции ввода/вывода, используя обычные команды записи в файл или чтения из файла. Эти команды обрабатываются вначале программами файловой системы, а затем на некотором этапе выполнения запроса преобразуются ОС в команды управления соответствующим устройством. Специальные файлы, так же как и устройства ввода/вывода, делятся на блок-ориентированные и байт-ориентированные.
Каталоги представляют собой особый вид файлов, которые хранятся в памяти подобно обычным файлам, но структура которых, поддерживается самой файловой системой. Каталог – это, с одной стороны, группа файлов, объединенных пользователем, исходя из некоторых соображений (например, файлы, содержащие программы игр), а с другой стороны – это файл, содержащий системную информацию о группе файлов его составляющих. В каталоге содержится список файлов, входящих в него, и устанавливается соответствие между файлами и их характеристиками (атрибутами).
В разных файловых системах могут использоваться в качестве атрибутов разные характеристики, например:
информация о разрешенном доступе;
пароль для доступа к файлу;
владелец файла;
признак «только для чтения»;
признак «скрытый файл»;
признак «системный файл»;
признак «архивный файл»;
признак «временный» (удалить после завершения процесса);
признак блокировки;
время создания, последнего доступа и последнего изменения;
текущий размер файла;
и т.д.
Каталоги могут непосредственно содержать значения характеристик файлов, как это сделано в файловой системе ОС MS DOS, или ссылаться на таблицы, содержащие эти характеристики, как это реализовано в ОС UNIX (рисунок 1.8).
Рис.1.8. Структура каталогов: а – структура записи каталога MS DOS; б – структура записи каталога ОС UNIX
Каталоги могут образовывать иерархическую структуру за счет того, что каталог более низкого уровня может входить в каталог более высокого уровня.
Иерархия каталогов может быть деревом или сетью (рисунок 1.9). Каталоги образуют дерево, если файлу разрешено входить только в один каталог, и сеть – если файл может входить сразу в несколько каталогов. В MS DOS каталоги образуют древовидную структуру, а в ОС UNIX – сетевую. Каталог имеет символьное имя и однозначно идентифицируется составным именем, содержащим цепочку символьных имен всех каталогов, через которые проходит путь от корня до данного каталога.
Рис. 1.9. а –древовидная структура; б – сетевая структура
