프로세스

      • Process
  • 정의
    • CPU에 의해 처리되어 실행 중인 프로그램 의미, 작업 , 테스크라고도 함
  • 상태
    • 생성(Create): 프로세스 생성
    • 준비(Ready): CPU할당 준비
    • 실행(Running): 프로세스가 CPU 할당 → 동작
    • 대기(Waiting)
    • 완료(Complete)
    • 디스패치
    • 입출력발생
    • 깨움
    • Timeout
  • 구성
    • 사용자 작성 코드
    • 사용자 데이터
    • 스택
    • [프로세스 제어 블록](프로세스 제어 블록.md)
  • 프로세스 스케줄링 주요용어
    • 서비스 시간
      • 프로세스가 결과를 산출하기 까지 소요되는 시간
    • 응답 시간

        - Response Time
        - Turnaround Time
      
      • 프로세스들이 입력되어 수행하고 결과를 산출하기까지 소요되는 시간
      • 응답시간 = 대기시간 + 수행시
    • 평균 응답 시간
      • 대기큐의 프로세스가 결과를 산출하기까지 소요되는 평균시간
    • 대기 시간
      • 프로세스가 프로세서에 할당되기까지 큐에 대기하는 시간
      • 프로세스가 도착 즉시 프로세서에 할당되면 대기시간은 0이 됨
    • 평균 대기 시간
      • 프로세스가 대기큐에서 대기하는 평균 시간
      • 대기 시간이 0인 프로세스도 평균대기시간에 합산하여 결과 도출
    • 종료 시간
      • 요구되는 Processing Time을 모두 수행하고 종료된 시간
    • 시간할당량
      • 한 프로세스가 프로세서를 독점하는 것을 방지하기 위해 서비스되는 시간 할당량
    • 응답률
      • (대기시간 + 서비스시간)/서비스시간
      • HRN 스케줄링에서 사용
      • HRN 스케줄에서 응답률이 높으면 우선순위가 높다고 판단 --------------------- Portal ---------------------
    • 도서
      • 정보처리기사 book 자격증 IT 개발
        • 필기
          • 4. 프로그래밍 언어 활용
            • 운영체제
              • 프로세스 스케줄링 운영체제
                • 스케줄링 알고리즘
                  • 선점형 스케줄링 알고리즘

                      - Preemitive Scheduling
                    
                    • 라운드 로빈

                        - Round Robin
                      
                      • 같은 크기의 CPU 시간, 할당 시간 초과 시 큐 리스트 뒤로 보내짐, 균등 CPU 점유
                      • 시분할 시스템
                      • 균등한 CPU 점유 시간
                      • 시분할 시스템
                    • SRT

                        - Shortest Remaining Time First
                      
                      • 짧은 시간 프로세스 먼저 수행
                    • 다단계 큐

                        - Multi Level Queue
                      
                      • 독립된 스케줄링 큐
                      • 작업들을 여러 종류 그룹으로 분할, 여러 개의 큐를 이용하여 상위 단계 작업에 의한 하위 단계 작업이 선점당함
                      • 각 큐는 자신만의 독자적인 스케쥴링을 가짐
                    • 다단계 피드백 큐

                        - Multi Level Feedback Queue
                      
                      • 큐마다 다른 시간 할당
                      • 마지막 단계 라운드 로빈
                      • 입출력 위주와 CPU 위주인 프로세스의 특성에 따라 큐마다 서로 다른 CPU 시간 할당량 부여
                      • FCFS와 라운드 로빈 스케줄링 혼
                  • 비선점 스케줄링
                    • 우선순위

                        - Priority
                      
                      • 주요/긴급 프로세스 우선처리, 설정, 지원 상황 등에 따른 우선순위 선정
                      • 각 프로세스 별로 우선순위가 주어지고, 우선순위에 따라 CPU를 할당함
                      • 동일 순위는 FCFS
                    • 기한부

                        - Dead Line
                      
                      • 요청에 명시된 시간 내 처리보장
                      • 작업들이 명시된 시간이나 기한 내에 오나료되도록 계획
                      • 요청에 명시된 시간 내 처리를 보장
                    • FCFS

                        - First Come First Service
                      
                      • 프로세스가 대기큐에 도착한 순서에 따라 CPU를 할당함
                      • 요청에 명시된 시간 내 처리를 보장
                      • 도착한 순서대로 처리
                    • SJF

                        - Shortest Job First
                      
                      • 기아현상 발생가능성
                      • 가장 작은 서비스 시간
                      • 비선점
                      • 긴 작업, 짧은 작업간의 불평등 기아
                    • HRN

                        - Highest Response Ratio Next
                      
                      • 기아현상 최소화 기법
                      • (대기시간+서비스시간)/서비스시간
                      • 대기시간에 우선순위 부여
                      • 가변적 우선 순위 결정
                  • 응답 시간
                  • 대기 시간
                  • 교착상태 --------------------- Portal --------------------- — Avoided infinite recursion — -