Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Окружение. Представляет собой область памяти, в котором виде символьных строк записаны значения переменных, которые имеют след






Представляет собой область памяти, в котором виде символьных строк записаны значения переменных, которые имеют след. Формат – переменная=значение и заканчивается нулевым байтом. Ряд переменных окружения, имена которые зарезервированы системе, но пользователь может добавлять свой. COMSPEC, PATH, FILES. Окружение для командного процессора загружается из файла config.sys, autoexe.bat.

 

49)Формат и назначение блока управления памятью. Каждой программе в MS DOS отводится блок памяти. С каждым таким блоком ассоциирован дескриптор, называемый MCB - Memory Control Block. Этот дескриптор содержит размер блока, идентификатор программы, которой принадлежит этот блок и признак того, является ли данный блок последним в цепочке. Размер сегментов и их адреса отсчитываются в параграфах размером 16 байт. После запуска.com-файл получает сегмент размером 64К, а.exe - всю доступную память. Обычно.exe-модули сразу после запуска освобождают ненужную им память и устанавливают brklevel на конец своего сегмента, а потом увеличивают brklevel и наращивают сегмент по мере необходимости. Естественно, что наращивать сегмент можно только за счет следующего за ним в цепочке MCB, и MS DOS разрешит делать это только в случае, если этот сегмент не принадлежит никакой программе. При запуске программы DOS берет последний сегмент в цепочке, и загружает туда программу, если этот сегмент достаточно велик. Если он недостаточно велик, то появляется сообщение Not enough memory и отказывается загружать программу. При завершении программы DOS освобождает все блоки, принадлежавшие программе. При этом соседние блоки объединяются. Пока программы, действительно, завершаются в порядке, обратном тому, в котором они запускались, - все вполне нормально. Другое дело, что в реальной жизни возможны отклонения от этой схемы. Формат блока MCB. Внутри блока MCB хранится длина описываемого данным MCB фрагмента памяти. Следующий фрагмент памяти начинается сразу за предыдущим. Все блоки управления памятью связаны в список. Блоки MCB бывают двух типов - M и Z. M-блоки - это промежуточные блоки. Блок типа Z является последним блоком в списке и может быть только один. Приведем формат блока MCB: Смещение, байт Размер, байт Имя, поля Описание

0 1 type Тип блока MCB (M или Z)

1 2 owner Сегментная компонента адреса владельца блока; этот блок всегда выровнен на границу параграфа (если 0, то блок описывает сам себя)

3 2 size Число параграфов в этом блоке

5 11 reserve Зарезервировано.

Организация дочерних процессов.

 

50)Организация дочерних процессов. Программа загружается в память при выполнении функции DOSexec(int 21h, 4BH) которая играет роль встречного загрузчика.Способы загрузки выполнения: 1.набор текста в каждой строке с нажатием Enter. В этом случаефукцию exec вызывает командный процессор command.com 2.операционная система.3.программа пользователя может вызывать функцию exec.Последовательный вызов функции exec различными спосабами порождает дочернии процессы.процесс который иницировал функцию exec называеться родительным.Программа функций exec в памяти вклбчает три важных компанента: 1.окружение2.префикс программного окруженя3.программы.Окружение и сама программа предваряются блоком управления памяти 16-байт.в процессе начальной загрузки DOS создает так называемое окружение в катором будут работать активированные программы.Первое окружение получает командный процессор command.com.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.