https://github.com/antmicro/kvm-aosp-jetson-nano
위의 예제 파일로 일을 진행했다.
내가 사용한 보드는 B01 보드이며, 결과를 먼저 말하자면 실패했다. 그래서 그 일련의 과정들을 여기에 남기기로 했다..
1. https://github.com/antmicro/kvm-aosp-jetson-nano 의 홈페이지를 보며, AOSP 이미지를 먼저 생성
1.1 이미지 파일을 생성하는 도중 Ninja Build가 죽어버려 Build Success 실패 원인은 Out of memory ( Linux Swap Disk를 만들고 용량을 크게 늘려 원인 해결)
1.2 AOSP Kernel Build 완료,
2. https://github.com/antmicro/kvm-aosp-jetson-nano/blob/master/README_Jetson_Nano_BSP.md 보며, BSP, Kernel Build 및 target device에 flash
2.1 Flash 하는 중, 동작이 멈춤
2.1.1 예제에는 emmc를 flash 하지만, 현재 board는 emmc가 존재하지 않음, 그래서 sd.conf를 flash해서 문 제 해결
2.2 qemu-kvm 실행 실패
처음과 같이 KVM의 디렉토리를 찾을 수 없는 오류는 찾지 못했다 하지만 새로운 오류가 나타났으며, device arm_gic 초기화가 실패했다고 나왔다.
KVM_CAP_IRQCHIP은 aarch64에서 VM을 시작하기 전에 호스트에 GIC 장치의 존재를 보고한다.
오류가 난 이유는 호스트에서 GIC를 사용할 수 없기 때문이다. (Generic Interrupt Controller)
3. Jetson Nano – qemu과 kvm을 통해 가상 환경에서 안드로이드를 성공한 케이스 발견
3.1 https://www.youtube.com/watch?v=42TRVCIR0nU 의 영상을 올린 사람을 Nvidia Developer 커뮤니티에서 보고 자료 수집. KVM 가상화가 Jetson nano에서 작동을 한다고 말했다.
3.2 먼저 기존의 이미지로는 할 수 없으며, Custom을 해야 한다고 말하며, 그가 만든 Xubuntu를 다운로드해서, 이미 지를 flash
3.2.1 설치 완료 후, 부팅이 되지 않음 -> 몇번의 반복 후 동작 -> Jetson Nano B01 (현재 사용하고 있는 Board)를 지원하는지 질문 -> 이 이미지는 A02 기준으로 만들어진 이미지, 수정할 필요가 있다고 한다. 그리고 qeum-kvm을 설치해서 가상화를 띄우려 했으며 오류 출력 결과는 위의 예제 1,2번과 동일했다.
3.3 테스트 결과
위의 사진에는 a02-kvm.dtb가 존재한다. 이것이 위에서 의문을 품었던 kvm의 기능을 y로 해준 것이다.
하지만 이 글을 올린 개발자의 방법으로 했을 때, 부팅이 안된다. 그 이유는 현재 우리가 쓰고 있는 보드는 b00이며, b00-kvm.dtb는 존재하지 않기 때문이다.
가상화는 성공하지 못하고 테스트 종료.
마찬가지로, 위의 1.1에서 예제 속 git에 들어가보면 아래와 같은 코드를 볼 수 있다.
마무리 : 위의 예제 중, 1,2는 B01 보드 (현재 우리가 쓰는 보드), 그리고 실질적으로 돌아가는 영상이 있는 보드는 A02보드며, B01으로 구성 변경을 했을 때, qemu-kvm이 돌아갈지는 미지수.
부팅의 구성 변경(kernel custom)을 변경하고, 가상화를 통해 App을 실행 했을 때, 좋은 퍼포먼스를 낼 수 있게 구성할 수 있을지는 미지수
여러 번의 시도 끝에 /dev/kvm에 폴더가 생겼지만, qemu-kvm은 실행하지 못했다. qemu-kvm 머신을 설정할 때, virt 즉 가상화 Virtaul Machine을 선택하는데, GIC를 사용할 수 없다고 나온다. 즉 가상화를 구성할 수 없다고 나온다.
'언어 공부 > Android' 카테고리의 다른 글
[Android/Java] 그냥 UI를 변경하려고 하는데 오류는 왜 나오는걸까 ? - Thread Error (0) | 2022.07.21 |
---|---|
[Android] Opus, AudioRecord, AudioTrack을 까먹지 말자. (0) | 2021.01.06 |
[Android] Retrofit2, Rxjava2, OkHttp에 대해서 알아보자 (0) | 2020.09.29 |
[Android/JAVA] Adapter ..LayoutInflater.. ViewHolder 어렵다.. (0) | 2020.09.21 |
[[Android/JAVA]] observe.. 문자열 Resource.. (0) | 2020.09.18 |
댓글