Просмотреть иерархическую структуру диска с. Структура диска. Использование программы дефрагментации дисков

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

Последняя часть этого сектора содержит таблицу разделов - 4-элементную таблицу с 16-байтовыми элементами. Этой таблицей манипулирует программа FDISK (или эквивалентная утилита в иной операционной системе).

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

Таблица 1. Структура главной корневой записи и таблицы разделов

Таблица 2. Структура описателя раздела

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

Таблица 3. Коды разделов операционных систем Microsoft

Код Вид раздела Размер Тип FAT ОС
01h Основной 0-15 Мбайт FAT12 MS-DOS 2.0
04h Основной 16-32 Мбайт FAT16 MS-DOS 3.0
05h Расширенный 0-2 Гбайт - MS-DOS 3.3
06h Основной 32 Мбайт-2 Гбайт FAT16 MS-DOS 4.0
0Bh Основной 512 Мбайт-2 Гбайт FAT32 OSR2
0Ch Расширенный 512 Мбайт-2 Тбайт FAT32 OSR2
0Eh Основной 32 Мбайт-2 Гбайт FAT16 Windows 95
0Fh Расширенный 0-2 Гбайт - Windows 95

За операционными системами других фирм зарезервированы следующие коды:

  • 02h - раздел CP/M;
  • 03h - раздел Xenix;
  • 07h - раздел OS/2 (файловая система HPFS).

