В состав z/OS входят все необходимые средства, с помощью которых можно
создавать, модифицировать, хранить и распространять новое прикладное
программное обеспечение на различных языках программирования, включая
HL Assembler и языки высокого уровня (High Level Languages), такие как
С, С++,
На рис. 5.59 представлены классическая последовательность этапов и базовые средства разработки программного обеспечения в операционной системе z/OS .
Исходный модуль, содержащий текст программы на одном из поддерживаемых
языков программирования, может быть создан средствами TSO/ISPF/UNIX
shell или подготовлен, а затем импортирован с рабочей станции. Для
размещения исходного модуля может быть использован последовательный или
библиотечный (
(рис 5.59) Базовые средства разработки приложений в z/OSПроцедура редактирования связей (RECFM=U. Ранее отмечалось,
что в конфигурации z/OS обычно предусматривается несколько системных
библиотек загрузочных модулей ( SYS1.LINKLIB и др.), описываемых в
разделе LNKLST реестра SYS1.PARMLIB.
z/OS включает два IEBCOPY можно производить
преобразование загрузочных модулей в программные объекты и обратно.
На этапе редактирования связей программный объект можно настроить определенным образом с помощью специальных параметров (опций), среди которых следует выделить следующие:
AMODE - устанавливает используемый RMODE - устанавливает область размещения в адресном пространстве
(ниже границы 16 MB или произвольно);REUS - устанавливает режим повторного использования (реентерабельный,
используемый последовательно, обновляемый).LOAD, LINK, XCTL, ATTACH.
Готовая к выполнению программа (загрузочный модуль или программный
объект) запускается на выполнение универсальной программой загрузчиком
(
Как видно из рис. 5.59, существует возможность выполнять загрузку
программ, минуя стадию сохранения загрузочного модуля (программного
объекта) в библиотеке. Для этой цели может использоваться
Базовый компонент z/OS Language Environment (LE) поддерживает единую
универсальную среду выполнения (run-
Языковая среда z/OS V1R4 поддерживает приложения, полученные с помощью следующих версий компиляторов:
Приложения, написанные на HL Assembler, также могут использовать средства LE через соответствующие макровызовы.
Языковая среда LE состоит из следующих элементов (рис. 5.60):
(рис 5.60) Универсальная среда выполнения программ Language EnvironmentСоздаваемые с использованием универсальных модулей LE-приложения могут
выполняться в различных
Объединяя средства, доступные в программах, написанных на разных языках, Language Environment устанавливает единую универсальную модель среды выполнения приложений, основанную на целом ряде понятий и терминов, которые следует освоить программисту:
Традиционный способ разработки программ, применяемый программистами в
течение десятилетий, основан на использовании средств пакетного режима,
реализуемых в сеансе TSO/E или ISPF/PDF. Ключевым элементом данного
способа является использование стандартных процедур SYS1.PROCLIB и предназначенных для компиляции,
редактирования связей и исполнения различных
| Язык программирования | Компиляция | Компиляция и редактирование | Компиляция, редактирование и выполнение |
|---|---|---|---|
| HL Assembler | ASMAC | ASMACL | ASMACLG |
| C++ | CBCC | CBCСB, CBCCL | CBCCBG, CBCCLG |
| C | EDCC | EDCСB, EDCСL | EDCCBG, EDCСLG |
| IGYWC | IGYWCL | IGYWCLG | |
| Pl/1 | IEL1C | IEL1CL, IBMZCB | IEL1CLG, IBMZCBG |
Процедуры, предназначенные только для компиляции (имя процедуры
заканчивается символом "C"- Compile), служат для создания и сохранения
объектного модуля программы. Процедуры компиляции и редактирования
служат для создания загрузочного модуля и сохранения его в библиотеке.
Символы "CL" или "CB" в имени процедуры указывают на применение
соответственно стандартного
В качестве примера использования каталогизированной процедуры
рассмотрим процедуру ASMACLG, предназначенную для компиляции,
редактирования связей и выполнения ассемблерной программы,
представленной в виде исходного модуля . Текст процедуры приведен
на рис. 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 при
разработке ассемблерных программ:
//TEST JOB ... // EXEC ASMACLG,PARM.C=LIST,PARM.L=NOMAP //C.SYSIN DD * строки исходной программы ... /* //G.SYSIN DD * исходные данные ...
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.
Наряду с традиционным способом создания приложений на основе пакетных
заданий, ISPF/PDF поддерживает два специальных режима разработки,
доступных через главное меню: интерактивный (Foreground) и пакетный
(
Рассмотрим более подробно функцию 4 ISPF/PDF "Source Data Packed.
(рис 5.62) Главная панель функции интерактивного режима (Foreground)Рассмотрим особенности использования компиляторов в интерактивном
режиме на примере HL Assembler. В этом случае на главной панели следует
ввести 1, нажать ВВОД и перейти к панели настройки параметров
компиляции, представленной на рис. 5.63. Исходный текст программы для
выбранного компилятора может быть представлен двумя способами: в виде
раздела библиотеки ISPF или как произвольный набор данных (например,
как последовательный набор данных).
(рис 5.63) Панель настройки параметров ассемблераЕсли исходный модуль представлен в виде раздела библиотечного набора
данных, существует возможность определить дополнительные исходные
библиотеки, в которых могут находиться включаемые фрагменты текста
(например, описываемые с помощью директивы INCLUDE ). Имена
дополнительных исходных библиотек вводятся в поле с использованием апострофов:
===" 'ABC.MACROS'
Если имя раздела для библиотечного набора данных не указано, появится
панель списка разделов, где следует сделать выбор с помощью строчной
команды S. Если исходный набор данных защищен паролем, в поле Password
нужно ввести пароль.
Отчет (листинг), сформированный компилятором, будет размещен в наборе данных, имя которого выбирается автоматически в соответствии с шаблоном:
[prefix.]userid.listid.LIST
где - префикс для наборов данных, установленный в
пользовательском профиле TSO, - listid - имя, заданное пользователем в
одноименном поле панели. Если префикс TSO совпадает с идентификатором
пользователя, то квалификатор не используется.
Если исходный набор данных является последовательным, то поле List ID
обязательно должно быть заполнено. Для раздела библиотечного набора
данных значение listid по умолчанию совпадает с именем исходного
раздела.
Одно из полей панели предназначено для ввода параметров настройки
(опций) используемого компилятора ( Assembler Options ). Следует обратить
внимание, что для любого компилятора две опции считаются установленными
по умолчанию:
OBJECT - требует сохранить объектный код в наборе данных;LIST - требует сохранить выходной отчет в наборе данных.Остальные опции устанавливаются в соответствии с допустимым перечнем, описанным в руководстве по соответствующему компилятору.
После определения всех необходимых параметров следует нажать клавишу ВВОД. Через некоторое время в нижней части экрана появится сообщение:
HIGH LEVEL ASSEMBLER STARTED ***
Требуется вновь нажать клавишу ВВОД.
При выполнении компиляции и ассемблирования автоматически создается
сохраняемый объектный модуль. Если исходный модуль определен в виде
раздела библиотеки ISPF c именем вида PROJECT.GROUP.TYPE(MEMBER), то
объектный код будет записан в раздел MEMBER библиотечного набора данных
с именем PROJECT.GROUP.OBJ. Если исходный модуль задан как произвольный
набор данных, объектный модуль будет сформирован в наборе данных такого
же типа и с таким же именем, только последний квалификатор имени примет
значение OBJ.
Если процедура компиляции завершится нормально, на экране автоматически
будет отображен выходной отчет в режиме просмотра BROWSE. После выхода
из режима просмотра пользователь может произвести обработку отчета с
помощью утилиты печати ( Foreground Print Options ). Если же процедура
компиляции завершится некорректно, будет выдано короткое сообщение о
причине, и перехода в режим просмотра и печати отчета не произойдет.
Особый интерес представляет использование в интерактивном режиме процедуры редактирования связей. Функция редактирования связей предназначена для получения загрузочного модуля на основе созданного на этапе компиляции объектного модуля и других объектных модулей, содержащихся в системных и пользовательских библиотеках. Панель настройки параметров редактирования связей представлена на рис. 5.64.
(рис 5.64) Панель настройки параметров редактора связейОбъектный код программы может быть задан двумя способами: в виде
раздела библиотеки ISPF или как произвольный набор данных (например,
последовательный набор данных). Дополнительные библиотеки объектных и
загрузочных модулей, необходимые для работы редактора, задаются путем
ввода их имен в поля, помеченные как SYSLIB и SYSLIN.
В поле можно указать опции выбранного
LOAD - требует сохранить загрузочный модуль в библиотечном наборе
данных;LIB - определяет последовательность обработки входных наборов данных;PRINT - требует сохранить выходной отчет в наборе данных.Тип используемого Processor. Значение поля List ID служит для
формирования имени набора данных, содержащего листинг [ в
соответствии с правилами, изложенными выше.
Создаваемый в результате загрузочный модуль будет размещен в наборе
данных с именем, заканчивающимся квалификатором LOAD (по аналогии с
образованием имен объектных модулей).
Практически все описанные выше средства интерактивного режима доступны
и при использовании функции 5 ISPF/PDF "
(рис 5.65) Панель настройки параметров ассемблераПри вызове компилятора или JOB, работая с полями панели Job Statement
Information.
Отчет о выполнении задания может быть помещен в указанный набор данных
или направлен на печать путем настройки в выбранной панели компилятора
или ассемблера. Первая возможность связана с установкой параметра List
ID и описана выше. Вторая возможность реализуется при вводе выходного
класса задания в поле SYSOUT class. В этом случае просмотр отчета можно
произвести с помощью утилиты Outlist или SDSF, как было описано выше.
Выход из функции END, RETURN или прямого
перехода ( = ) приведет к автоматическому запуску сформированного задания
( SUBMIT ).
В состав z/OS входят все необходимые средства, с помощью которых можно
создавать, модифицировать, хранить и распространять новое прикладное
программное обеспечение на различных языках программирования, включая
HL Assembler и языки высокого уровня (High Level Languages), такие как
С, С++,
На рис. 5.59 представлены классическая последовательность этапов и базовые средства разработки программного обеспечения в операционной системе z/OS .
Исходный модуль, содержащий текст программы на одном из поддерживаемых
языков программирования, может быть создан средствами TSO/ISPF/UNIX
shell или подготовлен, а затем импортирован с рабочей станции. Для
размещения исходного модуля может быть использован последовательный или
библиотечный (
(рис 5.59) Базовые средства разработки приложений в z/OSПроцедура редактирования связей (RECFM=U. Ранее отмечалось,
что в конфигурации z/OS обычно предусматривается несколько системных
библиотек загрузочных модулей ( SYS1.LINKLIB и др.), описываемых в
разделе LNKLST реестра SYS1.PARMLIB.
z/OS включает два IEBCOPY можно производить
преобразование загрузочных модулей в программные объекты и обратно.
На этапе редактирования связей программный объект можно настроить определенным образом с помощью специальных параметров (опций), среди которых следует выделить следующие:
AMODE - устанавливает используемый RMODE - устанавливает область размещения в адресном пространстве
(ниже границы 16 MB или произвольно);REUS - устанавливает режим повторного использования (реентерабельный,
используемый последовательно, обновляемый).LOAD, LINK, XCTL, ATTACH.
Готовая к выполнению программа (загрузочный модуль или программный
объект) запускается на выполнение универсальной программой загрузчиком
(
Как видно из рис. 5.59, существует возможность выполнять загрузку
программ, минуя стадию сохранения загрузочного модуля (программного
объекта) в библиотеке. Для этой цели может использоваться
Базовый компонент z/OS Language Environment (LE) поддерживает единую
универсальную среду выполнения (run-
Языковая среда z/OS V1R4 поддерживает приложения, полученные с помощью следующих версий компиляторов:
Приложения, написанные на HL Assembler, также могут использовать средства LE через соответствующие макровызовы.
Языковая среда LE состоит из следующих элементов (рис. 5.60):
(рис 5.60) Универсальная среда выполнения программ Language EnvironmentСоздаваемые с использованием универсальных модулей LE-приложения могут
выполняться в различных
Объединяя средства, доступные в программах, написанных на разных языках, Language Environment устанавливает единую универсальную модель среды выполнения приложений, основанную на целом ряде понятий и терминов, которые следует освоить программисту:
Традиционный способ разработки программ, применяемый программистами в
течение десятилетий, основан на использовании средств пакетного режима,
реализуемых в сеансе TSO/E или ISPF/PDF. Ключевым элементом данного
способа является использование стандартных процедур SYS1.PROCLIB и предназначенных для компиляции,
редактирования связей и исполнения различных
| Язык программирования | Компиляция | Компиляция и редактирование | Компиляция, редактирование и выполнение |
|---|---|---|---|
| HL Assembler | ASMAC | ASMACL | ASMACLG |
| C++ | CBCC | CBCСB, CBCCL | CBCCBG, CBCCLG |
| C | EDCC | EDCСB, EDCСL | EDCCBG, EDCСLG |
| IGYWC | IGYWCL | IGYWCLG | |
| Pl/1 | IEL1C | IEL1CL, IBMZCB | IEL1CLG, IBMZCBG |
Процедуры, предназначенные только для компиляции (имя процедуры
заканчивается символом "C"- Compile), служат для создания и сохранения
объектного модуля программы. Процедуры компиляции и редактирования
служат для создания загрузочного модуля и сохранения его в библиотеке.
Символы "CL" или "CB" в имени процедуры указывают на применение
соответственно стандартного
В качестве примера использования каталогизированной процедуры
рассмотрим процедуру ASMACLG, предназначенную для компиляции,
редактирования связей и выполнения ассемблерной программы,
представленной в виде исходного модуля . Текст процедуры приведен
на рис. 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 при
разработке ассемблерных программ:
//TEST JOB ... // EXEC ASMACLG,PARM.C=LIST,PARM.L=NOMAP //C.SYSIN DD * строки исходной программы ... /* //G.SYSIN DD * исходные данные ...
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.
Наряду с традиционным способом создания приложений на основе пакетных
заданий, ISPF/PDF поддерживает два специальных режима разработки,
доступных через главное меню: интерактивный (Foreground) и пакетный
(
Рассмотрим более подробно функцию 4 ISPF/PDF "Source Data Packed.
(рис 5.62) Главная панель функции интерактивного режима (Foreground)Рассмотрим особенности использования компиляторов в интерактивном
режиме на примере HL Assembler. В этом случае на главной панели следует
ввести 1, нажать ВВОД и перейти к панели настройки параметров
компиляции, представленной на рис. 5.63. Исходный текст программы для
выбранного компилятора может быть представлен двумя способами: в виде
раздела библиотеки ISPF или как произвольный набор данных (например,
как последовательный набор данных).
(рис 5.63) Панель настройки параметров ассемблераЕсли исходный модуль представлен в виде раздела библиотечного набора
данных, существует возможность определить дополнительные исходные
библиотеки, в которых могут находиться включаемые фрагменты текста
(например, описываемые с помощью директивы INCLUDE ). Имена
дополнительных исходных библиотек вводятся в поле с использованием апострофов:
===" 'ABC.MACROS'
Если имя раздела для библиотечного набора данных не указано, появится
панель списка разделов, где следует сделать выбор с помощью строчной
команды S. Если исходный набор данных защищен паролем, в поле Password
нужно ввести пароль.
Отчет (листинг), сформированный компилятором, будет размещен в наборе данных, имя которого выбирается автоматически в соответствии с шаблоном:
[prefix.]userid.listid.LIST
где - префикс для наборов данных, установленный в
пользовательском профиле TSO, - listid - имя, заданное пользователем в
одноименном поле панели. Если префикс TSO совпадает с идентификатором
пользователя, то квалификатор не используется.
Если исходный набор данных является последовательным, то поле List ID
обязательно должно быть заполнено. Для раздела библиотечного набора
данных значение listid по умолчанию совпадает с именем исходного
раздела.
Одно из полей панели предназначено для ввода параметров настройки
(опций) используемого компилятора ( Assembler Options ). Следует обратить
внимание, что для любого компилятора две опции считаются установленными
по умолчанию:
OBJECT - требует сохранить объектный код в наборе данных;LIST - требует сохранить выходной отчет в наборе данных.Остальные опции устанавливаются в соответствии с допустимым перечнем, описанным в руководстве по соответствующему компилятору.
После определения всех необходимых параметров следует нажать клавишу ВВОД. Через некоторое время в нижней части экрана появится сообщение:
HIGH LEVEL ASSEMBLER STARTED ***
Требуется вновь нажать клавишу ВВОД.
При выполнении компиляции и ассемблирования автоматически создается
сохраняемый объектный модуль. Если исходный модуль определен в виде
раздела библиотеки ISPF c именем вида PROJECT.GROUP.TYPE(MEMBER), то
объектный код будет записан в раздел MEMBER библиотечного набора данных
с именем PROJECT.GROUP.OBJ. Если исходный модуль задан как произвольный
набор данных, объектный модуль будет сформирован в наборе данных такого
же типа и с таким же именем, только последний квалификатор имени примет
значение OBJ.
Если процедура компиляции завершится нормально, на экране автоматически
будет отображен выходной отчет в режиме просмотра BROWSE. После выхода
из режима просмотра пользователь может произвести обработку отчета с
помощью утилиты печати ( Foreground Print Options ). Если же процедура
компиляции завершится некорректно, будет выдано короткое сообщение о
причине, и перехода в режим просмотра и печати отчета не произойдет.
Особый интерес представляет использование в интерактивном режиме процедуры редактирования связей. Функция редактирования связей предназначена для получения загрузочного модуля на основе созданного на этапе компиляции объектного модуля и других объектных модулей, содержащихся в системных и пользовательских библиотеках. Панель настройки параметров редактирования связей представлена на рис. 5.64.
(рис 5.64) Панель настройки параметров редактора связейОбъектный код программы может быть задан двумя способами: в виде
раздела библиотеки ISPF или как произвольный набор данных (например,
последовательный набор данных). Дополнительные библиотеки объектных и
загрузочных модулей, необходимые для работы редактора, задаются путем
ввода их имен в поля, помеченные как SYSLIB и SYSLIN.
В поле можно указать опции выбранного
LOAD - требует сохранить загрузочный модуль в библиотечном наборе
данных;LIB - определяет последовательность обработки входных наборов данных;PRINT - требует сохранить выходной отчет в наборе данных.Тип используемого Processor. Значение поля List ID служит для
формирования имени набора данных, содержащего листинг [ в
соответствии с правилами, изложенными выше.
Создаваемый в результате загрузочный модуль будет размещен в наборе
данных с именем, заканчивающимся квалификатором LOAD (по аналогии с
образованием имен объектных модулей).
Практически все описанные выше средства интерактивного режима доступны
и при использовании функции 5 ISPF/PDF "
(рис 5.65) Панель настройки параметров ассемблераПри вызове компилятора или JOB, работая с полями панели Job Statement
Information.
Отчет о выполнении задания может быть помещен в указанный набор данных
или направлен на печать путем настройки в выбранной панели компилятора
или ассемблера. Первая возможность связана с установкой параметра List
ID и описана выше. Вторая возможность реализуется при вводе выходного
класса задания в поле SYSOUT class. В этом случае просмотр отчета можно
произвести с помощью утилиты Outlist или SDSF, как было описано выше.
Выход из функции END, RETURN или прямого
перехода ( = ) приведет к автоматическому запуску сформированного задания
( SUBMIT ).
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.