안내서

Size: px
Start display at page:

Download "안내서"

Transcription

1 OpenFrame TJES 안내서 소프트웨어 OpenFrame/Batch v4.0 안내서버전 v1.2 Copyright 2008 TmaxSoft Co., Ltd. All Rights Reserved.

2 Copyright Notice Copyright 2008 TmaxSoft Co., Ltd. All Rights Reserved. TmaxSoft Co., Ltd. 서울특별시강남구대치동 946-1글라스타워 18층우 ) Restricted Rights Legend This software and documents are made available under the terms of the TmaxSoft License Agreement and may only be used or copied in accordance with the terms of this agreement. No part of this document may be reproduced, transmitted, or translated in any form or by any means, electronic, mechanical, manual, or optical, without the prior written consent of TmaxSoft Co., Ltd. 이소프트웨어및안내서는오직 TmaxSoft Co., Ltd. 와의사용권계약하에서만이용이가능하며, 사용권계약에따라서사용하거나복사할수있습니다. 또한이안내서에서언급하지않은정보에대해서는보증및책임을지지않습니다. 이안내서에대한권리는저작권에보호되므로발행자의허가없이전체또는일부를어떤형식이나, 사진녹화, 기록, 정보저장및검색시스템과같은그래픽이나전자적, 기계적수단으로복제하거나사용할수없습니다. Trademarks Tmax, WebtoB, WebT, JEUS and OpenFrame are registered trademarks of TMAXSoft Co., Ltd. Other products, titles or services may be registered trademarks of their respective companies. TMAX Tmax, WebtoB, WebT, JEUS, OpenFrame 은 TMAXSoft Co., Ltd. 의등록상표입니다. 기타모든제품들과회사이름은각각해당소유주의상표로서참고용으로만사용됩니다. 안내서정보안내서제목 : OpenFrame TJES 안내서발행일 : 2008년7월15일소프트웨어버전 : OpenFrame/Batch v4.0 안내서버전 : v1.2 2 OpenFrame TJES 안내서

3 연락처 Korea TmaxSoft Co., Ltd. 18F Glass Tower, 946-1, Daechi-Dong, Kangnam-Gu, Seoul South Korea Tel: Fax: Website: USA TmaxSoft, Inc. US Headquarter (San Jose) 130 Rio Robles San Jose, CA 95134, USA Tel: Fax: Website: Sales Office (New Jersey) 560 Sylvan Ave, Englewood Cliffs NJ 07632, USA Tel: Fax: Website: Japan TmaxSoft Japan Co., Ltd. 5F Sanko Bldg, Mita, Minato-Ku, Tokyo, Japan Tel: Fax: Website: OpenFrame TJES 안내서 3

4 China TmaxSoft China Co., Ltd. Beijing Silver Tower, RM 1508, 2# North Rd Dong San Huan, Chao yang District, Beijing, China, Tel: ~8 Fax: Website: Shanghai Office Room 4123, 41 Floor, China Development Bank Building, No.500 Pudong Road(s), Shanghai, China, Tel: Fax: Website: 4 OpenFrame TJES 안내서

5 내용목차 안내서에대하여 안내서의대상 안내서의전제조건 안내서구성, 안내서규약 시스템사용환경 관련안내서 제1장 TJES TJES 특징 TJES 구성요소 멀티노드 TJES 구성 TJES 부트와다운방식 Boot Warm Boot와 Cold Boot Shutdown TJES 시스템데이터셋 제2장 JOB의관리 JOB STATUS JOB의상태변경 JOB CLASS RUNNER CLASS JCL의관리 JOB 처리단계 Submit 단계 Schedule 단계 Execution 단계 Output 단계 Remove 단계 JOB의조회 JOB Logging OpenFrame TJES 안내서 5

6 2.6 JOB의 BACKUP JOB EXIT CODE STEP EXITCODE JOB STATUS와 EXITCODE 제3장 JOB Execution JOB 실행 실행초기화 입력 JCL 파싱 실행과정 EXEC PGM 처리 EXEC PROC 처리 DD 처리 스페셜 DD OUTPUT 처리 JOB SPOOL JOB Control JOB Level Report STEP Level Report 보안 tjclrun 호출 tjclrun 인터널로그 제4장 SPOOL SPOOL 데이터셋 SPOOL BACKUP 제5장 OUTPUT Processing OUTPUT OUTPUT 처리 OUTPUT CLASS OUTPUT DISPOSITION Internal Reader 제6장 TJESMGR 명령어 JOB 실행명령어 RUN START OpenFrame TJES 안내서

7 HOLD CANCEL SUSPEND RESUME STOP REMOVE OUTQUEUEPURGE INQUEUEclass JOB/OUTPUT 명령어 PS (Print Screen) PSJOB (Print Screen JOB detail information) PSIO (Print Screen Input/Output information) PO (Print Output status) POLIST (Print Output detail LIST) POJOB (Print Output of JOB) POSPOOL (Print Output SPOOL of JOB) PODD (Print Output DD Information) PSHISTORY (Print Screen of JOB History) INITIATOR 명령어 BOOT SHUTDOWN NODESTATUS(NODEST) PSJCLRUN(PSR) JCLRUNACTIVE(RA)/JCLRUNINACTIVE(RI) JCLRUNclass(RC) PSclass(PSC) 데이터셋명령어 PSCATALOG(PSCAT) SETCATALOG(SETCAT) PSDS PSENTRY DATASETCREATE(DSCREATE) DATASETDELETE(DSDELETE) DATASETCOPY(DSCOPY) DATASETEXPORT(DSEXPORT) DATASETIMPORT(DSIMPORT) OpenFrame TJES 안내서 7

8 GDGCREATE GDGDELETE RECATALOG(RECAT) UNCATALOG(UNCAT) PSLOCK(PSL) LOCKCLEAR PSVOLUME(PSV) SPOOL 백업명령어 SPOOLBACKUP(SPBK) SPOOLBACKUPLIST(SPBL) SPOOLPS(SPPS) SPOOLRESTORE(SPRE) SPOOLCLEAR(SPCL) SPOOLPSIO(SPPSIO) SPOOLPSJOB(SPPSJ) SPOOLPOSPOOL(SPPOSPOOL) SPOOLPODD(SPPODD) 기타명령어 HELP CLS VERSION LICENSE EDIT PSPRINT(PSP) 제7장환경설정 TMAX 설정 TMAX server TJES 설정 OpenFrame 환경파일형식 TJES 환경파일 TJESMGR 설정 OUTPUT 설정 TJCLRUN 설정 Return Code 설정 OpenFrame TJES 안내서

9 그림목차 [ 그림 1-1] TJES 구성요소 [ 그림 1-2] 멀티노드환경 [ 그림 2-1] JOB 상태흐름도 [ 그림 5-1] OUTPUT DISP에따른처리과정 OpenFrame TJES 안내서 9

10 표목차 [ 표 0-1] 안내서규약 [ 표 0-2] 시스템사용환경 [ 표 0-3] OpenFrame 관련안내서 [ 표 0-4] IBM 참고안내서 [ 표 2-1] JOB 상태변경명령어 [ 표 2-2] JOB 정보조회명령어 [ 표 2-3] SPOOL 백업명령어 [ 표 3-1] tjclrun의 JOB 실행작업리스트 [ 표 4-1] JESMSG상의 JOB 정보 [ 표 4-2] JESMSG상의 JOBSTEP 정보 [ 표 6-1] PS 디스플레이정보 [ 표 6-2] PSJOB 디스플레이정보 [ 표 6-3] PSJOB 모니터링디스플레이정보 [ 표 6-4] PSIO 데이터셋 I/O 디스플레이정보 [ 표 6-5] PO OUTPUT 상태디스플레이정보 [ 표 6-6] POLIST OUTPUT 리스트디스플레이정보 [ 표 6-7] POJOB OUTPUT 디스플레이정보 [ 표 6-8] POSPOOL SPOOL 디스플레이정보 [ 표 6-9] PSHISTORY 입력파라미터 [ 표 6-10] NODESTATUS 노드정보 [ 표 6-11] PSJCLRUN runner 상태정보 [ 표 6-12] PSCATALOG - 데이터셋디스플레이정보 [ 표 6-13] PSDS 데이터셋디스플레이정보 [ 표 6-14] PSDS 멤버디스플레이정보 [ 표 6-15] PSENTRY 데이터셋디스플레이정보 [ 표 6-16] PSENTRY - 멤버디스플레이정보 [ 표 6-17] DATASETCREATE 입력파라미터 [ 표 6-18] GDGCREATE 입력파라미터 [ 표 6-19] RECATALOG 입력파라미터 [ 표 6-20] PSLOCK 디스플레이정보 [ 표 6-21] PSVOLUME 볼륨디스플레이정보 [ 표 6-22] SPOOLPS 백업된 SPOOL 리스트디스플레이정보 OpenFrame TJES 안내서

11 [ 표 6-23] PSPRINT 프린터디스플레이정보 [ 표 7-1] TJES 서버 [ 표 7-2] TJES 관련서버 OpenFrame TJES 안내서 11

12 안내서에대하여 안내서에대하여 안내서의대상 본안내서는 OpenFrame 리호스팅솔루션인 OpenFrame Batch v4.0 시스템의엔 진역할을수행하는 TJES 를통해 JOB 을실행하고관리하는사용자를대상으로 기술한다. 안내서의전제조건 본안내서를정확히사용하려면 OpenFrame Batch v4.0 의개념을이해하고있어 야한다. OpenFrame Batch v4.0 에대한이해를돕기위해 Batch 안내서 를먼저 숙지할것을권장한다. 12 OpenFrame TJES 안내서

13 안내서에대하여 안내서구성, TJES 안내서는총 7개의장으로구성되어있다. 각장의주요내용은다음과같다. 제1장 : TJES 개요 TJES의특징, 구성요소, 멀티노드 TJES 구성, TJES 시스템부트와다운방식그리고 TJES 시스템데이터셋에대해기술한다. 제2장 : JOB 관리 JOB STATUS와상태변경, CLASS 개요, JCL 관리, JOB 처리단계, JOB 조회방법, JOB Logging, JOB 백업방법및 JOB의 EXIT CODE에대해기술한다. 제3장 : JOB 실행실제로 JOB을실행하는 runner인 tjclrun의동작방식과기능에대해기술한다. 또한 JCL Parsing, JOB 실행과 JOB 실행의산출물등에대한설명을포함한다. 제4장 : SPOOL SPOOL 데이터셋과 SPOOL 백업방법에대해기술한다. 제5장 : OUTPUT Processing OUTPUT 개요, OUTPUT 처리방식에대해기술한다. 제6장 : TJESMGR 명령어 JOB 실행명령어, JOB/OUTPUT 명령어, runner slot 명령어, 데이터셋명령어, SPOOL 백업명령어와기타 TJESMGR 명령어에대해기술한다. 제7장 : 환경설정 TJES에서필요로하는각종환경파일에대해기술한다. OpenFrame TJES 안내서 13

14 안내서에대하여 안내서규약 표기 AaBbCc123 의미 명령어 AaBbCc123 명령어수행후화면에출력된결과물 참고 : 참고또는주의사항 { } 필수인수값 [ ] 옵션인수값 선택인수값 ( 따옴표 ) 다른관련안내서또는안내서내의다른장및절 언급 하이퍼링크 메일계정, 웹사이트, 다른장및절참고 진하게 강조 <AaBbCc123> 프로그램소스코드의파일명, 디렉터리이름 Courier New 파일, 디렉터리이름, 환경설정변수 $ 명령어프롬프트 ; ( 세미콜론 ) : ( 콜론 ) 파라미터구분자 이탤릭체 사용자정의인수값 [ 그림 1-1] 그림이름 [ 표 1-1] 표이름 [ 표 0-1] 안내서규약 14 OpenFrame TJES 안내서

15 안내서에대하여 시스템사용환경 요구사항 Platform IBM AIX 5.x HP-UX 11.xx Solaris 9 (SunOS 5.9) Hardware 최소 120MB 하드디스크공간 256MB 이상메모리공간 1GB 이상하드디스크와 512MB 이상메모리공간권장 Database Tibero 3.0 Oracle 9i 또는 10g Compiler MF-Cobol 컴파일러 [ 표 0-2] 시스템사용환경 OpenFrame TJES 안내서 15

16 안내서에대하여 관련안내서 제품 OpenFrame 안내서유틸리티참고안내서 OpenStudio 운영자안내서 TACF 운영자안내서데이터셋안내서 [ 표 0-3] OpenFrame 관련안내서 제품 Mainframe 안내서 JES2 Introduction MVS JCL Reference MVS JCL User s Guide JCL Reference Guide [ 표 0-4] IBM 참고안내서 16 OpenFrame TJES 안내서

17 제 1 장 TJES 제 1 장 TJES TJES 는 TMAX Job Entry Subsystem 의약자로, Mainframe 의 JES 에대응하는 OpenFrame 시스템의배치 JOB 관리모듈이다. TJES 는멀티노드구성과자동 화된에러복구지원을위해 TP-Monitor 제품인 TMAX 상에구현되었다. TJES는 JCL을통해사용자로부터 JOB을받아들이고, 이를시스템의자원상황에맞춰스케줄링하여 runner를통해수행하고, JOB의수행결과를프린트하며, JOB의수행상황을조회하는등 OpenFrame에서일어나는 JOB에관한모든수행을관장한다. TJES의가장중요한역할과특성은다음과같다. 1. JCL을통해 JOB을 submit 받는다. IBM Mainframe의 MVS JCL 지원 CONTROL-M 등외부스케줄러와연동지원인터널리더지원 2. Submit된 JOB을스케줄링한다. JOB class, JOB priority에따라스케줄링멀티노드스케줄링지원 3. JOB의 output을처리한다. IBM 프린트포맷을지원하는 INFOPRINT 지원 OpenFrame TJES는 MVS JCL을 UNIX 상에서 IBM Mainframe과가장유사하게지원하는배치처리솔루션이다. 또한검증된미들웨어를이용한멀티노드클러스터링을통해 UNIX 시스템의성능한계를뛰어넘어, 대단위 Mainframe도문제없이안정적으로리호스팅할수있는뛰어난확장성을제공한다. 본안내서에서는 JOB을관리하고실행하는단계, SPOOL 관리그리고 OUTPUT 처리단계등에대하여알아보고, TJES를운영시유용한명령어와 TJES 운영시발생한로그와에러처리방법에대해서설명할것이다. 마지막으로 TJES 관련환경설정에대하여알아본다. OpenFrame TJES 안내서 17

18 제 1 장 TJES 1.1 TJES 특징 OpenFrame 의 TJES 는 Mainframe 배치프로그램 ( 유틸리티, 코볼프로그램, PL/I 프로그램 ) 을구동할수있는것이외에도, 기본적으로 UNIX 쉘스크립트, C 프로 그램등 UNIX 에서실행가능한모든프로그램을구동할수있다. UNIX에서쉘스크립트와 cron을통해배치처리할경우에는체계화된 JOB 스케줄링과관리의부재그리고리소스통제미비로인해어려움을겪기쉽다. 따라서 TJES는다음의사항을통해체계적인배치시스템을제공한다. - JOB class와 runner class에따른스케줄링 - Runner slot 개수제한으로동시에수행될수있는배치 JOB의개수제어 - JOB의진행사항및결과확인 - JOB의속성변경및일시정지, 재개, 중단등의제어 - OUTPUT 관리 - 데이터셋 lock을통한데이터무결성보장 - TACF를통한보안성향상 18 OpenFrame TJES 안내서

19 제 1 장 TJES 1.2 TJES 구성요소 TJES 는다음의그림과같이구성된다. [ 그림 1-1] TJES 구성요소 OpenFrame 기본컴포넌트 ofrlmsvr 데이터셋 lock 관리서버이다. JOB을실행중에사용되는데이터셋에대한 lock을관리한다. ofrsasvr 보안인증서버이다. TJES에서사용자인증과사용자의자원에대한인증을수행한다. OpenFrame TJES 안내서 19

20 제 1 장 TJES TJES 컴포넌트 obmjmsvr JOB 관리서버이다. TJES의 JOB과 OUTPUT의관리및조회를담당하는서버이다. obmjschd JOB 스케줄러이다. obmjschd는 TJES 전체도메인에서한개만기동되는서버로 TJES의 JOB 스케줄링을주로담당하고이외에 JOB ID 발급과각노드의부트상태를관리한다. obmjinit Runner와 runner slot을관리하는서버이다. obmjinit는 TJES의각노드마다한개씩기동되는서버로, 자기노드에할당된 runner와 runner slot를관리하고 JOB 을 runner에할당하는역할을담당한다. obmjhist JOB 히스토리서버이다. TJES 전체도메인에서 1개만기동되는서버로 JOB의상태를변경하는모든액션에대한정보를저장하는서버이다. obmjspbk SPOOL 백업서버이다. TJES 전체도메인에서한개의노드에서만기동되어야하는서버로실행이종료된 JOB을 TJES에서제거하면서해당 JOB의 SPOOL을별도의저장소로백업하고이후조회하는기능을제공한다. 백업된 SPOOL은 TJES 상에서와동일한형태로조회가가능하다. tjclrun MVS JCL을실제로구동하는모듈이다. JCL에기술된하나의 JOB을 STEP 순서대로실행한다. ofrpmsvr 프린터관리서버이다. TJES 전체도메인에서한개만기동되는서버로 OUTPUTQ에등록된 OUTPUT을조건에맞는프린터로출력한다. 20 OpenFrame TJES 안내서

