- •Оглавление
- •От редактора перевода
- •Введение
- •Использовать
- •Аргументировано обсуждать
- •IV. Применять знания
- •Модуль 1. Компьютерные системы
- •Обзор компьютерных систем
- •1.1.1. Компоненты компьютерных систем
- •Эволюция компьютерных систем
- •1.2.1. Краткая историческая справка
- •Закон Мура
- •1.2.2. Применение компьютерных систем
- •Представление данных в компьютерных системах
- •1.3.1. Биты и байты
- •1.3.2. Системы счисления
- •Модуль 2. Системы аппаратного обеспечения
- •2.1 Процессор и память
- •2.1.1 Процессор. Основы.
- •2.1.2 Типы памяти
- •2.1.3 Лабораторная работа: Эталонное тестирование (необязательная)
- •2.2 Внешние устройства
- •2.2.1 Присоединяемые внешние устройства
- •2.2.2 Шины
- •2.2.3 Входные/выходные устройства
- •2.3 Запоминающие устройства
- •2.3.1 Интерфейсы дисковых контроллеров
- •2.3.2 Накопитель (запоминающее устройство большой ёмкости)
- •2.4 Соединение компонентов аппаратного обеспечения
- •2.4.1 Как компоненты компьютера работают вместе
- •2.4.2 Лабораторная работа: Изучение компьютерных систем
- •2.4.3 Лабораторная работа: Конфигурация online
- •2.5 Повышение производительности компьютера
- •2.5.1 Закон Мура
- •2.5.2 “Узкие” места (Bottlenecks)
- •2.5.3 Производительность и время ожидания
- •Модуль 1 и Модуль 2 Обзорные материалы
- •Закон Мура
- •Модуль 3. Программное обеспечение операционных систем
- •Структура
- •3.1.1 Уровни программного обеспечения
- •3.1.2 Bios: Жизнь снизу
- •3.1.3 Управление процессами
- •3.1.4 Лабораторная работа: диспетчер задач (Task Manager)
- •3.2 Управление устройствами и конфигурация
- •3.2.1 Управление прерываниями
- •3.2.2 Характеристики аппаратного обеспечения
- •3.2.3 Конфигурация
- •3.2.4 Лабораторная работа: Управление устройствами
- •3.3. Распределение ресурсов
- •3.3.1 Виртуальная память
- •3.3.2 Совместное использование файлов и принтеров
- •3.4. Файловые системы
- •3.4.1 Организация файлов
- •3.4.2 Таблица размещения файлов (File Allocation Table) и файловая система nt
- •Модуль 4. Прикладное программное обеспечение
- •4.1 Основы программного обеспечения
- •4.2 Использование систем программного обеспечения
- •4.2.1 Лабораторная работа: Команды dos
- •4.2.2 Лабораторная работа: Макросы
- •4.2.3 Лабораторная работа: Встроенные объект-приложения
- •4.3 Пакетные файлы сценариев
- •4.3.1 Расширенные функции командной строки
- •4.3.2 Команды пакетного файла
- •4.3.3 Лабораторная работа: Создание пакетного файла
- •4.4 Базы данных
- •4.4.1 Лабораторная работа: Поиск в библиотеке Конгресса
- •4.5 Проектирование программного обеспечения
- •4.5.1 Введение в разработку крупномасштабных программных систем (Large-Scale Software).
- •4.5.2 Модель открытого кода
- •4.5.3 Средства для создания и управления программным обеспечением
- •Модуль 3 и Модуль 4 - Материалы для проверки
- •Базы данных
- •Виртуальная память
- •Модуль 5. Сетевые системы
- •5.1 Основы Интернета
- •5.1.1 Типы mime
- •5.1.2 Языки Интернет
- •5.2 Локальные и глобальные сети
- •5.3 Стратегии коммуникации
- •5.3.1 Структура клиент-сервер (Client-Server Framework)
- •5.3.2 Равноправное соединение
- •5.4 Технологии передачи данных
- •5.5 Архитектура Интернет
- •5.5.1 Роутеры и tcp/ip
- •5.5.2 Сервис доменных имен (Domain Name Service)
- •5.5.3 Способность к подключению
- •5.5.4 Провайдеры Интернет-сервиса (Internet Service Providers)
- •Модуль 6. Безопасность компьютера
- •6.1 Угрозы безопасности
- •6.1.1 Злоумышленники: кто, зачем и как?
- •6.1.2 Кража личности и нарушение конфиденциальности (Identity Theft and Privacy Violation)
- •6.1.3 Вредоносные программные средства
- •6.1.4 Отказ от обслуживания
- •6.2 Технологии безопасности
- •6.2.1 Шифрование
- •6.2.2 Применение шифрования
- •6.2.3 Идентификация
- •6.3 Предотвращение, определение и восстановление
- •6.3.1 Система сетевой защиты (Firewall)
- •6.3.2 Средства определения вторжения
- •6.3.3 Восстановление данных
- •6.3.4 Обзор типов безопасности
- •Модуль 5 и Модуль 6 Обзорный материал
- •Шифрование
- •Приложение а. Выполнение файла Visual Basic
- •Приложение в. Загрузка приложения WinZip
- •Рекомендации по чтению ssd2
3.4.2 Таблица размещения файлов (File Allocation Table) и файловая система nt
-
Кластеры и таблицы размещения файлов
-
FAT16
-
FAT32
-
Файловая система NT
Кластеры и таблицы размещения файлов
Диски делятся на дорожки и сектора, как показано на рисунке ниже.
Дорожка
Сектор
Рисунок 1 Дорожки и сектора диска.
Сектора содержат фиксированное число байтов, обычно это 512 байтов. Для сохранения файла используются один или более секторов. Если файл содержит только одну или две строки текста, она будет помещаться в сегменте одного сектора. В таком случае, остаток сектора слева не будет использован. Неиспользованная часть называется потерянным местом (slack space). Если файл большой, возможно десяток миллионов байтов длиной, он не поместится даже на одной дорожке. Потребуются тысячи секторов, разнесенных по множеству дорожек (не нужны непрерывные дорожки). Так как на диске могут быть сотни или даже тысячи файлов и каждому нужны один или более секторов, необходима некоторая регистрация использования системных ресурсов. Файловые системы отличаются в том, как они решают задачу регистрации, но основные принципы похожи.
Поскольку сектора - малы, современные компьютерные системы группируют их в кластеры и читают или записывают весь кластер за один раз. Кластер – наименьший размер, который файл может занять на диске. Кластер содержит 4, 8, 16, 32 или 64 соседних сектора (число должно делиться на 2). Выбор размера кластера зависит от объема устройства, чем больше устройство, тем больше размер кластера. Небольшая часть диска резервируется под Таблицу размещения файлов (FAT). Для каждого кластера, являющегося частью файла, FAT предоставляет номер следующего кластера для этого файла. Таким образом, кластеры, которые составляют файл, связаны, так, если вы знаете адрес первого кластера файла в FAT, вы можете найти все другие, следуя по цепочке. Вход FAT для последнего кластера в цепочке содержит специальный маркер для указания конца цепочки.
FAT16
В ранних версиях Windows и в MS-DOS, который предшествовал Windows, FAT использовал 16 битов (два байта) на каждый кластер, которые допускали в итоге 216 или 65,536 кластеров. Сейчас эта схема относится к FAT16. Так как устройства на жестких дисках стали большими, появилась проблема - FAT был слишком маленьким, для того чтобы содержать все доступные кластеры и позволял разделы только до 2GB. Следующее вычисление показывает, как был получен предел раздела в 2GB: 512 (29) байтов в секторе * 64 (26) секторов в кластере * 216 кластеров в FAT 16 = 231 байт = 2GB. Кроме того, маленькие файлы в кластерной файловой системе с большими кластерами содержат больше неиспользованных пробелов, неэкономно используя место на диске, которое могло бы использоваться для дополнительных файлов. Например, есть много файлов, размером 1000 байтов или меньше, но раздел в 2GB в FAT16 зарезервирует 32KB дискового пространства для каждого из таких файлов: 512 (29) байта в секторе * 64 (26) сектора в кластере = 32768 (215) байтов = 32KB.
Одно решение при использовании FAT16 на жестких дисках, которые содержат более чем 2GB, - делить диск на несколько логических дисков, таких как C, D, и E - каждый с его собственным FAT. Это работает, но вынуждает пользователей разносить файлы по нескольким логическим устройствам, даже если им это не нравится. Также, если один логический диск полностью заполнен, никакой файл на этом логическом диске не может увеличиться, даже если есть достаточное количество места где-нибудь в другом месте диска. Наконец, некоторым приложениям, таким, например, как базы данных, требуются огромные файлы, и возможно им будет недостаточно даже полного раздела FAT16, хотя в целом диск может иметь достаточно памяти.
Примечание. В настоящее время FAT16 представляет только исторический интерес и практически не используется.
FAT32
Чтобы решить эти проблемы, Windows 9x/2000/XP поддерживает файловую систему FAT32. В этой системе, 32 бита (4 байта) для идентификации каждого кластера, но первые 4 бита зарезервированы. Поэтому, в итоге возможно 2(32-4)= 228 = 268435456 кластеров. В файловой системе FAT32, могут использоваться меньшие кластеры вместо больших кластеров FAT16. Это приводит к более эффективному размещению файлов на диске с FAT32. FAT32 может поддерживать диски размером вплоть до двух терабайтов.
Примечание. В настоящее время FAT32 также как FAT16 практически не используется.
Файловая система NT (NTFS)
Современная файловая система NTFS (New Technology File System), используется в Windows 2000/NT/XP/7. В NTFS, размер кластера меняется в зависимости от размера логического диска. Размер кластера автоматически определяется формат-утилитой NTFS, таким образом, обеспечивая необходимую гибкость. Эта гибкость не возможна в FAT16 или FAT32. Эти особенности NTFS позволяют более эффективно распределять дисковое пространство.
Одна важная особенность NTFS - восстанавливаемость. NTFS поддерживают последовательность данных, используя журналирование (journaling), сохраняя запись каждой операции ввода/вывода (I/O), которая изменяет системный файл на логическом диске. Если появляется сбой в системе, файловая структура может быть восстановлена на основе истории операций I/O, выполняющихся в файловой системе. Другая особенность NTFS на Windows 2000/XP - кодируемая система файлов (EFS). EFS позволяет кодировать данные при сохранении на диске. NTFS также поддерживает контроль доступа к данным и права монопольного использования, чтобы ограничить несанкционированный доступ к данным в многопользовательской среде.
Таблица ниже сравнивает файловые системы NTFS и FAT. NTFS против FAT
|
* Значения относятся к ограничениям размера в период внедрения.
Примечание. FAT32 поддерживает тома объемом от 2 ГБ до 2 ТБ. Работая под управлением Windows XP, для FAT32 можно отформатировать тома, размер которых не превышает 32 ГБ
Таблица 1 NTFS против FAT