Замечания:

  1. Номера цилиндра и сектора занимают 10 и 6 бит соответственно:
    15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
    c c c c c c c c c c s s s s s s

    Они упорядочены так, что, когда вы загружаете CX 16-битовым значением, оно готово для вызова прерывания INT 13h для чтения нужной порции диска. Таким образом, после чтения Главной записи загрузки в область памяти sect_buf , код CMP byte ptr sect_buf, 80h

    проверит, активен ли первый раздел, а код

    MOV CX, sect_buf

    загрузит CX для вызова INT 13h для чтения корневого сектора раздела № 1.

  2. Значение "относительного сектора" по смещению 08h в каждом разделе эквивалентно головке, сектору и цилиндру начального адреса раздела. Относительный сектор 0 совпадает с цилиндром 0, головкой 0, сектором 1. Относительный номер сектора прирастает сначала по каждому сектору на головке, затем по каждой головке и наконец по каждому цилиндру.

    Применима формула:

    Отн_сек = (#Цил * сек_на_цил * головок) + (#Гол * сек_на_цил) + (#Сек -1)

    Разделы начинаются с четного номера цилиндра, за исключением первого раздела, который может начинаться с цилиндра 0, головки 0, сектора 2 (поскольку сектор 1 занят Главной записью загрузки).

    Когда корневая запись раздела получает управление, DS:SI указывает на соответствующий элемент таблицы разделов.

Структура корневого сектора

Таблица 4. Формат корневого сектора дискеты или раздела жесткого диска

00h 3 JMP xx xx NEAR-переход на код загрузки
03h 8 "I" "B" "M" "4" "." "0" OEM-имя компании и версия системы
0Bh 2 SectSiz число байтов в секторе (всегда 512) начало BPB
0Dh 1 ClustSiz число секторов в кластере
0Eh 2 ResSecs число резервных секторов (секторов перед FAT #1)
10h 1 FatCnt число таблиц FAT
11h 2 RootSiz число 32-байтовых элементов корневого каталога (для FAT32 - 0)
13h 2 TotSecs общее число секторов на носителе (раздел DOS)
15h 1 Media тип носителя информации (то же, что 1-й байт FAT)
16h 2 FatSize число секторов в одной FAT конец BPB
18h 2 TrkSecs число секторов на дорожке
1Ah 2 HeadCnt число головок
1Ch 4 HidnSec число скрытых секторов (исп. в схемах разделения)
20h 4 TotSecs всего секторов, если размер >32 Мб
24h 1 128 физич.номер диска
25h 1 резерв
26h 1 29h признак расшир.структуры
27h 4 ID тома(серийный номер)
2Bh Bh метка (NO NAME)
36h 8 ID файловой системы (FAT12)
3Eh начало кода и данных загрузки

Замечания:

  1. Типы носителей информации:
    • F0h - гибкий диск, 2 стороны, 18 секторов на дорожке;
    • F8h - жесткий диск;
    • F9h - гибкий диск, 2 стороны, 15 секторов на дорожке;
    • FCh - гибкий диск, 1 стороны, 9 секторов на дорожке;
    • FDh - гибкий диск, 2 стороны, 9 секторов на дорожке;
    • FEh - гибкий диск, 1 сторона, 8 секторов на дорожке;
    • FFh - гибкий диск, 2 стороны, 8 секторов на дорожке.
  2. Используйте абсолютное чтение INT 25h (DX=0) для чтения этого сектора. ИЛИ:
    • гибкие диски: корневой сектор = BIOS INT 13h головка 0, дорожка 0, сектор 1;
    • жесткие: читайте Таблицу_разделов для получения BIOS головки/дорожки/сектора.
  3. BPB (BIOS Parameter Block) - подмножество данных, содержащихся в корневом_секторе. Запрос к драйверу "Построить BPB" требует, чтобы драйвер заполнил блок, отмеченный выше. Длина BPB = 13 байт

Таблица параметров дискеты

Эта 10-байтовая структура известна также как "Disk Base Table". Она находится по адресу вектора прерывания INT 1Eh (4-байтовый адрес в 0:0078). Эта таблица задает некоторые важные переменные для устройств дискет. Ее инициализирует ROM-BIOS, а DOS модифицирует, чтобы улучшить производительность дискет.

Таблица 5. Формат таблицы параметров дискеты

Смещение Длина Содержимое
00h 1 Первый байт спецификации:
биты 0-3 - время загрузки головок;
биты 4-7 - длительность шага головок
01h 1 Второй байт спецификации:
бит 0 - флаг режима ПДП;
биты 1-7 - время загрузки головок
02h 1 Задержка перед отключением мотора (в "тиках" ситемных часов)
03h 1 Размер сектора (байт): 0 - 128, 1 - 256, 2 - 512, 3 - 1024
04h 1 Число секторов на дорожке
05h 1 Длина межсекторного промежутка для операций чтения/записи
06h 1 Длина области данных
07h 1 Длина межсекторного промежутка для операции форматирования
08h 1 Символ-заполнитель для форматирования (обычно 0F6h, т.е. "Ў")
09h 1 Время установки головок (в миллисекундах)
0Ah 1 Время запуска мотора (в 1/8 с)

Таблица параметров жесткого диска

Эта 16-байтовая структура находится по адресу вектора прерывания INT 41h (4-байтовый адрес в 0:0104). Параметры для второго жесткого диска (если он есть) находятся по адресу вектора INT 46h . Эти таблицы задают некоторые важные переменные для операций с твердыми дисками.

Таблица 6. Формат таблицы жесткого диска

Смещение Длина Содержимое
00h 2 Число цилиндров
02h 1 Число головок
03h 2 Не используется (всегда 0)
05h 2 Номер начального цилиндра предкомпенсации
07h 1 Максимальная длина блока коррекции ошибок ECC
08h 1 Байт контроля:
биты 0-2 - не используются (всегда 0);
бит 3 - установлен, если число головок больше 8;
бит 4 - не используется (всегда 0);
бит 5 - установлен, если изготовитель разместил карту дефектов на цилиндре с номером "максимальный рабочий цилиндр + 1";
бит 6 - запрет повторного контроля ECC;
бит 7 - запрет контроля ECC
09h 1 Не используется (всегда 0)
0Ah 1 Не используется (всегда 0)
0Bh 1 Не используется (всегда 0)
0Ch 2 Номер цилиндра зоны парковки
0Eh 1 Число секторов на дорожке
0Fh 1 Резерв

Таблица распределения файлов (FAT)

Размер файла может изменяться со временем. Если допустить хранение файла только в смежных секторах, то при увеличении размера файла ОС должна полностью переписать его в другую подходящего объема (свободную) область диска. Чтобы упростить и ускорить выполнение операции добавления новых данных в файл, в современных ОС применяются таблицы распределения файлов (File Allocation Table, сокращенно FAT), которые позволяют хранить файл в виде нескольких несмежных участков.

При использовании FAT область данных логического диска разделена на участки одинакового размера - кластеры . Кластер может состоять из одного или нескольких последовательно расположенных на диске секторов. Число секторов в кластере должно быть кратным 2 N и может принимать значения от 1 до 64 (размер кластера зависит от типа используемой FAT и объема логического диска).

Каждому кластеру поставлен в соответствие собственный элемент таблицы FAT. Первые два элемента FAT являются резервными - если на диске имеется K кластеров данных, то число элементов FAT будет равно K+2 . Тип FAT определяется значением K:

  1. если K <4085 - используется FAT12;
  2. если 4084> K <65525 - используется FAT16;
  3. если 65524> K - используется FAT32.

Название типов FAT происходят от размера элемента. Так элемент FAT12 имеет размер 12 бит, FAT16 - 16 бит, FAT32 - 32 бита. Следует учитывать, что в FAT32 четыре старших двоичных разряда зарезервированы и игнорируются в процессе работы ОС (то есть значащими являются только семь младших шестнадцатеричных разрядов элемента).

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

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

Эта диаграмма иллюстрирует основные концепции FAT. Из нее видно, что:

  1. MYFILE.TXT занимает 10 кластеров. Первый кластер - это кластер 08, последний кластер - 1Bh. Цепочка кластеров - 08h, 09h, 0Ah, 0Bh, 15h, 16h, 17h, 19h, 1Ah, 1Bh. Каждый элемент указывает на следующий элемент цепочки, а последний элемент содержит специальный код (см. табл. 7).
  2. Кластер 18h помечен как дефектный и не входит в цепочку распределения.
  3. Кластеры 06h, 07h, 0Ch-14h и 1Ch-1Fh пусты и доступны для распределения.
  4. Еще одна цепочка начинается с кластера 02h и кончается кластером 05h. Чтобы узнать имя файла, нужно отыскать элемент оглавления с начальным номером кластера 02h.

Таблица 7. Значения элементов FAT

FAT обычно начинается с логического сектора 1 в разделе DOS (т.е. ее можно прочитать по INT 25h с DX=1). В общем случае сначала надо прочитать корневой_сектор (DX=0) и взять смещение 0Eh . Там указано, сколько корневых и резервных секторов стоят перед FAT. Используйте затем это число (обычно 1) как содержимое DX , чтобы прочитать FAT через INT 25h .

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

Замечание:

  • По общему заблуждению считается, что 16-битовая FAT не позволяет DOS работать с дисками, большими 32 мегабайт. На самом деле, ограничивает то, что INT 25h/26h неспособно работать с СЕКТОРАМИ, номера которых больше 65535. Поскольку размер сектора обычно 512 байт, или половина килобайта, то это диктует 32-мегабайтовый лимит. С другой стороны, ничто не запрещает вам иметь секторы большего размера, так что теоретически DOS может работать с любыми дисками.
  1. Умножьте номер кластера на 3.
  2. Если номер элемента четный, выполните операцию AND над считанным словом и маской 0FFFh. Если номер элемента нечетный, сдвиньте значение вправо на 4 бита. В результате получите искомое значение элемента FAT.

Теперь рассмотрим порядок действий при записи элемента в FAT12.

  1. Умножьте номер кластера на 3.
  2. Разделите результат на 2 (длина элемента - 1.5 (3/2) байт).
  3. Прочитайте из FAT 16-разрядное слово, используя в качестве адреса результат предыдущей операции.
  4. Если номер элемента четный, выполните операцию AND над считанным словом и маской 0F000h, а затем операцию OR над полученным результатом и значением записываемого элемента. Если номер элемента нечетный, выполните операцию AND над считанным словом и маской 0F000h, а затем сдвиньте значение влево на 4 бита и выполните операцию OR с результатом предыдущей операции.
  5. Запишите полученное 16-разрядное слово обратно в FAT.

Замечание:

  • 12-битовый элемент может пересекать границы двух секторов, так что будьте внимательны, если считываете по одному сектору FAT.
    16-битовые элементы проще - каждый элемент содержит 16-битовое смещение (от начала FAT) следующего элемента в цепочке.
    32-битовые элементы - каждый элемент содержит 32-битовое смещение следующего элемента в цепочке.

В программах, написанных на ассемблере, для выполнения умножения на 3 вместо команды MUL часто применяется алгоритм "сдвиг и сложение": исхродное число копируется, над копией числа выполняется сдвиг влево на один разряд (умножение на 2), а затем оба числа складываются (x + 2x = 3x). Вместо команды DIV используется сдвиг вправо на один разряд.

Элемент FAT содержит номер кластера, но при работе с дисками на низком уровне адресуемой единицей данных является сектор, а не кластер.

Дискета (или раздел твердого диска) структурирована следующим образом:

  1. корневой и резервные секторы;
  2. FAT #1;
  3. FAT #2;
  4. корневой каталог (не существует в FAT32);
  5. область данных.

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

Чтобы получить номер начального сектора кластера из номера кластера ClustNum (считанный из соответствующего поля в элементе каталога или в цепи FAT), вы можете использовать недокументированную функцию ОС 32h или прочитать корневой сектор и применить следующие формулы:

корневых_секторов = (RootSiz * 32) / 512 начало_данных = ResSecs + (FatSize * FatCnt) + корневых_секторов нач_сектор = начало_данных + ((ClustNum - 2) * ClustSiz) ,

где значения переменных: RootSiz , ResSecs , FatSize , FatCnt , ClustSiz извлекаются из корневого сектора или из BPB .

Установите DX=нач_сектор перед операцией чтения INT 25h или записи INT 26h .

Каталоги файлов

Каталог файлов представляет собой массив 32-байтных элементов - описателей файлов. С точки зрения операционной системы все каталоги (кроме корневого каталога в системах FAT12 и FAT16) выглядят как файлы и могут содержать произвольное количество записей.

Корневой каталог (Root Directory) - это главный каталог диска, с которого начинается дерево подкаталогов. Для корневого каталога в FAT12 и FAT16 в системной области логического диска выделено специальное место фиксированного размера (16 Кбайт), рассчитанное на хранение 512 элементов. В системе FAT32 корневой каталог является файлом произвольного размера.

Таблица 8. Структура элемента каталога

Смещение Длина Содержимое
00h 11 Короткое имя файла
0Bh 1 Атрибуты файла
0Сh 1 *Зарезервировано под Windows NT (должно содержать 0)
0Dh 1 *Поле, уточняющее время создания файла (в десятках миллисекунд).
Значение поля может находиться в пределах от 0 до 199
0Eh 2 *Время создания файла
10h 2 *Дата создания файла
12h 2 *Дата последного обращения к файлу для записи или считывания данных
14h 2 *Старшее слово номера первого кластера файла
16h 2 Время выполнения последней операции записи в файл
18h 2 Дата выполнения последней операции записи в файл
1Ah 2 Младшее слово номера первого кластера файла
1Ch 4 Размер файла в байтах (32-разрядное число)

Знак "*" означает, что поле обрабатывается только в файловой системе FAT32. В системах FAT12 и FAT16 поле считается зарезервированным и содержит значение 0.

Короткое имя файла состоит из двух полей: 8-байтного поля, содержащего собственно имя файла, и 3-байтного поля, содержащего расширение. Если введенное пользователем имя файла короче восьми символов, то оно дополняется пробелами (код пробела - 20h), если введенное расширение короче трех символов, то оно также дополняется пробелами.

Некоторые функции DOS требуют в качестве параметра байт атрибутов файла. Разряды байта атрибутов устанавливаются в 1 в том случае, если у файла имеется соответствующее свойство:

  • бит 0 - только для чтения;
  • бит 1 - скрытый;
  • бит 2 - системный;
  • бит 3 - идентификатор тома;
  • бит 4 - каталог;
  • бит 5 - архивирован;
  • биты 6 и 7 - резерв (установлены в 0).

Поле времени создания файла и поле времени выполнения последней операции записи в файл имеют следующий формат:

15 9 8 5 4 0

При создании файлов отсчет дат ведется от начала эпохи MS-DOS, т.е. от 01.01.1980. Биты 9-15 содержат номер года минус 1980 (допустимо значение от 0 до 127).

Длинные имена файлов

Начиная с Windows 95 файлу можно присвоить (в дополнение к короткому имени) так называемое длинное имя. Для хранения длинного имени используются пустые элементы каталога, смежные с основным элементом - описателем файла. Наличие единиц в разрядах 0-3 байта атрибутов является признаком того, что свободный элемент каталога используется для хранения участка длинного имени файла (для описателей файлов и каталогов такое сочетание невозможно). Короткое и длинное имена файла являются уникальными, т.е. не должны встречаться дважды в одном каталоге.

Длинное имя записывается не ASCII-символами, а в формате Unicode, где каждому национальному алфавиту соответствует набор кодов. Расплатой за универсальность Unicode является снижение плотности хранения информации - каждый символ занимает два байта (16-разрядное слово). В пустые элементы каталога длинное имя записывается в разрезанном на кусочки виде (см. табл.9).

Таблица 9. Структура элемента каталога, хранящего фрагмент длинного имени файла

Длинное имя записывается в каталог первым, причем фрагменты размещены в обратном порядке, начиная с последнего:

Все каталоги, за исключением корневого, содержат в двух первых элементах вместо описателей файлов специальные ссылки. В элементе № 0 размещается указатель на сам каталог, а в поле имени находится одна точка ("."). В элементе № 1 размещается указатель на родительский каталог, а в поле имени находятся две точки (".."). Если ссылка на таблицу FAT у элемента № 1 имеет нулевое значение, то текущий каталог находится в корневом каталоге.

Блок информации диска формируется НЕДОКУМЕНТИРОВАННОЙ функцией DOS 32h .

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

Таблица 10. Схема блока информации диска

Смещение Длина Содержимое
00h 1 Номер диска (0=A, 1=B и т.д.)
01h 1 Номер субустройства из заголовка устройства (один драйвер может управлять несколькими дисками)
02h 2 Размер сектора в байтах
04h 1 Число секторов на кластер -1 (максим. сектор в кластере)
05h 1 Сдвиг кластера в сектор (кластер = 2№ секторов) (секторов на кластер в степенях двойки: 2 для 4, 3 для 8)
06h 2 Число резервных секторов (корневые, начало корневого огл.) (N первого сектора FAT)
08h 1 Число таблиц FAT
09h 2 Макс. число элементов в корневом оглавлении
0Bh 2 Номер сектора для кластера №2 (1-й кластер данных)
0Dh 2 Всего кластеров +2 (наивысший номер кластера)
0Fh 1 Число секторов, занимаемое одной FAT
10h 2 Номер сектора начала корневого оглавления
12h 4 Адрес заголовка_устройства
16h 1 Байт дескриптора_носителя
17h 1 Флаг доступа: 0, если был доступ к устройству
18h 4 Адрес следующего блока информации диска
(0FFFFh, если блок - последний)

Битовые флаги режима открытия:

  1. 0-2: Права доступа процесса в сети
    000 - чтение; 001 - запись; 010 - чтение и запись.
  2. 4-6: Режим разделения:
    000 - режим совместимости
    001 = монопольный захват файла
    010 = отвергать запись
    011 = отвергать чтение
    100 = ничего не отвергать
  3. 7: Наследование:
    1 - файл приватный для этого процесса 0 - наследуется порожденными процессами

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

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

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

Рис. 19. Иерархия файловых систем:

а – одноуровневая организация; б – дерево; в – сеть

Граф, описывающий иерархию каталогов, может быть деревом или сетью. Каталоги образуют дерево, если файлу разрешено входить только в один каталог (рис. 19, б), и сеть – если файл может входить сразу в несколько каталогов (рис. 19, в). Например, в MS-DOS и Windows каталоги образуют древовидную структуру, а в UNIX – сетевую. В древовидной структуре каждый файл является листом. Каталог самого верхнего уровня называется корневым каталогом, или корнем (root).

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

Частным случаем иерархической структуры является одноуровневая организация, когда все файлы входят в один каталог (рис. 19, а).

Имена файлов

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

Простое, или короткое, символьное имя идентифицирует файл в пределах одного каталога. Простые имена присваивают файлам пользователи и программисты, при этом они должны учитывать ограничения ОС как на номенклатуру символов, так и на длину имени. До сравнительно недавнего времени эти границы были весьма узкими. Так, в файловой системе FAT длина имен ограничивались схемой 8.3 (8 символов – собственно имя, 3 символа – расширение имени), а в файловой системе s5, поддерживаемой многими версиями ОС UNIX, простое символьное имя не могло содержать более 14 символов. Однако пользователю гораздо удобнее работать с длинными именами, поскольку они позволяют дать файлам легко запоминающиеся названия, ясно говорящие о том, что содержится в этом файле. Поэтому современные файловые системы, а также усовершенствованные варианты уже существовавших файловых систем, как правило, поддерживают длинные простые символьные имена файлов. Например, в файловых системах NTFS и FAT32, входящих в состав операционной системы Windows NT, имя файла может содержать до 255 символов.

Примеры простых имен файлов и каталогов:

приложение к CD 254L на русском языке.doc

installable filesystem manager.doc

В иерархических файловых системах разным файлам разрешено иметь одинаковые простые символьные имена при условии, что они принадлежат разным каталогам. То есть здесь работает схема “много файлов – одно простое имя”. Для однозначной идентификации файла в таких системах используется так называемое полное имя.

Полное имяпредставляет собой цепочку простых символьных имен всех каталогов, через которые проходит путь от корня до данного файла. Таким образом, полное имя является составным, в котором простые имена отделены друг от друга принятым в ОС разделителем. Часто в качестве разделителя используется прямой или обратный слеш, при этом принято не указывать имя корневого каталога. На рис. 19, б два файла имеют простое имя main.exe, однако их составные имена /depart/main.exe и /user/anna/main exe различаются.

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

Файл может быть идентифицирован также относительным именем. Относительное имя файла определяется через понятие “текущий каталог”. Для каждого пользователя в каждый момент времени один из каталогов файловой системы является текущим, причем этот каталог выбирается самим пользователем по команде ОС. Файловая система фиксирует имя текущего каталога, чтобы затем использовать его как дополнение к относительным именам для образования полного имени файла. При использовании относительных имен пользователь идентифицирует файл цепочкой имен каталогов, через которые проходит маршрут от текущего каталога до данного файла. Например, если текущим каталогом является каталог /user, то относительное имя файла /user/anna/main.exe выглядит следующим образом: anna/main.exe.

В некоторых операционных системах разрешено присваивать одному и тому же файлу несколько простых имен, которые можно интерпретировать как псевдонимы. В этом случае, так же как в системе с сетевой структурой, устанавливается соответствие “один файл – много полных имен”, так как каждому простому имени файла соответствует по крайней мере одно полное имя.

И хотя полное имя однозначно определяет файл, операционной системе проще работать с файлом, если между файлами и их именами имеется взаимно однозначное соответствие. С этой целью она присваивает файлу уникальное имя, так что справедливо соотношение “один файл – одно уникальное имя”. Уникальное имя существует наряду с одним или несколькими символьными именами, присваиваемыми файлу пользователями или приложениями. Уникальное имя представляет собой числовой идентификатор и предназначено только для операционной системы. Примером такого уникального имени файла является номер индексного дескриптора в системе UNIX.

Монтирование

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

Первое решение состоит в том, что на каждом из устройств размещается автономная файловая система, т. е. файлы, находящиеся на этом устройстве, описываются деревом каталогов, никак не связанным с деревьями каталогов на других устройствах. В таком случае для однозначной идентификации файла пользователь наряду с составным символьным именем файла должен указывать идентификатор логического устройства. Примером такого автономного существования файловых систем является операционная система MS-DOS, в которой полное имя файла включает буквенный идентификатор логического диска. Так, при обращении к файлу, расположенному на диске А, пользователь должен указать имя этого диска: A:\privat\letter\uni\let1.doc.

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

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

Файловая система, расположенная на системном диске, назначается корневой. Для связи иерархий файлов в корневой файловой системе выбирается некоторый существующий каталог, в данном примере – каталог man. После выполнения монтирования выбранный каталог man становится корневым каталогом второй файловой системы. Через этот каталог монтируемая файловая система подсоединяется как поддерево к общему дереву (рис. 21).

Рис. 20. Две файловые системы до монтирования

Рис. 21. Общая файловая система после монтирования

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

Атрибуты файлов

Понятие “файл” включает не только хранимые им данные и имя, но и атрибуты. Атрибуты файла– это информация, описывающая свойства файла. Примеры возможных атрибутов файла:

 тип файла (обычный файл, каталог, специальный файл и т. п.);

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

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

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

 информация о разрешенных операциях доступа к файлу;

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

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

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

 признак “только для чтения”;

 признак “скрытый файл”;

 признак “системный файл”;

 признак “архивный файл”;

 признак “двоичный/символьный”;

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

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

 длина записи в файле;

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

 длина ключа.

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

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

Значения атрибутов файлов могут непосредственно содержаться в каталогах, как это сделано в файловой системе MS-DOS (рис. 22, а). На рисунке представлена структура записи в каталоге, содержащая простое символьное имя и атрибуты файла. Здесь буквами обозначены признаки файла: R – только для чтения, А – архивный, Н – скрытый, S – системный.

Рис. 22. Структура каталогов:

а – структура записи каталога MS-DOS (32 байта); б – структура записи каталога ОС UNIX

Другим вариантом является размещение атрибутов в специальных таблицах, когда в каталогах содержатся только ссылки на эти таблицы. Такой подход реализован, например, в файловой системе ufs ОС UNIX. В этой файловой системе структура каталога очень простая. Запись о каждом файле содержит короткое символьное имя файла и указатель на индексный дескриптор файла, так называется в ufs таблица, в которой сосредоточены значения атрибутов файла (рис. 22, б).

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

Статьи к прочтению:

Hierarchical Clustering | Stanford University

Можете дважды щелкнуть на значке папки, после чего запустится проводник и покажет вам содержимое выбранной папки (см. рис. 21.1).

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

Когда вы открываете программный файл, запускается программа.

Открыв папку, вы увидите в окне этой папки ее содержимое. Можно настроить Windows таким образом, что каждая папка будет открываться в своем окне. Вот как это можно сделать.

1. В окне папки выберите Сервис=>Свойства папки.

Появится диалоговое окно Свойства папки.

2. На вкладке Общие выберите пункт Открывать каждую папку в отдельном окне.

3. Щелкните на ОК.

Когда закончите, не забудьте закрыть окна всех папок.

Просмотр древовидной структуры

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

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

Щелкнув на знаке «+» (плюс) напротив соответствующей папки, вы можете увидеть все ее вложенные папки, т.е. ветвь древовидной структуры.

Щелкнув на знаке «-» (минус) напротив папки, вы закроете соответствующую ветвь древовидной структуры.

Как скрыть древовидную структуру

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

Список задач зависит от типа просматриваемой папки, выделенного файла и его типа.

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

О файлах и файловых структурах

Файл

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

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

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

В информатике используют следующее определение: файл - поименованная последовательность байтов.

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

Имена как у файлов имеют и обрабатываются похожим образом:

  • области данных (необязательно на диске);
  • устройства (как физические, порты например; так и виртуальные);
  • потоки данных (в частности, вход или выход процесса) («pipe» следует переводить словом «конвейер»);
  • сетевые ресурсы, сокеты;
  • объекты операционной системы.

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

Файл, как область данных

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



Файл - это информация, хранящаяся на внешнем носителе и объединенная общим именем.

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

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

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

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

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

Чтобы найти нужный файл, пользователю должно быть известно: а) какое имя у файла; б) где хранится файл.