21 제 1 장 TJES Data Repository TJES Shared memory UNIX 공유메모리영역이다. Runner와 obmjinit 사이의데이터교환창구로사용된다. 1개의 runner 당 1개의 runner slot을할당하여관리하게되며, 이 runner slot의배열이 TJES 공유메모리이다. TJES 공유메모리는 obmjinit이정상적으로기동될때생성되며 obmjinit이정상적으로종료될때제거된다. SPOOL TJES가사용하는특별한데이터셋이다. JOB 구동에필요한자원이나 JOB의진행상황과결과를저장하기위해사용한다. JOB submit 시에 JOBID와동일한이름으로디렉터리를생성하여이디렉터리의하위공간을사용한다. JOB SPOOL은 REMOVE나 CANCEL 명령시에삭제된다. DATA SET JOB 구동시에 JOB에서사용하는 OpenFrame Non-VSAM 데이터셋이다. TSAM Mainframe의 VSAM 기능을제공하는 OpenFrame 버전의 TSAM 모듈이다. TSAM 을통해 KSDS으로구성된 TJES 시스템데이터셋에접근한다. U/I textrun OpenFrame 제품이아닌, 3 rd party 스케줄러에서 TJES에 JOB을 submit하고, 진행상황과결과를모니터링할수있는모듈이다. UNIX 상의 3 rd party 스케줄러들은 JOB의시작과끝을프로세스의시작과종료로구분한다. 따라서 textrun은자신이 submit한 JOB이끝날때까지종료되지않고계속실행중에있다가 JOB이종료되면그결과를반환하고종료한다. External Scheduler TJES는 JOB의 class와 priority에따른스케줄링만을제공하며, JOB A의수행종료후 JOB B의수행등 JOB간의상관관계에따른스케줄링을지원하지않는다. 이런상관관계에따른스케줄링이나일간, 주간, 월간배치등자동화된 JOB submit을위해서 external scheduler가사용된다. OpenFrame TJES 안내서 21

22 제 1 장 TJES tjesmgr 시스템관리자를대상으로하는명령어기반의사용자인터페이스이다. Boot, shutdown 명령을포함한 TJES의모든기능을사용할수있다. OpenStudio 일반사용자를대상으로하는 GUI 기반의사용자인터페이스이다. TJES 시스템을 boot, shutdown 하는등의 TJES 관리기능을제외한, JOB을 submit하고조회및관리하는기능을제공한다. 22 OpenFrame TJES 안내서

23 제 1 장 TJES 1.3 멀티노드 TJES 구성 TJES 는 JOB 의처리성능을높이거나서비스가용성을높이기위해여러대의 UNIX 머신을하나의머신처럼사용할수있는멀티노드환경을지원한다. 이번장에서는 TJES를멀티노드로구성할때각컴포넌트들이어떻게배치되어동작하는지에대해서설명한다. 다음그림은 2 개의노드로 TJES 를구성했을때의컴포넌트다이어그램이다. [ 그림 1-2] 멀티노드환경 멀티노드 TJES를구성하기위해서는 SPOOL, DATA SET, TSAM 등의데이터저장소가공유되어있어야한다. TJES는공유된자원을통해여러노드에서같은데이터셋을이용하거나, 다른노드에서구동된 JOB의결과를확인하는등의작업을하나의 TJES 이미지로사용자에게서비스하게된다. 점선으로표시된 ofrlmsvr, ofrsasvr, ofrpmsvr, obmjschd, obmjhist, obmjspbk는전체도메인에서동시에 1개만존재할수있는 TMAX 서버이다. OpenFrame TJES 안내서 23

24 제 1 장 TJES 만약 NODE1 에문제가발생하여이서버들을더이상서비스할수없을경우 (failover) TMAX 에의해자동으로 NODE2 를기동시킴으로써서비스가용성을높 일수있다. 점선박스외의영역에존재하는 TMAX 서버인 obmjmsvr, ofruisvr, obmjinit는멀티노드서비스를제공하기위해각노드에 1개이상존재해야하며, 그중 obmjinit는각노드에 1개만존재해야한다. tjclrun은요구-응답방식 (on-demand) 으로구동되는프로세스라각노드마다현재실행 (working) 중인 JOB의개수만큼존재하고, 실행중인 JOB이없다면존재하지않는다. obmjinit와 tjclrun 사이에서정보전달창구역할을담당하는 TJES Shared Memory는 obmjinit가정상적으로기동될때생성되고, 정상적으로종료될때삭제된다. 외부 U/I에해당하는 textrun, OpenStudio, tjesmgr는 TMAX를통해어떤노드에도연결될수있다. 1.4 TJES 부트와다운방식 부트는 TJES가 JOB을수행할수있는상태이며, 다운은 TJES가더이상 JOB 을실행할수없는상태이다. 시스템관리자는 tjesmgr의노드명령어중 BOOT와 SHUTDOWN 명령어를통해이를제어할수있다. 자세한사용방법은 INITIATOR 명령어 에서 BOOT 와 SHUTDOWN 을참고한다. Boot 부트는 TJES가다운되어있는상태에서만동작하며, 이미부트되어있는상태라면 BOOT 명령은무시된다. 부트는 TJES의각노드에서자신의 runner slot 상태를사용할수있는상태로초기화한후, TJES의 obmjschd에게 runner slot의현재상태를보고하여 JOB이스케줄링될수있도록한다. 24 OpenFrame TJES 안내서

25 제 1 장 TJES TJES 가성공적으로부트되었다면 SYS1.JESST 시스템데이터셋에해당노드 가부트되었음을기록하여, 이후 DB 연결실패등과같은장애 (disaster) 발생으 로인한 TJES 자동복구절차에서부트상태를유지할수있도록한다. 멀티노드 TJES 환경에서는 TJES 부트시에, TJES 전체도메인에속한모든노드에 BOOT 명령을전달하게된다. 그리고멀티노드환경에서도개별노드별로부트하는방법을제공한다. 부트시에해당노드의 runner slot 상태는 Downed에서다운되기전의 Active 또는 Inactive 상태로복구되고, 부트된적이없다면 tjes.conf [INITDEF] 섹션에설정된기본상태로복구된다. Warm Boot 와 Cold Boot 웜부트란시스템을초기화한후운영중에사용하는일반적인부트이다. TJES shared memory를초기화하고, 스케줄러에게 runner slot의현재상태정보를보고하여 JOB 스케줄링이일어날수있도록한다. tjesmgr의 BOOT 명령을통해웜부트를한다. 콜드부트란 OpenFrame TJES를초기화하는역할을하는특수목적의부트이다. tjesinit 툴을사용하여시스템데이터셋을초기화한다. 콜드부트이후에도실제 JOB을수행하기위해서는웜부트를해야한다. 다음의경우에콜드부트를한다. - OpenFrame TJES 설치후 - 시스템데이터셋구조변경등주요시스템업그레이드후 - tjes.conf의다음과같은변경사항을시스템에적용시 [JOBDEF] 섹션의 JOBNUM 범위변경후 [JOBCLASS] 섹션변경후 OUTPUTQ 사이즈변경후 참고 : 콜드부트에대한자세한내용은 툴참조안내서 의 tjesinit 을참고한다. OpenFrame TJES 안내서 25

26 제 1 장 TJES Shutdown 다운은 obmjinit가부트되어있는상태에서만동작하며, 이미다운되어있는상태라면 SHUTDOWN 명령은무시된다. Shutdown 명령시 TJES는해당노드의상태를 Not booted 로변경하여시스템이다운된이후에발생되는추가적인 JOB 의스케줄링을제한한다. 다운되기전에스케줄링되어수행중인 JOB은기본적으로종료될때까지정상적인절차를밟아수행되지만, 사용자가강제종료할것을명시했다면, SHUTDOWN 명령을받은즉시정지된다. 실행중인 JOB을모두종료하고나서시스템을다운시키려면, STOP 명령을통해명시적으로실행중인 JOB을종료하고 SHUTDOWN 명령으로 TJES 시스템을다운시킨다. TJES가성공적으로다운되었다면 SYS1.JESST 시스템데이터셋에해당노드가다운되었음을기록하여, 이후 DB 연결실패등과같은장애 (disaster) 발생으로인한 TJES 자동복구절차에서다운상태를유지할수있도록한다. 멀티노드 TJES 환경에서는 TJES 다운시에, TJES 전체도메인에속한모든노드에 SHUTDOWN 명령을전달하여시스템을다운하는방법외에도개별노드별로시스템을다운할수있다. 전체시스템다운시키는명령어 $ shutdown 개별시스템다운시키는명령어 $ shutdown node=nodename SHUTDOWN 명령을받으면해당노드의 runner slot들의상태는기본적으로 Downed로변경된다. JOB이수행중이었으면 runner slot의상태를 working으로유지하되 JOB의수행이끝난시점에 runner slot의상태를 Downed 상태로변경한다. 26 OpenFrame TJES 안내서

27 제 1 장 TJES 1.5 TJES 시스템데이터셋 TJES 는 TJES 시스템의설정과각종자원에대한정보를노드간에공유하기위 해다음과같은 VSAM 데이터셋에저장한다. JESST 다음과같은 TJES의시스템레벨정보를저장하는 VSAM KSDS 데이터셋이다. - 노드정보 : 시스템상에존재하는노드들의정보와각각의노드들의부트상태를저장한다. - JOBQ 정보 : JOBID 범위등 JOBQ에대한개괄적인정보를저장한다. - OUTPUTQ 정보 : OUTPUTQ 크기등 OUTPUTQ에대한개괄적인정보를저장한다. - JOB CLASS 정보 : JOB CLASS 별 Default 속성정보를저장한다. - Runner slot 정보 : 각노드의 runner slot에대한 index, class 및 status 등의속성정보를저장한다. ( 차후지원예정 ) JESST의실제데이터셋이름은 tjes.conf [SYSTEM_DS] TJES_STAT에지정된다. TJES_STAT=SYS1.JESST 으로설정할것을권장한다. JOBQ TJES에서 JOB을관리하는데필요한정보를저장하는 VSAM KSDS 데이터셋이다. JOBID, JOBNAME, JOBCLASS, JOBPRTY, JOBSTATUS, JCLPATH, USER ACCOUNT 등이 JOBQ에저장된다. JOBID에대한기본인덱스이외에도성능향상을위해 JOBNAME과 JOBSTATUS에대한보조인덱스와 submit 순서대로조회하기위한보조인덱스를구성한다. JOBQ의실제데이터셋이름은 tjes.conf [SYSTEM_DS] JOBQ에지정된다. JOBQ=SYS1.JOBQ 으로설정할것을권장한다. OUTQ TJES에서수행된 JOB의결과물인 OUTPUT을관리하는데필요한정보를저장하는 VSAM KSDS 데이터셋이다. OpenFrame TJES 안내서 27

28 제 1 장 TJES 시스템데이터셋은 OpenFrame 설치단계에서생성되며, tmboot 전 OpenFrame 에서제공하는콜드부트용 UNIX 툴인 tjesinit 을통해시스템데이터셋을초기 화해야한다. 참고 : 콜드부트단계중에기록해야하는 SYS1.JESST 의 JOBQ 정보, OUTPUTQ 정보등은 tjesinit 을통해서만갱신된다. 이후에 tjes.conf 의설정을변경한다면, tjesinit 을통해 SYS1.JESST 에변경사항을반영해야한다. 다음은각시스템데이터셋을생성하는스크립트이다. 모두 SYS1.XXXX로설정한다고가정하였다. 다른이름의시스템데이터셋을사용하려면스크립트를변경하고, IDCAMS를통해새로시스템데이터셋을생성하여야하며, 스크립트변경시에는색으로표시된데이터셋이름만을고치는것을강력히추천한다. 색으로표시된데이터셋이름은한스크립트내에서는모두동일하여야한다. #!/bin/sh # JESST Creating Script (TJES v.4) # Define SYS1.JESST IDCAMS<<EOF DELETE SYS1.JESST CLUSTER PURGE DEFINE CLUSTER ( NAME (SYS1.JESST) - VOL(100000) - INDEXED - KEYS(24 0) - UNIQUE - SHR(2 3) ) - DATA ( NAME(SYS1.JESST.DATA) - KB( ) - FREESPACE(00 00) CISZ(4096) - RECSZ( ) ) - INDEX ( NAME(SYS1.JESST.INDEX) ) EOF <SYS1.JESST> 28 OpenFrame TJES 안내서

29 제 1 장 TJES #!/bin/sh # JOBQ Creating Script (TJES v.4) # Define SYS1.JOBQ (16, 8) # Define SYS1.JOBQ.ID (AIX on JOB_ID) (8, 16) # Define SYS1.JOBQ.NAME (AIX on JOB_NAME) (0, 24) # Define SYS1.JOBQ.STAT (AIX on JOB_STAT) (31, 17) # Define path SYS1.JOBQ.PMAIN # Define path SYS1.JOBQ.PNAME # Define path SYS1.JOBQ.PSTAT IDCAMS<<EOF DELETE SYS1.JOBQ CLUSTER PURGE DEFINE CLUSTER ( NAME (SYS1.JOBQ) - VOL(100000) - INDEXED - KEYS(8 16) - UNIQUE - SHR(2 3) ) - DATA ( NAME(SYS1.JOBQ.DATA) - KB( ) - FREESPACE(00 00) CISZ(4096) - RECSZ( ) ) - INDEX ( NAME(SYS1.JOBQ.INDEX) ) DEFINE ALTERNATEINDEX ( NAME(SYS1.JOBQ.ID) - UPGRADE - RELATE(SYS1.JOBQ) - VOLUMES(100000) - KEYS(16 8) ) DEFINE ALTERNATEINDEX ( NAME(SYS1.JOBQ.NAME) - UPGRADE - RELATE(SYS1.JOBQ) - OpenFrame TJES 안내서 29

30 제 1 장 TJES VOLUMES(100000) - KEYS(24 0) ) DEFINE ALTERNATEINDEX ( NAME(SYS1.JOBQ.STAT) - UPGRADE - RELATE(SYS1.JOBQ) - VOLUMES(100000) - KEYS(17 31) ) DEFINE PATH ( NAME (SYS1.JOBQ.PMAIN) - PATHENTRY(SYS1.JOBQ) ) DEFINE PATH ( NAME (SYS1.JOBQ.PID) - PATHENTRY(SYS1.JOBQ.ID) ) DEFINE PATH ( NAME (SYS1.JOBQ.PNAME) - PATHENTRY(SYS1.JOBQ.NAME) ) DEFINE PATH ( NAME (SYS1.JOBQ.PSTAT) - PATHENTRY(SYS1.JOBQ.STAT) ) EOF <SYS1.JOBQ> #!/bin/sh IDCAMS<<EOF DELETE SYS1.OUTPUTQ PURGE DEFINE CLUSTER ( NAME(SYS1.OUTPUTQ) - KB( ) - VOLUMES(100000) - RECSZ(512,512) - SHR(2 3) - IXD - UNIQUE - 30 OpenFrame TJES 안내서

31 제 1 장 TJES CISZ(4096) - FSPC(20 10) - KEYS(8 16)) - DATA ( NAME(SYS1.OUTPUTQ.DATA)) - INDEX ( NAME(SYS1.OUTPUTQ.INDEX)) DEFINE ALTERNATEINDEX(NAME(SYS1.OUTPUTQ.JOBID) - RELATE(SYS1.OUTPUTQ) - VOLUMES(100000) - KEYS(16 8) - RECSZ(100,100)) DEFINE PATH( NAME( SYS1.OUTPUTQ.PJOBID) - PATHENTRY(SYS1.OUTPUTQ.JOBID) ) DEFINE ALTERNATEINDEX(NAME(SYS1.OUTPUTQ.JOBNAME) - RELATE(SYS1.OUTPUTQ) - VOLUMES(100000) - KEYS(24 0) - RECSZ(100,100)) DEFINE PATH( NAME( SYS1.OUTPUTQ.PJOBNAME) - PATHENTRY(SYS1.OUTPUTQ.JOBNAME) ) EOF <SYS1.OUTQ> OpenFrame TJES 안내서 31

32

33 제 2 장 JOB 의관리 제 2 장 JOB 의관리 이번장에서는 JOB 이가질수있는상태의종류와 JOB 이실행되는단계및결 과조회그리고 JOB 을관리하는방법에대해서설명한다. OpenFrame에서는 JOB을관리하기위해 tjesmgr와 OpenStudio를사용할수있지만본안내서에서는 tjesmgr를사용하여 JOB을관리하는방법에대해서만다루도록한다. 참고 : OpenStudio 를사용하여 JOB 을관리하는방법에대해서는 OpenStudio BM 안내서 를참고하기바란다. OpenFrame TJES 안내서 33

34 제 2 장 JOB 의관리 2.1 JOB STATUS TJES 는다음그림과같이 JOB 을 START, HOLD, WORKING, SUSPEND, DONE, ERROR, STOP, FLUSH 의 8 가지상태로구분하여관리한다. [ 그림 2-1] JOB 상태흐름도 참고 : READY 는 SUBMIT 단계처리중인상태이고, PURGE 는 JOB 이 TJES 에서제거됨을의미한다. 다음은 TJES의각상태에관한설명이다. START JCL을통해 JOB이 submit되어실행되기전까지의상태로써 JOB 스케줄링의대상이된다. JOB class를변경할수있고, HOLD 명령을통해 JOB을 HOLD 상태로변경하거나 CANCEL 명령을통해 JOBQ에서제거할수있다. 34 OpenFrame TJES 안내서

