반응형 운체36 Ch04. CPU 스케줄링 _04) 스케줄링 알고리즘 교재를 참고하였습니다. 스케줄링 알고리즘의 선택 기준 비선점형 알고리즘은 작업을 종료할 때가지 CPU를 놓지 않기 때문에 효율 저하로 현재는 거의 사용하지 않음 선점형 알고리즘은 시분할 시스템을 고려해서 개발된 기술로, 어떤 프로세스가 CPU를 할당 받아 실행 중이라도 OS가 CPU를 강제로 빼앗을 수 있음 스케줄링 알고리즘의 평가 기준 CPU 사용률 전체 시스템의 동작 시간 중 CPU가 사용된 시간을 측정하는 방법 가장 이상적인 수치는 100%이지만 실제로는 여러 가지 이유로 90%에도 못 미침 처리량 단위 시간당 작업을 마친 프로세스의 수 이 수치가 클 수록 좋은 알고리즘임 대기 시간 : 프로세스가 생성된 후 실행되기 전까지 대기하는 시간. 응답 시간 : 첫 작업을 시작한 후 첫 번째 출력(반응)이 .. 2023. 4. 4. Ch04. CPU 스케줄링 _03) 다중 큐 교재를 참고하였습니다. 준비 상태의 다중 큐 준비 상태의 다중 큐 프로세스는 준비 상태에 들어올 때마다 자신의 우선순위에 해당하는 큐의 마지막에 삽입 CPU 스케줄러는 우선순위가 가장 높은 큐(0번 큐)의 맨 앞에 있는 프로세스 6에 CPU 할당 준비 큐를 몇 개로 나눌지, 여러 개의 준비 큐에 있는 프로세스 중 어떤 프로세스에 CPU를 할당할지 결정하는 일은 스케줄링 알고리즘에 따라 달라짐 프로세스는 중요도가 각각 다르며 프로세스 중요도는 PCB에 표시됨 CPU 스케줄러는 모든 프로세스 제어블록을 검색해 가장 높은 우선순위의 프로세스에 CPU를 할당 그러나 매번 모든 PCB를 검색하는 것은 번거로운 일임 그림[4-9]의 오른쪽의 준비 상태의 다중 큐를 나타낸 것임 왼쪽그림은 정리되어 있지 않아 매번 우.. 2023. 4. 2. Ch04. CPU 스케줄링 _02) 스케줄링 시 고려 사항 교재를 참고하였습니다. 선점형 스케줄링과 비선점형 스케줄링 스케줄링 고려사항 선점형 스케줄링 : "선점" = 빼앗을 수 있음 어떤 프로세스가 CPU 를 할당 받아 실행 중이더라도 OS 가 CPU 를 강제 종료로 빼앗을 수 있음 운영체제가 필요하다고 판단하면 실행 상태에 있는 프로세스의 작업을 중단시키고 새로운 작업을 시작할 수 있는 방식 하나의 프로세스가 CPU를 독점할 수 없기 때문에 빠른 응답 시간을 요구하는 대화형 시스템이나 시분할 시스템에 적합 대부분의 저수준 스케줄러는 선점형 스케줄링 방식을 사용 대표적인 예) 인터럽트 → CPU 가 인터럽트를 받으면 현재 실행 중인 작업을 중단하고 커널에게 인터럽트를 처리요청, 인터럽트 처리완료시 원래 작업으로 복귀 비선점형 스케줄링 : "비선점" = 빼앗을 .. 2023. 3. 29. Ch04. CPU 스케줄링 _01) 스케줄링의 개요 교재를 참고하였습니다. 식당 관리자의 스케줄링 식당 관리자의 역할 CPU 스케줄러 운영체제에서 식당 관리자의 역할을 담당 여러 프로세스의 상황을 고려하여 CPU와 시스템 자원의 배정을 결정 CPU 스케줄링 CPU 스케쥴링은 어떤 작업을 CPU에 할당할지 결정하는 것을 말함 시스템의 효율성은 어떤 프로세스에 CPU를 먼저 할당하느냐에 따라 달라지므로 CPU 스케쥴링은 작업의 형평성과 효율성을 결정하는 중요한일 CPU 스케줄러는 프로세스가 생성된 후 종료될 때까지 모든 상태 변화를 조정함 CPU 스케쥴러도 관리의 범주를 구분해 스케줄링함 규모에 따라 고수준 스케줄링, 중간수준 스케줄링, 저수준 스케줄링으로 구분 스케줄링 방법에 따라 프로세서를 할당받을 프로세스 결정하므로 스케줄링이 시스템의 성능에 영향 미침.. 2023. 3. 29. [심화]Ch03. 프로세스와 스레드 _05) 동적 할당 영역과 시스템 호출 교재를 참고하였습니다. 프로세스의 동적 할당 영역 프로세스의 구조 코드 영역 : 프로그램의 본체가 있는 곳 데이터 영역 : 프로그램이 사용하려고 정의한 변수와 데이터가 있는 곳 스택 영역과 힙 영역 : 프로세스가 실행되는 동안 만들어지는 영역으로, 그 크기가 늘어났다 줄어들기도 하는 동적 할당 영역 스택 영역 스레드가 작동하는 동안 추가되거나 삭제되는 동적 할당 영역 스레드가 진행됨에 따라 커지기도 하고 작아지기도 함 힙 영역 프로그램이 실행되는 동안 할당되는 변수 영역 포인터, malloc( ) 함수 등은 메모리를 효율적으로 사용하기 위해 만들어진 것으로 어쩌다 한 번 쓰는 큰 배열을 처음부터 선언하고 끝까지 놔두는 일이 없어야 함 2023. 3. 26. Ch03. 프로세스와 스레드 _04) 스레드 교재를 참고하였습니다. 스레드의 개념 스레드의 정의 CPU 스케줄러가 CPU에 전달하는 일 하나 CPU가 처리하는 작업의 단위는 프로세스로부터 전달받은 스레드 운영체제 입장에서의 작업 단위는 프로세스 CPU 입장에서의 작업 단위는 스레드 프로세스와 스레드의 차이 프로세스끼리는 약하게 연결되어 있는 반면 스레드끼리는 강하게 연결되어 있음 멀티태스크와 멀티스레드의 차이 멀티태스크 : 여러 개의 프로세스로 구성된 것 멀티스레드 : 하나의 프로세스에 여러 개의 스레드로 구성된 것 멀티스레드 프로세스 내 작업을 여러 개의 스레드로 분할함으로써 작업의 부담을 줄이는 프로세스 운영 기법 멀티태스킹 운영체제가 CPU에 작업을 줄 때 시간을 잘게 나누어 배분하는 기법 멀티프로세싱 CPU를 여러 개 사용하여 여러 개의 스.. 2023. 3. 26. 이전 1 2 3 4 5 6 다음 반응형