Резидентный монитор
В вычислительной технике резидентный монитор — это тип системного программного обеспечения, которое использовалось во многих ранних компьютерах с 1950-х по 1970-е годы. Его можно считать предшественником операционной системы . [1] Название происходит от программы, которая всегда присутствует в памяти компьютера и, таким образом, является резидентной . [2] Поскольку в этих системах память была очень ограничена, резидентный монитор часто представлял собой не что иное, как заглушку, которая получала управление в конце задания и загружала нерезидентную часть для выполнения необходимых задач по очистке и настройке задания.
На компьютере общего использования, использующем ввод перфокарт , резидентный монитор управлял машиной до и после выполнения каждой карты управления заданиями , загружал и интерпретировал каждую карту управления и действовал как секвенсор заданий для операций пакетной обработки . [3] Резидентный монитор мог очищать память от последней использованной программы (за исключением самой себя), загружать программы, искать данные программы и поддерживать в памяти стандартные процедуры ввода-вывода. [2]
Подобные уровни системного программного обеспечения обычно использовались на заре появления более поздних миникомпьютеров и микрокомпьютеров , прежде чем они получили возможность поддерживать полноценные операционные системы. [2]
Текущее использование [ править ]
Функциональность резидентного монитора присутствует во многих встроенных системах, загрузчиках и различных встроенных командных строках. Исходные функции, присутствующие во всех резидентных мониторах, дополнены современными функциями, касающимися оборудования во время загрузки, дисков, Ethernet, беспроводных контроллеров и т. д. Обычно доступ к этим функциям осуществляется с помощью последовательного терминала или физической клавиатуры и дисплея, если они подключены. Такой резидентный монитор часто называют отладчиком, загрузчиком, интерфейсом командной строки (CLI) и т. д. Первоначальное значение резидентного монитора с последовательным или терминальным доступом используется нечасто, хотя функциональность осталась прежней и была изменена. дополненный.
Типичные функции резидентного монитора включают проверку и редактирование оперативной памяти и/или ПЗУ (включая флэш-ЭСППЗУ), а иногда и регистров специальных функций, возможность перехода к коду по указанному адресу, возможность вызова кода по заданному адресу, возможность заполните диапазон адресов константой, например 0x00 и некоторыми другими. Более продвинутые функции включают локальную дизассемблирование инструкций языка ассемблера процессора и даже ассемблирование и запись во флэш-память кода, набранного оператором. Кроме того, код можно загружать и выгружать из различных источников, а некоторые продвинутые мониторы поддерживают ряд сетевых протоколов, а также форматирование и чтение FAT и других файловых систем, обычно из флэш-памяти на шинах USB или CFcard.
Для встроенных процессоров многие внутрисхемные отладчики с программным режимом используют концепции и функции резидентного монитора, к которым часто обращается GUI IDE. Они не отличаются от традиционных командных строк резидентного монитора с последовательным доступом, но пользователи об этом не знают. Самое позднее разработчики и опытные пользователи откроют для себя эти встроенные функции резидентного монитора низкого уровня при написании низкоуровневого кода API на хосте для связи со встроенным целевым объектом для отладки и запуска тестовых примеров кода.
Некоторые современные микроконтроллеры имеют резидентные последовательные мониторы или расширенные загрузчики, доступные в качестве опций для использования разработчиками. Многие из них имеют открытый исходный код. Некоторые примеры: PAULMON2, [4] Отладочный монитор AVR [5] Bamo128 Arduino . а также загрузчик и монитор [6] В целом, большинство современных резидентных мониторов для встраиваемых вычислений могут быть скомпилированы в соответствии с различными ограничениями памяти, от маленьких и минималистичных до больших, заполняющих до 25% кодового пространства, доступного на процессоре AVR ATmega328 с 32 килобайтами флэш-памяти, для пример.
Во многих случаях резидентные мониторы могут быть шагом вперед по сравнению с отладкой printf и очень полезны при разработке с ограниченным бюджетом, который не позволяет использовать надлежащий аппаратный внутрисхемный отладчик (ICD).
Примеры для систем с резидентными мониторами [ править ]
См. также [ править ]
Ссылки [ править ]
- ^ Введение в операционные системы 000.18/018 , Факультет компьютерных наук Университета Джонса Хопкинса
- ↑ Перейти обратно: Перейти обратно: а б с Операционные системы — Лекция 02 , Оклендский университет
- ^ "59.305 - Операционные системы , Университет Мэсси [ мертвая ссылка ]
- ^ ПОЛМОН2
- ^ AVR DebugMonitor
- ^ Bamo128 Загрузчик и монитор Arduino