35 제 2 장 JOB 의관리 HOLD JCL을통해 JOB이 submit되어실행되기전까지의상태이지만 JOB 스케줄링의대상이되지않는다. JCL상에 TYPRUN=HOLD 구문을기술하여 submit 하거나, HOLD로설정된 JOB CLASS로 submit 한경우, START 상태의 JOB을 HOLD 명령을통해상태를변경한경우에해당한다. START 명령을통해 START 상태로변경하거나 CANCEL 명령을통해 JOBQ에서제거할수있다. WORKING tjclrun이 JOB을실행중인상태이다. 실행중인 STEP의특성에따라복수의 UNIX 프로세스로구동될수있다. SUSPEND 명령을통해실행중인 JOB을일시적으로정지시킬수있고, STOP 명령을통해 JOB 수행을끝내고 STOP 상태로바꿀수있다. SUSPEND SUSPEND 명령에의하여 JOB의실행이일시적으로멈춘상태이다. RESUME 명령을통해 WORKING 상태로복원할수있고, STOP 명령을통해 JOB 수행을끝내고 STOP 상태로바꿀수있다. 3 rd party 유틸리티를사용할경우, 유틸리티내부에서세션을새로설정한다면해당프로세스와그하위프로세스는 SUSPEND되지않는다는점을주의해야한다. DONE JCL상에요청된대로 JOB이정상적으로실행된상태이다. 주의할점은 DONE 상태가 JCL에서요청된대로 JOB의모든 STEP이수행되었고반환코드가 COND 문이나 rc.conf 등을통해지정한허용범위이내라는것을의미하는것이지, 각 STEP에지정된프로시저나프로그램이업무적으로정상실행되었다는것을의미하는것은아니다. 사용자프로그램이의도한결과를산출했는지의여부는 SPOOL 데이터의조회 (PODD) 나각 STEP의반환코드 (PSJOB) 등을조회하여별도로확인하여야한다. REMOVE 명령을통해 JOBQ에서제거한다. ERROR JOB의실행결과가 COND 문이나 rc.conf에서지정한반환코드허용범위를벗어난상태이다. REMOVE 명령을통해 JOBQ에서제거한다. OpenFrame TJES 안내서 35

36 제 2 장 JOB 의관리 STOP WORKING 중인상태의 JOB에사용자가명시적으로 STOP 명령을통해 JOB을강제종료시키거나, 장애복구플랜 (Disaster Recovery Plan) 에의해 TJES가자동으로재기동될때 JOB이강제종료된상태이다. 이때 JOB 실행에필요했던모든자원을반납하고종료하게된다. REMOVE 명령을통해 JOBQ에서제거한다. FLUSH JOB 수행중에 tjclrun에서에러가발생하여더이상 JOB을수행하지못하는상태이다. JCL 런타임파싱에러나 DD 할당에러등이 FLUSH 상태의주요원인이다. REMOVE 명령을통해 JOBQ에서제거한다. JOB 의상태변경 사용자는원하는경우 JOB 의상태를변경할수있다. 다음은 JOB의상태변경과관련된 tjesmgr 명령어를정리한표이다. 현재상태 명령어 변경될상태 없음 RUN START, HOLD START CANCEL JOBQ에서삭제 START HOLD HOLD HOLD CANCEL JOBQ에서삭제 HOLD START START WORKING SUSPEND SUSPEND WORKING STOP STOP SUSPEND STOP STOP SUSPEND RESUME WORKING DONE REMOVE JOBQ에서삭제 ERROR REMOVE JOBQ에서삭제 STOP REMOVE JOBQ에서삭제 FLUSH REMOVE JOBQ에서삭제 [ 표 2-1] JOB 상태변경명령어 참고 : 각각의명령어사용법은 JOB 실행명령어 를참고하라. 36 OpenFrame TJES 안내서

37 제 2 장 JOB 의관리 JOBQ 는 tjes.conf [JOBDEF] 섹션에설정된크기만큼만저장을할수있기 때문에필요로하지않는 JOB 들은 JOBQ 에서삭제할필요가있다. ( 7.2 TJES 설 정 을참고한다.) CANCEL이나 REMOVE는모두 JOBQ에서 JOB을삭제하는명령이지만 CANCEL은 JOB이실행되기전에그리고 REMOVE는 JOB이실행되고나서삭제된다는점이다르다. HOLD 상태에있는 JOB들은스케줄링이되지않기때문에 HOLD 상태인 JOB을실행하고자하면 START 상태로상태를바꾸어야한다. 이때 START 명령을사용하여상태를변경할수있다. WORKING 중인 JOB들을일시정지를하고싶다면 SUSPEND 명령을사용한다. 일시정지되어있는 JOB을다시실행하고자할때는 RESUME 명령을사용한다. WORKING 중인 JOB들을중지시키고싶다면 STOP 명령을사용한다. JOB CLASS JOB의속성중하나로 JCL JOB 구문의 CLASS 파라미터에기술되는한개의문자로, A-Z, 0-9 중한개의값을가져야한다. JCL에 CLASS가기술되어있지않을때는, tjclrun.conf [JOB] CLASS에기술된디폴트 JOB CLASS를사용한다. JOB CLASS는해당 JOB이실행될수있는 runner slot을제한하는용도로 JOB 스케줄링에사용된다. A 라는 JOB CLASS를가진 JOB은 runner class에 CBA 혹은 ABC와같은식으로 A를포함한 runner slot에만할당될수있다. 스케줄링에관한자세한사항은 Schedule 단계 를참고한다. 이외에도 JOB CLASS 의하위속성에따라, TJES 의동작방식이달라진다. OpenFrame Batch 4.0 Version 에서 JOB CLASS 의 HOLD 속성이추가되었다. HOLD 속성이명시된 JOB CLASS로 submit 된 JOB 은 JCL 상의 JOB 구문에 TYPRUN=HOLD 가지정되지않았더라도, HOLD 상태로 Submit 된다. OpenFrame TJES 안내서 37

38 제 2 장 JOB 의관리 RUNNER CLASS Runner slot의속성중하나로 tjes.conf [INITDEF] 섹션에기술된다. Runner class는 JOB CLASS와일치되어야하므로 JOB CLASS와동일한 A-Z, 0-9 중한개의값을가지며, 1개의 runner slot은최대 8개의 class를가질수있다. 복수의 runner class가설정된경우에는, 앞에기술된 class에해당하는 JOB이없을때에만뒤에기술된 class가사용될수있다. 즉, 제일먼저설정된 class가최우선이고맨마지막에설정된 class가제일낮은우선순위를갖는다. 또한 i 번째에기술된 class에해당하는 JOB을실행하기위해서는, TJES의모든 runner slot이 i 번째이전에기술된해당 class로 JOB을실행할수없어야한다. 예를들면 TJES 내에 1번 runner slot은 runner class가 ABC이고, 2번 runner slot 은 BCA였을때, JOB CLASS C의 JOB은 B class의 JOB이없을때 2번 runner slot의두번째 class로실행될수있지만, 1번 runner slot의세번째 class로실행되기위해서는, A와 B class의 JOB이없으면서, 2번 runner slot이이미 JOB을실행하고있어, 두번째 class로 JOB을실행할수없어야한다. 2.2 JCL 의관리 OpenFrame에서는기존의 Mainframe에서사용하던 JCL들을그대로가져와서실행을할수있다. JCL들을일반디렉터리에관리해도되지만, tjes.conf [PROCLIB] JCLLIB에등록된데이터셋의멤버로등록해놓기를권장하며, JCL들이많다면별도의 PDS 데이터셋을생성해서멤버로관리하길권장한다. OpenFrame에서 PDS 데이터셋은실제디렉터리로만들어져있기때문에해당볼륨의 PDS 데이터셋이름디렉터리에 JCL들을복사해놓으면 PDS의멤버가된다. JCL들을 PDS 데이터셋의멤버로등록해놓으면 JCL을 submit 할때 UNIX 전체파일경로를주지않고도데이터셋이름과멤버명만으로도대상 JCL을찾을수있다. 특별히 JCL 이 tjes.conf [PROCLIB] JCLLIB 에등록된데이터셋의멤버로 38 OpenFrame TJES 안내서

39 제 2 장 JOB 의관리 등록된경우에는멤버명만있어도대상 JCL 을찾을수있다. 2.3 JOB 처리단계 TJES를통해실행되는모든 JOB은다음의단계를거치게된다. Submit: TJES로부터 JCL을받아들이는단계 Schedule: 조건을충족하는 runner slot에게 JOB을할당하는단계 Execution: 실제로 runner가 JOB을수행하는단계 Output: JOB의수행이끝나고그 output이처리될수있는단계 Remove: 수행이끝난 JOB을 TJES에서제거하는단계 Submit 단계 Submit 단계는 JCL 을받아이를분석하여 JOB 단위로 TJES 에편입시키는단계 이다. JCL이 submit되면 TJES는해당 JCL을분석하여 JOB 엔트리를구성하고, JOBID, SPOOL 등 JOB 관리에필요한리소스를할당한후 JOBQ에저장한다. 새로운 JOB의정보는스케줄러에통보되어, 스케줄러에의해 JOB이 runner slot에할당될수있도록한다. TJES는다음과같은리소스들을 JOB에게할당하게된다. JOBID TJES가 JOB을구분하여관리하기위해서는각각의 JOB에유니크한 ID를부여해야한다. 이를 JOBID라하며, JOBID는 'JOBnnnnn' 의형식을갖는다. JOB에부여할수있는 JOBID 범위는 00001부터 99999이다. JOBID는 submit 시에발급되어 JOB이 CANCEL이나 REMOVE를통해제거될때반환된다. 반환된 JOBID는재사용된다. SPOOL TJES는한개의 JOB 마다독립적인 SPOOL 공간을할당하며, 이공간은 SPOOL 볼륨에 JOBID로생성된디렉터리이다. SPOOL에는 submit 받은시점의 JCL을보존하기위하여복사한 INPJCL, 카탈로 OpenFrame TJES 안내서 39

40 제 2 장 JOB 의관리 그를복사한 CATPROC, JOB 의수행결과인 SYSOUT 과 TJES 가 JOB 의수행상태 를보고하기위해사용하는파일등이저장된다. SPOOL 은 tjesinit 툴을통해초기화할수있다. JOBQ TJES는 JOB의검색과변경등을용이하게하기위해 TSAM KSDS 데이터셋으로 JOB의기본정보를저장한다. JOBQ에저장된 JOB의정보는 tjesinit 툴을통해초기화할수있다. TJES에서 JCL을 submit 받는단계는다음과같다. - JCL 구문에러확인 ( 프로시저의유무와구문오류는이시점에서는확인되지않고, tjclrun에서 JCL을파싱할때확인된다.) - JOBID 발급 - SPOOL 생성 - Submit된 JCL을 SPOOL에 INPJCL로복사 - JCL에기술된내용중 JOB에대한정보를 JOBQ에저장 - TYPRUN=HOLD가기술되지않았다면 obmjschd에게통보이단계중에에러가발생하면 tjes.conf [LOG] submitlog에지정된로그파일에그내용이저장된다. 성공적으로 submit된 JOB은 START와 HOLD 상태중하나의상태를가진다. - START: JOB 스케줄링의대상이지만아직 runner slot에게할당되지않은상태 - HOLD: JCL의 JOB 구문에 TYPRUN=HOLD라고기술되거나 JOB CLASS 속성에 HOLD가기술되어있어 schedule 단계로의전이가보류되는상태이다. Schedule 단계로넘어가기위해서는 START 상태로변경되어야한다. OpenFrame에서는다음과같이 JCL을 submit하는여러가지방법을지원한다. tjesmgr의 RUN 명령어를통한방법 ( 제6장 TJESMGR 명령어의 RUN 참고 ) textrun 툴사용하는방법 ( 툴참고안내서의 textrun 참고 ) OpenStudio Batch Manager(BM) 를통한방법 (OpenStudio BM 안내서를참고 ) tjesmgr의 RUN 명령어를통해서 JCL을정상적으로 submit하게되면, submit하여생성된 JOB들이 JOBQ에등록되어있는것을확인할수있다. (TJESMGR 명령어의 PS (Print Screen) 를참고한다.) 40 OpenFrame TJES 안내서

41 제 2 장 JOB 의관리 Schedule 단계 Schedule 단계는 START 상태의 JOB 을 schedule 정책에따라 runner slot 에배정 하는단계이다. Schedule 단계에서 TJES는기본적으로다음의조건을만족하는 runner slot에게현재 START 상태인 JOB을배정한다. - Runner slot의상태가 Active로활성화되어있어야하며, 다른 JOB을수행하고있는중이아니어야한다. - Runner class가 JOB class와일치해야한다. - JOB submit 시특정노드에서 JOB이실행되도록명시했을경우, 그노드와 runner slot이속한노드가일치해야한다. 다음은스케줄링메소드를 pseudo code로나타낸것이다. Priority aging For i = 1 to 8 /* to iterate runner classes */ For each idle runner { Get the list of job which matches the ith class of the runner For each job in descending priority order { Check node affinity. If fails, try next job Check jobname duplication. If fails, try next job Assign the job to the runner and break } } Execution 단계 Runner가실제로 JCL에기술된대로 JOB을실행하는단계이다. Runner는 SPOOL에복사되어있는 JCL을파싱하고, 그결과에따라 JOB을실행한다. 하나의 JOB은한개이상의 JOB STEP으로구성되는데, Runner는이 JOB STEP을 JCL에기술된순서대로순차적으로실행한다. JOB 실행시필요한데이터셋을할당하는일역시 Execution 단계에서일어난다 OpenFrame TJES 안내서 41

42 제 2 장 JOB 의관리 Output 단계 JOB 수행중생성된 SYSOUT을처리하는단계이다. SYSOUT은 OUTPUT 이라는단위로처리되는데, OUPUT CLASS에따라처리할수있는프린터와기본후처리가결정된다. OUTPUT은프린터로출력되거나인터널리더를통해 TJES로 submit된다. 참고 : 자세한내용은 제5장 OUTPUT Processing 을참고하기바란다. Remove 단계 Output 단계로진입한 JOB을사용자의명시적인명령에의해 TJES에서삭제하는단계이다. JOB에할당되었던 SPOOL, JOBID, JOBQ 등과같은모든자원이시스템으로반환된다. TJES에서삭제한 JOB의결과를추후에다시접근하기위해서는 SPOOL 백업명령어를통해백업해야한다. 백업성공시에 SPOOL에서자동으로 JOB이제거된다. 2.4 JOB 의조회 Submit된 JOB은 JCL의파라미터에기술된값에따라 START 또는 HOLD 상태로 JOBQ에등록된다. JOBQ에등록되어있는모든 JOB은 tjesmgr의 PS 명령어를통해서 JOB의상태를확인할수있다. START 상태의 JOB은스케줄링을통해 WORKING 상태로상태가바뀌면서실행되고, ERROR나 DONE 또는 FLUSH 등으로종료가된다. 다음과같은 tjesmgr 명령어를통해서 JOB 의상세한정보를조회할수있다. 명령어 기능 PSJOB JOB의상세정보를보여준다. PSIO JOB에서사용한데이터셋들의 I/O 정보를보여준다. POSPOOL JOB에서생성한 SPOOL들의정보를보여준다. PODD JOB에서생성한 SPOOL들의내용을보여준다. POJOB JOB과관련한 OUTPUT 상세정보를보여준다. [ 표 2-2] JOB 정보조회명령어 42 OpenFrame TJES 안내서

43 제 2 장 JOB 의관리 참고 : JOB 의정보조회에대한상세한설명과기능은 JOB/OUTPUT 명령어 를참고한다. 2.5 JOB Logging TJES 는운영에대한자료로사용하거나운영시발생할수있는각종사건들의 책임소재를분명히하는용도로사용할수있도록 JOB 의모든상태변화에대 해서로그를남긴다. JOB 로그는 tjes.conf [LOG] JOBLOG에설정한파일경로에저장된다. 매일방대한양의로그가기록될수있으므로정리작업없이장기간운영시에는 JOB 로그파일의크기가상당히커질수있다. 이러한문제점을해결하기위해서날짜별로 JOB 로그를생성하는옵션을제공한다. JOB 로그파일경로설정시 &SYSDATE를 filename 중간에기입하면, &SYSDATE 부분이 YYYYMMDD 형태의날짜파일명으로치환되어날짜별로 JOB 로그를생성할수있다. JOB 로그의기본적인형식은다음과같다. nodename;timestamp;jobid;userid;opertation;additional info Additional info는오퍼레이션에따라다르며, 오퍼레이션의종류와그에대한설명은다음과같다. SUBMIT JOB이 submit 된다. status=s H;class=job_class;node=execution_node;jcl=jcl_path - status JOB의 submit 상태에따라설정된다. START 상태로 submit될경우에 S가설정되고, HOLD 상태로 submit될경우에는 H가설정된다. - class submit된 JOB의 class이다. OpenFrame TJES 안내서 43

44 제 2 장 JOB 의관리 - node JOB이수행될노드의이름이다. JCL에 JOB들이실행될 execution_node를지정하지않았다면또는 tjesmgr.conf [DEFAULT_OPTION] 섹션의 DEFAULT_RUNNING_NODE=MY를설정하지않았다면, 모든노드에서실행될수있도록 * 가설정된다. - jcl 복사된 INPJCL의경로가아니라 submit된 JCL의원본파일경로이다. EXECUTE JOB을 runner에할당한다. index=runner_index;pid=runner_pid;class=working_class - index JOB을실행중인 runner slot의인덱스이다. 이값은실행중인노드에서만유효하다. - pid JOB을실행중인 runner의프로세스아이디이다. 이값은실행중인노드에서만유효하다. - class Runner slot에할당된복수의 class 중현재 JOB을실행하기위해사용하고있는 class이다. SUSPEND JOB이일시정지된다. index=runner_index;pid=runner_pid - index JOB을실행중인 runner slot의인덱스이다. 이값은실행중인노드에서만유효하다. - pid JOB을실행중인 runner의프로세스아이디이다. 이값은실행중인노드에서 44 OpenFrame TJES 안내서

