Прекомпилятор

Прекомпилятор является препроцессором для языков прикладного программирования (ПЛ/1, КОБОЛ, ФОРТРАН и язык ассемблера). Его функция состоит в том, чтобы проанализировать исходный модуль на любом из этих языков, удалить из него все найденные предложения SQL, заменяя их предложениями CALL входного языка. На стадии исполнения эти предложения CALL будут передавать управление непосредственно супервизору времени исполнения. Из предложений SQL, которые ему встречаются, Прекомпилятор строит модуль запросов к. базе данных(DHRM), который используется в качестве входных данных для генератора планов прикладных задач, рассматриваемого ниже.

 

Рис. 2.1. Подготовка и исполнение прикладной задачи системы DB2 (общее представление)

 

Генератор планов прикладных задач

Функция генератора планов прикладных задачсостоит в том, чтобы скомпилировать один или более DBRM и создать тем самым план прикладной задачи. План прикладной задачисодержит необходимые команды машинного кода, реализующие первоначальные предложения SQL, из которых были построены эти DBRM. Он включает, в частности, команды обращения к программе управления хранимыми данными (см. ниже).