10_STM32

포팅

Mi:sAng 2024. 10. 9. 14:49

1.정의

어느 한 운영체제에서 작동하는 프로그램을 다른 운영체제에서 작동하도록 프로그램을 변경하는 것

임베디드에서는 한 프로세서에서 작동하는 OS를 다른 종류의 프로세서에서 작동이 되도록 하는 것

 

2.임베디드의 OS

복잡한 장치라면 OS를 설치하여 메모리간의 효율과 제어, CPU 사용효율 등 장치의 효율적인 작동을 할 수 있다.

예시로 스마트폰을 들 수 있다.

 

3.포팅 과정 

  포팅을 하려면 "Target Board"와 "PC"가 있어야한다.

  PC의 운영체제 파일을 Target Board로 이식하기 위해 파일을 변경해야하는데 

 여기서 "부트로더"가 파일 변경을 해준다.

 (부트로더는 Target Board의 칩 제조사가 제공한다.)

 Target Board와 PC 는 JTAG으로 통신하고 TargetBoard에는 메모리가 저장된다.

이때, Target Board의 메모리 상태는 아래와 같다.

변경한 OS파일을 아래 영역에 맞추어서 나눠 저장한다.

(플레시 메모리 : 전원이 끊겨도 데이터를 보존하는 특성을 가진 반도체. EEPROM으로부터 발전하였다.)

 

 *Target Board 부팅 시

 부팅시 플레시 메모리에 있는 메모리를 RAM으로 불러오고 RAM에 저장된 파일들이 실행되어 OS가 동작한다.

 결과적으로 포팅과정에서 가장 중요한 것은 "부트로더"이다.

  

'10_STM32' 카테고리의 다른 글

stm32 Target is not responding Retrying  (0) 2024.02.19