본문 바로가기

OS

운영체제란 무엇인가?

728x90

운영체제

컴퓨터 하드웨어 바로 위에 설치 되어 사용자/다른 소프트웨어, 하드웨어를 연결하는 소프트웨어 계층

 

- 사용자 및 소프트웨어와 어떻게 인터랙션 하는가?

- 하드웨어와 어떻게 인터랙션 하는가?

 

운영체제의 목표

운영체제 위치 관점에 따라서 크게 두 가지의 목표가 있다.

 

컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 

(-> 사용자 및 소프트웨어와 어떻게 인터랙션 하는가?)

- 운영체제는 동시 사용자 및 프로그램들이 각각 독자적인 컴퓨터에서 수행되고 있는 것과 같은 환상을 제공

- 하드웨어를 직접 다루는 복잡한 부분을 운영체제가 대행

 

컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공

(-> 하드웨어와 어떻게 인터랙션 하는가?)

- 프로세서, 기억장치, 입출력 장치 등의 효율적 관리 (메모리 공간을 적절히 분배)

- 사용자 및 운영체제 보호

- 프로세스, 소프트웨어 자원 등을 관리 

 

운영체제의 구조

운영체제 = 커널 + 인터페이스 

 

커널

프로세스 관리, 메모리 관리, 저장장치 관리와 같은 운영체제의 핵심적인 기능을 모아 놓은 것으로 운영체제의 성능을 좌우

 

인터페이스

사용자의 명령을 전달, 실행 결과를 사용자에게 알려주는 역할 

 

시스템 호출 및 디바이스 드라이버

커널 내부에 있는 것들 ..

 

시스템 호출

커널이 자신을 보호하기 위해서 만든 인터페이스

사용자 및 프로그램이 직접 컴퓨터 자원에 접근하는 것을 제어 

> 그러므로 사용자 또는 응용 프로그램이 컴퓨터 자원을 사용하기 위해서는 시스템 호출을 해야 한다.

(보통 printf(). write()와 같은 함수의 형태로 제공)

 

드라이버 

커널과 하드웨어의 인터페이스를 담당 

컴퓨터 하드웨어 종류는 다양하므로 각 하드웨어에 맞는 인터페이스를 개발하는 것은 불가능, 하드웨어 제작자가 만든 소프트웨어를 받아서 설치하여 하드웨어를 사용할 수 있도록 해주는, 이 때의 소프트웨어를 디바이스 드라이버라고 한다.

 

 

'OS' 카테고리의 다른 글

[질문] 프로세스, 쓰레드  (0) 2022.08.29
시스템 콜과 인터럽트  (0) 2022.08.29
프로세스 - 상태  (0) 2022.08.29
쓰레드  (0) 2022.08.29
프로세스 - 개념, 메모리 구조, 상태변화  (0) 2022.08.29