45 제 2 장 JOB 의관리 만유효하다. RESUME 일시정지된 JOB이다시수행된다. index=runner_index;pid=runner_pid - index JOB을실행중인 runner slot의인덱스이다. 이값은실행중인노드에서만유효하다. - pid JOB을실행중인 runner의프로세스아이디이다. 이값은실행중인노드에서만유효하다. FINISH JOB의실행이종료된다. index=runner_index;pid=runner_pid;status=exit_status;exitcode=exit_code - index JOB을실행중인 runner slot의인덱스이다. 이값은실행중인노드에서만유효하다. - pid JOB을실행중인 runner의프로세스아이디이다. 이값은실행중인노드에서만유효하다. - status JOB의종료상태이다. DONE, ERROR, STOP, FLUSH 중하나의값을갖는다. - exitcode JOB의 EXIT CODE이다. ( 자세한내용은 2.7 JOB EXIT CODE 를참고한다.) REMOVE JOB이 TJES에서제거된다. OpenFrame TJES 안내서 45

46 제 2 장 JOB 의관리 2.6 JOB 의 BACKUP 많은 JOB들을실행하게되면 JOBQ에 JOB들이계속쌓이게되어더이상 JOB 을 submit 할수없는상태까지이를수있다. 따라서오래된 JOB들에대해서는 JOBQ에서삭제해야하며, 삭제하고자하는 JOB들의정보를남겨놓고싶을때는 SPOOL을백업한다. 다음은 SPOOL 백업과관련한명령들과기능을간단히정리한표이다. 보다상세한설명과기능은 [ 표 2-3] SPOOL 백업명령어 를참고한다. 명령어 기능 SPOOLBACKUP JOBQ에서 JOB을삭제하고, 삭제된 JOB의 SPOOL을백업한다. SPOOLBACKUPLIST SPOOL이백업된날짜들을보여준다. SPOOLPS 해당날짜에백업된 JOB들을보여준다. SPOOLRESTORE 백업된 JOB들을임시디렉터리에복원한다. SPOOLPSJOB 복원된 JOB들의상세정보를보여준다. (PSJOB과동일한정보출력 ) SPOOLPSIO 복원된 JOB들의 I/O 정보를보여준다. (PSIO과동일한정보출력 ) SPOOLPOSPOOL 복원된 JOB들의 SPOOL 리스트를보여준다. (POSPOOL과동일한정보출력 ) SPOOLPODD 복원된 JOB들의 SPOOL 내용을보여준다. (PODD과동일한기능 ) SPOOLCLEAR 임시디렉터리에복원된 JOB들을제거한다. [ 표 2-3] SPOOL 백업명령어 46 OpenFrame TJES 안내서

47 제 2 장 JOB 의관리 2.7 JOB EXIT CODE 다음은 TJES 하에서 JOB 과 STEP 의 EXIT CODE 를정의한다. STEP EXITCODE 각 STEP 은종료시 XNNNN 형식으로반환코드를보고한다. X는 EXIT STATUS로 R, S, U, A의 4가지문자중하나를갖고, 의미는다음과같다. - R: Normal Condition, 해당응용프로그램이정상적으로종료했다. - S: SYSTEM ABEND, 해당응용프로그램이시그널로종료했다. 즉, SIGPIPE, SIGSEGV, SIGABEND, SIGBUG 등의시그널중에프로세스를종료시키는시그널로인해프로세스가이상종료한경우이다. - U: USER ABEND, 해당응용프로그램이응용프로그램에서정한 ABEND 상황임을보고하고 WAASABND를통해종료했다. - A: Application ABEND, 해당응용프로그램은정상적으로종료했으나, 그 RC 값을호출한프로그램 (IKJEFT01 등 ) 에서판단했을때조건을만족하지못해 JOB을종료해야한다. NNNN은 0~4096까지의숫자로응용프로그램의반환값이다. (255 이상은 external rc module을통해반환코드가보고된다.) JOB STATUS 와 EXITCODE JOB의 EXITCODE는 JOB 의종료상황을나타낼수있는부가정보로, JOB STATUS인 DONE, ERROR, STOP, FLUSH 별로다음의의미를가진다. - DONE: 마지막 STEP의 EXITCODE이다. - ERROR: ERROR를발생시킨 STEP의 EXITCODE이다. - STOP: N.A., 사용자가 STOP을명령한경우이므로무의미하다. - FLUSH: runner 의 return value 혹은 runner 가시그널로비정상종료한경우에는 signal 번호이다. OpenFrame TJES 안내서 47

48 제 2 장 JOB 의관리 UNIX system 의 process return 값이 0~255 이기에, textrun 통한 JOB 수행등을감안하여현재 JOB 의 EXITCODE 범위도 0~255 이다. DONE 이나 ERROR 시에는마지막 STEP 의 EXITCODE 가 255 초과일수있으며, 이때는 overflow 발생을방지하면서초과되었음을명시하기위해 99로변경한다. 48 OpenFrame TJES 안내서

49 제 3 장 JOB Execution 제 3 장 JOB Execution TJES 가제공하는배치 JOB 을관리및처리하는단계중의하나인 JOB Execution ( 이하 JOB 실행 ) 은사용자가 submit 한 JOB 이스케줄러에의해서스케줄링되면 해당 JOB 을실제로운영체계상에서실행하는단계이다. JOB 실행단계는 tjclrun에의해서수행된다. 스케줄러가제출한 JOB의 JOB class 와 priority 등의스케줄링파라미터와현재시스템에서사용가능한 runner slot의상태에따라서특정 runner slot에서 JOB을수행하도록할당 ( 스케줄링 ) 하면, 해당 runner slot은 tjclrun을실행하기위한자료를 JOB SPOOL에기록하고 tjclrun을호출한다. tjclrun은 JOB SPOOL을통해전달된해당 JOB의 JCL에적힌내용에따라서 JOB을실행한다. JOB의실행이끝나면 tjclrun은자신을호출한 runner slot에게 JOB의실행결과를보고하고, 이 JOB 실행결과는최종적으로 TJES가관리하는 JOBQ에저장된다. 또실행이완료된 JOB의 OUTPUT 및 JOBQ에저장된 JOB에대한정보는이후 TJES에의해서관리된다. 사용자는실행이완료된 JOB의실행결과를검토하거나출력할수있으며, 해당 JOB에대한정보가더이상필요하지않다면해당 JOB 정보를제거하게된다. 본장에서는 JOB 실행단계를책임지는 tjclrun의동작과기능에대해서설명하며, 이와관련된 JCL 구문이나문법에대해서는상세히다루지않는다. 참고 : 자세한내용은 Mainframe 의 JCL Reference Guide 를참고하기바란다. 3.1 JOB 실행 TJES의 JOB 처리단계에따라서 tjclrun이호출되면, tjclrun은실행을위한몇가지초기화작업을수행한후에 JOB SPOOL을통해전달된 JCL을파싱하고, 파싱된결과에따라서 JOB을실행한다. OpenFrame TJES 안내서 49

50 제 3 장 JOB Execution tjclrun 은 JOB 을구성하는 job step 을 JCL 에기술된순서대로실행한다. 각각의 job step 은해당 job step 에서사용되는데이터셋을할당하고사용자가지정한배 치응용프로그램을실행하는등많은세부작업으로이루어져있다. EXEC문의 PGM 파라미터를이용해 job step에지정된배치프로그램을실행한후에는해당프로그램이종료하기를기다리면서프로그램실행에관한모니터링정보를 TJES에주기적으로보고한다. 또한실행한배치프로그램에게 SYSIN 데이터셋의내용을전달하고, SYSOUT 데이터셋을전달받아 JOB SPOOL에기록한다. 실행한배치프로그램이종료되면, 그종료결과를 TJES에보고하고 job step의종료상태에따라그다음 job step을실행하거나, 예외조건이만족하는경우에는 JOB 수행을중단한다. 위와같은방식으로 JCL에기술된마지막 job step까지모두실행한후에 tjclrun 은 JOB의실행결과를 TJES에보고하고 JOB 실행단계에서할당한데이터셋등의자원을반환한후에종료한다. 다음은 tjclrun이 JOB Execution 단계에서수행하는다양한세부작업을분류한표이다. 작업실행리소스컨트롤 / 모니터링기타 단계실행초기화입력 JOB 스트림파싱실행과정 EXECC PGM 처리 EXEC PROC 처리 DD 처리스페셜 DD OUTPUT 처리 JOB SPOOL JOB Control Job Level Report Step Level Report 보안 (TACF support) tjclrun 호출 (tjclrun 명령어사용 ) tjclrun 인터널로그 (tjclrun.nnnn.log) [ 표 3-1] tjclrun 의 JOB 실행작업리스트 50 OpenFrame TJES 안내서

51 제 3 장 JOB Execution 실행초기화 다음은 runner slot 또는 SUBMITOR 등에의해 runner가호출되기전에준비되는필수리소스들이다. - JOBID - JOBQ 상의 JOB 엔트리 - Runner slot - JOB SPOOL (INPJCL) 명령어라인인수 Runner slot은 tjclrun을호출할때지정한인수 (args) 를검사하고이로부터 JOBID 및실행할 JCL 파일의위치그리고기타처리파라미터를전달받는다. 주의 : 디버깅목적등의특수한경우에는쉘을통해 tjclrun 을실행할수있지만, TJES 의 runner slot 를통해 tjclrun 을실행하는것이일반적이다. TJES 를통하지않고 tjclrun 을실행한경우 TJES 의전체적인 JOB 관리대상에서제외될뿐만아니라요구되는정상적인단계를실행하지않을수있다. 설정파일읽기 tjclrun.conf 설정파일에저장된 tjclrun의실행방식을결정하는설정을읽어들인다. 참고 : tjclrun.conf 에대한자세한내용은 7.5 TJCLRUN 설정 을참고한다.) 실행계정기본적으로 JOB 실행시 tjclrun 프로세스의소유자는 TJES 운영자의 OS 계정과동일하다. 즉, TJES 시스템을운영체제상의 obm 이라는사용자계정에서기동한경우 tjclrun 프로세스와각 job step에서실행되는배치프로그램의사용자아이디도 obm이된다. 그러나 tjclrun.conf [ACCOUNT] SETUID=YES로설정하면 JCL JOB문의 USER에지정된사용자로 tjclrun 프로세스를실행할수있다. 참고 : 자세한내용은 setuid root tjclrun 을참고한다. OpenFrame TJES 안내서 51

52 제 3 장 JOB Execution SYSLIB 초기화 tjclrun은 tjclrun.conf [SYSLIB] 섹션에설정된디렉터리위치에서 job step 에지정된프로그램을찾는다. [SYSLIB] 섹션을설정하지않은경우사용자의환경변수에지정된디렉터리에서프로그램을찾는다. JCL에 JOBLIB DD 또는 STEPLIB DD가있는경우는 SYSLIB 보다 JCL에기술된 JOBLIB 및 STEPLIB이우선한다. 일부 UNIX 시스템에서, tjclrun에 root 권한을부여하여운영하는경우에환경변수가지워지는문제가있으므로 [SYSLIB] 섹션을반드시설정해야한다. 그렇지않으면 tjclrun은 JCL에지정된프로그램을실행하거나로딩하는단계에서실패하게된다. 참고 : 자세한내용은 setuid root tjclrun 을참고한다. Internal log open tjclrun이수행하는일반적인 JOB 실행단계에서발생하는에러및세부작업의결과보고는 JOB SPOOL의 SYSMSG에저장된다. 반면 tjclrun 내부적인오류및시스템함수실패등문제분석용으로사용되는 tjclrun 인터널로그는 tjclrun.nnnn.log에저장된다. tjclrun은실행초기화단계에서내부적인로그메시지를저장하기위해서인터널로그파일을미리열어둔다. 특히 tjclrun 실행초기화단계에서 JOB SPOOL 초기화이전에발생한문제는 SYSMSG에해당에러를출력할수없기때문에 tjclrun 인터널로그로에러가보고된다. (nnnn은 runner slot 번호를의미한다.) Job 시작보고 tjclrun 이지정된 JOB 을실행하기시작했음을 TJES 에게보고한다. Job spool 열기 JOB 의실행단계에서사용하기위해 JOB SPOOL 을연다. 52 OpenFrame TJES 안내서

53 제 3 장 JOB Execution 입력 JCL 파싱 tjclrun 은 JOB SPOOL 을통해전달된 JCL 파일 (INPJCL) 을분석하여 JOB 을실행 한다. 참고 : tjclrun 이실행하는 JOB 문을포함한 (JOB SPOOL 에저장된 ) JCL 파일을잡스트림 (Job Stream) 이라고부른다. JCL 프로시저파싱 tjclrun은하나의 JOB을실행하는동안여러번 JCL을파싱한다. 기본적으로 JOB문을포함하고있는 INPJCL을파싱하여실행에들어간다. INPJCL의내용을순차적으로실행하는중에 JCL 프로시저의호출이지정되어있으면해당 JCL 프로시저를파싱하고그프로시저를실행한다. 해당프로시저의실행이끝나면다시이전 INPJCL을계속실행한다. JCLLIB/JOBPARM PROCLIB tjclrun은 JCLLIB 문장에지정된 JCL 라이브러리 ( 라이브러리, PDS 데이터셋 ) 에서해당 JCL 프로시저를찾는다. tjclrun은 JOB을실행하는중에파싱이필요한 JCL 프로시저나 INCLUDE JCL을 JCLLIB 문장이외에도 JOBPARM 명령의 PROCLIB 파라미터에기술된 ddname 에해당하는 JCL 라이브러리에서찾는다. 파싱이필요한대상을앞에서설명한 JCL 라이브러리상에서찾을수없는경우에는마지막으로 SYS1.PROCLIB 이라는디폴트위치에서찾는다. 여기에서도찾을수없는경우, JOB은비정상종료처리즉, JOB은 FLUSH 상태로종료된다. 참고 : INPJCL( 잡스트림 ) 에 JOBPARM 명령이지정된경우이명령의 PROCLIB 파라미터에지정된 ddname 은 tjes.conf [PROCLIB] 섹션에설정되어있어야한다. INCLUDE INCLUDE 문장의처리시에 INCLUDE 되는 JCL 도앞에서설명한 JCLLIB 문이나 JOBPARM 명령의 PROCLIB 파라미터에지정된 JCL 라이브러리에서찾는다. OpenFrame TJES 안내서 53

54 제 3 장 JOB Execution 실행과정 실행해야하는 JOB 의 INPJCL( 잡스트림 ) 을파싱한이후에 tjclrun 은 JCL 에기술된 순서에따라 job step 을실행한다. 참고 : JCL 의 JOB 문장에 RESTART 파라미터가지정된경우 RESTART 파라미터에지정된 job step 부터실행한다. 실행단계파싱이후의 JOB 실행은다음과같이크게두단계로이루어진다. Lock phase 해당 JOB에서사용되는데이터셋에대한 lock을잡는단계 Exec phase 실제로 job step을순서대로실행하는단계 tjclrun은미리 INPJCL 및 JCL 프로시저를분석하여해당 JOB에서사용할데이터셋의리스트를얻고실제실행단계에들어가기전에해당데이터셋들에대해일괄적으로 lock을요청함으로써서로다른여러개의 JOB이동시에동일한데이터셋을독점적 (exclusive) 으로사용하는경우빈번하게발생되는 Dead Lock 상황을방지한다. JOB에서사용하는데이터셋들에대한 lock 요청단계가성공적으로수행되면실제실행단계를수행한다. 실제실행단계 (exec phase) 는다음과같이처리된다. EXEC PGM 스텝처리해야하는 job step이배치프로그램을실행하는경우 (EXEC PGM문 ) 지정된배치프로그램을실행한다. tjclrun은배치프로그램을자신의자식프로세스로서실행하고그프로그램의실행이종료될때까지기다린다. 실행한배치프로그램의실행이종료되기를기다리는중에주기적으로배치프로그램이수행한데이터셋 I/O 통계등의정보를 TJES에보고한다. 54 OpenFrame TJES 안내서

55 제 3 장 JOB Execution EXEC PROC 스텝처리해야하는 job step이 JCL 프로시저를호출하는경우 (EXEC PROC문 ) 지정된 JCL 프로시저를파싱하고그결과를가지고해당프로시저를실행한다. 호출된 JCL 프로시저에서또다시다른 JCL 프로시저를호출할수있다. 이것을중첩된 (nested) JCL 프로시저호출이라고한다. 중첩된 JCL 프로시저는최대 16 레벨까지호출될수있다. JCL 프로시저스텝을실행하고나면해당 JCL 프로시저를호출한원래의스텝으로돌아가서그다음스텝부터계속실행해나간다. 조건실행다음과같이서로다른방식으로 JOB을구성하는 job step을조건적으로실행할수있다. JOB COND 실행한배치프로그램이종료하면프로그램의종료상태가 JOB COND( 예외상황 ) 를만족하는지검사하고 JOB COND를만족하면더이상의 job step을실행하지않고 JOB을에러로종료한다. JOB COND가만족되지않는경우는다음 job step을계속해서실행한다. EXEC COND 실행한이전 job step의종료상태에따라서다음에실행할 job step을처리할지건너뛸지를결정한다. 이러한방식의조건적인 job step의실행은 EXEC 문의 COND 파라미터를이용하여지정한다. IF-THEN/ELSE/ENDIF IF-THEN/ELSE/ENDIF 문에기술된조건을평가하여조건적으로 job step을실행한다. EXEC PGM 처리 tjclrun 의가장중요한역할이바로사용자가지정한배치프로그램을실행하는 것이며, 다음과같은세부작업으로이루어진다. EXEC COND EXEC PGM step을실행하기전에먼저해당 EXEC 문에기술된 COND 파라미터를평가하여이전 step의실행결과가 EXEC COND를만족하는경우 ( 즉, 예외상황인경우 ) 해당 EXEC PGM step을실행하지않고건너뛴다. OpenFrame TJES 안내서 55

