СуперЭВМ_лаб_работа_02 (Тоноян С.А. - Методическое указание по выполнению лабораторной работы)

2017-12-28СтудИзба

Описание файла

Файл "СуперЭВМ_лаб_работа_02" внутри архива находится в папке "Тоноян С.А. - Методическое указание по выполнению лабораторной работы". Документ из архива "Тоноян С.А. - Методическое указание по выполнению лабораторной работы", который расположен в категории "". Всё это находится в предмете "электронные вычислительные машины (эвм)" из 6 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "супер эвм" в общих файлах.

Онлайн просмотр документа "СуперЭВМ_лаб_работа_02"

Текст из документа "СуперЭВМ_лаб_работа_02"

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Московский государственный технический университет им. Н.Э. Баумана

Факультет «Информатика и системы управления»

Кафедра «Автоматизированные системы обработки информации и управления»

Тоноян С.А.

Курс «Супер ЭВМ zSeries»

Лабораторная работа № 2

« Создание кода программы на языке HLASM и JCL-скрипта

в среде z/OS »

Методическое указание

по выполнению лабораторной работы

Москва - 2012 год

Содержание





1. Редактирование данных в режиме ISPF Editor (кодирование на HLASM) 4

2. Создание JCL-скрипта и его выполнение 5

3. Выход из операционной системы z/OS (z/OS Logoff) 9

4. Контрольные вопросы 12

4. Литература 12



Цель лабораторной работы:

изучение интерфейса ISPF- редактора набора данных для создания кода пограммы;

написание и отладка кода программы на языке HLASM в операционной системе z/OS:

компиляция кода программы и исправление ошибок;

запуск исполняемого модуля.

  1. Редактирование данных в режиме ISPF Editor
    (кодирование на языке HLASM)

Вызвать режим редактирования можно из основного экрана ISPF, введя «2».

Давайте создадим программу на языке HLASM, используя редактор ISPF. В окне подпрограммы редактирования ISPF вы должны ввести имя файла-раздела (Member), который будет хранить исходный код программы. Исходный код программы будет храниться в библиотечном наборе данных xxx.IU5zzz. Раздел, в котором хранится код, должен иметь имя - назовем его ASM. Полное имя набора данных - xxx. U5zzz.С(ASM). Введите эти значения в соответствующих полях, как показано на рисунке 1 и нажмите Enter.



Menu RefList RefMode Utilities Workstation Help

------------------------------------------------------------------------------

Edit Entry Panel

ISPF Library:

Project . . . GS0050

Group . . . . IU5TON . . . . . . . . .

Type . . . . C

Member . . . ASM (Blank or pattern for member selection list)

Other Partitioned, Sequential or VSAM Data Set, or z/OS UNIX file:

Name . . . . . +

Volume Serial (If not cataloged)

Workstation File:

File Name . .

Options

Initial Macro . . . . Confirm Cancel/Move/Replace

Profile Name . . . . . Mixed Mode

Format Name . . . . . Edit on Workstation

Data Set Password . . Preserve VB record length

Record Length . . . . Edit ASCII data

Command ===>

F1=Help F2=Split F3=Exit F7=Backward F8=Forward F9=Swap

F10=Actions F12=Cancel

Рис. 1 Окно входа в режим редактирования Edit Entry Panel

После того, как будет выделена память для нового набора данных, экран редактирования будет иметь вид, показанный на рисунке 2.

File Edit Edit_Settings Menu Utilities Compilers Test Help

-------------------------------------------------------------------------------

EDIT GS0050.TEST.C(ASM) - 01.02 Columns 00001 00072

****** ***************************** Top of Data ******************************

==MSG> -Warning- The UNDO command is not available until you change

==MSG> your edit profile using the command RECOVERY ON.

Command ===> Scroll ===> PAGE

F1=Help F2=Split F3=Exit F5=Rfind F6=Rchange F7=Up

F8=Down F9=Swap F10=Left F11=Right F12=Cancel