Имя файла

Практически во всех операционных системах имя файла составляется из двух частей, разделенных точкой. Например:

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

Расширение указывает, какого рода информация хранится в данном файле. Например, расширение txt обычно обозначает текстовый файл (содержит текст); расширение рсх - графический файл (содержит рисунок), zip или гаг - архивный файл (содержит архив - сжатую информацию), pas - программу на языке Паскаль.

Логические диски

На одном компьютере может быть несколько дисководов - устройств работы с дисками. Каждому дисководу присваивается однобуквенное имя (после которого ставится двоеточие), например А:, В:, С:. Часто на персональных компьютерах диск большой емкости, встроенный в системный блок (его называют жестким диском), делят на разделы. Каждый из таких разделов называется логическим диском, и ему присваивается имя С:, D:, Е: и т. д. Имена А: и В: обычно относятся к сменным дискам малого объема - гибким дискам (дискетам). Их тоже можно рассматривать как имена дисков, только логических, каждый из которых полностью занимает реальный (физический) диск. Следовательно, А:, В:, С:, D: - это всё имена логических дисков. Имя логического диска, содержащего файл, является первой "координатой", определяющей место расположения файла.

Различают два состояния логического диска – текущее и пассивное. Текущий диск – диск, на котором пользователь работает в текущее машинное время. Пассивный диск – диск, с которым в данный момент времени связь отсутствует.

