직접 액세스 프로그램 실행
Execute Direct Access ProgramIBM 메인프레임 운영 체제에서 직접 액세스 프로그램 실행(Execute Direct Access Program, XDAP)은 블록 단위로 직접 액세스 데이터셋에 액세스하는 유사 액세스 방법이다.XDAP는 OS System Programmer's Guide에 더 구체적으로 설명되어 있다.[1]
기존 블록
기존 블록을 읽거나 업데이트할 수 있다.데이터 집합은 XDAP를 사용하여 생성되거나 확장될 수 없으며, 이를 위해 진정한 액세스 방법이 필요하다.XDAP는 BSAM 또는 BPAM과 공존할 수 있으며, 여러 OS 구성요소가 이러한 방식으로 구현된다.
DASD 주소 계산
프로그래머는 직접 접속 블록 식별자 MBBCCHR의 완전한 계산을 담당한다.시스템 알고리즘은 TTRN에서 MBBCCHR를 계산하는 데 사용할 수 있다.시스템 데이터는 "트랙 용량 테이블"의 형태로 모든 직접 액세스 장치 유형에 대해 블록 번호에서 TTRN을 계산하는 데 사용할 수 있다.이후 버전의 OS는 TRKADDR 매크로를 사용하여 대용량 장치에 쉽게 액세스할 수 있다.
양식 나열 및 실행
XDAP의 List 및 Executive 양식을 지원하며, 여기서 List Form이라 불리는 프로토타입 양식을 데이터로 확장하고, Execute Form이라 불리는 기능 양식을 지침으로 확장한다.XDAP도 관습적으로 지원되는데, 이 경우 두 형태가 결합되어 인라인 데이터와 지침으로 확장된다.List and Execute Forms의 사용은 재입력 가능한 프로그램의 개발을 용이하게 한다.
XDAP는 암시적으로 EXCP를 호출한다.
XDAP 결과는 EXCP 감독자 호출을 실행하므로, 채널 프로그램 실행(EXTP)은 XDAP 내에 암시적으로 내장되어 있다.EXCP의 유일한 파라미터인 IOB는 채널 명령어와 마찬가지로 XDAP 매크로 확장 내에 데이터 구조로 포함되어 있다.
XDAP 데이터 세트 열기
XDAP는 개방 DCB 및 전체 직접 액세스 식별자를 참조해야 한다.DCB는 입력, 출력 또는 입력 및 출력("INOUT")을 위해 개방될 수 있지만, XDAP가 형식 쓰기를 지원하지 않으므로 모든 출력은 기존 블록의 쓰기를 업데이트해야 한다.BSAM 및 BPAM은 형식 쓰기(데이터셋에 새 블록, 즉 초기 블록 또는 추가 블록, 특히 최종 블록을 추가하는 쓰기)를 실행할 수 있다.
XDAP 및 SAM 및 PAM 공존을 위한 IOBSPSVC 플래그
IOBSPSVC 플래그(논리적으로, IOB의 SAM 및 PAM SVC 플래그)를 사용할 수 있으며, 이로 인해 순차적 액세스 방법 추가가[2] 바이패스된다.SVS와 함께 처음 구현되었지만 이전 버전의 OS로 리폼되지 않은 이 개선은 XDAP를 사용하는 동안 이미 BSAM 또는 BPAM용으로 오픈된 데이터셋을 처리하는데 크게 도움이 되었다.
그렇지 않으면, 특정 XDAP 채널 프로그램과 함께 제공된 SVS SAM 및 PAM 부록으로 인해 감독자 스토리지 오버레이가 발생할 수 있다.IBM이 사전 SVS 시스템에 대한 시스템 보안과 데이터 무결성을 보장하지 않았기 때문에 분명한 우회 방법은 RPS형 XDAP 채널 프로그램이 SAM과 PAM 부록에 혼란을 주어 무작위 감독자 스토리지 오버레이로 이어졌기 때문에 RPS도 활용하지 않는 XDAP 채널 프로그램만 활용하는 것이었다.
참조
- ^ IBM System/360 Operating System System Programmer's Guide (PDF). IBM. March 1967. C28-6550-2.
- ^ IBM System/360 Operating System Sequential Access Methods Program Logic Manual (PDF). IBM. January 1967. Y28-6604-1.