[운영체제] 1. 컴퓨터는 3층 집이다

최재원's avatar
Mar 12, 2025
[운영체제] 1. 컴퓨터는 3층 집이다

1. H/W, S/W, App

1. H/W

  • 물리적 영역

2. App

  • 프로세스 영역

3. S/W

  • 논리적 영역
  • 가상화 → 소프트웨어로 하드웨어를 만들면 그게 가상화
  • OS → platform
  • h/w 도 64bit app 도 64bit로 돌아가면 OS는 64bit 플렛폼이다.

OS

  • App영역에서 process를 지원한다.
  • H/W 영역에서는 H/W를 제어, 관리 한다.

Java에서 System.out.print(”hello”)를 하게 된다면…

  1. OS 단에 있는 print()라는 API를 call한 것이다.
  1. API내부에서 어떤 장치를 추상화한 File이라는 인터페이스 통해서 커널의 구성요소로 정보가 넘어간다.
  1. 커널 진입점에 있는 코드 System call. ~write()라는 함수가 커널 수준에서 작동함.
  1. 이 함수가 장치 드라이버를 제어함.
  1. 이때 장치 드라이버가 cpu에게 interrupt를 요청.
  1. 장치 드라이버와 cpu가 통신.
  1. 장치 드라이버가 장치에 hello라는 정보를 넘김.
  1. 장치가 모니터를 제어해서 hello를 출력함.
  1. 장치가 할일 다 끝났다고 커널 구성 요소에게 인터럽트를 함.
  1. 커널 구성 요소가 process에게 응답할게 있으면 리턴해줌

인터럽트가 발생하는 이유

  • cpu가 주변 기기랑 통신을 할 때 발생함

print() → API → 커널 영역에서 실질적으로 수행된다. → 이때 수행되는 함수를 System call 이라 한다.

notion image
 
 
Share article

jjack1