Файловая структура диска

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

Одноуровневая файловая структура - это простая последовательность файлов. Для отыскания файла на диске достаточно указать лишь имя файла. Например, если файл tetris.exe находится на диске А:, то его "полный адрес" выглядит так:

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

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

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

В операционной системе Windows для обозначения понятия "каталог" используется термин "папка".

Графическое изображение иерархической файловой структуры называется деревом.

На рис. 1 имена каталогов записаны прописными буквами, а файлов - строчными. Здесь в корневом каталоге имеются две папки: IVANOV и PETROV и один файл fin.com. Каталог IVANOV содержит в себе два вложенных каталога PROGS и DATA. Каталог DATA - пустой; в каталоге PROGS имеются три файла и т. д. На дереве корневой каталог обычно изображается символом \.

Рис. 1. Пример иерархической файловой структуры

Различают два состояния каталога (аналогично логическим дискам) – текущее и пассивное. Операционная система помнит текущий каталог на каждом логическом daтекущего диска., в данном случае ОС хранит имя диска и имя каталога.

О файлах и файловых структурах

Что такое файл

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

Файл - это информация, хранящаяся на внешнем носителе и объединенная общим именем.

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

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

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

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

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

Чтобы найти нужный файл, пользователю должно быть известно: а) какое имя у файла; б) где хранится файл.

