본문 바로가기
Computer Science/컴퓨터 구조

[컴퓨터 구조] 추가지식1) ROM, 바이오스, 펌웨어, QPI, SPEC, 임베디드

by 클레어몬트 2024. 3. 2.

ROM에 대해 더 자세히 알아보자

ROM → PROM → EPROM → EEPROM

ROM(Read Only Memory): 변경할 수 없는 데이터를 저장하는 데 사용 e.g. 바이오스

PROM(Programmable ROM): 쓰기 기능 제공 ROM (한 번만 쓸 수 있다)

EPROM(Erasable PROM): 삭제 가능한 PROM

EEPROM(Electrically EPROM): 전기적으로 삭제 가능한 EPROM (더 매력적이다)

 

 

보통 ROM에는 바이오스(BIOS)가 있다

ㅇ바이오스(Basic Input/Output System): 소프트웨어와 하드웨어 간의 정보 전달의 매개체 역할을 하는 펌웨어

바이오스(BIOS) 회면

 

메모리, 디스크, 모니터와 같은 주변기기 사이의 정보 전송을 관장하는 일종의 프로그램이다 컴퓨터의 가장 low level에 존재하며 소프트웨어가 하드웨어를 제어하고, 하드웨어가 소프트웨어에 변경된 정보를 전달하는 등 소프트웨어와 하드웨어 간의 정보 전달의 매개체 역할을 하는 펌웨어이다 즉, 컴퓨터의 하드웨어 접근하기 쉬운 함수들의 집합이라고 볼 수 있다. 바이오스는 ROM에 들어 있기 때문에 흔히 ROM BIOS라고 부른다

(바이오스가 지워지거나 파괴되면 컴퓨터가 동작하지 않는다 이런 경우를 컴퓨터 애호가들은 ‘벽돌’이라고 부른다)

 

 

 

ㅇ펌웨어(firmware): 소프트웨어와 하드웨어의 중간 (소프트웨어를 하드웨어화한 것)

고정도가 높고, 시스템의 효율을 높이기 위해 ROM에 넣은 기본적인 프로그램이나 데이터

장치의 기본적인 동작(초기화, 부팅, 하드웨어 인식, 설정/보안 관리 등)을 제어하고 관리하는 저수준 소프트웨어이다

 

펌웨어는 제조사가 미리 결정하고 배포하는 것이 일반적이다 왜냐하면 ROM에 저장된 데이터는 수정이 불가능하기에 예전에 출시된 기기들의 경우 펌웨어가 한 번 탑재되면 수정이나 업데이트가 힘들었다 하지만 비휘발성 메모리임에도 불구하고, 저장된 데이터의 수정이 가능한 플래시 메모리, EPROM 등이 개발되면서 정기적으로 펌웨어 업데이트가 가능해졌다

 

 

[운영체제와의 비교]

하드웨어와 소프트웨어의 중간 형태, 하드웨어의 동작을 제어/관리한다는 점에서 운영체제와 헷갈릴 수 있지만 펌웨어와 운영체제는 다르다

운영체제: 컴퓨터 시스템의 전체 관리자 역할(응용 프로그램 실행, 다중 작업, 파일 관리, 네트워킹 및 보안, 자원 할당)을 하는 고수준 소프트웨어

 

 

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

+ QPI(Quick-Path Interconnect): intel의 자체개발 BUS 프로토콜

고속, 고효율적인 패킷 기반의 점대점(point-to-point) 상호 연결 버스

 

 

+ SPEC 벤치마크

SPEC(Standard Performance Evaluation Corporation): 미국의 비영리 단체

멤버: intel, AMD, NVIDIA, ARM, 아마존닷컴, apple, 오라클, 퀄컴 등 수백개의 기업과 대학 및 연구센터

 

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

 

ㅇ임베디드(Embedded)

임베디드 운영체제의 특성: simple, real-time(실시간)

임베디드 운영체제를 개발하는 방식은 2가지가 있다

  1. 현존하는 OS를 선택해서 임베디드 응용에 맞추어 수정
  2. 임베디드 용도만을 위한 OS를 설계하고 구현

 

ep4)

+ intel과 ARM 추가지식)

응용 프로세서: 우리가 지금까지 배운 일반적인 프로세서 e.g. intel processor

전용 프로세서: 임베디드 시스템 전용으로 크기와 가격을 줄이도록 설계 e.g. ARM

ARM제품들은 보통 임베디드에서 많이 쓰인다

임베디드 시스템은 그 목적으로만 만들어 자체제작을 값싸게 한다(저전력/저가) e.g. 가전, 자동차, 비행기

<대표적인 ARM 제품들 리스트>

CORTEX-A / CORTEX-A50: 전자장치 프로세서 e.g. 세탁기, 휴대폰

CORTEX-R: 실시간 처리 프로세서 e.g. 센서 (R이 real-time의 r이다 - 믹싱에서 waves사의 real-time 오토튠 플러그인을 생각하자)

CORTEX-M: 제어전용 및 저전력 프로세서

 

 

 

 

 

 

 

 

 

 

참고 및 출처: 컴퓨터시스템구조론(William Stallings)