Монітор (інтерактивна програма)
Монітор, також монітор машинних кодів — комп'ютерна програма, що дозволяє користувачеві вводити команди, які показують або модифікують значення комірок пам'яті, а також інші команди, пов'язані з низькорівневим вводом-виводом або налагоджуванням. Деякі монітори дозволяють покрокове трасування бінарної програми, мають вбудований дизасемблер, а деякі навіть примітивний текстовий редактор і/або асемблер.
Програми-монітори були популярними у еру домашніх комп'ютерів 1970-1980-х років. Як правило, вони записувалися у постійний запам'ятовувач, тобто були завжди «резидентними» (доступними у адресному просторі мікропроцесора) — звідси ще одна назва «резидентний монітор».
Налагоджування і зневадження програм, як правило, здійснювалося встановленням точок зупину (якщо процесор дозволяв таку інструкцію) і запуском програми. При досягненні точки зупинки відбувався перехід до інтерактивного монітора, який дозволяв побачити стан програми, регістрів, стеку, ділянок пам'яті.
З розвитком дискових операційних систем, розповсюдженням дискет і все ширшим використанням мов програмування високого рівня (і, як наслідок, зменшенням частки програм, що розроблялися повністю на мові асемблера) програми-монітори поступово почали поступатися іншим інструментальним засобам.
Приклад
Резидентний монітор любительського комп'ютера Радіо 86РК мав розмір близько 2 кілобайт і записувався у мікросхему постійного запам'ятовувача. Адреси мікросхеми у адресному просторі процесора КР580ВМ80 були F000h — FFFFh. Монітор імплементував наступні команди для інтерактивної роботи:[1]
- D (dump): дамп ділянки пам'яті (шістнадцяткові коди)
- L (list): показ вмісту пам'яті у алфавітно-цифровому вигляді (КОИ-7)
- M (modify): ручний ввід даних (шістнадцяткових кодів) у пам'ять
- F (fill): заповнення пам'яті константою
- T: копіювання ділянки пам'яті за іншою адресою
- C (compare): порівняння ділянок пам'яті
- S (search): пошук коду у пам'яті
- G (go): запуск програми
- X: перегляд і/або зміна значень регістрів процесора
- O (output): виведення блоку даних на магнітофон
- I (input): введення блоку даних з магнітофона
- R (read): читання даних з зовнішньої мікросхеми постійної пам'яті
- U: команда виклику майбутніх «розширень» монітора
Джерела
- «Радио» (журнал) (8): 25. 1986.