Имя файла

Практически во всех операционных системах имя файла составляется из двух частей, разделенных точкой. Например:

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

Расширение указывает, какого рода информация хранится в данном файле. Например, расширение txt обычно обозначает текстовый файл (содержит текст); расширение рсх - графический файл (содержит рисунок), zip или гаг - архивный файл (содержит архив - сжатую информацию), pas - программу на языке Паскаль.

Логические диски

На одном компьютере может быть несколько дисководов - устройств работы с дисками. Каждому дисководу присваивается однобуквенное имя (после которого ставится двоеточие), например А:, В:, С:. Часто на персональных компьютерах диск большой емкости, встроенный в системный блок (его называют жестким диском), делят на разделы. Каждый из таких разделов называется логическим диском, и ему присваивается имя С:, D:, Е: и т. д. Имена А: и В: обычно относятся к сменным дискам малого объема - гибким дискам (дискетам). Их тоже можно рассматривать как имена дисков, только логических, каждый из которых полностью занимает реальный (физический) диск. Следовательно, А:, В:, С:, D: - это всё имена логических дисков.

Имя логического диска, содержащего файл, является первой "координатой", определяющей место расположения файла.

Файловая структура диска

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

Одноуровневая файловая структура - это простая последовательность файлов. Для отыскания файла на диске достаточно указать лишь имя файла. Например, если файл tetris.exe находится на диске А:, то его "полный адрес" выглядит так:

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

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

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

