- •1. Классификация программного обеспечения
- •1. Базовое программное обеспечение
- •2. Трансляторы
- •3. Языки программирования
- •4. Инструментальные средства (утилиты)
- •5. Прикладное программное обеспечение
- •2. Основные задачи ос
- •3. Типы ос
- •Типы ос по алгоритмам управления ресурсами:
- •Типы ос по аппаратной платформе:
- •Типы ос по области приложений:
- •Типы ос по их архитектурам:
- •4. Базовая система ввода/вывода (bios)
- •Прерывания bios
- •Обеспечение мультизадачности
- •Модернизация bios
- •5. Файловая система. Типы файловых систем. Их особенности.
- •6. Загрузчик ос
- •7. Ядро ос
- •8. Основные функции ядра
- •Планирования заданий в системах без мультипрограммирования.
- •Планирования заданий в системах с мультипрограммированием.
- •Уровни систем планирования.
- •Планировщик процессов.
- •Регулировщик процессов.
- •9. Драйвер ос
- •10. Типы драйверов
- •11. Типы многозадачности, их особенности
- •12. Понятие суперпроцесса
- •13. Потоки
- •Листинг 2. Окончание процедуры инициализации ядра Linux
- •14. Семафоры
- •15. Встроенные функции ос. Встроенные команды ос
- •20. Историческое развитие ос
- •22. Типы unix
- •23. Особенности bsd. Особенности System 5
- •24. Ядро unix
- •25. Типы драйверов unix
- •26. Потоки в unix
- •27. Управление процессами в unix
- •28. Режимы ядра в Unix
- •29. Файловая система в unix
- •30. Реализация безопасности в unix на уровне файловой системы
- •31. Реализация безопасности в unix на уровне ос
- •32. Понятие пользователь, группа в unix
- •33. Бесправный пользователь. Пользователь ресурса. Пользователь ос
- •34. Понятие ресурса
- •35. Понятие консоли.
- •36. Основные команды в unix
- •37. Сеть в unix
- •39. Особенности реализации ms-dos, как составной части unix
- •40. Реализация ядра в ms-dos
- •41. Реализация драйверов в ms-dos
- •42. Реализация потоков в ms-dos
- •43. Управление процессами в ms-dos
- •44. Ограничение на использование оп
- •45. Файловая система в ms-dos
- •46. Реализация безопасности в ms-dos
- •47. Реализация многозадачности в ms-dos
- •48. Встроенные команды ms-dos
- •49. Внешние стандартные команды ms-dos
- •50. Графическая оболочка X- Window
- •51. Графическая оболочка Windows
- •Задачи, поставленные при создании Windows nt.
- •Концепции Windows nt
- •Истоки Windows nt
- •Особенности версии Windows nt 4.0
- •Новые свойства Windows nt 5.0
- •Требования к аппаратуре
- •Области использования Windows nt
- •53. Ядро Windows nt
- •54. Драйверы в Windows nt
- •55. Реализация многозадачности в Windows nt
- •56. Файловая система в Windows nt
- •57. Режимы использования оп в Windows nt
- •58. Реализация безопасности в Windows nt на уровне файловой системы
- •59. Реализация безопасности в Windows nt на уросне ос
- •1. Пользователи, ресурсы и операции доступа
- •2. Локальные, глобальные и специальные группы
- •3. Встроенные группы пользователей и их права
- •4. Возможности пользователей
- •5. Управление профилями пользователей
- •6. Аудит
- •7. Репликация каталогов в сети Windows nt
- •60. Сеть в Windows nt
- •1. Однодоменная сеть Windows nt
- •2. Многодоменная сеть Windows nt
Планирования заданий в системах с мультипрограммированием.
При мультипрограммировании основной функцией планировщика заданий является выборка заданий на выполнение.
Предположим, что в нашей системе применяется простейший алгоритм планирования процессов: алгоритм равномерного циклического квантования, при котором каждому процессу в системе выделяется небольшой квант процессорного времени стандартной величины. Другими словами, если в системе одновременно находятся на выполнении n заданий, процессорное время распределяется между ними равномерно.
Процессорное время - сумма квантов времени ЦПУ, затраченного на выполнение данного задания.
Без учета ввода-вывода.
Задания выполняются мультипрограммно, но без учета ввода-вывода, т.е. эти задания используют только центральный процессор.
Кванты процессорного времени, выделяемые для выполнения заданий, пусть будут достаточно малыми. Следовательно если в памяти находятся одновременно два задания, то каждое из них будет выполняться вдвое медленнее.
5 |
- |
- |
- |
- |
- |
- |
- |
х |
4 |
- |
- |
- |
- |
- |
- |
х |
- |
3 |
- |
- |
- |
- |
х |
- |
- |
- |
2 |
- |
- |
х |
- |
- |
- |
- |
- |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- выполнение или готовность |
||||||||
х - время поступление |
||||||||
Рисунок -1. Мультипрограммное выполнение пяти заданий - без совмещения по вводу-выводу.
Мультипрограммирование снижает производительность с точки зрения среднего времени обращения.
Среднее взвешенное время обращения улучшается.
Наихудший вариант - поступление заданий одновременно. Наилучший вариант - последовательное поступление следующего задания после завершения предыдущего.
С учетом ввода-вывода.
На практике заметная часть времени выполнения задания тратится на ожидание завершения необходимых для его работы операций ввода вывода, выполнение которых может быть совмещено с обработкой ЦП других заданий. Вместо ожидания процессор мог бы переключиться на обработку другого задания.
Следовательно планировщик должен таким образом создавать процессы заданий, чтобы наиболее оптимально загрузить все устройств машины. Конфликты процессов будут создавать среднее время ожидания.
С учетом требования к памяти и без учета ввода вывода.
Для выполнения программы необходимо выделить определенное количество основной памяти. Но в любой системе память конечна, и ее выделение процессам подвержено определенным алгоритмам и условиям. Привести пример.
Конфликты по памяти также увеличивают среднее время ожидания.
С учетом требований к памяти внешним устройствам без учета ввода вывода.
Конфликты возникающие при распределении внешних устройств, могут заметно отразиться на эффективности вычислительного процесса. Привести пример.
Обобщение результатов.
Применение принципа FIFO снижает длительность времени ожидания для каждого задания.
Планирование по принципу "сначала короткие задания" обеспечивает уменьшение среднего времени обращения, но отдает явное предпочтение коротким заданиям.
Алгоритмы с предвидением дают самые лучшие оценки по времени обращения, но их трудно реализовать.
Применение мультипрограммирования дает выигрыш по времени обращения для некоторых смесей заданий, и, наоборот, существуют смеси заданий, на которых мультипрограммирование приводит к противоположному результату.
