Алгоритм контроля распределения памяти специализированной ЭВМ
Характеристика задачи распределения памяти специализированной ЭВМ в условиях ограниченных ресурсов. Алгоритм, позволяющий обеспечить максимальную независимость проверяемых частей, простоту контроля программы распределения памяти специализированной ЭВМ.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 27.02.2019 |
Размер файла | 39,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Алгоритм контроля распределения памяти специализированной ЭВМ
Задача распределения памяти специализированной ЭВМ возникает в связи с необходимостью её эффективного использования в условиях ограниченных ресурсов. В программах часто встречаются участки, в которых для правильного выполнения определенных операций необходима предварительная подготовка определенных состояний регистров памяти. Примерами операций такого рода могут быть: считывание из регистров заранее подготовленной в ней информации; формирование исполнительного адреса по адресу команды и содержимому индексного регистра; использование результата, оставшегося на сумматоре после предыдущей операции для последующих вычислений или установка сумматора в исходное состояние.
Встречается достаточно много нарушений правил использования памяти специализированной ЭВМ, отличающихся типом ошибки, видом условий и характером состояний. Наиболее часто эти ошибки появляются, когда в качестве входного языка программирования используются автокод или машинный код команд специализированной ЭВМ, вследствие чего программирование операций, выполняющих установку требуемых состояний памяти, частично или целиком возлагается на программиста.
При распределении регистров памяти специализированной ЭВМ ошибки возникают, как правило, из-за отсутствия предварительной записи в регистр величины, считываемой с этого регистра. Причинами этого могут быть:
операция записи вообще отсутствует;
операция записи имеется, но запись выполняется не на тот регистр;
запись производится на требуемый регистр, но записывается не та величина;
имеет место уничтожение установленной ранее величины какой-либо непредусмотренной записью.
Операции, образующие эти сочетания, не обязательно должны относиться к смежным командам. В общем случае они могут принадлежать командам, разделенным некоторой последовательностью команд, ни одна из которых не содержит операций считывания или записи на этот регистр. При оптимизации распределения памяти наиболее часто оказываются пропущенными операции записи или считывания требуемых величин только на некоторых маршрутах исполнения программы. В случае распределения памяти ограниченного объема (например, индексных регистров) типичным является пропуск операций сохранения и восстановления значения некоторой величины (индекса), необходимой для правильного исполнения программы. Ошибки пропуска операций записи и считывания возникают иногда при объединении модулей в комплекс программ вследствие нарушения правил связей по управлению и по информации.
Контроль распределения памяти специализированной ЭВМ включает две задачи: построение диагностической модели подпрограммы и организацию просмотра модели с целью выявления недопустимых сочетаний операций считывания и записи величин.
Трудности практической реализации контроля распределения памяти сложных комплексов программ, имеющих многочисленные вызовы функциональных и стандартных программ, во многом определяются высокой размерностью моделей комплексов программ.
Для контроля распределения памяти предлагается способ, позволяющий обеспечить максимальную независимость проверяемых частей, а также простоту и регулярность просмотра отдельных частей и их совокупностей (рисунок 1). При этом особенностью способа является то, что просмотр программы производится последовательно по частям без повторений, каждая часть проверяется полностью, независимо от других частей, а их совместная проверка выполняется без учета деталей их автономной проверки.
Данный способ проверки основан на организации последовательного, независимого просмотра иерархических упорядоченных частей модели комплекса программ с предварительным выделением в модели только той информации, которая имеет непосредственное отношение к контролируемым величинам и к ячейкам памяти.
При выполнении проверки памяти используется трехуровневое представление модели комплекса программ:
уровень команд образующих линейные участки;
уровень линейных участков, входящих в подпрограммы;
уровень подпрограмм и линейных участков, образующих контролируемый комплекс программ в целом.
Рисунок 1 - Логическая схема способа контроля распределения памяти специализированной ЭВМ
Линейные участки и подпрограммы каждого из уровней проверяются независимо друг от друга.
При проверке использования каждого регистра или ячейки памяти модель, представляющая описание программы иди некоторой ее части, преобразуется. В результате исключаются все те вершины, команды которых не используют контролируемый регистр. При этом размер модели уменьшается, а просмотр для проверки условий наличия запрещенных сочетаний операций записи-считывания сводится к попарной проверке связанных между собой вершин.
Проверка выполняется последовательно по всем контролируемым регистрам для частей модели одного уровня с последующим переходом к проверке частей менее детального уровня представления модели. При переходе от одного уровня анализа к другому каждая независимая часть описывается перечнем своих входов и выходов. Для входов определяется перечень регистров, с которых выполняется считывание контролируемых величин при исполнении программы с соответствующего входа. Для каждого выхода формируется перечень регистров, на которые выполняется запись контролируемых величин. Связь между частями модели на следующем уровне детализации осуществляется по информации о входах и выходах из описания программы.
Алгоритм контроля распределения памяти специализированной ЭВМ представлен на рисунке 2.
Функционирование алгоритма начинается с ввода исходных данных из блока начальной настройки. В счетчик команд узла формирования адресов устройства управления (СчК УзФА) записывается адрес начала программы. По данному адресу происходит вычисление исполнительного адреса команды, и обращение по нему в постоянное запоминающее устройство (ПЗУ). Выбранная команда из ПЗУ поступает на регистр команд устройства управления эмулятора. В регистре команд по коду операции (КОП) определяется тип команды (безадресная, одноадресная или передачи управления).
Если команда безадресная, то происходит ее выполнение в арифметико-логическом устройстве. Счетчик команд увеличивается на единицу, и результат выводится в модуль визуализации.
В противном случае определяется одноадресная команда или передачи управления.
Если команда одноадресная, то вычисляется исполнительный адрес операнда, по которому осуществляется обращение в оперативное запоминающее устройство (ОЗУ) или ПЗУ.
Одновременно происходит обращение в базу данных обращения к ОЗУ, где фиксируется количество обращений к ОЗУ, какая программа и с какого адреса производит обращение. Выбранный операнд поступает в регистр числа.
В арифметико-логическом устройстве происходит выполнение команды и результат записывается в регистр сумматора один (РгСМ1). Далее счетчик команд увеличивается на единицу, и результат выводится в модуль визуализации.
Если поступает команда передачи управления, то вычисляется исполнительный адрес команды перехода. Выполняется вспомогательная операция по сохранению точки ухода, в случае, если это необходимо. Значение адреса команды перехода записывается в счетчик команд, и результат выводится в модуль визуализации.
Рисунок 2 - Алгоритм контроля распределения памяти специализированной ЭВМ
Если с устройства обмена не поступал сигнал прерывания, то вычисление исполнительного адреса осуществляется по адресу, находящемуся в счетчике команд.
По приходу сигнала прерывания через устройство обмена происходит обработка статистической информации обращения к различным зонам оперативного запоминающего устройства, поступающей из базы данных.
Достоинствами предлагаемого алгоритма контроля распределения памяти специализированной ЭВМ является то, что он позволяет обеспечить максимальную независимость проверяемых частей сложного комплекса программ, а также простота просмотра отдельных частей программы и их совокупностей. При этом просмотр программы производится последовательно по частям без повторений, каждая часть программы проверяется полностью, независимо от других частей, а их совместная проверка выполняется без учета деталей их автономной проверки.
Литература
память контроль эвм программа
1. Липаев В.В. Надежность программных средств. Серия "Информатизация России на пороге XXI века". - М.: СИНТЕГ, 1998.
2. Липаев В. В. Проектирование программных средств. М., Высшая школа, 1990.
3. Липаев В.В. Отладка сложных программ. - М.: Энергоатомиздат, 1993.
4. Гончарик Л.П., Мороз Л.Е., Суркова А.В., Сухоручкин В.М. Система комплексной отладки для программного обеспечения АСУ реального времени. - Вопросы радиоэлектроники, 1983, серия общие вопросы радиоэлектроники, вып. 6.
Размещено на Allbest.ru
...Подобные документы
Схема распределения памяти, соответствующая пользовательской трактовке распределения памяти. Перемещение с помощью таблицы сегментов. Аппаратная поддержка сегментного распределения памяти. Сегментно-страничная организация памяти с двухуровневой схемой.
лекция [1,5 M], добавлен 24.01.2014Стратегии размещения информации в памяти. Алгоритмы распределения адресного пространства оперативной памяти. Описание характеристик модели и ее поведения, классов и элементов. Выгрузка и загрузка блоков из вторичной памяти. Страничная организация памяти.
курсовая работа [708,6 K], добавлен 31.05.2013Распределение оперативной памяти фиксированными, динамическими и перемещаемыми разделами. Распределение с использованием внешней памяти. Принципы рaботы матричного принтера. Проектирование символов и разработка программы, реализующей их вывод на печать.
курсовая работа [241,3 K], добавлен 01.07.2011Сравнение различных способов обхода данных. Заполнение массива для случайного обхода. Изучение понятия кэш-памяти, ее основных размеров и функций. Оптимальный и неоптимальный алгоритм умножения двух матриц с точки зрения порядка обхода данных в памяти.
презентация [94,7 K], добавлен 02.06.2013Разработка алгоритма работы и структуры контроллера кэш-памяти с полностью ассоциативным отображением основной памяти. Представление операционной и управляющей частей черного ящика устройства. Схема алгоритма контроллера кэш на уровне микроопераций.
курсовая работа [1,0 M], добавлен 19.03.2012Понятие системных ресурсов, конфликты, связанные с ресурсами IRQ и DMA. Использование портов ввода-вывода. Разновидности памяти и особенности ее распределения в рамках операционной системы. Назначение адресов памяти средствами Windows 9x/NT/2000.
презентация [45,9 K], добавлен 27.08.2013Объем двухпортовой памяти, расположенной на кристалле, для хранения программ и данных в процессорах ADSP-2106x. Метод двойного доступа к памяти. Кэш-команды и конфликты при обращении к данным по шине памяти. Пространство памяти многопроцессорной системы.
реферат [28,1 K], добавлен 13.11.2009Разработка программной реализации для решения задач бесприоритетного и приоритетного распределений. Контрольный пример решения задачи бесприоритетного распределения со структурой иерархии 5-4-2. Алгоритм расчета задачи одноресурсного распределения.
курсовая работа [2,3 M], добавлен 05.01.2013Применение программы-имитатора динамического распределения оперативной памяти, выполнение ее на ОС Windows 7 в интегрированной среде. Разработка приложений с графическим интерфейсом Delphi XE3. Автоматическая загрузка, исполнение и добавление процессов.
курсовая работа [284,7 K], добавлен 12.01.2015- Управление памятью. Страничная организация памяти. Сегментная организация памяти. Виртуальная память
Как осуществляется трансляция адресов при страничной организации. Что такое компактировка и как с ее помощью избавиться от внешней фрагментации. Что такое регистр таблицы страниц, сегментация. Методы распределения памяти в виде отдельных сегментов.
контрольная работа [236,2 K], добавлен 23.12.2016 Алгоритм решения функциональной задачи. Выбор системы команд специализированной ЭВМ. Форматы команд и операндов. Содержательные графы микропрограмм операций АЛУ. Разработка объединенной микропрограммы работы АЛУ. Закодированные алгоритмы микропрограмм.
курсовая работа [265,5 K], добавлен 17.11.2010Проблемы, возникающие при работе с динамическими переменными, их решение. Алгоритм Дойча-Шорра-Уэйта. Структура памяти и стратегия ее перераспределения. Главная идея, лежащая в основе "методов близнецов". Разбивка памяти на блоки и их упорядочение.
курсовая работа [57,0 K], добавлен 29.01.2010Классификация компьютерной памяти. Использование оперативной, статической и динамической оперативной памяти. Принцип работы DDR SDRAM. Форматирование магнитных дисков. Основная проблема синхронизации. Теория вычислительных процессов. Адресация памяти.
курсовая работа [1,5 M], добавлен 28.05.2016Внутренний кэш. Смешанная и разделенная кэш-память. Статическая и динамическая память. TLB как разновидность кэш-памяти. Организация кэш-памяти. Отображение секторов ОП в кэш-памяти. Иерархическая модель кэш-памяти. Ассоциативность кэш-памяти.
курсовая работа [229,1 K], добавлен 04.11.2006Оценка неизвестной функции распределения величины или ее плотности распределения вероятности. Алгоритм основной программы, функции для построения графика исходного массива, гистограммы и графика функции Лапласа. Результат обработки сейсмического сигнала.
курсовая работа [194,4 K], добавлен 16.12.2012Динамическое распределение памяти. Анализ виртуальной памяти, алгоритм ее обращения, общие принципы защиты. Страничная организация. Особенности переключения в мультизадачный режим. Режим системного управления. Расширение размера адресного пространства.
презентация [1,3 M], добавлен 14.12.2013Главная задача компьютерной системы. Виртуальные адресные пространства нескольких программ. Классификация методов распределения памяти. Зависимость загрузки процессора от числа задач и интенсивности ввода-вывода. Схема функционирования кэш-памяти.
презентация [2,2 M], добавлен 14.11.2012Сравнительный анализ статической и динамической памяти. Быстродействие и потребление энергии статической памятью. Объем памяти микросхем. Временные диаграммы чтения и записи памяти. Микросхемы синхронной и асинхронной памяти. Режимы модулей памяти.
презентация [114,2 K], добавлен 27.08.2013Откачка и подкачка, схема. Смежное распределение памяти. Аппаратная поддержка регистров перемещения и границы. Стратегии динамического распределения памяти. Внешняя и внутренняя фрагментация. Схема адресной трансляции по двухуровневой таблице страниц.
лекция [2,0 M], добавлен 24.01.2014Обеспечение непосредственной связи контроллера прямого доступа к памяти (ПДП) и памяти микроЭВМ. Совместное использование шин системного интерфейса процессором и контроллером. Последовательность и алгоритм программирования контроллера прямого доступа.
реферат [122,6 K], добавлен 13.11.2009