본문 바로가기
CS/OS

운영체제의 역할과 구조

by KDGdev 2023. 1. 26.

운영체제


CPU, RAM, 하드디스크 등 컴퓨터의 물리적 리소스와 파일, 메모리 등 가상 리소스를 효율적으로 관리해 주고 사용자가 컴퓨터를 쉽게 다루게 해주는 소프트웨어

 

우리가 잘 알고 있는 Window와 macOS, 모바일에선 Android, iOS 대표적인 운영체제입니다.

 

 

운영체제의 역할과 구조


운영체제의 역할

  • CPU 스케줄링 
    • CPU는 싱글코어 기준으로 한 번에 하나의 프로세스만 실행할 수 있습니다. 여러 개의 프로세스를 실행하는 것은 매우 빠른 속도로 여러 개의 프로세스를 번갈아가면서 실행시키는 것인데 운영체제는 언제 어떤 프로세스를 CPU에 할당할지 결정해 줍니다.
  • 메모리 관리
    • 한정된 메모리에 어떤 프로세스에 언제, 얼마만큼 할당할지 결정해 줍니다.
  • 편리한 인터페이스를 제공
    • 사용자가 가장 쉽게 인식할 수 있는 운영체제가 주는 장점입니다. Window의 작업표시줄, macOS의 Dock이 그 예입니다.

그 밖에도 각종 하드웨어 관리, 네트워크 관리, 파일 관리  여러 가지 일들을 수행해 줍니다.

 

 

운영체제의 구조

운영체제는 커널과 인터페이스로 이루어져 있습니다.

 

인터페이스는 앞서 말했듯이 사용자에게 보이는 부분으로, 사용자가 클릭 같은 이벤트를 시스템에 전달하고 실행 결과를 사용자에게 알려줍니다.

 

커널은 운영체제가 해야 할 일들을 실행하는 프로그램입니다. CPU 스케줄링, 메모리 관리 등이 커널에서 실행됩니다.

즉, 커널은 운영체제가 사용자에게 제공하는 서비스라고 생각할 수 있습니다.

 

사용자가 프로그램을 실행할 때 운영체제의 서비스가 필요할 경우 일반적인 사용자 모드에서는 불가능하기 때문에

'시스템 콜'이라는 명령을 통해 커널 모드에 들어가 커널의 도움을 받을 수 있습니다.

 

※ 잘못된 정보, 혹은 다른 의견이 있다면 댓글로 말해주세요. 감사합니다.

 

 

'CS > OS' 카테고리의 다른 글

메모리 할당  (0) 2023.02.13
가상 메모리 - 페이지 교체 알고리즘  (0) 2023.02.12
가상 메모리  (0) 2023.02.11
컴퓨터의 요소 - 메모리  (0) 2023.02.06
컴퓨터의 요소 - CPU  (0) 2023.01.26