Вт, 26.11.2024, 12:29
Приветствую Вас Гость | RSS
Главная | Перенос os/390 на hercules - Страница 8 - Форум | Регистрация | Вход
Форма входа
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Перенос os/390 на hercules
GregoryДата: Пт, 24.06.2016, 10:21 | Сообщение # 106
Генерал-майор
Группа: Доверенные
Сообщений: 482
Репутация: 22
Статус: Offline
Здравствуйте.

Первый файл представляет собой образ моделируемой ленты в формате AWS, это лента со стандартными метками после инициализации, не содержащая данных. Как и должно быть, на ленте имеются две записи длиной 80 байт:
VOL101231C (то есть volser 01231C)
HDR100...00 (в качестве имени набора данных 00..00)
за которыми следует ленточная марка ™. HDR2 отсутствует. Именно так и должна выглядеть лента после инициализации HETINIT или IEHINITT.

Второй файл представляется собой образ моделируемой ленты в формате AWS, это лента без меток, и она содержит дамп, полученый ADRDSSU. Такой дамп представляет собой последовательный набор в формате U, длина первой записи 34 байта.

Третий файл не является образом ленты. Это последовательный файл, представляющий собой дамп полученный ADRDSSU, в котором потеряны границы записей - это поток байтов, в котором уже невозможно определить, где кончается одна запись и где начинается другая, и этот набор не может быть использован для чего-либо, он бесполезен.

Таким образом, для восстановления данных можно использовать только второй файл, описав его как LABEL=(1,NL)

Если я что-то непонятно написал или у Вас есть еще вопросы, пишите.
 
mentorДата: Пт, 24.06.2016, 19:38 | Сообщение # 107
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
Здравствуйте. Спасибо за емкое объяснение. Совершенно верно про содержимое. Но, второй файл в геркулесе не берётся. Постоянно высвечивается информация "требуется вмешательство" подавала на вход программе. Программа не может считать. Требуется вмешательство

Прикрепления: 6745408.jpeg (141.7 Kb)


Сообщение отредактировал mentor - Пт, 24.06.2016, 20:05
 
GregoryДата: Пт, 24.06.2016, 21:25 | Сообщение # 108
Генерал-майор
Группа: Доверенные
Сообщений: 482
Репутация: 22
Статус: Offline
Цитата mentor ()
Но, второй файл в геркулесе не берётся. Постоянно высвечивается информация "требуется вмешательство"
Второй файл представляет собой образ ленты без меток (NL), а такую ленту нельзя заранее устанавливать, ее нужно установить по запросу программы, иначе система отвергнет ее (IEF503I INCORRECT VOLUME LABEL). Попробуйте такую последовательность действий:
- убираем ленту если она установлена: detach 281 на консоли Hercules
- запускаем задание для восстановления. в задании лента описывается как LABEL=(1,NL),UNIT=3490
- в ответ на запрос распределения устройства на консоли Hercules устанавливаем ленту
attach 281 3490 файл
затем на консоли z/OS отвечаем xx,281

если бы лента была SL, то ее можно было бы заранее установить и смонтировать

P.S. Раньше можно было монтировать ленту NL, назначая ей условный идентификатор тома, то есть
M 281,VOL=(NL,123456)
и опять же, сначала M, потом установка ленты (attach) по запросу системы. Потом к ленте можно обращаться по условному идентификатору, то есть описывать ее как VOL=SER=123456,LABEL=(1,NL),UNIT=3490. Но я не уверен, что в современной версии z/OS так можно, а проверить смогу только в понедельник.


Сообщение отредактировал Gregory - Пт, 24.06.2016, 21:36
 
mentorДата: Сб, 25.06.2016, 18:20 | Сообщение # 109
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
Gregory, спасибо за разъяснение. Я пробовала подавать на вход так же, но как sl.
Аналогично, могу попробовать вновь лишь в понедельник.
Все же, должен быть способ, из aws файла получить полноценный аналог ленты под геркулес.
Видела программу, тоже на ассемблере, который якобы aws tape записывает на реальный tape.
Но я не стала пробовать, так как aws файл не могла заставить считаться.
нет ли ещё способа, аналогично восстановлению диска из aws под геркулес?
С дисками тоже хитрость обнаружилась. После инициализации командой геркулес, необходимо сначала инициализировать под ОС VTOC в оффлайн icksdf, затем только восстананавливать опят под "чистый" геркулес, командой restore.
Во всяком случае я так приноровилась и диски выглядят, как полноценные.


