나는 Archon과 같은 프로젝트에 대해 알고 있으며 다양한 에뮬레이터가 존재한다는 것을 알고 있지만 이상한 점은 일반 Linux 커널에서는 Windows 프로그램을 실행할 수 있지만 Android 프로그램은 실행할 수 없다는 것입니다.
답변1
답변2
엄밀히 말하면 Linux 커널은 실행되는 하드웨어에 대한 직접적인 인터페이스만 제공합니다. Android 애플리케이션은 추가적인 Android 휴대폰별 API, 프로그램, 애플리케이션 등의 전체 세트에 의존합니다. 또한 Android는 범용 Linux 커널에서 실행되지 않고 운영 체제를 실행하도록 특별히 설계된 Google의 고도로 맞춤화된 커널에서 실행됩니다.
Android 앱이 다른 시스템에서 실행되는 데 필요한 전체 스택을 재현하는 것이 기술적으로 가능하더라도 이는 비대해지고 극도로 비효율적이 됩니다. 화면 크기가 제한되어 있고, 휴대폰에는 "윈도우 시스템"이라는 개념이 존재하지 않으며, SIM 카드, GPS 등 일부 하드웨어가 전혀 존재하지 않습니다.
필요한 추가 비트를 제공하여 애플리케이션을 속일 수 있는 에뮬레이터가 있습니다. 하지만 컴퓨터에서 기본 OpenJDK를 사용하므로 제대로 작동합니다. 에뮬레이터가 아닌 테스트 환경으로 생각하십시오.