В операционной системе Windows для обозначения понятия "каталог" используется термин "папка".

Графическое изображение иерархической файловой структуры называется деревом.

На рис. 2.9 имена каталогов записаны прописными буквами, а файлов - строчными. Здесь в корневом каталоге имеются две папки: IVANOV и PETROV и один файл fin.com. Папка IVANOV содержит в себе две вложенные папки PROGS и DATA. Папка DATA - пустая; в папке PROGS имеются три файла и т. д. На дереве корневой каталог обычно изображается символом \.

Путь к файлу

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

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

Вот всем знакомая сказочная аналогия понятия "путь к файлу": "На дубе висит сундук, в сундуке - заяц, в зайце - утка, в утке - яйцо, в яйце - игла, на конце которой смерть Кощеева".

Последовательно записанные имя логического диска, путь к файлу и имя файла составляют полное имя файла .

Если представленная на рис. 2.9 файловая структура хранится на диске С:, то полные имена некоторых входящих в нее файлов в символике операционных систем MS-DOS и Windows выглядят так:

C:\IVANOV\PROGS\progl.pas

C:\PETROV\DATA\task.dat

Таблица размещения файлов

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

На рис. 2.10 показан пример отображения на экране компьютера дерева каталогов на логическом диске Е: (левое окно).

