1. Rust 언어
Rust는 대충 다 알 거같아, 만약 필요하다면 그때 다시 언급하며, Linux Kernel 이나 Open Source에서 가장 이슈인 언어인 것 같다.
나도 보기만 여러번 보고, 간단히만 사용해봤지, 아직 더 알아야 하기에 나중에 안 다음에 자세히 남기겠다.
Rust 관련
Linux
추후 한번 사용해보지
2. 가상화(Virtualization)
가상화는 한마디 Hypervisor라는 가상 CPU를 이용하여 Guest OS를 실행하여 동시에 동작시키는 것이다.
일단 Docker 와 가상화 차이부터 그림으로 알자
Docker 와 가상화 차이
Hypervisor 존재여부차이
가상화(Virtualization,Hypervisor)
이전에 간단히 가상화 부분을 정리한 것이며 간단히 참고만하자
AMP/SMP 관련내용
상위내용에 AMP/SMP 빼먹어서 아래참고
ARM용 Multi Core방식소개
오래전에 ARM용 Multi Core 방식을 간단히 정리한 것이며, 틀리수 있다.
(상위에도 ESP32링크에도 있음)
2.1 가상화 중요성
요즘 Embedded SoC/AP의 성능이 좋은 것은 기본적으로 Hypervisor 사용하고 이를 통신하면서 사용한다.
자동차로 보면, IVI 를 가상화로 돌리는 것을 많이 볼 것 같다.
Host OS는 RTOS(QNX)기반으로 사용하고 Guest OS를 Linux/Android로 동작하겠다는 것 같으며, 거의 추세로 가는 것 같다.
임베디드에서도 가상화는 필요하다.
2.2 Window 가상화
Window에서는 주로 나의 경우, Virtual Box 와 VMWare로 사용했으며, 아래를 참조하고 알아두기만 하자.
최근에 Broadcom이 VMware인수 했으니, 어떻게 될지도 지켜봐야하니
- Virtual Box
VMWare의 경우, 유료라서 내가 Blog에 기록은 안한 것 같은데, 찾으면 나올 것 같기도 하다(귀찮음, 나중에 다시 VMWare는)
- VMWare
나도 사용한지 너무 오래되었으며, 가장 기대하는 것은 Cloud 기반이며, 추후 사용해보고, 그때~~~
참고로, 상위 두 개도 Linux에서 지원해주며, Window용으로 한정해서 생각하지 마시길~
2.3 Linux Rust 기반 Virtio
Linux에서 사실 Virtio는 사용한 기억이 거의 없으며, 나중에 시간이 되면 한번 사용해보겠다.
- Virtio 관련설명
설명을 잘해주셔서 감사하며, 나중에 사용해보도록 알아보도록 하겠다.
QEMU이 이것을 사용하는 줄은 몰랐으며, QEMU은 Yocto에서 쉽게 사용가능하다
KVM도 지금보니, 다시 업데이트 된 것 같으며, Wiki에서 쉽게 이해하시길
- Rust Virtio
그림을 보면 쉽게 이해가 가며, 가장 내가 주의깊게 보는 것은 공유메모리이며, 나중에 좋은 AP에서 이용해보도록 하겠다.
관련소스
- Chip 제조사 링크
참고로, Samsung Exynos 처럼 TI 도 카메라 12개 까지 되는 것이 봤는데, 위치를 찾았다.
분명, Qualcomm도 있을텐데, 비슷한 성능의 AP들이 나중에 다시 찾아 보도록 하겠다
Exynos Auto v9 , v920