728x90

 

일반 OS와 Real Time OS의 차이점

- 일반 OS와 리얼타임 OS를 결정짓는 요소는 스케줄러

    -> 스케줄러가 어떻게 스케줄링을 하느냐에 따라서 결정됨

    -> Real Time OS는 실시간적으로 프로그램이 실행이 됨(응답성이 빠름)

    -> 응답성이 빠르다고 해서 무조건적으로 처리 속도가 빠르다고 할 수는 없음

- 선점형 OS와 비선점형 OS

    -> 선점형 OS는 동일한 우선순위의 프로세스를 타임슬라이스로 설정된 시간(클럭)마다 바꿔가며 실행

    -> 우선순위가 높은 프로세스가 생성되면 스케줄러는 기존 실행중이던 프로세스가 타임슬라이스의 시간(클럭)이 끝났을 때 밀어내고 높은 프로세스를 실행함

    -> 비선점형 OS는 우선순위가 높은 프로세스가 생성되도 기존 실행중이던 프로세스를 밀어낼 수 없고 프로세스가 Ready 상태로 가야 실행

    -> 스케줄러가 더욱 프로세스의 실행에 직접적으로 관여하면 선점형 OS

    -> 일반 OS는 타임슬라이스가 길어 다른 프로세스가 실행되는데 응답 속도가 느림

    -> Real Time OS는 타임슬라이스가 짧아 다른 프로세스가 실행되는데 응답 속도가 빠름

 

스케줄링 알고리즘

- 프로세스에 우선순위를 부여해서 우선순위가 높은 프로세스를 먼저 실행시킴

- 우선순위가 동일한 프로세스 간에는 동일한 타임슬라이스만큼 실행 (Round-Robin)

- 우선순위가 높은 프로세스가 종료가 되야 낮은 프로세스를 실행할 수 있음

    -> I/O 작업 시엔 낮은 프로세스가 실행될 수 있음

728x90

+ Recent posts