- •Задачи и интерфейсы Unix-подобных систем.
- •2.Структура ядра ос Linux.
- •3. Процессы в ос Linux. Общие понятия.
- •4. Процессы в ос Linux. Этапы создания процесса.
- •5. Взаимодействие процессов в ос Linux.
- •6. Реализация потоков в ос Linux.
- •7. Планирование в ос Linux.
- •8.Загрузка в ос Linux
- •13.Подкачка в ос Linux.
- •14.Алгоритм замещения страниц в ос Linux.
- •15.Ввод-вывод в ос Linux. Общие понятия.
- •17. Файловые системы в ос Linux. Общие понятия.
- •18. Файловые системы в ос Linux. Файловая система Ext2.
- •19. Файловые системы в ос Linux. Файловая система Ext3.
- •20. Файловые системы в ос Linux. Файловая система nfs.
- •21.Архитектура ос windows nt/2000/xp
- •22. Архитектура ос windows vista
- •23.Структура пользовательского режима. Программный интерфейс Win32 api.
- •24.Реестр ос Windows Vista.
- •25. Реализация объектов в oc windows Vista. Структура объектов.
- •26. Реализация объектов в oc windows Vista. Типы объектов.
- •27. Реализация объектов в oc windows Vista. Пространство имён.
- •Структура пространства имен
- •28. Задания, процессы, потоки, волокна в oc windows Vista.
- •29. Межпроцессное взаимодействие в oc windows Vista.
- •30. Реализация процессов и потоков в oc windows Vista.
- •31. Планирование в oc windows Vista. Условия вызова планировщика.
- •32. Планирование в oc windows Vista. Система приоритетов.
- •33. Планирование в oc windows Vista. Условия изменения приоритетов.
- •34. Технология dll. Структура dll-библиотеки. Наиболее важные dll-библиотеки.
- •35. Технология dll. Преимущества и недостатки dll. Win32 и dll
- •38. Конфигурация виртуального адресного пространства для пользовательского
- •39. Реализация, поддержка, особенности виртуальной памяти в oc windows Vista.
- •40. Реализация управления памятью в oc windows Vista. Обработка страничных
- •41. Алгоритм замещения страниц в oc windows Vista.
- •42. Управление физической памятью в oc windows Vista.
- •44. Файловая система fat. Загрузочный сектор.
- •45. Файловая система fat. Таблица размещения файлов.
- •46. Файловая система ntfs. Структура тома.
- •47. Файловая система ntfs. Структура главной файловой таблицы mft
- •48. Файловая система ntfs. Файловая запись mft для малого и большого файла.
- •49. Файловая система ntfs. Файловая запись mfTдля малого и большого каталога.
- •50. Файловая система ntfs. Файлы метаданных.
31. Планирование в oc windows Vista. Условия вызова планировщика.
Планирование происходит на основе потоков. После завершения работы поток входит в режим ядра, вызывает планировщик и после этого происходит переключение на другой поток. Поток вызывает планировщик в следующей ситуации:
Текущий, выполняющийся поток блокируется на семафоре мьютексе, семафоре, событии и т. д.;
Поток сигнализирует объект;
Истекает квант времени;
Завершается операция ввода/вывода;
Истекает время ожидания.
В первом случае поток работает в режиме ядра. Поток не может выполнять работу с процессором, а поэтому вызывает планировщик для следующего потока.
Во втором случае поток также находится в режиме ядра. При этом событии поток не блокируется, однако всё равно вызывается планировщик. Вызывается он потому что, возможно существует поток с более высоким приоритетом.
В третьем случае происходит прерывание в режиме ядра.
Четвертый случай подразумевает запуск потока после того как он дождался и завершил операцию ввода/вывода.
32. Планирование в oc windows Vista. Система приоритетов.
В системе Windows Vista используется приоритетный алгоритм планирования. Существуют два понятия: базовый приоритет и текущий приоритет. Базовый приоритет устанавливается по умолчанию при создании процесса/потока. Текущий приоритет изменяется динамически во время работы системы. В системе всего существует 32 уровня приоритетов (от 0 до 31). От 1 до 15 – пользовательские потоки. От 16 до 31 – системные потоки. Процесс с приоритетом «0» - это поток обнуления страниц.
Также существует понятие класс приоритетов и относительный приоритет.
Класс – задает приоритет для процесса и всех потоков, находящихся в нём. Допустимые значения:
Real-time
High
Above normal
Normal
Idle
Класс устанавливается для процесса, но влияет на приоритеты потоков.
Относительный приоритет. Допустимые значения:
Time critical
Highest
Above normal
Normal
Below normal
Lowest
Idle
Базовый алгоритм планированиям ОС Vista поддерживает массив с 32 элементами. Элементы массива соответствуют приоритетам от 0 до 31. Каждому элементу массива соответствует список процессов соответствующего приоритета. Планировщик просматривает этот массив, начиная с самого высокого приоритета и ищет не пустой список потоков. Как только будет найден данный список, выбирается первый в очереди поток и выполняется в течение одного кванта времени. Если выбранный поток не успел выполниться, то он ставится в конец очереди своего приоритета. То есть на каком-либо уровне приоритетов потоки планируются циклически. В дополнении к базовым алгоритмам планирования используются механизм динамического изменения текущего приоритета.
33. Планирование в oc windows Vista. Условия изменения приоритетов.
Условие повышения приоритета:
- в первом случае: поток завершил операцию ввода/вывода, и готов приступить к вычислениям. Величина повышения приоритета зависит от устройства, с которым работает данный поток.
- во втором случае: поток ждал изменение семафора, мьютекса, события и после данного события его приоритет повышается(на один или два уровня).
Условия понижения приоритета:
При повышении приоритета, его значение не всегда остается постоянным. Поток, получивший прирост текущего приоритета может использовать данную ситуацию в течение одного кванта времени. По истечении этого кванта времени приоритет снижается на единицу, вплоть до значения базового приоритета.
