티스토리 뷰

게임, 엑셀 등을 응용 소프트웨어

CPU, 마우스 등의 컴퓨터 부품들을 하드웨어

OS, 컴파일러 등을 시스템 소프트웨어

 

라고 한다면 이들은 아래와 같은 계층적 구조를 갖게됩니다.

 

우리는 CPU가 어떻게 동작하는지, OS가 어떻게 동작하는지는 잘 몰라도 컴퓨터를 사용할 수 있습니다.

이처럼 하위 계층의 세부적인 것들이 상위 계층에 보이지 않게 하는 것이 추상화입니다.   

 

여기서 최하위 계층인 하드웨어는 0, 1 로만 이루어진 명령어만을 받아들일 수 있습니다.

반면에, 어플리케이션 소프트웨어는 고수준 언어로 쓰인 프로그램입니다.

이런 소프트웨어가 하드웨어에서 실행되기 위해서 고수준의 언어는 저수준 기계어로 번역이 될 필요가 있습니다.

 

여기서 번역을 비롯한 중간 단계 역할을 담당하는 소프트웨어들을 따로 시스템 소프트웨어라고 부릅니다.

주요 시스템 소프트웨어는 운영체제와 컴파일러, 어셈블러가 있습니다.

 

운영체제는 어플리케이션 소프트웨어를 통해 요청을 하는 사용자와 실행을 위한 하드웨어 사이의 중재 역할을 합니다.

컴파일러는 고수준 언어로 작성된 프로그램을 어셈블리어로 바꾸는 일을 담당합니다.

어셈블러는 하드웨어가 알아들을 수 있도록 어셈블리어를 기계어로 바꾸는 역할을 합니다.

 

이제 기계어 수준으로 번역된 명령들이 하드웨어 상에서 어떻게 처리가 되는지 알아볼 필요가 있습니다.

 

2020/09/15 - [컴퓨터구조] - [컴퓨터구조] 하드웨어의 명령어 처리과정


컴퓨터 추상화에 대한 포스팅이었습니다.

오타 지적과 조언은 언제나 환영입니다.

댓글