입력/출력 시작

Start Input/Output

MVS/370 및 IBM 메인프레임 운영 체제의 후속 버전에서 STARTIO(Start Input/Output/Output)는 매크로 명령이며 로우 레벨 장치 액세스를 위한 "지점 항목"이며, 프로그래머는 I/O 채널, 제어 장치 및 무감각 장치에 의해 실행될 장치별 CCW의 목록을 제공해야 합니다."exits"의 er. 그 중 몇 개는 IOS([1][2][3][4]Input/Output Supervisor)로 즉시 반환될 수 있습니다.STARTIO 호출자는 슈퍼바이저 모드로 [5]키0이어야 합니다STARTIO 인터페이스는 [6]MVS의 IOS 컴포넌트와 직접 연결됩니다.

Execute 채널 프로그램(EXCP)에서 차이.

EXCP(포함 XDAP, EXCP의 단순한 DASD-only 부분 집합)과 EXCPVR에서 다음과 같은 근본적인 방법으로 시작 Input/Output 다르:에서 지원하는 시작 Input/Output은 낮은 수준 시설, 예를 들어, 채널 길의 선택, 있어 선택을 지원하는 동안 Execute 채널 프로그램은 높은 수준 시설, 예를 들어, CCWtranslation,.페이지, 관련 요청, VIO의 serialization을 고치고.

Execute 채널 프로그램의 전화 거는 일을 잘 처리하다 모드에 있어야 합니다.반면 IBM특권을 가진 것으로 EXCPVR를 문서화한다, 몇몇 빈곤한 접근 방법 부호 직접 접근 기억 장치 데이터들을 SAM-E 처리 위해 사용하는.어떤 특별한 경우를 제외하고, 응용 프로그램은 데이터 제어 블록(DCB)이(그, 그것은 응용 프로그램에 접근할 수 있는 시스템의 OPEN/CLOSE/END-OF-VOLUME 관리자 서비스, SVCs 19,20,55에 비해 각각 만들어졌다)OPENed다 Execute 채널 프로그램 사용할 수 있다.

STARTIO의 전화 거는 사람 빼낼 수 있어야 한다, 페이지를 고치는 모든 저장소 지역 관련된 요청을 하고 사용하여 세계적인 저장 장치가 SRB/IOSB.그들은 비록 그 장치는 주소 공간, 장치 OPENed할 필요가 없할당되지 않는, 진짜 UCB를 가지고 있는 어떤 장치에 참조시킬지도 모른다.

시작 및 완료 시퀀스

STARTIO의 시작 시퀀스는 보통 "프런트 엔드"로 불리며 TCB 모드 또는 SRB 모드일 수 있습니다.STARTIO의 종단 시퀀스는 보통 백엔드라고 불리며 항상 SRB 모드입니다.

STARTIO는 항상 SRB/IOSB 쌍을 사용합니다.SRB(Service Request Block)는 관련 I/O 요구와 관련하여 필요에 따라 프로세서의 액티비티를 스케줄링하기 위해 사용됩니다.이는 I/O 요구가 발신자가 실행 중인 프로세서에서 반드시 실행되는 것은 아니기 때문입니다(실제로 대부분의 경우 실행되지 않습니다).IOSB(Input/Output Supervisor Block)는 관련된 I/O 요구를 기술하고 파라미터를 IOS에 전달하여 IOS로부터 응답을 받습니다.IOS는 보통 이니블 SRB 모드로 appendment를 호출하지만 특별한 경우 Disabled Interrupt Exit(DIE; 디세이블인터럽트 출구)로서 appendage를 호출합니다.

디바이스 의존형 처리

각 디바이스의 Unit Control Block(UCB; 유닛 제어 블록)은 디바이스 의존형 처리에 필요한 루틴(예를 들어 주의 인터럽트 처리, RESERBE CCW 추가, Set File Mask and Seek 추가)을 식별한 Device Descriptor Table(DDT; 디바이스 기술자 테이블)을 가리킵니다.

사실상의 지원과 비지원

