
- •2. Структура файлу boot.Ini, його призначення та використання.
- •3. Параметри запуску ос Windows.
- •4. Фази завантаження ос Windows та їх характеристика.
- •6. Завершення роботи ос Windows.
- •7. Особливості завантаження ос w7. Редактор bcd.
- •8. Роль bcd та диспетчера завантажень ос w7.
- •9. Вибір ос для завантаження та його особливості.
- •10. Реєстр ос Windows. Його призначення та використання.
- •11. Основні ключі реєстру, їх структура та використання.
- •12. Способи доступу до вмістимого реєстру та їх характеристика.
- •13. Підсистема безпеки. Сукупність вимог до ос.
- •14. Користувачі та групи. Створення та управління.
- •15. Профілі користувачі – складові частини та взаємодія.
- •16. Ідентифікатор безпеки та його використання. Ідентифікатори захисту
- •Маркери
- •Уособлення
- •Обмежені маркери
- •Дескриптори захисту і керування доступом
- •Визначення прав доступу
- •17. Мережеві моделі. Доменна модель.
- •18. Мережеві моделі. Модель робочих груп.
- •19. Система Active Directory та її загальна характеристика.
- •20. Роль dns та ldap в роботі Active Directory.
- •21. Домени у Windows та їх особливості. Створення доменів.
- •22. Процеси та потоки в Windows. Загальна характеристика.
- •23. Етапи створення потоків, структури даних, змінні ядра і об’єкти.
- •25. Основні етапи створення процесу.
- •26. Поняття про кванти і пріоритети, їх застосування.
- •27. Управління пам’яттю. Компоненти диспетчера памяті.
- •28. Захист памяті, основні атрибути.
- •29. Структура адресного простору.
- •30. Формальні мови та способи їх визначення.
- •31. Форми Бекуса-Наура: бнф та рбнф
- •32. Граматики Хомського. Загальна характеристика та використання.
- •33. Розпізнавачі та їх складові частини.
- •34. Скінченні автомати, складові частини та їх характеристика.
- •35. Огляд процесу компіляції. Типи компіляторів.
- •37. Загальна схема мовного процесора та її аналіз.
- •38. Генерація машинного коду та його оптимізація.
- •39. Поняття про резидентні програми і драйвери
- •42. Масиви powershell.
- •43. Арифметичні оператори ПауерШелл.
- •44. Оператори порівняння та логічні оператори.
- •45. Управляючі оператори і оператори циклу.
- •46. Функції.
- •47. Рекурсивні функції.
- •48. Використання фільтрів.
- •49. Сценарії.
- •50. Регулярні вирази.
25. Основні етапи створення процесу.
Створення Windows- процесу здійснюється викликом однієї з таких функцій, як CreateProcess, CreateProcessAsUser, CreateprocessWitbTokenW, і відбувається декілька етапів з участю компонентів ос: Kernel32.dll(бібліотека клієнтської частини Windows) виконавчої системи і процеса підсистеми Windows (Crss). Тому архітектура Windows підтримує декілька підсистем, операції необхідні для створення об’єкта процес виконавчої системи відокремлені від операцій вимагаючи для створення Windows процеса.
Основні етапи створення процесу Windows - функцією CreateProcess.
1. Відкривається файл образу (EXE), який буде виконуватися в процесі.
2. Створюється об'єкт «процес» виконавчої системи.
3. Створюється первинний потік (стек, контекст і об'єкт «потік» виконавчої системи).
4. Підсистема Windows повідомляється про створення нового процесу й потоку.
5. Починається виконання первинного потоку (якщо не вказано прапор CREATE_ SUSPENDED).
6. У контексті нового процесу й потоку ініціалізується адресний простір (наприклад, завантажуються необхідні DLL) і починається виконання програми.
26. Поняття про кванти і пріоритети, їх застосування.
Приорітети та їх використання.
в Windows пердбачено 32 рівня приорітету – від 0 до 31. Ці значення групуються так:
16 рівнів реального часу (16-31);
15 варійованих (динамічних) рівнів (1-15);
Один системний рівень (0), зарезервований для потоку обнулення сторінок (zero page thread).
Рівні пріоритету потоку призначаються з урахуванням двох різних точок зору - Windows API та ядра Windows. Windows API спочатку впорядковує процеси по класах пріоритету, призначеного при їх створенні, а потім - за відносним пріоритетом індивідуальних потоків в рамках цих процесів. Базовий пріоритет кожного потоку в Windows API встановлюється, виходячи з класу пріоритету його процесу і відносного пріоритету самого потоку. Якщо у процесу тільки одне значення пріоритету (базове), то у кожного потоку їх два: поточне і базове
Кванти та їх роль у виконання потоків.
Квант – це інтервал процесорного часу, відведений потоку для виконання. Після його закінчення Windows перевіряє, чи очікує виконання іншої потік з таким же рівнем пріоритету. Якщо на момент закінчення кванта інших потоків з тим же рівнем пріоритету немає, Windows виділяє поточному потоку е один квант.
Величина кванта для кожного процеса зберігається в блоці процеса ядра. Це значення виконується, коли поток надає новий квант. Коли поток виконується, його квант зменшується по вичерпанню кожного інтервала таймера, і в цінцевому резулальтаті спрацьовує алгоритм обробки завершення кванта. Якщо існує інший поток з тим же пріоритетом, очікуючий на виконання, відбувається переключення контекста на наступний поток в чергі готовий потоків. Внутрішня величина кванта зберігається як число тактів таймера, помножена на 3.
В Windows Server – 36 (12 * 3).
Для зміни виличини кванта для потоків всіх проссів можна використати лише два значення: короткий (2 такта таймера використовується по замовчуванням для клієнтських компютерів), або довгий (12 тактів таймера використовується по замовчуванням для серверних систем)
Заверщення кванта
Коли поток вичерпує свій квант процесорного часу, Windows має вирішити, чи слід понизити його пріоритет і підключити до процесора інший поток. Зниживши пріоритет потока Windows шукає більш підходящий для виконання поток. Якщо Windows залишає пріоритет потока попереднім і в черзі готових потоків є інші потоки с тим же пріоритетом потока, вона вибирає з черги наступний поток з тим же пріоритетом, а виконуючий до цього поток переміщується в кінець черги.