56 제 3 장 JOB Execution JOB 에서실행되는첫번째 job step 은항상 EXEC COND 가만족하지않는것으로 평가된다. EXEC COND가만족되지않는경우는해당 job step (EXEC PGM step) 을다음과같은절차로실행한다. 스텝진행보고해당 EXEC PGM step의처리시작을 TJES에게보고한다. PGM 실행권한 EXEC PGM에지정된배치프로그램이주요유틸리티인경우 JOB USER가해당프로그램을실행할수있는권한이있는지검사한다. tjclrun.conf [TACF] CHECK_UTAUTH=YES가설정되어있는경우에만권한검사를수행한다. 스텝 DD 할당 EXEC PGM step에서호출할배치프로그램이사용할데이터셋을지정하는 DD 문을처리하여데이터셋을할당한다. Job step 레벨의스페셜 DD 문에대한부가적인처리도이단계에서처리된다. Job step 레벨의스페셜 DD 문으로는 STEPCAT DD 및 STEPLIB DD 문이있다. PGM 파라미터 EXEC PGM에지정된배치프로그램에전달될실행파라미터를만든다. 배치프로그램은이파라미터를일반적인 UNIX 프로그램의 argc 또는 argv를통해서얻을수있다. 참고 : EXEC PROC 에지정된 PARM 은호출되는 JCL 프로시저내부에포함된 EXEC PGM 의 PARM 의값을오버라이드하도록전달한다. 호출 / 실행실제로시스템함수를이용하여 EXEC PGM에지정된배치프로그램을호출 (fork) 하는단계이다. TJES에서배치프로그램은 tjclrun 프로세스의자식프로세스 (child process) 로서실행된다. 그러기위해서먼저 fork를실행하여자식프로세스를생성하고자식프로세스에서 exec을실행하여지정된배치프로그램을시작한다. 56 OpenFrame TJES 안내서

57 제 3 장 JOB Execution SYSIN/SYSOUT 파이프 OpenFrame 에서는배치프로그램이사용하는 SYSIN DD 와 SYSOUT DD 를일반 적인 UNIX 프로그램의 stdin 과 stdout 으로구현하였다. tjclrun은비유적으로볼때쉘의명령어라인을이용하여배치프로그램을실행하는사용자와같은역할을수행한다고볼수있다. 그런의미에서 tjclrun은 SYSIN DD의내용을읽어서응용프로그램의 stdin에 write하여응용프로그램의 stdin으로부터 SYSIN의내용을읽을수있도록해준다. 반대로응용프로그램에서 stdout으로출력한내용은 tjclrun이읽어서 SYSOUT DD에해당하는데이터셋이나 JOB SPOOL에대신출력해준다. SYSIN DD와 SYSOUT DD를 UNIX 시스템상의프로그램들이공통적으로사용하는 ( 또는인식하는 ) stdin과 stdout으로연결함으로써 OpenFrame의데이터셋 API를사용하지않고만들어진대부분의 UNIX 응용프로그램들도 OpenFrame 배치에서별도의처리없이배치프로그램으로실행하는것이가능하다. 참고 : UNIX 응용프로그램의 stderr 는 SYSOUT DD 에 stdout 의내용과함께기록된다. stdout 및 stderr 모두응용프로그램의기본적인출력스트림이고 Mainframe 에는 stderr 에해당하는약속된 DD 가없기때문에 stderr 를 SYSOUT DD 에함께저장하고있다. 참고 : tjclrun 은 JCL 에기술된 SYSOUT DD 와 SYSPRINT DD 를동의어로처리한다. 하나의 job step 에둘다지정된경우는 SYSOUT DD 만사용하고 SYSPRINT DD 는무시된다. 모니터링보고 / 대기 tjclrun은 EXEC PGM에지정된배치프로그램을실행하고해당프로그램이종료할때까지기다리면서주기적으로응용프로그램에서수행한데이터셋 I/O 카운트를 TJES에보고한다. 스텝 DD 후처리 Job step에서실행된배치프로그램이종료하면그종료상태에따라서 DD문의 DISP 파라미터에지정된후처리작업을수행한다. OpenFrame TJES 안내서 57

58 제 3 장 JOB Execution Job step에서실행된배치프로그램이정상종료한경우에는 Normal Disposition 에지정된후처리를수행하고비정상종료한경우에는 Abnormal Disposition에지정된후처리를수행한다. DISP의종류는 PASS, KEEP, CATLG, UNCATLG, DELETE가있다. JOB COND 실행한배치프로그램이종료되면서반환한종료상태 (Exit status) 가 JOB COND에해당하는지평가하여만족되는경우는예외상황으로간주하여 tjclrun은자신이보유하고있는데이터셋및데이터셋 lock 등의자원을해제한후에에러로 JOB의실행을종료한다. 프로그램의종료상태가 JOB COND에해당하지않는경우는뒤따르는다음 job step을계속하여실행한다. EXEC PROC 처리 Job 실행과정에서설명했듯이처리해야하는 job step이 JCL 프로시저를호출하는 EXEC PROC step인경우, tjclrun은지정된 JCL 프로시저를파싱하고해당프로시저의내용을실행한다. 해당프로시저의마지막스텝까지실행을한후에는해당프로시저를호출한 job step의다음 job step들을이어서실행한다. JCL 프로시저는프로시저의내용이정의된위치에따라서다음과같이두가지로구분된다. 1. 입력스트림프로시저 (INSPROC) 입력스트림프로시저는해당프로시저를호출하는 INPJCL에프로시저의내용이정의되어있다. 입력스트림프로시저는해당프로시저가정의되어있는 INPJCL에서만호출할수있다. 2. 카탈로그프로시저 (CATPROC) 카탈로그프로시저는 JCL 프로시저들을멤버로갖는 JCL 라이브러리에등록되어있는 JCL 프로시저이다. 카탈로그프로시저를호출할때는 JCL 라이브러리에등록되어있는멤버이름을 EXEC PROC=procname 문의 procname에지정해야한다. 자주사용되는 JCL 프로시저들을모아놓은 JCL 라이브러리를 PROCLIB이라고부르며, 카탈로그프로시저는여러다른 JCL에서호출할수있다. 58 OpenFrame TJES 안내서

59 제 3 장 JOB Execution tjclrun 은 EXEC PROC 문에지정된프로시저를 INPJCL 에서먼저찾아보고, 없는 경우에카탈로그프로시저로간주하고 JCLLIB 문이나 JOBPARM 명령의 PROCLIB 파라미터에지정된 JCL 라이브러리들에서프로시저를찾는다. 하나의 JCL 라이브러리에서지정된프로시저를찾은경우그뒤의나머지 JCL 라이브러리에대해서는더이상검색하지않는다. JCLLIB 문이존재하지않는경우에만 JOBPARM 명령의 PROCLIB 파라미터에의해지정된 DD에서프로시저를찾는다. ( 즉 JCLLIB 문이우선한다.) JOBPARM PROCLIB=ddname에지정할수있는 ddname은 tjes.conf [PROCLIB] 섹션에설정되어있어야한다. 하나의 ddname에여러개의 JCL 라이브러리의이름을지정할수있으며, JCLLIB과비슷하게여러개의 JCL 라이브러리에서앞에서부터순서대로지정된프로시저를찾도록설정할수있다. 참고 : 카탈로그프로시저를찾은경우, 카탈로그프로시저를파싱하기전에 tjclrun 은파싱에사용한카탈로그프로시저의내용을 JOB SPOOL 의 CATPROC DD 에저장해둔다. 이 CATPROC 은파싱실행당시의카탈로그프로시저의내용을보관함으로써 JOB 실행결과를검토하거나문제점을분석할때도움이된다. 입력스트림프로시저 (INSPROC) 의경우 INPJCL 에포함되어있으므로따로저장하지않는다. DD 처리 tjclrun은 JCL의 DD 문에기술된배치프로그램이사용할데이터셋을할당하여배치프로그램에서사용할수있도록해준다. 일반적인배치프로그램은자신이사용할데이터셋을스스로할당하지않고 JCL에 DD문을기술함으로써 tjclrun이할당하게하고그결과를상속받아서사용한다. 데이터셋할당작업은 EXEC PGM step에서배치프로그램을실행하기전에수행된다. 배치프로그램이종료된이후에는할당한데이터셋에대한후처리작업을 tjclrun이해준다. 할당된데이터셋은 JOB의종료시즉, tjclrun의종료시에할당해제된다. 데이터셋의할당작업은 DD문에기술된데이터셋의특성에따라서서로다르게처리되는데크게다음과같이구분할수있다. OpenFrame TJES 안내서 59

60 제 3 장 JOB Execution Normal 데이터셋가장일반적인경우로 DSNAME 파라미터에할당할데이터셋의이름이주어진경우이다. OpenFrame의데이터셋할당모듈을호출하여데이터셋을할당하고응용프로그램이이데이터셋을사용할수있도록그결과를응용프로그램의환경으로전달한다. Sysout 데이터셋 DD 문에 SYSOUT 파라미터가지정된데이터셋이다. Sysout 데이터셋은 JOB SPOOL 에 JOB 의실행결과로생성되는출력데이터를저장하기위해서생성된 다. 참고 : ddname 이 SYSOUT 인경우와 DD 에 SYSOUT 파라미터가있는경우는엄밀히얘기하면서로다른데이터셋이다. Sysout 데이터셋은후자이다. SYSOUT DD 는단지 DD 이름이 SYSOUT 인경우이다. 일반적으로는 SYSOUT DD SYSOUT=* 와같이코딩하기때문에혼동하는경우가많다. 임시데이터셋 DD문의 DSNAME 파라미터에지정된데이터셋이름이 '&&' 로시작되거나 DSNAME 파라미터가지정되지않은 Sysout 데이터셋외의데이터셋역시임시데이터셋이다. 이경우 tjclrun은내부적으로임시데이터셋에유니크한이름을부여한다. 임시데이터셋은 JOB의실행과정에서생성되고 JOB 종료시에삭제되는임시데이터셋이다. tjclrun은사용자가지정한임시데이터셋이외에도내부적인용도로몇개의임시데이터셋을사용한다. 다음에설명한입력스트림데이터셋의처리도그한가지예이다. 입력스트림데이터셋 INPJCL( 잡스트림 ) 에 DD * 의형태로기술된데이터셋을말한다. tjclrun은입력스트림데이터셋을 JOB SPOOL에따로저장해둔다음에내부적인데이터셋이름을부여한다. 그이후는일반적인데이터셋과동일한 OpenFrame 데이터셋처리모듈을이용해서할당하고배치프로그램에서이데이터셋을사용할수있게된다. tjclrun은 JOB SPOOL에임시로저장한입력스트림데이터셋이 JOB 종료시에제거될수있도록임시데이터셋으로써생성한다. 60 OpenFrame TJES 안내서

61 제 3 장 JOB Execution 스페셜 DD DD 문장은다음의형태로 JCL에코딩된다. //ddname DD [parameters,...] 시스템에서특수한용도로사용하기위해예약되어있는 ddname을갖는 DD문을스페셜 DD 문이라고부른다. 주의 : 사용자는특수한용도로사용하기위해예약된스페셜 DD 의 ddname 을약속된이외의용도로사용할수없다. TJES는다음과같은스페셜 DD를지원한다. - SYSIN - SYSOUT 및 SYSPRINT - JOBLIB 및 STEPLIB - JOBCAT 및 STEPCAT 각각의스페셜 DD 는다음과같이처리된다. SYSIN DD 현재실행중인 job step에 SYSIN DD문이지정된경우 tjclrun은 SYSIN DD문에지정된데이터셋의내용을읽어서 tjclrun이실행한배치응용프로그램의 stdin으로전달한다. 즉, 응용프로그램은 SYSIN DD에의해할당된데이터셋의내용을 stdin으로부터읽을수있다. SYSOUT DD/SYSPRINT DD 현재실행중인 job step에 SYSOUT DD 또는 SYSPRINT DD가존재하는경우, tjclrun이호출하는배치프로그램대신이 DD가지정하는데이터셋을개방하고, 배치프로그램이 stdout이나 stderr로출력하는내용을읽어서 SYSOUT DD 또는 SYSPRINT DD에의해할당된데이터셋에배치프로그램을대신하여출력한다. 이렇게하는이유는 OpenFrame 데이터셋 I/O 함수를사용하지않고 stdout이나 stderr에직접메시지를출력하는대부분의응용프로그램을 JCL에의해서자연스럽게실행할수있게하기위함이다. OpenFrame TJES 안내서 61

62 제 3 장 JOB Execution SYSOUT DD 와 SYSPRINT DD 는동일한의미로취급한다. 두개의 DD 가둘다 존재하는경우에는항상 SYSOUT DD 를사용하고 SYSPRINT DD 는사용하지않 는다. JOBLIB DD/STEPLIB DD JOBLIB DD 와 STEPLIB DD 는 tjclrun 이 EXEC PGM=pgmname 에지정된배치응 용프로그램을찾는 PDS 데이터셋 ( 라이브러리경로 ) 을지정한다. JOBLIB DD는 INPJCL의 JOB 문장과첫번째 EXEC 문장사이에지정될수있고, 해당 JOB에서호출되는프로그램을찾는 PDS ( 라이브러리 ) 를지정한다. DD문의 concatenation 기능을이용하여여러 PDS에서프로그램을찾아보도록지정할수있다. 참고 : JOBLIB 이나 STEPLIB DD 의 concatenation 기능에대해서는 Mainframe 의 JCL Reference Guide 를참고한다. STEPLIB DD는해당 job step의 EXEC문다음에위치하며, job step에서호출하는프로그램을찾을 PDS ( 라이브러리 ) 를지정한다. 역시 DD 문의 concatenation을이용하여여러 PDS에서프로그램을찾아보도록지정할수있다. STEPLIB DD가지정되어있으면 job step에서호출하는프로그램을 STEPLIB DD 가지정하는 PDS ( 라이브러리 ) 들에서찾는다. 이경우 JOBLIB DD는사용되지않는다. JOBLIB DD는 STEPLIB DD가없는 job step에서사용된다. JOBLIB DD와 STEPLIB DD가둘다지정되지않은경우는 tjclrun.conf [SYSLIB] 섹션에지정된위치에서실행할배치프로그램을찾는다. JOBCAT DD/STEPCAT DD JOBCAT DD와 STEPCAT DD는 JOB 및 job step에서사용할데이터셋카탈로그를지정한다. 두가지경우모두 DD문의 concatenation을이용해서여러데이터셋카탈로그를지정할수있다. JOBCAT DD는잡스트림의 JOB 문장과첫번째 EXEC 문장사이에만지정될수있고, 그 JOB에서기본적으로사용할데이터셋카탈로그들을지정한다. 62 OpenFrame TJES 안내서

63 제 3 장 JOB Execution STEPCAT DD 는 job step 의 EXEC 문다음에위치하며, 그 job step 에서사용할데 이터셋카탈로그를지정한다. JOBCAT과 STEPCAT이모두지정된경우는 STEPCAT이사용된다. JOBCAT이지정되어있고 STEPCAT이지정되어있지않은 job step에서는 JOBCAT이사용된다. JOBCAT 및 STEPCAT이전혀지정되지않은 JOB에서는 OpenFrame 시스템의마스터카탈로그가사용된다. JOBCAT이나 STEPCAT이지정된경우도지정된카탈로그에데이터셋이카탈로깅되어있지않은경우는마스터카탈로그에서데이터셋에대한카탈로그정보검색을시도한다. OUTPUT 처리 JCL OUTPUT 문장은 JOB SPOOL에생성되는 Sysout 데이터셋의출력처리방법을나타내거나제어하기위한 JCL 문장이다. Sysout 데이터셋을나타내는 DD 문은하나이상의 OUTPUT 문장을참조하여해당출력을처리하기위한방법을지정할수있다. 참고 : OUTPUT 문장에지정할수있는대부분의파라미터는 OUTPUT 문장을통하지않고직접 Sysout 데이터셋을나타내는 DD 문에지정할수도있다. 그러나 DD 문장의고유한용도에혼동을줄수있기때문에, 또한출력제어를좀더엄밀하고여러 DD 에중복으로코딩하는일을피하기위해서 OUTPUT 문장을통해서출력제어를나타내는것을권장한다. 실제로 OUTPUT 문에는지정가능하지만 Sysout DD 문에는지정할수없는파라미터가존재한다. JOB SPOOL tjclrun은 JOB을수행하는여러단계에서다양한목적으로 JOB SPOOL을사용한다. tjclrun이 JOB SPOOL에생성하는데이터셋과각각의용도는다음과같다. OpenFrame TJES 안내서 63

64 제 3 장 JOB Execution INPJCL tjclrun이실행하는잡스트림을담고있는 JCL 파일이다. JOB SPOOL의다른대부분의파일은 tjclrun에의해생성되는것에반하여 INPJCL은 TJES의 SUBMITOR(obmjmsvr) 가 JOB의 submit 처리시에추후에 tjclrun이사용할수있도록 JOB SPOOL에미리만들어둔다. 그내용은사용자가 submit한 JCL 파일과동일하다. CATPROC tjclrun이 JOB을실행하는과정에서카탈로그프로시저를처리할때사용한카탈로그프로시저의내용을저장하는 SPOOL 데이터셋이다. 한 JOB에서여러개의카탈로그프로시저를호출할수있기때문에 CATPROC 에는 JOB에서사용한여러카탈로그프로시저의내용이저장된다. tjclrun이카탈로그프로시저를파싱한순서대로그내용이 CATPROC에저장되고, 부가적으로어떤 job step에서해당카탈로그프로시저가호출되었는지를나타내는메시지가각프로시저의내용앞에추가된다. INSDSET INPJCL 에다음과같은형태로기술되어있는입력스트림데이터셋을 tjclrun 이 내부적으로사용하기위해서 JOB SPOOL 에생성하는임시데이터셋이다. ( 예. 입력스트림데이터셋 ) //ddname DD * line1 line2... linen /* 위의예제의경우 INSDSET은 line1, line2,..., linen을내용으로하는임시데이터셋으로해당 DD를사용하는 job step에서생성되며, 해당 job step의종료시에삭제되는임시데이터셋이다. 이러한동작을 INSDSET SHUNT라고부른다. 64 OpenFrame TJES 안내서