Сообщение отредактировал mentor - Сб, 25.06.2016, 18:21
 
GregoryДата: Пн, 27.06.2016, 09:10 | Сообщение # 110
Генерал-майор
Группа: Доверенные
Сообщений: 482
Репутация: 22
Статус: Offline
Цитата mentor ()
Все же, должен быть способ, из aws файла получить полноценный аналог ленты под геркулес.
Так веь файл AWS и есть "полноценный аналог ленты под Hercules"...
Цитата mentor ()
нет ли ещё способа
Так я же еще в посте #86 предлагал программу VTT2DISK (файл 533 CBT).
Цитата mentor ()
С дисками тоже хитрость обнаружилась. После инициализации командой геркулес, необходимо сначала инициализировать под ОС VTOC в оффлайн icksdf,
так это в документауии написано - после DASDINIT том для использования в z/OS нужно форматировать IBCDASDI (автономная) или ICKDSF. Кроме z/OS существуют и другие операционные системы (zVSE, zVM, ...) и формат используемых томов имеет некоторые особенности, так что форматировать том нужно соотвествующей программой...
 
mentorДата: Пн, 27.06.2016, 09:33 | Сообщение # 111
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
добрый день, удачного начала недели!

FTT2Tape, в нашем случае, программа на ассемблере? Где можно взять исходник?
хотелось бы, все таки, получить полноценный эмулятор ленты, чтоб можно было использовать из пп, не изменяя настройки, с (SL,...)
 
GregoryДата: Пн, 27.06.2016, 10:20 | Сообщение # 112
Генерал-майор
Группа: Доверенные
Сообщений: 482
Репутация: 22
Статус: Offline
Цитата mentor ()
Где можно взять исходник?
файл 533 CBT

Цитата mentor ()
отелось бы, все таки, получить полноценный эмулятор ленты, чтоб можно было использовать из пп, не изменяя настройки, с (SL,...)
не понимаю, в чем проблема.
 
mentorДата: Пн, 27.06.2016, 12:16 | Сообщение # 113
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
Свежий прогон. в ПП написала  (NL,1):

