ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 기술 면접 - 운영체제 (1)
    기술 면접 2021. 4. 19. 03:07

    운영체제 구조

    두 가지 모드

    • 사용자 모드 : 응용 프로그램이 사용
    • 커널 모드 : OS가 사용
    • 시스템 콜은 커널 모드로 실행
      • 커널 모드로 실행하려면, 반드시 시스템 콜을 거쳐야 함
      • 시스템 콜은 운영체제가 제공
    • 함부로 응용 프로그램이 전체 컴퓨터 시스템을 해치지 못함

    프로세스 스케쥴링

    배치 처리 시스템

    • 자동으로 다음 응용 프로그램이 이어서 실행될 수 있도록 하는 시스템
    • FIFO - Queue를 사용
    • 어떤 프로그램은 실행이 너무 오래 걸려서, 다른 프로그램이 실행하는데 시간을 많이 기다려야 한다
    • 나는 MP3 음악을 들으면서, 문서 작성을 하고 싶음!
      • 두 가지 프로그램을 동시에 실행할 수 없음

    시분할 시스템

    • 응용 프로그램이 CPU를 점유하는 시간을 잘게 쪼개어 실행될 수 있도록 하는 시스템
    • 컴퓨터 응답 시간을 최소화 하는 시스템

    멀티 태스킹

    • 단일 CPU에서, 여러 응용 프로그램이 동시에 실행되는 것처럼 보이도록 하는 시스템

    멀티 프로세싱

    • 여러 CPU에 하나의 프로그램을 병렬로 실행하여 실행속도를 극대화시키는 시스템

    멀티 프로그래밍

    • 최대한 CPU를 많이 활용하도록 하는 시스템

    스케쥴링 알고리즘

    프로세스

    • 실행중인 프로그램은 프로세스라고 함
      • 프로세스 : 메모리에 올려져서 실행중인 프로그램
      • 작업, task, job이라는 용어와 혼용

    FIFO 스케쥴러

    프로세스가 저장매체를 읽는다는지, 프린팅을 한다든지 하는 작업 없이, 쭉 CPU를 처음부터 끝까지 사용

    • 가장 간단한 스케쥴러(배치 처리 시스템)
    • FCFS(First Come First Served) 스케쥴러
    • Queue에 넣고 순서대로

    최단 작업 우선(SJF) 스케쥴러

    • 가장 프로세스 실행 시간이 짧은 프로세스부터 먼저 실행을 시키는 알고리즘
    • 실행 시간을 다 알아야 가능한 것

    여기서 잠깐!

    • RTOS(RealTime OS)
      • 응용 프로그램 실시간 성능 보장을 목표로 하는 OS
      • 정확하게 프로그램 시작, 완료 시간을 보장
    • GPOS(General Purpose OS)
      • 프로세스 실행시간에 민감하지 않고, 일반적인 목적으로 사용되는 OS(windows, linux .. )

    우선 순위 기반 스케쥴러

    • Priority-Based 스케쥴러
    • 정적 우선순위
      • 프로세스마다 우선순위를 미리 지정
    • 동적 우선순위
      • 스케쥴러가 상황에따라 우선순위를 동적으로 변경

    라운드- 로빈 스케쥴러

    • 프로세스가 끝나지 않아도 다른 프로세스로 넘겨준다
    • 시분할 시스템 기반
    • 큐를 사용해서 계속 돈다

    프로세스 상태

    image

    • ready : CPU에서 실행 가능 상태
    • blocked : 특정 이벤트 발생 대기 상태 (wait)

    Queue 사용

    1. Ready State Queue
    2. Running State Queue
    3. Block State Queue

    선점형과 비선점형 스케쥴러

    • 선정혐 스케쥴러
      • 하나의 프로세스가 다른 프로세스 대신에 프로세스를 차지할 수 있음
    • 비선점형 스케쥴러
      • 하나의 프로세스가 끝나지 않으면 다른 프로세스는 CPU를 사용할 수 없음

    '기술 면접' 카테고리의 다른 글

    기술 면접 - 데이터 베이스 (2)  (0) 2021.04.20
    기술 면접 - 데이터 베이스 (1)  (0) 2021.04.20
    기술 면접 - 운영체제 (4)  (0) 2021.04.19
    기술 면접 - 운영체제 (3)  (0) 2021.04.19
    기술 면접 - 운영체제 (2)  (0) 2021.04.19

    댓글

Designed by Tistory.