65 제 3 장 JOB Execution 참고 : tjclrun 이 INSDSET SHUNT 를하는이유는입력스트림데이터셋은일반 Non- VSAM 데이터셋과함께 concatenation 될수있기때문에입력스트림데이터셋을 INPJCL 에서축출하여데이터셋으로 SHUNT 해둠으로써 Non-VSAM SDS 의 concatenation 로직을이용하여일관된방식으로 concatenation 처리를지원하기위함이다. JESJCL tjclrun이파싱한 INPJCL, INSPROC 및카탈로그프로시저를파싱한결과인 parse tree를텍스트형태로출력한내용을갖는파일이다. 주로문제분석시에참고자료로사용된다. JESMSG tjclrun이종료하는경우그 tjclrun을실행한 runner slot가해당 JOB SPOOL에기록하는데이터셋으로, 그내용은실행된 JOB에관련된기본적인정보와 JOB의실행과정에서보고된여러가지통계정보그리고 JOBSTEP에관련된정보를포함한다. JOB의실행에관련하여 TJES 시스템에서관심이되는사항에대한요약적인정보를담고있다. SYSMSG SYSMSG는 tjclrun의주요메시지로그이다. 즉, JOB을실행하는과정에서필요한여러하위단계의진행상태및중요결과메시지뿐만아니라작업처리시발생한에러메시지도 SYSMSG에저장된다. JOB의실행이비정상적으로종료된경우원인분석을위해서우선 SYSMSG의내용을검토해야한다. SYSMSG의내용은 tjclrun이 JOB의 job step을실행한순서에따라서세부작업이나동작이발생한시간순서대로기록된다. SYSMSG에출력되는내용은다음과같다. - 수행중인 JOBSTEP 이름 - JOB 수행중에할당한데이터셋정보 - tjclrun이호출한 PGM 이름과프로세스아이디 (pid) - tjclrun이호출한 PGM의종료상태 OpenFrame TJES 안내서 65

66 제 3 장 JOB Execution - tjclrun 이현재수행중인동작 - tjclrun 의주요동작의성공여부 SYSOUT Sysout 데이터셋은다음과같이 DD문에 SYSOUT 파라미터가지정된경우를말한다. Sysout 데이터셋은다른데이터셋과달리 JOB SPOOL에저장되고일반적으로출력용데이터를저장한다. ( 예. Sysout 데이터셋 ) //REPORT EXEC PGM=MONTHLY //SYSIN DD * , /* //SYSOUT //RPTOUT //RPTERR DD SYSOUT=* DD SYSOUT=* DD SYSOUT=* 위에서설명한다른 JOB SPOOL의데이터셋은 TJES가 JOB을효율적으로실행하기위해사용하는데이터셋인반면에 Sysout 데이터셋은사용자가배치프로그램을위하여요청한데이터셋으로 JOB SPOOL 상에저장되도록특별히지정한경우로볼수있다. Sysout 데이터셋은하나의 JOB이나 job step에서여러개지정할수있다. 위의예제에서 SYSOUT, RPTOUT, RPTERR가 Sysout 데이터셋이다. Sysout 데이터셋의내용은사용자가지정한배치프로그램에서출력하는내용이다. TJES는 Sysout 데이터셋에그이외의정보를가감하지않는다. 배치프로그램에서 Sysout 데이터셋의사용을마치면 TJES는 Sysout 데이터셋의 OUTPUT CLASS에따라서사용자가출력한내용을추후에프린터나화면으로출력하는과정을관리할뿐이다. 66 OpenFrame TJES 안내서

67 제 3 장 JOB Execution JOB Control TJES에서는스케줄링단계이후의실행중인 JOB을 SUSPEND( 일시정지 )/RESUME( 실행재개 )/STOP( 강제종료 ) 시킬수있다. JOB의실행을위해서실행중인여러하위프로세스에대한위와같은세가지제어를 TJES에서는 JOB CONTROL이라고부른다. tjesmgr 혹은 OpenStudio와같은사용자인터페이스를이용하여실행중인 JOB에대해서 JOB CONTROL을할수있다. 참고 : 자세한명령사용법은 제 6 장 TJESMGR 명령어 및 OpenStudio BM 안내서 를참고하기바란다. 사용자가실행중인 JOB에대해서 JOB CONTROL 명령을입력하면 TJES는 tjclrun에게 JOB CONTROL을위해약속된시그널 (SIGUSR1) 을보낸다. tjclrun은 SIGUSR1을받으면부가적으로전달되는정보를참조하여 SUSPEND/RESUME/STOP 중에서어떤동작이요청되었는지를알아내고각각에해당하는 UNIX 시스템의 JOB CONTROL 시그널 (SIGSTOP/SIGCONT/SIGKILL) 을 tjclrun이 job step에서실행한하위프로세스에보낸다. 시그널을받은하위프로세스는시그널종류에따라서실행이일시중지되거나실행재개또는강제종료된다. 하위프로그램에대한 JOB CONTROL을수행한후 tjclrun은그결과를 TJES에게보고한다. tjclrun 프로세스자체는 SUSPEND인경우스스로자신에게 SIGSTOP을보내서실행을일시정지한다. STOP인경우는 tjclrun은실행을종료 (exit) 한다. RESUME의경우에는 TJES에서 tjclrun에 SIGCONT를보내서 tjclrun을실행재개한다. 실행이재개된경우 tjclrun은위에설명한것과같이자신이실행한하위프로세스에 SIGCONT를보낸다. 참고 : tjclrun 의 JOB CONTROL 구현은 UNIX 시스템의 JOB CONTROL 시그널 (SIGSTOP/SIGCONT/SIGKILL) 을이용하여구현되었기때문에프로세스의유효사용자 (effective userid) 가상이한경우시그널을하위프로세스에전달하는과정에서권한부족에의한에러가발생할수있고, 이러한경우 JOB CONTROL 은완벽하게이루어지지않을수있다. 이러한상황을고려하여항상완벽한 JOB CONTROL 을수행하기위해서시스템운영자는 tjclrun 에 root 권한을부여해야한다. 이에대한자세한내용은 setuid root tjclrun 을참고한다. OpenFrame TJES 안내서 67

68 제 3 장 JOB Execution JOB Level Report tjclrun 은주어진 JOB 을실행하는과정에서발생한여러가지사항을 TJES 에보 고한다. tjclrun 이 TJES 에보고하는정보는크게 JOB 전반에해당하는내용과특 정 job step 에해당하는내용으로구분할수있다. tjclrun이 TJES에보고하는 JOB에관한정보는다음과같다. JOB START/FINISH tjclrun이주어진 JOB을처리하기시작했음을알린다. tjclrun이정상적으로종료하는경우에는명시적으로해당 JOB의처리를끝마쳤음을 TJES에보고한다. JOB 의종료보고시에는 JOB의수행이정상인지여부를나타내는종료상태와종료코드가함께보고된다. JOB CONTROL 상태 TJES는 tjclrun이수행중인 JOB을 SUSPEND/RESUME/STOP 시킬수있다. tjclrun은이와같은 JOB CONTROL을수행한후의 JOB 상태를 TJES에보고한다. 데이터셋 lock 대기 tjclrun은 JOB을처리하기전에미리해당 JOB에서사용될데이터셋에대해서데이터셋 lock을요청한다. 다른 JOB에서동일한데이터셋에이미 lock을걸고사용중인경우 tjclrun은자신이요청한 lock이성공할때까지 JOB을처리하지않고기다린다. 이때 JOB의수행이대기하는원인이되는다른 JOB과 lock 요청이대기중인데이터셋이무엇인지를 TJES에보고한다. 이보고내용을검토하여운영자는여러 JOB 사이에공유되어사용되는데이터셋에따른 JOB의대기문제를쉽게식별하고해결할수있다. STEP Level Report tjclrun이수행하는보고작업중에서 job step 수준에서보고되는정보는다음과같다. STEP START/FINISH JOB의어떤 job step을실행하고있는지 TJES에알려주기위해서 tjclrun은 JOB 을이루는각 job step을처리하기시작할때와종료할때 TJES에 STEP START/FINISH 보고를한다. 68 OpenFrame TJES 안내서

69 제 3 장 JOB Execution STEP START시에는현재실행중인 job step의잡스트림상에서의위치를의미하는스텝의경로 (STEPPATH) 정보와해당 job step의타입 (PGM 혹은 PROC) 등을보고한다. STEP FINISH 보고시에는해당 job step의종료상태및종료코드와해당 job step을수행하는데걸린시간정보를보고한다. 데이터셋할당 tjclrun은 job step에지정된배치프로그램을호출하기전에배치프로그램이사용할데이터셋을미리할당한다. ( 할당할데이터셋은 JCL의 DD문에의해서지정된다.) 데이터셋의할당정보는전체 OpenFrame 시스템상에서매우중요한정보이기때문에 tjclrun은할당한 ddname과데이터셋의이름을 JOB SPOOL의 SYSMSG 에남길뿐만아니라추가적으로데이터셋의할당정보가 OpenFrame의데이터셋할당모듈자체적으로 OpenFrame_HOME/log 디렉터리의 dsalc 로그에기록된다. 데이터셋 I/O 보고 tjclrun이할당해준데이터셋을배치프로그램에서사용함에따라변경되는해당데이터셋에대한 I/O 카운트정보가반영된다. tjclrun은배치프로그램이실행되는동안수행한데이터셋 I/O 통계정보를주기적으로 TJES에보고한다. 이를통해서운영자 ( 사용자 ) 는특정데이터셋에대해서 job step 별로몇건을 READ/ WRITE하고있는지를모니터링할수있다. 보안 TACF 지원기능 tjclrun은 TACF 보안기능을지원하며, 크게두가지가있다. 첫째는 job step의 EXEC PGM에지정된프로그램을실행할권한이있는지검사하는것이고, 다른하나는 DD문에지정된데이터셋들에접근할권한이있는지검사하는기능이다. 어느경우나권한이없는경우는 JOB의실행은비정상종료처리된다. 참고 : TACF 를이용하여특정 TACF 사용자에대하여프로그램및데이터셋에대한권한을제어하는방법에대해서는 TACF 운영자안내서 를참고한다. OpenFrame TJES 안내서 69

70 제 3 장 JOB Execution TACF 대리자일반적으로 JOB을특정사용자권한으로수행하기위해서 JCL의 JOB문에 USER와 PASSWORD 파라미터를지정한다. JCL JOB문의 PASSWORD를지정할때에는암호화하지않은상태로지정하기때문에 JCL 파일자체에대한보안이엄격히관리되지않는환경에서사용자의비밀번호가노출될위험이발생한다. 이러한위험을방지하기위해서 TJES에서는대리자 (Surrogate User) 로지정된사용자가실행사용자 (Execution User) 를대신하여비밀번호를지정하지않고실행사용자권한으로 JOB을실행하도록 JOB을 submit 할수있다. 대리자가실행사용자를대신하여 JOB을 submit하는경우에도 JOB은실행사용자의권한으로실행된다. 대리자는단순히 JOB을실행사용자대신 submit 할수있을뿐이다. 대리자에의한 JOB submit은 JCL의 JOB문에 PASSWORD 파라미터가지정되지않은경우에만동작한다. 참고 : TACF 에서 JOB 실행을위한대리자를지정하는방법은 TACF 운영자안내서 를참고한다. setuid root tjclrun UNIX 시스템에서실행프로그램을실행하는사용자가아니라해당프로그램파일의소유자권한으로프로그램을실행하기위해서실행프로그램의소유자와파일퍼미션을적절하게변경하여프로그램실행시프로세스가프로그램파일의소유자권한으로실행되게끔설정하는작업을 setuid 작업이라고한다. ( 물론 setuid 된프로그램인경우라도실행하는사용자에게해당프로그램의실행권한이있는경우에만실행할수있다.) 다시말해, setuid root 작업은특정프로그램을실행시프로그램을실행한사용자가아닌 root 사용자권한으로프로세스가실행되게끔설정하는작업을의미한다. 여기서말하는프로세스의사용자는 UNIX 프로세스의유효사용자 (effective userid) 를말한다. tjclrun은프로세스가실행되는동안프로세스의실제사용자정보 (real userid) 를 tjclrun.conf의설정과관계없이전혀변경하지않는다. UNIX 시스템에서파일및시스템자원에대한권한검사는프로세스의유효사용자에대해서이루어진다. 70 OpenFrame TJES 안내서

71 제 3 장 JOB Execution 실제사용자정보는실제적으로프로세스를호출한사용자를구분하기위한용도 로사용된다. 또한여기서말하는사용자는 TACF 사용자와는직접적인관련이 없는운영시스템상의사용자를의미한다. 다음의두가지사항을고려하여필요한경우 OpenFrame TJES를설치한후에 tjclrun 프로그램에대하여 root 실행권한을부여할지여부를결정한다. 1. JOB CONTROL시에 tjclrun이실행한배치프로그램이 tjclrun을실행하는프로세스의유효사용자와다른유효사용자로실행되는경우 tjclrun은 UNIX JOB CONTROL 시그널에기반한 JOB CONTROL을권한부족의이유로성공적으로수행할수없다. 이러한경우에도성공적으로 JOB CONTROL을하려면 tjclrun 프로그램에 root 실행권한을부여하는것을고려해야한다. 혹은위와같은상황은매우예외적인상황으로운영자가직접 root 사용자로로그인해서해당프로세스에대해서 JOB CONTROL 시그널을보낼수도있지만이러한수작업은더디고운영자의업무부담을높이는요소가될수있다. 예를들면, tjclrun이실행하는배치프로그램에대해서 tjclrun 프로세스의유효사용자가아닌다른사용자로 setuid 처리가되어있는경우에이러한문제가발생한다. 2. JOB을수행하는 tjclrun 및 job step에서실행되는배치프로그램을실행하는프로세스를 JOB에지정된 USER의권한으로실행하기위해서는 tjclrun.conf [ACCOUNT] SETUID=YES로설정해야할뿐만아니라 tjclrun 프로그램을설치할때 root 실행권한을부여해야한다. UNIX 운영시스템에서프로세스를실행하는사용자정보를프로그램실행중에변경하기위해서는특권유저 (root) 의권한이필요하기때문이다. 이러한제약을피하기위해서 TJES 시스템자체를 root로운영하는것도하나의방법이지만시스템보안및관리상의이유로 root로서비스를운영하는것은권장하지않는다. 그대신 tjclrun 프로그램만다음과같이 setuid root 작업을해주면 tjclrun 프로그램을실행하는사용자가 root가아니더라도 tjclrun 실행시에 tjclrun 프로그램파일의소유자 (root) 의권한으로 tjclrun이실행된다. OpenFrame TJES 안내서 71

OpenFrame

OpenFrame OpenFrame TJES 안내서 OpenFrame/Batch for VOS3 2.0 Copyright 2009 TmaxSoft Co., Ltd. All Rights Reserved. Copyright Notice Copyright 2009 TmaxSoft Co., Ltd. All Rights Reserved. 대한민국경기도성남시분당구서현동 263 분당스퀘어

More information

Microsoft Word - AnyLink Introduction v3.2.3.doc

Microsoft Word - AnyLink Introduction v3.2.3.doc Copyright 2007 Tmax Soft Co., Ltd. All Rights Reserved. AnyLInk Copyright Notice Copyright 2007 Tmax Soft Co., Ltd. All Rights Reserved. Tmax Soft Co., Ltd. 대한민국서울시강남구대치동 946-1 글라스타워 18 층우 )135-708 Restricted

More information

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc NTAS and FRAME BUILDER Install Guide NTAS and FRAME BUILDER Version 2.5 Copyright 2003 Ari System, Inc. All Rights reserved. NTAS and FRAME BUILDER are trademarks or registered trademarks of Ari System,

More information

Tmax