Добавлено (27.06.2016, 12:16)
---------------------------------------------
Gregory, увы, ни  (1,nl), ни (2,nl) не берет :-(

Прикрепления: 1995451.png (33.4 Kb)
 
GregoryДата: Пн, 27.06.2016, 13:31 | Сообщение # 114
Генерал-майор
Группа: Доверенные
Сообщений: 482
Репутация: 22
Статус: Offline
Цитата mentor ()
Gregory, увы, ни (1,nl), ни (2,nl) не берет :-(
как лента в задании описана? из сообщений видно, что лента перематывается и разгружается, z/OS ее отвергает: IEF503I INCORRECT VOLUME LABEL.
В ответ на "снимите/поставьте"
D 281
M 281,02131C...
не пробовали ленту в "готово" перевести (devinit 281)?

но ведь все точно то же самое будет и с реальной лентой происходить а не только с моделированной


Сообщение отредактировал Gregory - Пн, 27.06.2016, 13:32
 
mentorДата: Пн, 27.06.2016, 16:08 | Сообщение # 115
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
я сейчас пытаюсь с нее снять справку:

//SPRAV PROC U=3480,V=AAAAAA                        
//ML  EXEC PGM=SPRAVNL                              
//SNAP DD SYSOUT=*                                  
//PRINT DD SYSOUT=*                                 
//EXCP DD UNIT=&U,VOL=SER=&V,DISP=OLD,LABEL=(2,NL)  
//    

висит:

Добавлено (27.06.2016, 16:08)
---------------------------------------------
Gregory, да, я пробовала отсоединить и вновь подсоединить. или монтировать. И не монтируется, и справка не снимается, беда совсем :-)

Прикрепления: 9532329.png (24.1 Kb)
 
mentorДата: Вт, 28.06.2016, 11:19 | Сообщение # 116
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
Задание на восстановление:

//K020201A JOB KP020120,                            
//   NOTIFY=K020201,MSGLEVEL=(2,0),MSGCLASS=X,      
//   TIME=1440,REGION=8192K,RESTART=(*)             
//JOBLIB DD DSN=K020000.GVC.PGM,DISP=SHR            
/*JOBPARM P=PROC00                                  
//J0120VS1  EXEC P012010F,TAPE=02131C               
//                                                  

процедура:

//P0120VS1 PROC PREF=K020000.,OUT=X,U=SYSDA,V=GVC160,TAPE=02131D
//************************************************************ 
//*  ВОССТАН. ФАЙЛОВ F0213... С КАРТРИДЖА НА М/Д GVC160      * 
//* TAPE - ИМЯ КАРТРИДЖА, С КОТОРОГО ДЕЛАЕТСЯ СБРОС          * 
//************************************************************ 
//ST01  EXEC PGM=IEFBR14                                       
//F1     DD DSN=F021310F,UNIT=&U,VOL=SER=&V,DISP=(OLD,DELETE)  
//F3     DD DSN=F021301D,UNIT=&U,VOL=SER=&V,DISP=(OLD,DELETE)  
//ST02  EXEC PGM=ADRDSSU,REGION=0K,COND=(0,NE)                 
//SYSPRINT DD  SYSOUT=&OUT                                     
//DASD     DD  DISP=OLD,UNIT=&U,VOL=SER=&V                     
//TAPE     DD  DSN=G0213130,                                   
//             DISP=(OLD,KEEP),                                
//             VOL=SER=&TAPE,     
далее, вместо:                             
//             LABEL=(1,SL),DCB=(BLKSIZE=32000),UNIT=3480     
подсунула: 
//             LABEL=(2,NL),DCB=(BLKSIZE=32000),UNIT=3480

//SYSIN    DD  DISP=SHR,DSN=&PREF.GVC.PARM(R021310F)         

со скрипом, но процесс пошел, вроде:

  

далее, я намудрила с swap, но благодаря DEVINIT, о которой я узнала вчера от  Вас,

IGF513I  DEVICE .284 INVALID FOR SWAP - UNIT REFERENCE INVALID 
IEF196I IGF509I  SWAP 0284 - I/O ERROR                         
IGF509I  SWAP 0284 - I/O ERROR                                 
IEF196I IGF509D  REPLY DEVICE, OR 'NO'                         
38 IGF509D  REPLY DEVICE, OR 'NO'                              
R 38,284                                                       
IEE600I REPLY TO 38 IS;284                                     
IEF196I IGF502E  PROCEED WITH SWAP OF 0284 TO 0284             
IGF502E  PROCEED WITH SWAP OF 0284 TO 0284                     
IEF196I IGF505I  SWAP FROM 0284 TO 0284 COMPLETE               
IGF505I  SWAP FROM 0284 TO 0284 COMPLETE                       
IEC502E K 0284,02131C,NL,K020201A,ST02,G0213130                
-J0120VS1 ST02     ADRDSSU     04   4490    .06    .00   23.3  
IEF404I K020201A - ENDED - TIME=07.13.33                       

файлы восстановлены, проверены.

осталось переварить, работать над ошибками и искать способ, получения aws файл с SL меткой, если это возможно.
Gregory, спасибо Вам за поддержку и за дельные рекомендации.
Прикрепления: 7953493.png (24.3 Kb)
 
mentorДата: Вт, 28.06.2016, 14:31 | Сообщение # 117
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline


а от чего идут эти сообщения про Swap?:
Прикрепления: 8175481.png (6.0 Kb)


Сообщение отредактировал mentor - Вт, 28.06.2016, 15:50
 
GregoryДата: Вт, 28.06.2016, 15:51 | Сообщение # 118
Генерал-майор
Группа: Доверенные
Сообщений: 482
Репутация: 22
Статус: Offline
Добрый день.

А почему (2,NL), а не (1,NL)? по моему разумению на ленте один файл (записи данных и tapemark). если так то (2,NL) вызывает перемотку ленты в конец и ошибку ввода-вывода, а ошибка ввода-вывода вызывает swap...
 
mentorДата: Чт, 30.06.2016, 10:20 | Сообщение # 119
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
Gregory, видимо у меня что-то не пошло тогда.
Вы правы, с (1,NL) отработала без ошибки.
Но, если с NL на вход подать не тот картридж, программа не распознает ошибку?


Сообщение отредактировал mentor - Чт, 30.06.2016, 13:51
 
mentorДата: Чт, 30.06.2016, 15:37 | Сообщение # 120
Лейтенант
Группа: Проверенные
Сообщений: 138
Репутация: 1
Статус: Offline
кстати, по Вашей ссылке скачала файл 533,  перекачала на МФ в binary,  но распаковать не удается:
                                    
 receive indsn('K010101.FILE533.XMI')

Прикрепления: 5944181.png (12.7 Kb)
 
Поиск: