Читайте также: |
|
Абревіатура FAT (file allocation table) розшифровується як “таблиця розташування файлів”. Цей термін відноситься до лінійної табличної структури з відомостями про файли — імена файлів, їх атрибути та інші дані, що визначають розташування файлів (або їх фрагментів) у середовищі FAT. Елемент FAT визначає фактичну область диска, в якій зберігається початок фізичного файлу.
В файловій системі FAT логічний дисковий простір будь-якого логічного диска поділяється на дві області (рис.7.2): системну область і область даних.
R | Sec | Fat1 | Fat2 | Rdir | Каталоги і файли |
Системна область Область даних |
Рисунок 7.2 - Структура логічного диска
Системна область логічного диска створюється та ініціалізується при форматуванні, а в подальшому оновлюється при маніпулюванні файловою структурою. Область даних логічного диска вміщує файли і каталоги, підпорядковані кореневому. Вона, на відміну від системної області, доступна через інтерфейс користувача DOS. Системна область складається з наступних компонентів, розташованих у логічному адресному просторі підряд:
1. завантажувального запису (boot record, BR);
2. зарезервованих секторів (reserved sector, ResSecs);
3. таблиці розташування файлів (file allocation table, FAT);
4. кореневого каталогу (root directory, RDir).
Архитектура ОС семейства Windows 9x
Windows 9x — 32-разрядная, многозадачная ОС, реализующая вытесняющую многозадачность для 32-разрядных приложений и кооперативную многозадачность для приложений MS-DOS.
Системная виртуальная машина System VM
Внутри системной VM выполняются приложения 16-разрядные приложения Windows (Win16), 32-разрядные приложения Windows (Win32) и программа, обеспечивающая интерфейс с пользователем - оболочка.
Приложения Win32 работают на основе алгоритма вытесняющей многозадачности в отдельных адресных пространствах. Второй особенностью приложений этой группы является то, что в них используется плоское адресное пространство (flat memory model - плоская модель памяти), что, с одной стороны, повышает эффективность работы с памятью, а с другой - делает приложение более быстрым, так как больше не требуется тратить время на медленные преобразования сегментной модели памяти. Наконец, 32-разрядные приложения поддерживают длинные имена файлов.
Все 16-разрядные приложения выполняются как единый процесс в общем адресном пространстве на основе алгоритма кооперативной многозадачности, используя сегментированное адресное пространство.
С Windows 98 поставляются три программы, которые могут играть роль оболочки:
Проводник - стандартная оболочка, обеспечивающая полный набор 32-разрядных возможностей;
Диспетчер программ;
Internet Explorer 4.0 - позволяет обращаться как к локальным, так и удаленным ресурсам.
Вид оболочки определяется значением параметра SHELL в разделе [Boot] файла SYSTEM.INI. Начальное значение этого параметра определяется при установке операционной системы.
Виртуальные машины DOS (VDM)
На виртуальных DOS-машинах (VDM) выполняются DOS-программы. Они работают в режиме вытесняющей многозадачности. Каждая виртуальная машина имеет собственное адресное пространство и независимый доступ к устройствам.
Интерфейс системных вызовов Windows API
Интерфейс системных вызовов Windows API (интерфейс прикладного программирования) или системные сервисы загружаются в системную VM и отображаются в адресные пространства каждого прикладного процесса.
В Windows 9х включены два программных интерфейса: Win16 API и Win32 API.
Win16 API используется для обеспечения совместимости с приложениями Windows 3.x и содержит набор функций, вызываемых 16-разрядными приложениями для доступа к различным компонентам операционной системы.
Все 32-разрядные приложения Windows используют Win32 API, состав функций которого примерно такой же, что и в Win16 API. 32-разрядный интерфейс является более устойчивым и более эффективным.
Все системные вызовы обращаются к одному их трех основных компонентов ОС Windows 9x: модуль Kernel (ядро Windows 9x), модуль GDI (интерфейс графических устройств) и модуль USER (средства пользовательского интерфейса). 16-разрядные версии этих компонентов находятся в файлах KRNL386.exe, GDI.exe и USER.exe, а 32-разрядные - в файлах KERNEL32.dll, USER32.dll и GDI32.dll соответственно.
ядро Windows 9x. Эта часть операционной системы обеспечивает поддержку функций, которые необходимы для выполнения приложения. Например, каждый раз, когда приложению требуется память, оно обращается к ядру Windows. Этот компонент не взаимодействует с устройствами, о работает только с низкоуровневыми компонентами операционной системой.
интерфейс графических устройств. Каждый раз, когда приложению необходимо вывести что-либо на экран или другое устройство вывода, оно использует функции, предоставляемые интерфейсом графического устройства (GDI). Этот компонент ОС управляет шрифтами, средствами печати и другими графическим устройствами Windows 9x.
средства пользовательского интерфейса. Пользовательский интерфейс ОС Windows опирается на фундаментальный объект - "окно". Поэтому в системе должен быть компонент, который бы отвечал за отслеживание всех окон, созданных для отображения информации. Каждый раз, когда приложение отображает какой либо значок или кнопку, оно обращается к функции определенного типа из набора функций USER.
Ниже представлена взаимодействия частей 16-разрядного и
32-разрядного интерфейсов.
Win32 API | Win16 API | |
User32 (user32.dll) Переадресация вызовов от 32-разрядных приложений 16-разрядному модулю | User16 (user.exe) Реализует объект «окно», списки окон,, имеет богатый набор функций по созданию и управлению окнами. Также реализует отрисовку стандартной рамки окна (DefWindowProc) и несколько стандартных элементов пользовательского интерфейса (кнопки, чекбоксы, радио-кнопки, полосы прокрутки, списки и диалоговые окна с потомками внутри). | |
GDI32 (gdi32.dll) Отображение шрифтов TrueType, подсистема печати, новая графическая система | GDI16 (gdi16.exe) Графические методы Windows 3.1 Новые графические методы | |
KERNEL32 (kernel32.dll) Управление потоками, синхронизация объектов, управление памятью, файловый ввод/вывод. | KERNEL16 (krnl386.exe) Инициализация Kernel32 |
1. User — управляет вводом с устройств ввода (клавиатура, мышь), а также выводом через интерфейс пользователя.
Дата добавления: 2014-12-19; просмотров: 49 | Поможем написать вашу работу | Нарушение авторских прав |