Tmax Tmax JTmaxServer User Guide Tmax v5.0 SP1 Copyright 2009 TmaxSoft Co., Ltd. All Rights Reserved. Copyright Notice Copyright 2009 TmaxSoft Co., Ltd. All Rights Reserved. 대한민국경기도성남시분당구서현동 263 분당스퀘어 (AK 프라자

More information

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate ALTIBASE HDB 6.1.1.5.6 Patch Notes 목차 BUG-39240 offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG-41443 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate 한뒤, hash partition

More information

개요오라클과티베로에서 JDBC 를통해접속한세션을구분할수있도록 JDBC 접속시 ConnectionProperties 를통해구분자를넣어줄수있다. 하나의 Node 에다수의 WAS 가있을경우 DB 에서 Session Kill 등의동작수행시원하는 Session 을선택할수있다.

개요오라클과티베로에서 JDBC 를통해접속한세션을구분할수있도록 JDBC 접속시 ConnectionProperties 를통해구분자를넣어줄수있다. 하나의 Node 에다수의 WAS 가있을경우 DB 에서 Session Kill 등의동작수행시원하는 Session 을선택할수있다. 설치및환경설정 JDBC 접속세션구분 / 확인 2013. 11. 01 개요오라클과티베로에서 JDBC 를통해접속한세션을구분할수있도록 JDBC 접속시 ConnectionProperties 를통해구분자를넣어줄수있다. 하나의 Node 에다수의 WAS 가있을경우 DB 에서 Session Kill 등의동작수행시원하는 Session 을선택할수있다. 사용하기 JEUS 에서설정방법

More information

안내서

안내서 OpenFrame Batch 안내서 소프트웨어 OpenFrame/Batch v4.0 안내서버전 v1.1 Copyright 2008 TmaxSoft Co., Ltd. All Rights Reserved. Copyright Notice Copyright 2008 TmaxSoft Co., Ltd. All Rights Reserved. TmaxSoft Co., Ltd.

More information

목차 1. 노드매니저종류 Java Type SSH Type 노드설정파일및로깅 nodes.xml jeusnm.properties <servername>.properties...

목차 1. 노드매니저종류 Java Type SSH Type 노드설정파일및로깅 nodes.xml jeusnm.properties <servername>.properties... 개발및운영 JEUS7 Node Manager 가이드 2014. 12. 15 목차 1. 노드매니저종류... 3 1.1 Java Type... 3 1.2 SSH Type... 3 2. 노드설정파일및로깅... 3 2.1 nodes.xml... 3 2.2 jeusnm.properties... 4 2.3 .properties... 4 2.4 JeusNodeManager.log...

More information

[JEUS 7] eclipse plug-in 연동 1. 개요 Eclipse 와 JEUS 7 연동시필요한 plug-in 제공및환경설정에관한가이드제공하여 Eclipse 에서 JEUS 7 기동및 종료테스트할수있는방법을기술하였습니다. 2. Plug-in 설치 2.1 [Step

[JEUS 7] eclipse plug-in 연동 1. 개요 Eclipse 와 JEUS 7 연동시필요한 plug-in 제공및환경설정에관한가이드제공하여 Eclipse 에서 JEUS 7 기동및 종료테스트할수있는방법을기술하였습니다. 2. Plug-in 설치 2.1 [Step 기타지식 [JEUS 7.0] eclipse plug-in 연동 2015. 06. 09 [JEUS 7] eclipse plug-in 연동 1. 개요 Eclipse 와 JEUS 7 연동시필요한 plug-in 제공및환경설정에관한가이드제공하여 Eclipse 에서 JEUS 7 기동및 종료테스트할수있는방법을기술하였습니다. 2. Plug-in 설치 2.1 [Step. 1]

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

untitled

untitled Push... 2 Push... 4 Push... 5 Push... 13 Push... 15 1 FORCS Co., LTD A Leader of Enterprise e-business Solution Push (Daemon ), Push Push Observer. Push., Observer. Session. Thread Thread. Observer ID.

More information

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE ALTIBASE HDB 6.3.1.10.1 Patch Notes 목차 BUG-45710 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG-45730 ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG-45760 ROLLUP/CUBE 절을포함하는질의는 SUBQUERY REMOVAL 변환을수행하지않도록수정합니다....

More information

API 매뉴얼

API 매뉴얼 PCI-DIO12 API Programming (Rev 1.0) Windows, Windows2000, Windows NT and Windows XP are trademarks of Microsoft. We acknowledge that the trademarks or service names of all other organizations mentioned

More information

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074> SIMATIC S7 Siemens AG 2004. All rights reserved. Date: 22.03.2006 File: PRO1_17E.1 차례... 2 심벌리스트... 3 Ch3 Ex2: 프로젝트생성...... 4 Ch3 Ex3: S7 프로그램삽입... 5 Ch3 Ex4: 표준라이브러리에서블록복사... 6 Ch4 Ex1: 실제구성을 PG 로업로드하고이름변경......

More information

U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형

U.Tu System Application DW Service AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형 AGENDA 1. 개요 4. 솔루션 모음 1.1. 제안의 배경 및 목적 4.1. 고객정의 DW구축에 필요한 메타정보 생성 1.2. 제품 개요 4.2. 사전 변경 관리 1.3. 제품 특장점 4.3. 부품화형 언어 변환 1.4. 기대 효과 4.4. 프로그램 Restructuring 4.5. 소스 모듈 관리 2. SeeMAGMA 적용 전략 2.1. SeeMAGMA

More information

개발및운영 Tibero DB Link (Tibero To Oracle) - Local 방식

개발및운영 Tibero DB Link (Tibero To Oracle) - Local 방식 Tibero DB Link (Tibero To Oracle) - Local 방식 2014. 04. 16. 목차 1. 구성환경... 3 2. 환경설정... 3 2.1. Tibero 서버 (AIX) 에 Oracle instance Client 파일을업로드... 3 2.2. Oracle Instance Client에대한환경설정등록 (.profile)... 4 2.3.

More information

인디쓔피-IOM핸돜벁닄큐1014pdf, page 59 @ Preflight ( IOM핸돜벁닄큐__1014 )

인디쓔피-IOM핸돜벁닄큐1014pdf, page 59 @ Preflight ( IOM핸돜벁닄큐__1014 ) Publisher: International Organization for Migration 17, route des Morillons 1211 Geneva 19 Switzerland Tel: +41.22.717 91 11 Fax: +41.22.798 61 50 E-mail: hq@iom.int Internet: http://www.iom.int ISBN 978

More information

6주차.key

6주차.key 6, Process concept A program in execution Program code PCB (process control block) Program counter, registers, etc. Stack Heap Data section => global variable Process in memory Process state New Running

More information

개발및운영 Tibero Perl 연동

개발및운영 Tibero Perl 연동 Tibero Perl 연동 2014. 05. 27. 목차 1. Windows에서의홖경구성... 3 1.1 Tibero ODBC Driver 설치... 3 1.2. Tool 설치... 5 2. Unix에서의홖경구성... 6 2.1 iodbc 설치... 7 2.2 Tibero 설치... 7 2.3 Iodbc drvier manager 등록... 7 3. Tibero

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

튜닝및모니터링 HP JVM 튜닝옵션

튜닝및모니터링 HP JVM 튜닝옵션 HP JVM 튜닝옵션 2013. 11. 01 목차 1. 개요... 3 2. JVM 특징소개... 3 3. JVM 주요옵션소개... 3 4. 분석기술... 16 2 1. 개요 HP JVM 의특징을살펴보고, TroubleShooting 방법과, 실제 Site 튜닝사례를살펴보도록한다. 2. JVM 특징소개 JVM 메모리영역. 3. JVM 주요옵션소개 GC command-line

More information

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher( 실행할페이지.jsp); 다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp"); dispatcher.forward(request, response); - 위의예에서와같이 RequestDispatcher

More information

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - PLC제어응용-2차시.doc 과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,

More information

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상 Android 용 Brother Image Viewer 설명서 버전 0 KOR 아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상표입니다. Android는

More information

Backup Exec

Backup Exec (sjin.kim@veritas.com) www.veritas veritas.co..co.kr ? 24 X 7 X 365 Global Data Access.. 100% Storage Used Terabytes 9 8 7 6 5 4 3 2 1 0 2000 2001 2002 2003 IDC (TB) 93%. 199693,000 TB 2000831,000 TB.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D> 리눅스 오류처리하기 2007. 11. 28 안효창 라이브러리함수의오류번호얻기 errno 변수기능오류번호를저장한다. 기본형 extern int errno; 헤더파일 라이브러리함수호출에실패했을때함수예 정수값을반환하는함수 -1 반환 open 함수 포인터를반환하는함수 NULL 반환 fopen 함수 2 유닉스 / 리눅스 라이브러리함수의오류번호얻기 19-1

More information

Microsoft PowerPoint - System Programming Lab Week1.ppt [호환 모드]

Microsoft PowerPoint - System Programming Lab Week1.ppt [호환 모드] System Programming Lab Week 1: Basic Skills for Practice Contents vi Editor 사용법 GCC 컴파일러사용법 Makefile 사용법 GDB 사용법 VI Editor Usage vi 모드 입력모드 : 실제문서를편집하는모드. 명령모드 : 키입력이바로명령이되는모드로서쓴내용을삭제하거나, 복사할때사용. ex 명령모드

More information

마리오와 소닉 리우 올림픽™

마리오와 소닉 리우 올림픽™ 마리오와 소닉 리우 올림픽 1 사용하기 전에 준비하기 2 유저 콘텐츠에 대하여 3 인터넷으로 이용 가능한 기능 4 보호자 여러분께 5 amiibo란 시작하기 전에 6 게임 소개 7 게임 시작 방법 8 조작 방법 9 데이터 저장과 삭제 통신으로 더욱 즐기기 10 대전 모드 11 포켓 마라톤 12 기록 기타 13 사용 곡명과 작곡자 소개 14 플레이 정보 송신

More information

슬라이드 1

슬라이드 1 Pairwise Tool & Pairwise Test NuSRS 200511305 김성규 200511306 김성훈 200614164 김효석 200611124 유성배 200518036 곡진화 2 PICT Pairwise Tool - PICT Microsoft 의 Command-line 기반의 Free Software www.pairwise.org 에서다운로드후설치

More information

단계

단계 본문서에서는 Tibero RDBMS 에서제공하는 Oracle DB Link 를위한 gateway 설치및설정방법과 Oracle DB Link 사용법을소개한다. Contents 1. TIBERO TO ORACLE DB LINK 개요... 3 1.1. GATEWAY 란... 3 1.2. ORACLE GATEWAY... 3 1.3. GATEWAY 디렉터리구조...

More information

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조 - Part2- 제 2 장다차원배열이란무엇인가 학습목차 2.1 다차원배열이란 2. 2 2 차원배열의주소와값의참조 2.1 다차원배열이란 2.1 다차원배열이란 (1/14) 다차원배열 : 2 차원이상의배열을의미 1 차원배열과다차원배열의비교 1 차원배열 int array [12] 행 2 차원배열 int array [4][3] 행 열 3 차원배열 int array [2][2][3]

More information

Tablespace On-Offline 테이블스페이스 온라인/오프라인

Tablespace On-Offline 테이블스페이스 온라인/오프라인 2018/11/10 12:06 1/2 Tablespace On-Offline 테이블스페이스온라인 / 오프라인 목차 Tablespace On-Offline 테이블스페이스온라인 / 오프라인... 1 일반테이블스페이스 (TABLESPACE)... 1 일반테이블스페이스생성하기... 1 테이블스페이스조회하기... 1 테이블스페이스에데이터파일 (DATA FILE) 추가

More information

주제별로명령들이따로있는것을보면주제끼리의순서는상관없어도명령들의위치를지 켜야할지도모른다. 하지만실험은해보지않았으니심심하면체크해봐도된다. [CRAB] CRAB 을하기위한가장기본적인세팅이다. jobtype = cmssw scheduler = glite 등이있다. 보통 CRAB

주제별로명령들이따로있는것을보면주제끼리의순서는상관없어도명령들의위치를지 켜야할지도모른다. 하지만실험은해보지않았으니심심하면체크해봐도된다. [CRAB] CRAB 을하기위한가장기본적인세팅이다. jobtype = cmssw scheduler = glite 등이있다. 보통 CRAB CRAB job 1. CRAB이란? CRAB: CMS Remote Analysis Builder 원격으로 Tier-2에접속해서일을하는프로그램이다. 사용자의컴퓨터가아닌외부의 Tier-2에서일이돌아가므로사용자의 terminal이꺼진다해도일이끊기지않는다. 2. 전제조건 private key 가있어야한다. VO member 여야한다. 3. sitedb CMS에서해당

More information

Solaris Express Developer Edition

Solaris Express Developer Edition Solaris Express Developer Edition : 2008 1 Solaris TM Express Developer Edition Solaris OS. Sun / Solaris, Java, Web 2.0,,. Developer Solaris Express Developer Edition System Requirements. 768MB. SPARC

More information

목차 JEUS EJB Session Bean가이드 stateful session bean stateful sample 가이드 sample source 결과확인 http session에

목차 JEUS EJB Session Bean가이드 stateful session bean stateful sample 가이드 sample source 결과확인 http session에 개념정리및샘플예제 EJB stateful sample 문서 2016. 01. 14 목차 JEUS EJB Session Bean가이드... 3 1. stateful session bean... 3 1.1 stateful sample 가이드... 3 1.1.1 sample source... 3 1.1.2 결과확인... 6 1.2 http session에서사용하기...

More information

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770> 연습문제해답 5 4 3 2 1 0 함수의반환값 =15 5 4 3 2 1 0 함수의반환값 =95 10 7 4 1-2 함수의반환값 =3 1 2 3 4 5 연습문제해답 1. C 언어에서의배열에대하여다음중맞는것은? (1) 3차원이상의배열은불가능하다. (2) 배열의이름은포인터와같은역할을한다. (3) 배열의인덱스는 1에서부터시작한다. (4) 선언한다음, 실행도중에배열의크기를변경하는것이가능하다.

More information

vi 사용법

vi 사용법 유닉스프로그래밍및실습 gdb 사용법 fprintf 이용 단순디버깅 확인하고자하는코드부분에 fprintf(stderr, ) 를이용하여그지점까지도달했는지여부와관심있는변수의값을확인 여러유형의단순한문제를확인할수있음 그러나자세히살펴보기위해서는디버깅툴필요 int main(void) { int count; long large_no; double real_no; init_vars();

More information

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 학습내용 1. Java Development Kit(JDK) 2. Java API 3. 자바프로그래밍개발도구 (Eclipse) 4. 자바프로그래밍기초 2 자바를사용하려면무엇이필요한가? 자바프로그래밍개발도구 JDK (Java Development Kit) 다운로드위치 : http://www.oracle.com/technetwork/java/javas

More information

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O Orange for ORACLE V4.0 Installation Guide ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE...1 1....2 1.1...2 1.2...2 1.2.1...2 1.2.2 (Online Upgrade)...11 1.3 ORANGE CONFIGURATION ADMIN...12 1.3.1 Orange Configuration

More information

개발및운영 Eclipse 를이용한 ANT 활용방법

개발및운영 Eclipse 를이용한 ANT 활용방법 Eclipse 를이용한 ANT 활용방법 2014. 04. 09 목차 Eclipse를이용한 ANT 활용방법... 3 1. ant 사용전준비사항... 3 1.1 ant Install... 3 1.2 Java Project 생성... 5 2. ant 활용방법... 10 2.1 ant project 생성... 10 3. ant 설정... 13 3.1 ant directory...

More information

Microsoft PowerPoint - ch07.ppt

Microsoft PowerPoint - ch07.ppt chapter 07. 시스코라우터기본동작 한빛미디어 -1- 학습목표 시스코라우터외적, 내적구성요소 시스코라우터부팅단계 시스코라우터명령어모드 한빛미디어 -2- 시스코라우터구성요소 라우터외부구성요소 (1) [ 그림 ] 2600 라우터전면도 인터페이스카드 전원부 LED 라우터조건 한빛미디어 -3- 시스코라우터구성요소 라우터외부구성요소 (2) [ 그림 ] VTY 를이용한라우터접속

More information

리눅스 프로세스 관리

리눅스 프로세스 관리 프로세스 (Process) Process 프로그램이나명령어를실행하면메모리에적재되어실제로실행되고있는상태를의미 이러한프로세스들은프로세스가시작하면서할당받는프로세스식별번호인 PID(Process ID), 해당프로세스를실행한부모프로세스를나타내는 PPID(Parent Process ID), UID 와 GID 정보를통해해당프로세스가어느사용자에속해있는지, 프로세스가파일에대해갖는권한및프로세스가실행된터미널,

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 KeyPad Device Control - Device driver Jo, Heeseung HBE-SM5-S4210 에는 16 개의 Tack Switch 를사용하여 4 행 4 열의 Keypad 가장착 4x4 Keypad 2 KeyPad 를제어하기위하여 FPGA 내부에 KeyPad controller 가구현 KeyPad controller 16bit 로구성된

More information

/chroot/lib/ /chroot/etc/

/chroot/lib/ /chroot/etc/ 구축 환경 VirtualBox - Fedora 15 (kernel : 2.6.40.4-5.fc15.i686.PAE) 작동 원리 chroot유저 ssh 접속 -> 접속유저의 홈디렉토리 밑.ssh의 rc 파일 실행 -> daemonstart실행 -> daemon 작동 -> 접속 유저만의 Jail 디렉토리 생성 -> 접속 유저의.bashrc 의 chroot 명령어

More information

커알못의 커널 탐방기 이 세상의 모든 커알못을 위해서

커알못의 커널 탐방기 이 세상의 모든 커알못을 위해서 커알못의 커널 탐방기 2015.12 이 세상의 모든 커알못을 위해서 개정 이력 버전/릴리스 0.1 작성일자 2015년 11월 30일 개요 최초 작성 0.2 2015년 12월 1일 보고서 구성 순서 변경 0.3 2015년 12월 3일 오탈자 수정 및 글자 교정 1.0 2015년 12월 7일 내용 추가 1.1 2015년 12월 10일 POC 코드 삽입 및 코드

More information

JVM 메모리구조

JVM 메모리구조 조명이정도면괜찮조! 주제 JVM 메모리구조 설미라자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조장. 최지성자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조원 이용열자료조사, 자료작성, PPT 작성, 보고서작성. 이윤경 자료조사, 자료작성, PPT작성, 보고서작성. 이수은 자료조사, 자료작성, PPT작성, 보고서작성. 발표일 2013. 05.

More information

Cloud Friendly System Architecture

Cloud Friendly System Architecture -Service Clients Administrator 1. -Service 구성도 : ( 좌측참고 ) LB(LoadBlancer) 2. -Service 개요 ucloud Virtual Router F/W Monitoring 개념 특징 적용가능분야 Server, WAS, DB 로구성되어 web service 를클라우드환경에서제공하기위한 service architecture

More information

804NW±¹¹®

804NW±¹¹® Copyright Samsung SDS All rights Reserved. 1 2 3 4 센트에서 빼낸 다음 삼성 S D S 고객센터 기사에게 연락합니다. 5 6 삼성 고객센터 기사에게 이지온 영상 전화기가 작동하는 상태에서 안전점검을 수행토록 요구해야 합니다 7 8 반드시 삼성 에서 승인된 부품만을 사용해야 합니다 삼성 에서 승인된 부품을 사용하지 않을

More information

DBMS & SQL Server Installation Database Laboratory

DBMS & SQL Server Installation Database Laboratory DBMS & 조교 _ 최윤영 } 데이터베이스연구실 (1314 호 ) } 문의사항은 cyy@hallym.ac.kr } 과제제출은 dbcyy1@gmail.com } 수업공지사항및자료는모두홈페이지에서확인 } dblab.hallym.ac.kr } 홈페이지 ID: 학번 } 홈페이지 PW:s123 2 차례 } } 설치전점검사항 } 설치단계별설명 3 Hallym Univ.

