CS/OperatingSystem9 스케줄러 알고리즘 ※ 스케줄링 대상은 Ready Queue에 있는 프로세스 들이다. FCFS ( First Come First Served ) 먼저 온 순서대로 처리. 비선점형 스케줄링 (Non Preemptive) 일단 CPU를 잡으면 CPU Burst 가 완료 될 때까지 CPU를 반환하지 않는다. CPU를 모두 사용한 후 반환되면 스케줄링이 이루어진다 문제점 Convoy Effect Burst Time 이 긴 프로세스가 들어와 실행시간이 전부 늦쳐지는 현상. SJF 프로세스 처리시간이 짧은 것을 먼저 처리하는 방식.( 다른 프로세스가 먼저 도착해도 처리시간이 짧은 것 먼저) 비선점형 스케줄링 일단 CPU를 잡으면 CPU Burst가 완료될 때까지 CPU를 반환하지 않는다. CPU를 반환될 때만 스케줄링이 이루어진다. .. CS/OperatingSystem 2021. 4. 19. 스케줄러 스케줄러 한정적인 메모리를 여러 프로세스가 효율적으로 사용할 수 있도록 프로세스 중에 하나를 선택하는 역할. 스케줄러 작업 상태 Jop Queue 현재 시스템 내에 있는 모든 프로세스의 집합. Ready Queue 현재 메모리 내에 있으면서 CPU를 할당받기 위해 기다리는 프로세스의 집합. Device Queue I/O 작업을 대기하고 있는 프로세스의 집합. 스케줄러 종류 장기 스케줄러 (JobScheduler) 디스크와 메모리 사이의 스케줄링 담당. 메모리는 제한적인데 많은 프로세스들이 한꺼번에 메모리에 올라올 경우, 대용량 메모리(디스크)에 임시로 저장된다. 이 Pool에 저장되어 있는 프로세스 중 어떤 프로세스에 메모리를 할당하여 Ready Queue로 보낼지 결정하는 역할. 프로세스에 memory.. CS/OperatingSystem 2021. 4. 17. 멀티 스레드, 멀티 프로세스 멀티 프로세스 하나의 응용 프로그램을 여러 개의 프로세스로 구성하여 각 프로세스가 하나의 작업(테스크)을 처리하도록 하는 것. 장점 여러 개의 자식 프로세스 중 하나에 문제가 발생해도 영향이 확산되지 않는다. 단점 Context Swithching Overhead 문맥 교환 과정에서 캐시 메모리 초기화 등 무거운 작업이 진행되고 많은 시간이 소모되는 등의 큰 오버헤드가 발생. 프로세스는 각각의 독립된 메모리 영역을 갖기 때문에 프로세스 사이에서 공유하는 메모리가 없다. 그리하여 문맥 교환이 발생하면 캐시에 있는 모든 데이터를 모두 리셋하고 다시 캐시 정보를 불러와야 한다. ※ Context Swithcing CPU에서 여러 프로세스를 돌아가면서 작업을 처리하는 과정 동작 중인 프로세스가 대기 하면서 해당.. CS/OperatingSystem 2021. 4. 17. 프로세스와 스레드 프로세스 프로그램이란? 어떤 작업을 위해 실행할 수 있는 파일 프로세스란 컴퓨터에서 연속적으로 실행되고 있는 프로그램 또는 활성화 된 프로그램. 메모리에 올라와 실행되고 있는 프로그램의 인스턴스(독립적인 객체) 운영체제로부터 시스템 자원을 할당받는 작업의 단위. 동적인 개념으로 실행된 프로그램을 의미. ※ 할당받은 시스템 자원이란? CPU 점유시간 메모리에 실제적으로 적재된 주소 공간 메모리영역들(Data,Code,Heap,Stack). PCB(process Control Bolck) 프로세스에 대한 중요한 정보들을 저장하고 운영체제의 자료구조이다. 운영체제들 프로세스들을 관리하기위해 고유한 PCB를 할당한다. PCB를 쓰는 이유는 CPU를 할당받아 작업을 하고 중간에 프로세스 전환이 발생하면 진행하던 .. CS/OperatingSystem 2021. 4. 16. 이전 1 2 다음