В правом окне представлено содержимое папки ARCON. ")то множество файлов различных типов. Отсюда, например, понятно, что полное имя первого в списке файла следующее:

E:\GAME\GAMES\ARCON\dos4gw.exe

Из таблицы можно получить дополнительную информацию о файлах. Например, файл dos4gw.exe имеет размер 254 556 байтов и был создан 31 мая 1994 года в 2 часа 00 мин.

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

Вопросы и задания

    1. Как называется операционная система, используемая в вашем компьютерном классе?
    2. Какую файловую структуру использует операционная система на ваших компьютерах (простую, многоуровневую)?
    3. Сколько физических дисководов работает на ваших компьютерах? Сколько логических дисков находится на физических дисках и какие имена они имеют в операционной системе?
    4. Каким правилам подчиняются имена файлов в вашей ОС?
    5. Что такое путь к файлу на диске, полное имя файла?
    6. Научитесь (под руководством учителя) просматривать на экране каталоги дисков на ваших компьютерах.
    7. Научитесь инициализировать работу программ из программных файлов (типа exe, com).
    8. Научитесь выполнять основные файловые операции в используемой ОС (копирование, перемещение, удаление, переименование файлов).

Пользовательский интерфейс

Дружественный пользовательский интерфейс

А теперь познакомьтесь с новым для вас понятием "пользовательский интерфейс".

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

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