More information

Frama-C/JESSIS 사용법 소개

Frama-C/JESSIS 사용법 소개 Frama-C 프로그램검증시스템소개 박종현 @ POSTECH PL Frama-C? C 프로그램대상정적분석도구 플러그인구조 JESSIE Wp Aorai Frama-C 커널 2 ROSAEC 2011 동계워크샵 @ 통영 JESSIE? Frama-C 연역검증플러그인 프로그램분석 검증조건추출 증명 Hoare 논리에기초한프로그램검증도구 사용법 $ frama-c jessie

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information

chap 5: Trees

chap 5: Trees 5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경

More information

설치및환경설정 JEUS Thread State Notify 설정

설치및환경설정 JEUS Thread State Notify 설정 JEUS Thread State Notify 설정 2014. 07. 02 목차 1. thread-state-notify 설정... 3 1.1 시나리오 #1. max-thread-active-time : 10초... 3 1.2 시나리오 #2. max-thread-active-time : 10초, thread-interrupt-execution : true...

More information

ETL_project_best_practice1.ppt

ETL_project_best_practice1.ppt ETL ETL Data,., Data Warehouse DataData Warehouse ETL tool/system: ETL, ETL Process Data Warehouse Platform Database, Access Method Data Source Data Operational Data Near Real-Time Data Modeling Refresh/Replication

More information

라즈베리파이 프로그래밍_130912(최종).indd

라즈베리파이 프로그래밍_130912(최종).indd 파이썬으로 시작하는 라즈베리 파이 프로그래밍 Programming the Raspberry Pi Getting Started with Python Programming the Raspberry Pi: Getting Started with Python, 1st Edition. Korean Language Edition Copyright 2013 by McGraw-Hill

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 BOOTLOADER Jo, Heeseung 부트로더컴파일 부트로더소스복사및압축해제 부트로더소스는웹페이지에서다운로드 /working 디렉터리로이동한후, wget으로다운로드 이후작업은모두 /working 디렉터리에서진행 root@ubuntu:# cp /media/sm5-linux-111031/source/platform/uboot-s4210.tar.bz2 /working

More information

2012-민간네트워크-05_중국

2012-민간네트워크-05_중국 2012- fi '-05_` 2012.3.19 1:0 PM ` 161 600DPI 95LPI 161 2012- fi '-05_` 2012.3.19 1:0 PM ` 162 600DPI 95LPI 2012 Global Business Network of Korea 162 http://www.exportcenter.go.kr 2012- fi '-05_` 2012.3.19

More information

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다 이장에서사용되는 MATLAB 명령어들은비교적복잡하므로 MATLAB 창에서명령어를직접입력하지않고확장자가 m 인 text 파일을작성하여실행을한다. 즉, test.m 과같은 text 파일을만들어서 MATLAB 프로그램을작성한후실행을한다. 이와같이하면길고복잡한 MATLAB 프로그램을작성하여실행할수있고, 오류가발생하거나수정이필요한경우손쉽게수정하여실행할수있는장점이있으며,

More information

USER GUIDE

USER GUIDE Solution Package Volume II DATABASE MIGRATION 2010. 1. 9. U.Tu System 1 U.Tu System SeeMAGMA SYSTEM 차 례 1. INPUT & OUTPUT DATABASE LAYOUT...2 2. IPO 중 VB DATA DEFINE 자동작성...4 3. DATABASE UNLOAD...6 4.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Reasons for Poor Performance Programs 60% Design 20% System 2.5% Database 17.5% Source: ORACLE Performance Tuning 1 SMS TOOL DBA Monitoring TOOL Administration TOOL Performance Insight Backup SQL TUNING

More information

C# Programming Guide - Types

C# Programming Guide - Types C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든

More information

SANsymphony-V

SANsymphony-V 국내대표적인구축사례 (KR) XXXX공사(공공) 2013년 12월 도입 센터 이전에 따른 스토리지가상화 통합 및 이기종통합 이기종 스토리지 (무중단이중하) 무중단 서비스 확보 24시간 운영 체계의 고가용 확보 스토리지 인프라의 유연한 구성 및 통합 환경 구축 업무서버 Unix 20대 업무서버 V 58대 CIe SSD(Fusion IO 3.2TB) ㅇㅇㅇㅇㅇㅇ

More information

ISP and CodeVisionAVR C Compiler.hwp

ISP and CodeVisionAVR C Compiler.hwp USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler http://www.avrmall.com/ November 12, 2007 Copyright (c) 2003-2008 All Rights Reserved. USBISP V3.0 & P-AVRISP V1.0 with CodeVisionAVR C Compiler

More information

PowerPoint Template

PowerPoint Template JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Autodesk Software 개인용 ( 학생, 교사 ) 다운로드가이드 진동환 (donghwan.jin@autodesk.com) Manager Autodesk Education Program - Korea Autodesk Education Expert 프로그램 www.autodesk.com/educationexperts 교육전문가프로그램 글로벌한네트워크 /

More information

1) 인증서만들기 ssl]# cat >www.ucert.co.kr.pem // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

1) 인증서만들기 ssl]# cat   >www.ucert.co.kr.pem // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키 Lighttpd ( 멀티도메인 ) SSL 인증서신규설치가이드. [ 고객센터 ] 한국기업보안. 유서트기술팀 1) 인증서만들기 [root@localhost ssl]# cat www.ucert.co.kr.key www.ucert.co.kr.crt >www.ucert.co.kr.pem // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat

More information

Copyright 2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A..,,. Sun. Sun. Berkeley BSD. UNIX X/Open Company, Ltd.. Sun, Su

Copyright 2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A..,,. Sun. Sun. Berkeley BSD. UNIX X/Open Company, Ltd.. Sun, Su Java Desktop System 2 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. : 817 7757 10 2004 9 Copyright 2004 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A..,,.

More information

OpenFrame

OpenFrame OpenFrame OpenStudio DEV/DEP 안내서 소프트웨어 OpenFrame 4.0 Fix#1/OpenStudio v4.0 안내서버전 v1.2 Copyright 2009 TmaxSoft Co., Ltd. All Rights Reserved. Copyright Notice Copyright 2009 TmaxSoft Co., Ltd. All Rights

More information

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자 SQL Developer Connect to TimesTen 유니원아이앤씨 DB 팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 2010-07-28 작성자 김학준 최종수정일 2010-07-28 문서번호 20100728_01_khj 재개정이력 일자내용수정인버전

More information

OZ-LMS TM OZ-LMS 2008 OZ-LMS 2006 OZ-LMS Lite Best IT Serviece Provider OZNET KOREA Management Philosophy & Vision Introduction OZNETKOREA IT Mission Core Values KH IT ERP Web Solution IT SW 2000 4 3 508-2

More information

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3 Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3 Example 3.1 Files 3.2 Source code 3.3 Exploit flow

More information

제11장 프로세스와 쓰레드

제11장 프로세스와 쓰레드 제9장자바쓰레드 9.1 Thread 기초 (1/5) 프로그램 명령어들의연속 (a sequence of instruction) 프로세스 / Thread 실행중인프로그램 (program in execution) 프로세스생성과실행을위한함수들 자바 Thread 2 9.1 Thread 기초 (2/5) 프로세스단위작업의문제점 프로세스생성시오버헤드 컨텍스트스위치오버헤드

More information

Remote UI Guide

Remote UI Guide Remote UI KOR Remote UI Remote UI PDF Adobe Reader/Adobe Acrobat Reader. Adobe Reader/Adobe Acrobat Reader Adobe Systems Incorporated.. Canon. Remote UI GIF Adobe Systems Incorporated Photoshop. ..........................................................

More information

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요

. 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요 . 스레드 (Thread) 란? 스레드를설명하기전에이글에서언급되는용어들에대하여알아보도록하겠습니다. - 응용프로그램 ( Application ) 사용자에게특정서비스를제공할목적으로구현된응용프로그램을말합니다. - 컴포넌트 ( component ) 어플리케이션을구성하는기능별요소로써안드로이드시스템에서는 Activities, Services, Content Providers,

More information

Windows 10 General Announcement v1.0-KO

Windows 10 General Announcement v1.0-KO Windows 10 Fuji Xerox 장비와의호환성 v1.0 7 July, 2015 머리말 Microsoft 는 Windows 10 이 Windows 자동업데이트기능을통해예약되어질수있다고 6 월 1 일발표했다. 고객들은 윈도우 10 공지알림을받기 를표시하는새로운아이콘을알아차릴수있습니다. Fuji Xerox 는 Microsoft 에서가장최신운영시스템인 Windows

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 RecurDyn 의 Co-simulation 와 하드웨어인터페이스적용 2016.11.16 User day 김진수, 서준원 펑션베이솔루션그룹 Index 1. Co-simulation 이란? Interface 방식 Co-simulation 개념 2. RecurDyn 과 Co-simulation 이가능한분야별소프트웨어 Dynamics과 Control 1) RecurDyn

More information

PCServerMgmt7

PCServerMgmt7 Web Windows NT/2000 Server DP&NM Lab 1 Contents 2 Windows NT Service Provider Management Application Web UI 3 . PC,, Client/Server Network 4 (1),,, PC Mainframe PC Backbone Server TCP/IP DCS PLC Network

More information

Microsoft Word - src.doc

Microsoft Word - src.doc IPTV 서비스탐색및콘텐츠가이드 RI 시스템운용매뉴얼 목차 1. 서버설정방법... 5 1.1. 서비스탐색서버설정... 5 1.2. 컨텐츠가이드서버설정... 6 2. 서버운용방법... 7 2.1. 서비스탐색서버운용... 7 2.1.1. 서비스가이드서버실행... 7 2.1.2. 서비스가이드정보확인... 8 2.1.3. 서비스가이드정보추가... 9 2.1.4. 서비스가이드정보삭제...

More information

강의10

강의10 Computer Programming gdb and awk 12 th Lecture 김현철컴퓨터공학부서울대학교 순서 C Compiler and Linker 보충 Static vs Shared Libraries ( 계속 ) gdb awk Q&A Shared vs Static Libraries ( 계속 ) Advantage of Using Libraries Reduced

More information

PRO1_04E [읽기 전용]

PRO1_04E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_04E1 Information and S7-300 2 S7-400 3 EPROM / 4 5 6 HW Config 7 8 9 CPU 10 CPU : 11 CPU : 12 CPU : 13 CPU : / 14 CPU : 15 CPU : / 16 HW 17 HW PG 18 SIMATIC

More information

Tibero

Tibero Tibero 클라이언트설치가이드 Copyright 2013 TmaxData Co., Ltd. All Rights Reserved. Copyright Notice Copyright 2013 TmaxData Co., Ltd. All Rights Reserved. 대한민국경기도성남시분당구황새울로 329 번길 5 티맥스빌딩우 ) 463-824 Restricted Rights

More information

B _00_Ko_p1-p51.indd

B _00_Ko_p1-p51.indd KOS-V000 B64-797-00/00 (MV) KOS-V000 설명서를 보는 방법 이 설명서에서는 삽입된 그림을 통해 작동 방법을 설명합니다. 이 설명서에 나타낸 화면과 패널은 작동 방법을 자세히 설명하는 데 이용되는 예입니다. 따라서 실제 화면이나 패널과 다르거나 일부 디 스플레이 패턴이 다를 수도 있습니다. 찾기 모드 방송국 선택 설정. TUNER

More information

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수 사용 설명서 TeraStation Pro II TS-HTGL/R5 패키지 내용물: 본체 (TeraStation) 이더넷 케이블 전원 케이블 TeraNavigator 설치 CD 사용 설명서 (이 설명서) 제품 보증서 www.buffalotech.com 소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를

More information

uFOCS

uFOCS 1 기 : 기 UF_D_V250_002 기 기 기 품 ufocs 기 v2.5.0 히기기기기기기기기기 기 Manual 기 version 기 3.2 기품 2011.7.29 히기 345-13 1 Tel : 02-857-3051 Fax : 02-3142-0319 : http://www.satu.co.kr 2010 SAT information Co., Ltd. All

More information

FY2005 LIG

FY2005 LIG FY2005 LIG www.lig.co.kr FY2005 LIG 2005 LIG 7-44 "Profitable Growth" 14.5% 3 3,849 0.6%p 14.8% 3 355 306 7,300 5 3,691 2006 4 CI 2 "Profitable Growth 15.2% 2 1,000 VISION LIG LIG Leading Company 482006331

More information

메일서버등록제(SPF) 인증기능적용안내서 (Exchange Windows 2000) OS Mail Server SPF 적용모듈 작성기준 Windows Server 2000 Exchange Server 2003 GFI MailEssentials 14 for

메일서버등록제(SPF) 인증기능적용안내서 (Exchange Windows 2000) OS Mail Server SPF 적용모듈 작성기준 Windows Server 2000 Exchange Server 2003 GFI MailEssentials 14 for 메일서버등록제(SPF) 인증기능적용안내서 (Exchange 2003 - Windows 2000) OS Mail Server SPF 적용모듈 작성기준 Windows Server 2000 Exchange Server 2003 GFI MailEssentials 14 for Exchange 2016 년 6 월 - 1 - 목 차 I. 개요 1 1. SPF( 메일서버등록제)

More information

공개 SW 기술지원센터

공개 SW 기술지원센터 - 1 - 일자 VERSION 변경내역작성자 2007. 11. 20 0.1 초기작성손명선 - 2 - 1. 문서개요 4 가. 문서의목적 4 나. 본문서의사용방법 4 2. 테스트완료사항 5 가. 성능테스트결과 5 나. Tomcat + 단일노드 MySQL 성능테스트상세결과 5 다. Tomcat + MySQL Cluster 성능테스트상세결과 10 3. 테스트환경 15

More information

10.

10. 10. 10.1 10.2 Library Routine: void perror (char* str) perror( ) str Error 0 10.3 10.3 int fd; /* */ fd = open (filename, ) /*, */ if (fd = = -1) { /* */ } fcnt1 (fd, ); /* */ read (fd, ); /* */ write

More information

로거 자료실

로거 자료실 redirection 매뉴얼 ( 개발자용 ) V1.5 Copyright 2002-2014 BizSpring Inc. All Rights Reserved. 본문서에대한저작권은 비즈스프링 에있습니다. - 1 - 목차 01 HTTP 표준 redirect 사용... 3 1.1 HTTP 표준 redirect 예시... 3 1.2 redirect 현상이여러번일어날경우예시...

More information

Bind Peeking 한계에따른 Adaptive Cursor Sharing 등장 엑셈컨설팅본부 /DB 컨설팅팀김철환 Bind Peeking 의한계 SQL 이최초실행되면 3 단계의과정을거치게되는데 Parsing 단계를거쳐 Execute 하고 Fetch 의과정을통해데이터

Bind Peeking 한계에따른 Adaptive Cursor Sharing 등장 엑셈컨설팅본부 /DB 컨설팅팀김철환 Bind Peeking 의한계 SQL 이최초실행되면 3 단계의과정을거치게되는데 Parsing 단계를거쳐 Execute 하고 Fetch 의과정을통해데이터 Bind Peeking 한계에따른 Adaptive Cursor Sharing 등장 엑셈컨설팅본부 /DB 컨설팅팀김철환 Bind Peeking 의한계 SQL 이최초실행되면 3 단계의과정을거치게되는데 Parsing 단계를거쳐 Execute 하고 Fetch 의과정을통해데이터를사용자에게전송하게되며 Parsing 단계에서실행계획이생성된다. Bind 변수를사용하는 SQL

More information

Microsoft PowerPoint - CSharp-10-예외처리

Microsoft PowerPoint - CSharp-10-예외처리 10 장. 예외처리 예외처리개념 예외처리구문 사용자정의예외클래스와예외전파 순천향대학교컴퓨터학부이상정 1 예외처리개념 순천향대학교컴퓨터학부이상정 2 예외처리 오류 컴파일타임오류 (Compile-Time Error) 구문오류이기때문에컴파일러의구문오류메시지에의해쉽게교정 런타임오류 (Run-Time Error) 디버깅의절차를거치지않으면잡기어려운심각한오류 시스템에심각한문제를줄수도있다.

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

Layout 1

Layout 1 천연대리석 마루 www.qmaru.co.kr OWENS CORNING BM (KOREA), LTD 18F ILSONG BUILDING 157-37 SAMSUNG-DONG GANGNAM-GU SEOUL 135-090, KOREA TEL 822.2050.7490 FAX 822.2050.7499 www.owenscorning.co.kr www.qmaru.co.kr

More information

untitled

untitled 2007 8 8 NCsoft CORPORATION OK-san Bldg 157-33, Samsung-dong, Kangnam-gu, Seoul 135-090, KOREA Tel: +82-2-2186-3300 Fax : +82-2-2186-3550 Copyright NCsoft Corporation. All Rights Reserved WWW.NCSOFT.COM

More information

< 목차 > Ⅰ. 개요 3 Ⅱ. 실시간스팸차단리스트 (RBL) ( 간편설정 ) 4 1. 메일서버 (Exchange Server 2007) 설정변경 4 2. 스팸차단테스트 10

< 목차 > Ⅰ. 개요 3 Ⅱ. 실시간스팸차단리스트 (RBL) ( 간편설정 ) 4 1. 메일서버 (Exchange Server 2007) 설정변경 4 2. 스팸차단테스트 10 (https://www.kisarbl.or.kr) < 목차 > Ⅰ. 개요 3 Ⅱ. 실시간스팸차단리스트 (RBL) ( 간편설정 ) 4 1. 메일서버 (Exchange Server 2007) 설정변경 4 2. 스팸차단테스트 10 Ⅰ. 개요 실시간스팸차단리스트 (RBL) 는메일서버를운영하는누구나손쉽게효과적으로스팸수신을차단하는데이용할수있도록한국인터넷진흥원 (KISA)

More information