태스크 제어 블록

Task Control Block

TCB(Task Control Block)에는 OS/360IBM System/360 아키텍처의 후속 작업 및 후속 작업 상태가[a] 포함됩니다.

OS/360 이후의 TCB

OS/360, OS/VS1, SVS, MVS/370, MVS/XA, MVS/ESA, OS/390z/OS에서 TCB는[1][2][3]: 311–321 특히 현재 CPU에 할당되지 않은 태스크에 대한 일반 및 부동 소수점 레지스터를 포함합니다.

TCB는 다른 관련 요구[3]: 269–301 블록(RB)의 링크 목록에 대한 앵커를 제공합니다.TCB의 상위 링크 RB에는 태스크가 CPU에 할당되지 않은 경우 프로그램 상태 워드(PSW)가 포함됩니다.

제어프로그램의 디스패처가 디스패치할 TCB를 선택하면 디스패처는 TCB에서 레지스터를 로드하고 TCB의 Top RB에서 PSW를 로드하여 작업단위를 디스패치한다.

요구 블록

OS/360에는 다음과 같은 유형의 요청 블록이 있습니다.

인터럽트 요구[3]: 281–284 블록
IRB는 비동기 [b]출구를 처리하기 위해 사용됩니다.
프로그램 요청[3]: 285–287 블록
PRB는 ATCH 매크로, LINK 매크로 또는 동기 [c]출구로 호출되는 모듈을 나타냅니다.
시스템 중단 요청[3]: 289–291 블록
SIRB는 I/O 오류 복구 코드를 실행하기 위해 사용됩니다.
슈퍼바이저 요구[3]: 293–301 블록
SVRB는 타입 2, 타입 3 또는 타입4 SVC 루틴의 실행을 나타냅니다.

RB는 오래된 PSW, 오래된 일반 레지스터, PSW 및 대기 카운트 중 여러 필드를 포함합니다.

디스패치

디스패처는 발송할 작업을 선택하는 핵 내의 루틴입니다.다음 중 가장 우선순위가 높은 작업을 선택합니다.

  1. 다른 CPU에서 실행되고 있지 않다.
  2. 디스패치 가능성 플래그가 설정되어 있지 않습니다.
  3. 대기 카운트가 제로인 상위 RB가 있습니다.

시스템은 TCB old 및 TCB new로 알려진 TCB 포인터의 쌍을[d] 유지합니다.TCB의 새로운 포인터가 0일 경우 디스패처는 적합한 작업을 검색합니다.

디스패처는 적격 태스크를 발견하면 오래된 TCB 포인터와 새로운 TCB 포인터를 설정합니다.는 TCB에서 레지스터를 로드하고 상위 RB에서 PSW를 로드합니다.

디스패처는 적절한 작업을 찾을 수 없는 경우 활성화된 대기 상태가 됩니다.

역사

MVS/370 및 후속 시스템의 도입으로 완전히 새로운 환경이 도입되었습니다.SRB는 일반적으로 태스크컨트롤 블록보다 높은 priority를 가지며 실제로는 글로벌SRB(모든 로컬주소 공간 SRB 및 TCB보다 priority)와 로컬 SRB(priority SRB)의 2가지 priority를 가집니다.nllocal Address Space TCB)와 MVS 디스패처는 이들 모두를 최대 2개의 프로세서(MVS/370)와 최대 16개의 프로세서(후계기 시스템)에서 절대적인 일관성으로 관리해야 합니다.

「 」를 참조해 주세요.

메모들

  1. ^ UNIX 유사 운영 체제의 스레드와 거의 유사합니다.
  2. ^ 예외, 타이머 이벤트 또는 기타 신호를 처리하기 위한 비동기 루틴.
  3. ^ 권한 없는 콜백 루틴입니다.
  4. ^ 65MP에서는 eack CPU에 대한 쌍이 있으며 MVS에서는 각 주소 공간에 대한 포인터가 있습니다.

레퍼런스

  1. ^ IBM System/360 Operating System - Fixed-Task Supervisor - Program Number 360S-CI-505 (PDF). Program Logic (Third ed.). February 1967. Y28-6612-2.
  2. ^ IBM System/360 Operating System - MVT Supervisor (PDF). Program Logic (Eighth ed.). May 1973. GY28-6659-7. Retrieved March 14, 2022.
  3. ^ a b c d e f IBM System/360 Operating System: System Control Blocks - OS Release 21.7 (PDF). Systems Reference Library (Tenth ed.). IBM. April 1973. GC28-6628-9. Retrieved June 12, 2022.