- •Оглавление
- •1. Концепция современного общества и тенденции его развития.
- •2. Влияние особенностей развития электронно-счётного машиностроения на информатизацию общества на современном этапе.
- •3. Сферы применения вт. Особенности развития компьютеризации общества с начала 80-хгодов хх века и способы решения возникших проблем.
- •4. Особенности развития электронно-счётного машиностроения и особенности компьютеризации в различных сферах применения
- •5. Характеристика новых систем общения « человек – эвм» на этапе развития компьютеризации общества. Направление новых технологий
- •6. Основные виды и характеристика новых систем общения на этапе компьютеризации общества.
- •7. Определение математического и программного обеспечения. Характеристические особенности развития мо с момента возникновения до современного уровня.
- •8. Этапы создания математического обеспечения
- •9. Система программирования: определение, сущность, классификация, связь с операционной системой
- •10. Языки программирования и системы команд, используемые в по.
- •11. Программное обеспечение ос реального времени: особенности и их реализация.
- •12. Типы модулей, функционирующих в вычислительной среде.
- •13. Типы задач в системе, диспетчерский и граничный приоритеты, очередь задач и её структура.
- •14. Блок тсв: определение, назначение и функции.
- •15. Метод логических устройств, система назначений.
- •16. Структура программ, реализуемые ос.
- •17. Определение операционной системы, типы ос – общее и особенное, понятие режима работы.
- •18. Группы определений операционных систем.
- •19. Принципы проектирования операционных систем.
- •20. Оптимальная система, понятие эффективности и критерия эффективности.
- •21 .Основные блоки (компоненты) ос. Прохождение задачи через ос
- •22. Понятие модуля в операционной системе, его функциональная значимость, разновидности, иерархия.
- •23. Структурный состав операционной системы. Назначение и функции комплекса программ технического обслуживания.
- •24. Виды структур программ, динамически развивающихся в ос. Концепция виртуальной машины, последовательность трансляции сверху вниз.
- •Концепция виртуальной машины, последовательность трансляции сверху вниз
- •25. Система назначений – смысл и применение.
- •26. Понятие архитектуры иерархической ос. Состав ос как набор процессов и объектов
- •27. 2-Х уровневая и 3-х уровневая ос: состав, назначение, осуществление работы.
- •28. Понятие виртуальной машины и принцип трансляции.
- •29. Динамическая последовательная структура программ, общая характеристика и разновидность.
- •30. Планировщик задач, структура.
- •31. Планировщик задач и иерархия уровней ос.
- •32 .Структура планировщика задач в многоуровневой ос
- •33. Структура очереди подзадач в многоуровневой ос.
- •34. Планировщик задач. Механизм планирования
- •35. Тупик: понятие, условие наличия, предотвращение.
- •36. Тупик: понятие, обнаружение, выход.
- •37. Объект исследования и типы моделей его представления
- •38.Понятие изоморфизма и гомоморфизма в абстрактной модели.
29. Динамическая последовательная структура программ, общая характеристика и разновидность.
Программы с динамической последовательной и параллельной структурами
Обе эти структуры при выполнении программы используют несколько модулей. Для управления модулями и установления связи между ними используется четыре макрокоманды: LINK, XCTL, LOAD, DELETE.
Каждый модуль загрузки, работающий в системе, может быть одного из 3-х типов:
Однократно используемый модуль 2)Повторно используемый модуль 3)Реентерабельный модуль загрузки
Однократно используемый модуль загрузки вызывается всякий раз, когда к нему обращаются. Он изменяется в ходе своего выполнения, так что каждый раз необходимо его новая копия.
Повторно используемый модуль загрузки является самовосстанавливающимся, так что его команды восстанавливаются перед повторным выполнением. Повторно используемый модуль могут использовать несколько подзадач одного шага задания, если одновременно две задачи потребуют этот модуль, то вызывается его копия.
Вызова второй копии можно избежать, если в системе есть организация очередей повторно используемых модулей.
Реентерабельный модуль загрузки – это модуль, который не изменяется в ходе своего использования. В виде реентерабельных модулей разрабатываются системные задачи и имеют при этом нулевой ключ защиты памяти. Реентерабельный модуль может использоваться любой активной задачей в системе. Данные и управляющая информация хранятся обычно в регистрах ЭВМ и в личных управляющих секциях, которые являются частью программы пользователя и не входят в реентерабельный модуль загрузки. В системах мультипрограммирования использование реентерабельных модулей минимизирует требования к объему ОЗУ. Эти модули обладают одной особенностью, т.к. активная задача в момент выполнения такого модуля только считывает информацию из памяти, то ее ключ защиты в ССП !может не совпадать с ключом защиты памяти, в котором помещен модуль загрузки. Это позволяет любой активной задаче использовать такие реентерабельные модули системы, которые управляют методами доступа.
30. Планировщик задач, структура.
В общем смысле термина, операционная система является посредником между приложениями и ресурсами. К ресурсам обычно относят память и физические устройства. Но центральный процессор (ЦП) можно также считать ресурсом, который планировщик на некоторое время (измеряемое в отрезках ) выделяет задаче. Планировщик обеспечивает параллельное выполнение нескольких программ, распределяя ресурсы ЦП между различными задачами различных пользователей.
Важной целью планировщика является эффективное распределение отрезков процессорного времени при условии обеспечения пользователю времени ожидания на приемлемом уровне. Помимо этого, перед планировщиком могут стоять противоречащие друг другу цели, такие, как минимизация времени ожидания при выполнении критически важных задач реального времени и максимальное использование ресурсов ЦП. Посмотрим, как планировщик задач Linux 2.6 справляется с достижением этих целей в сравнении со своими предшественниками.
Каждый ЦП имеет очередь задач, состоящую из 140 списков, обслуживаемых в порядке FIFO и содержащих задачи, имеющие соответствующий приоритет. Задачи, запланированные к выполнению, добавляются в конец списка. Каждой задаче выделяется отрезок времени, определяющий продолжительность ее выполнения. Первые 100 списков очереди задач зарезервированы для задач реального времени, а последние 40 - для пользовательских задач Позже вы поймете важность этого разграничения.
Помимо очереди задач ЦП, называемой активной очередью задач , существует еще неактивная очередь. После того, как задача, находящаяся в активной очереди, исчерпывает отведенный ей отрезок времени, она переносится в неактивную очередь . При переносе происходит пересчет ее отрезка времени (также пересчитывается ее приоритет, но об этом позже). Если в активной очереди отсутствуют задачи с данным приоритетом, соответствующие указатели активной и неактивной очередей меняются местами; при этом неактивный список становится активным.
Работа планировщика задач не отличается сложностью: он просто выбирает задачу для выполнения из списка с наивысшим приоритетом. Чтобы повысить эффективность этого процесса, для определения наличия задач в списке используется битовый массив. Следовательно, для поиска бита, соответствующего списку с наивысшим приоритетом, можно использовать инструкцию find-first-bit-set, которую поддерживает большинство архитектур процессоров. Время, затрачиваемое на поиск задачи, зависит не от числа активных задач, а от числа приоритетов. Следовательно, планировщик версии 2.6 является процессом сложности O(1), поскольку время, затрачиваемое на планирование задачи постоянно и детерминистично вне зависимости от числа активных задач.