[DEBIAN] qemu를 이용한 arm elf 파일 실행

일반적으로 PC에서 arm으로 컴파일된 프로그램을 실행할 수 없습니다. 만약 실행한다면 아래와 같은 메시지가 발생하죠.

#> ./mzz_arm bash: ./mzz_arm: cannot execute binary file: Exec 형식 오류

그러나 디바이스에 직접 넣어 테스트하기 귀찮기도 하고, 번거로울 때 사용할 수 있는 좋은 패키지가 있습니다. 바로 qemu라는 패키지인데요. 이 패키지는 가상화 소프트웨어이며 arm 등 다른 디바이스를 위해 만들어진 소프트웨어 스택 전체를 가상머신 위에서 실행할 수 있는 장점이 있습니다.

하이퍼바이저라는 기술을 이용해서 여러개 가상머신을 한 플랫폼안에서 동작시킬 수 있고 가상머신으로 잘 알려진 VMware 나 Oracle VBOX 또한 유사한 프로그램입니다. 자세한 내용은 나무위키 보시면 좋을 것 같네요. https://namu.wiki/w/QEMU

일단 apt 를 이용해서 qemu를 설치합니다. #> apt-get install qemu

설치하게 되면 아래와 같이 arm 소프트웨어를 실행할 수 있습니다.

#> ./mzz_arm Memory size: 64 MiB

Reference

http://wiki.qemu.org/Main_Page https://namu.wiki/w/QEMU