고객이 STARTIO를 사용하는 것은 IBM에서 지원되지 않지만, 그럼에도 불구하고 매크로 명령과 관련 "지점 엔트리"는 MVS/370에서 z/OS로 40년 동안(2014년 기준) 전환되는 동안 상당히 안정적인 상태를 유지했습니다. STARTIO는 채널 연결 장치에서 가장 낮은 수준의 물리적 I/O 작업을 수행하는 유일한 방법이기 때문입니다.n MVS/370 및 그 이후의 OS 인스턴스특히 VSAM과 VTAM은 EXCP, XDAP 및 EXCPVR 및 IMS/VS 및 JES의 특정 인스턴스(특히 채널 간 운용이 관련된 경우)와 마찬가지로 STARTIO를 사용합니다.

MVS/370 및 후속 버전에서 ES/390 및 z/OS로 변경

ES/390에는 기존 프로그램과의 호환성을 위해 유지되었던 원래와 기본적으로 동일한 기능을 수행하는 "브런치 엔트리"가 추가되었습니다.이 추가 "비밀 항목"은 원래의 "비밀 항목"이 그랬던 것처럼 (TCB= 키워드 매개 변수로부터) 명시적으로 얻는 것이 아니라 (PSATOLD로부터) 관련 TCB의 주소를 암묵적으로 취득한다.

오류 복구

IOS가 관련된 I/O 요구를 처리할 때 치명적인 오류가 발생하면 이 TCB(통상은 발신자의 '작업 스텝' TCB)가 비정상적으로 종료됩니다.오류가 검출되었을 때 활성화되었던 TCB가 아닙니다.이 TCB는 모든 태스크와 모든 주소에 대해 비동기적으로 실행될 수 있습니다.모든 주소 공간에 TCB있거나, 실제로 TCB가 전혀 없습니다.예를 들어 SRB 또는 시스템 대기 태스크(OS 마스터 스케줄러의 주소 공간에서 실행됨)가 될 수 있습니다.

문서

STARTIO와 그 응용 프로그램에 대한 가장 좋은 설명은 아마도 "MVS의 [Start Input/Output Interface]"[7]라는 제목의 백서일 것입니다.MVS의 [Start Input/Output Interface]는 Peter Haas가 작성한 후 Amdahl Corp(이 후속 청산)에 의해 작성되었습니다.Haas의 "화이트 페이퍼"에는 STARTIO 인터페이스에서 사용되는 필수 및 옵션 파라미터와 종료에 대한 애플리케이션 프로그램의 예가 포함되어 있습니다.EXCP[VR] 및 STARTIO에 대한 자세한 설명은 로직 [8]매뉴얼을 참조하십시오.

메모들

레퍼런스

  1. ^ Hank A. Murphy (1995). MVS control blocks. McGraw-Hill Ryerson, Limited. pp. 129–130. ISBN 978-0-07-044309-9.
  2. ^ Robert H. Johnson; R. Daniel Johnson (June 1992). DASD: IBM's direct access storage devices. McGraw-Hill. pp. 237–238. ISBN 978-0-07-032674-3.
  3. ^ Harry Katzan; Davis Tharayil (October 1984). Invitation to MVS: logic and debugging. PBI. pp. 11, 211. ISBN 978-0-89433-081-0.
  4. ^ Dave Elder-Vass (30 April 1993). MVS Systems Programming. McGraw-Hill. p. 52. ISBN 978-0-07-707767-9.
  5. ^ Robert H. Johnson (June 1989). MVS: concepts and facilities. Intertext Publications. p. 577. ISBN 978-0-07-032673-6.
  6. ^ Gilbert E. Houtekamer; H. Pat Artis (1993). MVS I/O subsystems: configuration management and performance analysis. McGraw-Hill. p. 52. ISBN 978-0-07-002553-0.
  7. ^ Amdahl Corp, 캘리포니아주, Sunnyvale, MVS 지원팀 테크니컬 토픽, Vol.1, No.2
  8. ^ OS/VS2 I/O Supervisor Logic (Sixth ed.), IBM, December 1978, SY26-3823-5.