Операционные системы и программное обеспечение на платформе zSeries

       

Средства разработки пакетного режима


Традиционный способ разработки программ, применяемый программистами в течение десятилетий, основан на использовании средств пакетного режима, реализуемых в сеансе TSO/E или ISPF/PDF. Ключевым элементом данного способа является использование стандартных процедур JCL, хранящихся в системной библиотеке SYS1.PROCLIB и предназначенных для компиляции, редактирования связей и исполнения различных HLL-программ. В таблице 5.9 представлен список некоторых таких процедур.

Таблица 5.9. Стандартные процедуры для разработки приложений

Язык программированияКомпиляцияКомпиляция и редактированиеКомпиляция, редактирование и выполнение
HL AssemblerASMACASMACLASMACLG
C++CBCCCBCСB, CBCCLCBCCBG, CBCCLG
CEDCCEDCСB, EDCСLEDCCBG, EDCСLG
COBOLIGYWCIGYWCLIGYWCLG
Pl/1IEL1CIEL1CL, IBMZCBIEL1CLG, IBMZCBG

Процедуры, предназначенные только для компиляции (имя процедуры заканчивается символом "C"- Compile), служат для создания и сохранения объектного модуля программы. Процедуры компиляции и редактирования служат для создания загрузочного модуля и сохранения его в библиотеке. Символы "CL" или "CB" в имени процедуры указывают на применение соответственно стандартного редактора связей Linkage Editor или редактора Binder. Последняя группа процедур (имена заканчиваются на "CLG" или "CBG") предназначена для выполнения программы, представленной в исходном коде, причем объектный и загрузочный модули могут не сохраняться в постоянных наборах данных.

В качестве примера использования каталогизированной процедуры рассмотрим процедуру ASMACLG, предназначенную для компиляции, редактирования связей и выполнения ассемблерной программы, представленной в виде исходного модуля [29]. Текст процедуры приведен на рис. 5.61.

Процедура ASMACLG состоит из трех шагов. На первом шаге (C) вызывается компилятор ассемблера ASMA90, на втором шаге (L) - редактор связей IEWL, а на третьем (G) - запускается созданный загрузочный модуль. Процедура не содержит символических параметров, поскольку необходимые средства настройки доступны через модификацию DD и EXEC операторов.
С помощью модификации операторов DD можно определить собственные наборы данных для размещения исходного текста программы (C.SYSIN), объектного (C.SYSLIN) и загрузочного (L.SYSLMOD) модулей, исходных данных программы (G.SYSIN). Для задания требуемого набора опций компилятора и редактора связей следует модифицировать параметр PARM соответствующего оператора EXEC (PARM.C и PARM.L).


Рис. 5.61.  Каталогизированная процедура ASMACLG

Рассмотрим некоторые варианты применения процедуры ASMACLG при разработке ассемблерных программ:

  1. исходный модуль и исходные данные разрабатываемой программы представлены во входном потоке:

    //TEST JOB ... // EXEC ASMACLG,PARM.C=LIST,PARM.L=NOMAP //C.SYSIN DD * строки исходной программы ... /* //G.SYSIN DD * исходные данные ...
  2. исходный модуль и исходные данные представлены в заранее подготовленных каталогизированных наборах данных USER.ASM и USER.DATA:

    //TEST JOB ... // EXEC ASMACLG,PARM.C=LIST,PARM.L=NOMAP //C.SYSIN DD DSN=USER.ASM(PRG3),DISP=OLD //G.SYSIN DD DSN=USER.DATA(TABL1),DISP=OLD


При работе в среде ISPF/PDF текст задания формируется с помощью текстового редактора EDIT. Запуск задания можно производить прямо из редактора с помощью команды SUBMIT. Отчет о выполнении задания можно получить и просмотреть либо с помощью утилиты Outlist, либо средствами компонента SDSF.


Содержание раздела