Объектно-ориентированный интерфейс

Интерфейс современных системных и прикладных программ носит название объектно-ориентированного интерфейса. Примером операционной системы, в которой реализован объектно-ориентированный подход, является Windows.

Операционная система работает с множеством объектов, к числу которых относятся: документы, программы, дисководы, принтеры и другие объекты, с которыми мы имеем дело, работая в операционной системе.

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

Документы и программы - это информационные объекты. А такие объекты, как дисководы и принтеры, являются аппаратными (физическими) объектами. С объектом операционная система связывает:

    графическое обозначение;

    свойства;

    поведение.

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

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

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

Контекстное меню

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

Меню - это выводимый на экран список, из которого пользователь может выбирать нужный ему элемент.

Рис. 2.12. Контекстное меню документа

В меню на рис. 2.12 все пункты, кроме последнего, относятся к действиям, которые можно выполнить с документом. Выбор нужного пункта меню производится с помощью клавиш управления курсором или манипулятора (например, мыши). Если выбрать пункт меню "Свойства", то на экран будет выведен список свойств данного объекта.

Вопросы и задания

    1. Что такое пользовательский интерфейс?
    2. Чем характеризуется объект (с точки зрения объектно-ориентированного подхода)?
    3. Каким образом можно узнать свойства объекта или выполнить действие над ним?



Понравилась статья? Поделиться с друзьями: