OS의 프로세스 관리: 운영 체제의 PCB

프로세스란 무엇입니까?

방법 해당 프로그램에 지정된 작업을 수행하는 프로그램을 실행하는 것입니다. 프로그램이 실행되는 실행 단위로 정의할 수 있습니다. OS는 CPU에서 사용하는 프로세스를 생성, 예약 및 종료하는 데 도움을 줍니다. 메인 프로세스에 의해 생성된 프로세스를 하위 프로세스라고 합니다.

PCB(Process Control Block)를 이용하여 공정 작업을 쉽게 제어할 수 있습니다. 프로세스 ID, 우선순위, 상태, CPU 레지스터 등과 같은 처리와 관련된 모든 중요한 정보를 포함하는 프로세스의 두뇌라고 생각할 수 있습니다.

프로세스 관리란 무엇입니까?

프로세스 관리에는 프로세스 생성, 예약, 종료 등 다양한 작업이 포함됩니다. 교착상태. 프로세스는 실행 중인 프로그램으로, 현대 운영 체제의 중요한 부분입니다. OS는 프로세스가 정보를 공유하고 교환할 수 있도록 리소스를 할당해야 합니다. 또한 각 프로세스의 리소스를 다른 방법으로부터 보호하고 허용합니다. sync프로세스 간 동기화.

시스템에서 실행 중인 모든 프로세스를 관리하는 것은 OS의 역할입니다. 프로세스 스케줄링 및 리소스 할당과 같은 작업을 수행하여 작업을 처리합니다.

방법 Archi강의

방법 archi강의 이미지
방법 archi강의 이미지

여기는 Archi프로세스 구조도

  • 스택 : 스택은 함수 매개변수, 반환 주소, 지역 변수와 같은 임시 데이터를 저장합니다.
  • 더미 런타임 동안 처리될 수 있는 메모리를 할당합니다.
  • 날짜 : 변수가 포함되어 있습니다.
  • 텍스트 :
    텍스트 섹션에는 프로그램 카운터 값으로 표시되는 현재 활동이 포함됩니다.

프로세스 제어 블록

PCB는 프로세스 제어 블록을 의미합니다. 모든 프로세스에 대해 운영 체제에서 유지 관리하는 데이터 구조입니다. PCB는 정수 프로세스 ID(PID)로 식별되어야 합니다. 실행 중인 모든 프로세스를 추적하는 데 필요한 모든 정보를 저장하는 데 도움이 됩니다.

또한 프로세서 레지스터의 내용을 저장하는 역할도 담당합니다. 이는 프로세스가 실행 상태에서 이동한 다음 다시 실행 상태로 돌아올 때 저장됩니다. 정보는 프로세스가 상태 전환을 수행하는 즉시 OS에 의해 PCB에서 빠르게 업데이트됩니다.

프로세스 상태

프로세스 상태

프로세스 상태 다이어그램

프로세스 상태는 특정 순간의 프로세스 조건입니다. 또한 프로세스의 현재 위치를 정의합니다.

프로세스에는 주로 다음과 같은 XNUMX단계가 있습니다.

  • 신규: 특정 프로그램이 보조 메모리/하드 디스크에서 주 메모리/RAM으로 호출할 때 새로운 프로세스가 생성됩니다.
  • 준비(Ready): 준비 상태에서 프로세스는 실행 준비가 된 기본 메모리에 로드되어야 합니다.
  • 대기(Waiting): 프로세스가 실행을 위해 CPU 시간 및 기타 리소스 할당을 기다리고 있습니다.
  • 실행 중: 프로세스가 실행 상태입니다.
  • 차단됨: 프로세스가 I/O 작업과 같은 이벤트가 완료되기를 기다리는 시간 간격입니다.
  • 일시 중단: 일시 중단 상태는 프로세스가 실행 준비가 되었지만 OS에 의해 준비 대기열에 배치되지 않은 시간을 정의합니다.
  • 종료됨: 종료됨 상태는 프로세스가 종료되는 시간을 지정합니다.

모든 단계를 완료하면 모든 리소스가 프로세스에서 사용되며 메모리는 무료가 됩니다.

공정 제어 블록(PCB)

모든 프로세스는 운영 체제에서 작업 제어 블록이라고도 하는 프로세스 제어 블록으로 표시됩니다.

여기에 PCB의 중요한 구성 요소가 있습니다.

공정 제어 블록

공정 제어 블록(PCB)
  • 프로세스 상태: 프로세스는 신규, 준비, 실행 중, 대기 중 등일 수 있습니다.
  • 프로그램 카운터: 프로그램 카운터는 해당 프로세스에 대해 실행되어야 하는 다음 명령어의 주소를 알려줍니다.
  • CPU 레지스터: 이 구성 요소에는 누산기, 인덱스 및 범용 레지스터, 조건 코드 정보가 포함됩니다.
  • CPU 스케줄링 정보: 이 구성요소에는 프로세스 우선순위, 대기열 예약을 위한 포인터 및 기타 다양한 예약 매개변수가 포함됩니다.
  • 회계 및 비즈니스 정보: 여기에는 CPU 양과 실시간 사용 시간, 작업 또는 프로세스 번호 등과 같은 시간 유틸리티가 포함됩니다.
  • 메모리 관리 정보: 이 정보에는 기본 및 제한 레지스터, 페이지 또는 세그먼트 테이블의 값이 포함됩니다. 이는 운영 체제에서 사용하는 메모리 시스템에 따라 다릅니다.
  • I/O 상태 정보: 이 블록에는 열린 파일 목록, 프로세스에 할당된 I/O 장치 목록 등이 포함됩니다.

요약

  • 프로세스는 해당 프로그램에 지정된 작업을 수행하는 프로그램의 실행으로 정의됩니다.
  • 프로세스 관리에는 프로세스 생성, 예약, 프로세스 종료, 교착 상태 등 다양한 작업이 포함됩니다.
  • 프로세스의 중요 요소 archi구조는 1)스택 2)힙 3)데이터 4)텍스트입니다.
  • PCB는 프로세스 제어 블록의 완전한 형태입니다. 모든 프로세스에 대해 운영 체제에서 유지 관리하는 데이터 구조입니다.
  • 프로세스 상태는 특정 순간의 프로세스 조건입니다.
  • 모든 프로세스는 운영 체제에서 작업 제어 블록이라고도 하는 프로세스 제어 블록으로 표시됩니다.