" 시작하기에 앞서, 소프트웨어와 하드웨어를 알아보자 "
하드웨어
컴퓨터 등의 시스템을 구성하는 요소.
특정 목적을 위한 물리적 구성품, 장비들을 통칭.
즉, 물리적 구성 요소를 뜻한다.
소프트웨어
컴퓨터나 다른 디지털 장치가 특정 작업을 수행하도록 지시하는 명령어의 집합(프로그램).
컴퓨터 시스템, 프로그램, 데이터에 의해 처리되는 모든 정보.
하드웨어 상에서 구동되는 비가시적인 요소를 모두 일컫으며, 무형적인 개념이다.
크게 두 종류로 구분된다.
- 시스템 SW : 하드웨어를 제어하고 관리, 응용 SW 실행 환경을 제공. (ex. OS)
- 응용 SW : 사용자가 직접 사용하는 SW (우리가 흔히 사용하는 일반적인 프로그램)
" 펌웨어와 임베디드 SW, 두 용어를 기술하기 전에... 임베디드란 무엇인가? "
임베디드
Embedded : 내장된
특정 목적을 수행하기 위하여, 특정 시스템 내에 '내장되어' 동작하는 소프트웨어나 시스템을 의미한다.
과거에는 임베디드라고 하면, 한 가지 기능을 수행하는 개념이 컸지만, 근래에는 여러 기능을 수행한다.
" 그렇다면, 임베디드 SW는? "
임베디드 SW
임베디드 시스템에 내장된 소프트웨어를 의미한다.
특정 목적을 수행하고, 특정 하드웨어 기반이다.
상당히 포괄적인 개념으로, 종류가 상당히 다양하다.
'임베디드 시스템' 에 탑재되는 소프트웨어(시스템 SW, 미들웨어, 응용 SW)를 칭한다.
다만, OS는 임베디드 SW라고 보기 어렵다.
'임베디드' 라는 것은 특정 목적 이라는 강한 특징이자 정체성을 지니고 있다.
반면, OS는 특정 목적에 국한되지 않고 임베디드와는 반대로, 범용성을 띠기 때문이다.
펌웨어
하드웨어의 기본적인 구동 및 제어를 담당하는 특수 용도의 소프트웨어.
특정 목적을 수행하기 위한 전용 하드웨어를 제어하는 소프트웨어.
임베디드를 구성하는 SW 부분을 통째로 묶은 부분이다.
임베디드 SW를 구성하는 요소 중 하나이다.
SW와 HW 특징을 모두 지녔다.
즉, HW 특징(변경이 어렵다)을 가진 SW 이다.
<특징>
- ROM에 기록되는 프로그램이다.
- 제조될 때 기록되므로, 변경이 어렵다.
- 일반적인 SW와 달리, 사용자가 변경/삭제할 수 없다
- 다만, ROM 중 Flash 메모리 부분을 수정하여 업데이트를 하기도 한다.
- 별도의 동작을 한다
- 제조될 때 기록되므로, 같은 동작을 반복한다.
- RAM에서 실행되는 일반적인 프로그램과 달리, 해당 장치에 같은 형태로 남아있다.
Boot Loader가 이에 해당한다.
Boot Loader는 컴퓨터를 처음 실행할 때, OS를 불러오는(Load) 역할을 한다. 즉, OS 없이도 동작한다(펌웨어 특성).
정리
H/W : 시스템을 구성하는 물리적 요소
S/W: 하드웨어 내에서 처리되는 비가시적인 요소. 특정 작업을 수행하도록 지시하는 명령어의 집합
임베디드 : 특정 목적을 수행하기 위해, 특정 시스템 내에 내장되어 동작하는 시스템
임베디드 S/W : 임베디드 시스템에 탑재되는 SW
펌웨어 : 임베디드 SW로서, 특정 목적을 수행하기 위해 전용 H/W를 제어하는 S/W. H/W의 특성을 지닌 S/W
참고
'개념 공부 > 임베디드 SW' 카테고리의 다른 글
| CPU vs. MPU vs. MCU (0) | 2025.04.22 |
|---|