210129 개발일지(53일차) - 운영체제(OS) 프로젝트 #0-1 : OS 개요 overview

고재개발·2021년 1월 29일
0

OS Project

목록 보기
1/28

앞으로 6주간 운영체제(Operating system) 프로젝트가 진행된다. 먼저, 개요(overview)부터 훑어보자.
youtube에 있는 "[Course] Operating System (CPA310) - 운영체제 강의"를 토대로 정리했다. 사진 등의 출처도 모두 "Operating Systems(CPA31) / Instructor:Duksu Kim, HPC Lab., KOREATECH" 이다.

운영체제(OS)의 역할

운영체제는 하드웨어와 소프트웨어를 관리하는 소프트웨어다.
아래 그림처럼, 하드웨어 바로 위에서 하드웨어를 관리하면서 사용자들에게 서비스를 제공하는 역할을 한다.

컴퓨터 시스템의 구성

컴퓨터 시스템을 간략화 하면 아래 그림과 같다.
운영체제는 아래 그림에서 Utilities + System Call Interface + Kernel 이라고 할 수 있다.
위에서 설명했듯, 하드웨어를 제어하면서 Application을 실해시킬 수 있도록 한다.

  • System Call Interface : 아래 표기된 Application Process가 Kernel에 어떤 요청을 할 때, 연결해주는 통로라고 할 수 있다. 즉, 사용자가 사용할 수 있는 기능들을 모아둔 것들이라고 생각하면 된다.
  • Kernel : 운영체제의 핵심이라고 부를 수 있는 곳으로, 일단은 이렇게 까지만 하고 넘어가자.
  • Utilities : UI등 서비스 프로그램으로, 메모리에 항상 올려두지 않는 비상주 프로그램이라고 생각하면 된다.

운영체제의 기능

한 단어로 요약하면 "관리(Management)"다. 운영체제는 아래와 같이 하드웨어 및 소프트웨어를 관리한다.

  • 프로세스(Process) 관리
  • 프로세서(Processor) 관리
  • 메모리(Memory) 관리
  • 파일(File) 관리
  • 입출력(I/O) 관리
  • 그 외 디스크(Disk), 네트워크(Network), 보안시스템(Security system) 등 관리

즉, 컴퓨터로 치면 전체적인 관리자 역할을 해내는 것이 바로 OS라고 할 수 있다.

profile
고재개발

0개의 댓글