Рис. 2 Пустое окно редактирования ISPF

Используйте цифробуквенные клавиши, чтобы ввести текст, и не пользуйтесь никакими управляющими клавишами, кроме клавиши Del. Курсор можно двигать клавишами со стрелками.

File Edit Edit_Settings Menu Utilities Compilers Test Help

-------------------------------------------------------------------------------

EDIT GS0050.TEST.C(ASM) - 01.02 Columns 00001 00072

****** ***************************** Top of Data ******************************

==MSG> -Warning- The UNDO command is not available until you change

==MSG> your edit profile using the command RECOVERY ON.

000100 HELLO CSECT

000200 USING *,15

000300 WTO 'HELLO WORLD!'

000410 BR 14

000500 END

****** **************************** Bottom of Data ****************************

Command ===> Scroll ===> PAGE

F1=Help F2=Split F3=Exit F5=Rfind F6=Rchange F7=Up

F8=Down F9=Swap F10=Left F11=Right F12=Cancel

Рис. 3 Окно подпрограммы редактирования ISPF с набранной программой на языке HLASM

Разберём подробнее код программы.

CSECT задаёт управляющую секцию – часть программы, определённую программистом как перемещаемый модуль.

USING используется для указания базового регистра, содержащего адрес операнда для последующих операций. В отличие от ассемблера Intel, в S/360, S/370, S/390 в качестве базового может быть использован любой регистр общего назначения. Первым операндом этой директивы содержится адрес, но чаще всего там указывается *, это означает, что в регистре содержится адрес первой команды, следующей за директивой USING.

Макрос WTO служит для вывода сообщения оператору.

BR 14 служит для выхода из программы. Команда BR осуществляет переход по адресу, находящемуся в регистре. А в 14 регистре хранится адрес возврата.

Чтобы вставить строку, поставьте курсор в левое поле (область номеров строк), в месте, в которое вы хотите вставить пустую строку, и введите команду Ixx (Insert), где xx – количество строк, которые нужно вставить. Если понадобится удалить строку, введите в левом поле D (Delete) и нажмите Enter. Нажав клавишу F3, вы выйдете из редактора с сохранением файла. Наберите программу, как показано на рис. 19. Разместите символы точно, как показано. Наша программа предназначена для вывода текстовой строки на экран. Затем нажмите F3 для возврата в главное окно. Программа будет автоматически сохранена.

Внимание: Все ключевые слова в коде программы должны быть написаны строчными буквами. Может так случиться, что редактор ISPF автоматически конвертирует эти буквы в заглавные. Если это произойдет, введите в командной строке экрана, показанного на рис. 18, команду TSO «CAPS OFF », затем нажмите Enter. В правом верхнем углу на экране в окне входа в подпрограмму редактирования ISPF после написания исходных кодов появится надпись о том, что наш файл был сохранен.

  1. Создание JCL-скрипта и его выполнение

Пользователь z/OS может запросить у системы выполнение какой-либо работы (конечно, связанной с запуском определенных приложений) с помощью специальным образом записанного и переданного системе текста. Этот текст - задание. Задания составляются на языке управления заданиями JCL (Job Control Language) и направляются в систему пользователями через входные устройства и сетевые коммуникации, а также через ранее запущенные приложения. В задании указано, какие программы, в какой последовательности и с какими данными должны быть исполнены, а также в какой форме и куда должны быть направлены результаты выполнения программ.

Обычно текст задания создается в некотором наборе данных с помощью текстового редактора, откуда специальными средствами пользовательского интерфейса его можно направить на обработку в подсистему JES2. Система z/OS требует, чтобы для представления заданий использовались только последовательные и библиотечные наборы данных с параметрами FB и длиной записи 80. Создадим задание, отправляющее нашу программу на компиляцию, как файл-раздел (member) в наборе данных формата PDS (Partitioned Data Set) xxx. IU5zzz.СNTL(ASM). Для этого введите «CNTL » в поле «Type » и «ASM » в поле «Member ». Нажмите Enter. Вы попадете в окно редактора ISPF. Введите текст скрипта:

//GS0050C JOB (),CLASS=A,MSGCLASS=H,MSGLEVEL=(1,1),NOTIFY=&SYSUID

//CCL EXEC PROC=ASMACL

//C.SYSIN DD DSNAME=GS0050.IU5TON.C(ASM),DISP=OLD

//L.SYSLMOD DD DSNAME=GS0050.IU5TON.LOAD(ASM),DISP=OLD

Замените UserID, который приведен в тексте скрипта на свой. Символ «С» в первой строке скрипта, идущий после UserID без пробела, должен следовать и за вашим UserID, он необходим для идентификации типа работы в планировщике z/OS.

Важно соблюдать расстояния между словами так, как это показано в примере на рисунке 20, т.к. у редактора есть свои «зоны» распознавания исходного текста.

Немного слов о структуре скрипта. Задание состоит из последовательности управляющих предложений JCL. Каждое предложение имеет следующую структуру:

// ИМЯ ОПЕРАТОР ОПЕРАНДЫ КОММЕНТАРИЙ

В первых двух позициях всегда указываются две косые черты, которые являются главным отличительным признаком предложений JCL. Поле «имя» начинается с третьей позиции и служит для идентификации представленного в предложении оператора. В нашем примере такие идентификаторы – GS0050С, CCL. Фактически это метки, на которые можно ссылаться из различных предложений задания или других заданий. Имя может содержать не более восьми символов, включающих латинские буквы, цифры и специальные знаки ($ # @) и должно начинаться с буквы или специального знака.

Оператор JOB задает начало задания и режим выполнения задания. Параметр CLASS (класс) относит задание к определенному классу выполнения заданий и задается символами AZ, 0-9. Параметр MSGCLASS (класс сообщений) определяет выходной класс для системных сообщений, формируемых в процессе выполнения задания. Класс задается символами A-Z, 0-9. Параметр MSGCLASS дает возможность выводить все системные сообщения и выходные наборы данных, формируемые в шагах задания, в один и тот же класс или в разные классы. Такое разделение иногда может оказаться полезным. Параметр MSGLEVEL (уровень полноты сообщений) определяет, какую информацию необходимо выдать в отчет о выполнении задания. MSGLEVEL=(1,1) означает максимально подробный вывод отчета. Параметр TIME (время) устанавливает максимальную продолжительность выполнения задания в минутах.

Оператор EXEC указывает выполняемую программу или процедуру и ее параметры. В нашем примере вызывается процедура компиляции программы на языке HLASMASMACL. В ее параметрах – входной набор данных, содержащий текст программы на HLASM и выходной набор данных, в котором будет содержаться полученная программа.

Оператор описания данных DD (data definition) - это оператор определения данных и устройств, используемых в задании и его отдельных шагах. Операторы DD, относящиеся к определенному шагу задания, следуют за оператором EXEC этого шага задания. Важнейшим атрибутом оператора DD является имя, связывающее описываемый набор данных с кодом вызываемой программы. Для программы-компилятора языка ассемблера установлены следующие dd-имена:

SYSIN - для описания исходного модуля;

SYSPRINT - для вывода сообщений компилятора;

SYSLIN - для описания объектного модуля;

SYSUT1 - промежуточный набор данных.

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

DISP=([статус][,дисп_НЗ][,дисп_АЗ])

где статус - исходное (текущее) состояние набора данных, дисп_НЗ - действие при нормальном завершении шага задания, дисп_АЗ - действие, которое надлежит выполнить при аварийном завершении шага задания.

Подпараметр статус может принимать следующие значения:

NEW - в указанном шаге задания создается новый набор данных;

OLD - набор данных существует (создан ранее);

SHR - набор данных существует и может быть использован одновременно другим заданием, т.е. разделяется различными заданиями в режиме чтения;

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5138
Авторов
на СтудИзбе
443
Средний доход
с одного платного файла
Обучение Подробнее