
- •Системное по. Цели, задачи, классификация
- •Операционная система. Основные функции ос. Структура операционной системы.
- •Общая характеристика операционных систем Microsoft: семейства dos, Windows
- •Интерфейс прикладных программ (api). Apidos (программные прерывания) и Win32
- •Дисковая подсистема в архитектуре ibmpc
- •Низкоуровневая организация дисковой памяти. Сервис bios доступа к дисковой подсистеме.
- •Понятие файловой системы. Назначение, требования, функции. Способы организации фс.
- •Объекты файловой системы: файлы, директории, логические устройства, другие виды объектов.
- •Файловые системы на основе fat
- •X.2 Файловая система ntfs
- •Служебные структуры fat и их использование
- •Программный интерфейс файловой системы (функции для взаимодействия с фс, файлового ввода-вывода) – dos, Windows Функции общего назначения
- •Файловый ввод-вывод
- •14. Адресное пространство процесса (задачи).
- •15. Приложения Windows (Win 32), разновидности. Структура оконных приложений
- •1. Основные определения
- •2. Особенности приложений Win 32.
- •3. Событийное управление
- •4. Структура приложения
- •16. Окно Win32: назначение, виды, свойства. Оконные классы.
- •17. Создание и управление окнами.
- •18. Событийное управление в Win32. Сообщения и очереди сообщений Windows (Windowsmessages): назначение, структура, отсылка, доставка, обработка Сообщения и очереди сообщений.
- •19. Цикл обработки сообщений. Оконная процедура: назначение, выполнение, способы активизации и завершения.
- •20. Многозадачность, многозадачные операционные системы, особенности выполнения приложений в многозадачной среде. Модель многозадачности Win 32
- •21. Состояния процессов (многозадачная среда). Состояния процессов (потоков)
- •22. Многозадачность в win32. Планирование и выполнения программ в win32
- •23. Процессы win32. Атрибуты и состояния процессов. Порождение процессов и управление ими. Основы управления процессами Win32
- •24. Потоки и многопоточные приложения. Порождение потоков, состояние потоков, управление ими. Основы управления потоками Win32
- •25. Нити – альтернативное управление выполнением программы Управление нитями
- •26. Распределение времени выполнения программ в многозадачной системе. Приоритеты. Распределение времени между потоками (управление приоритетами)
- •27. Приоритеты процессов и потоков win32. Управление приоритетами.
- •28. Взаимодействие процессов/потоков, взаимное исключение, синхронизация (базовые сведения)
- •29. Реализация взаимного исключения. Механизм criticalsection.
- •30. Синхронизация при управлении процессами и потоками
- •31. Функция ожидания
- •32. Использование каналов и почтовых ящиков для обмена данными
- •33. Использование файловой системы для обмена данными
- •X.2.6. Использование сообщения wm_copydata
- •34. Графическая подсистема win32 – общая характеристика, основные принципы.
- •35. Основные объекты win32 gdi. Средства векторной и растровой графики
- •Растровая графика
- •36. Подсистема памяти. Основные задачи, функции, требования
- •37. Виртуальное адресное пространство, управление памятью.
- •38. Динамическое распределение памяти программами (heap). HeapApiWin32.
- •Функции работы с кучами (heap-область)
- •39. Подсистема памяти win32. Регионы(области) памяти. Группы функций api подсистемы памяти. Адресное пространство процесса.
- •40. Управление на уровне менеджера вирнуальной памяти. (vmm)
- •41. Отображение файлов в память Проецирование файлов в память
- •42. Системный реестр windows: назначение, организация, доступ
14. Адресное пространство процесса (задачи).
Образ программы представляет собой ее код и распределенные для нее данные, размещенные в памяти и пригодные для немедленного исполнения. Считается, что программа, образ которой сформирован, полностью контролирует свое адресное пространство, и для выполнения ей требуется только получить контроль над процессором. В зависимости от широты толкования понятия образа в него могут включаться либо только код программы и статические данные, либо также области, созданные программой динамически, параметры среды исполнения, служебные структуры и т.д.
Аппаратное обеспечение предоставляет доступ к виртуальной памяти с диапазоном адресов от 0x0000000000000 до 0xFFFFFFFFFFFFF. Общее адресное пространство, таким образом, составляет более 1 000 Тб. Команды обращения к памяти оперируют с 32-разрядными адресами: 4 бита указывают сегментный регистр, а 28 бит задают смещение внутри сегмента. Такая схема адресации обеспечивает доступ к 16 сегментам, до 256 Мб каждый. Каждый сегментный регистр содержит 24-разрядный ИД сегмента, который вместе с 28-разрядным смещением образует адрес виртуальной памяти. Этот 52-разрядный виртуальный адрес ссылается на единое системное пространство виртуальной памяти.
Адресное пространство процесса представляет собой 32-разрядное адресное пространство, то есть программы используют 32-разрядные указатели. При этом процессы или обработчики прерываний могут обращаться только к тем областям системной виртуальной памяти (сегментам), ИД которых хранятся в сегментном регистре. Для быстрого обращения к различным сегментам (число которых может быть больше 16) процесс может использовать разные сегментные регистры.
32-разрядные процессы в 64-разрядных системах используют то же рабочее адресное пространство, что и в 32-разрядных системах (23 2 байт), но могут работать с тем же пространством виртуальных адресов, что и 64-разрядные процессы (28 0 байт).
Все 32-разрядные приложения имеют адресное пространство процесса размером 4 ГБ (то есть для 32-разрядного приложения может быть выделено не более 4 ГБ памяти). Операционная система Microsoft Windows предоставляет приложениям адресное пространство размером 2 ГБ, также известное как виртуальное адресное пространство пользователя. Все потоки одного приложения содержатся в одном виртуальном адресном пространстве пользователя. Оставшиеся 2 ГБ пространства резервируются операционной системой (эту область памяти также называют адресным пространством ядра). Windows 2000 Server и более поздние выпуски операционных систем, включая Windows Server 2003, содержат параметр boot.ini, позволяющий приложениям получать доступ к 3 ГБ адресного пространства и ограничивающий адресное пространство ядра размером в 1 ГБ.
15. Приложения Windows (Win 32), разновидности. Структура оконных приложений
1. Основные определения
Программа,
Окно (window) – базовое понятие графического интерфейса пользователя (GUI) и основной объект внутрисистемного взаимодействия в ОС Windows. Окна играют роль интерфейса прочих структурных элементов программы, как для пользователя (графический объект), так и для других программ, включая системные (получатель сообщений)
Приложение – программа с окном, в определенной структуре
Процесс – обычно "невидимая" программа
Поток – единица планирования времени выполнения программ.