ARM64 리눅스 커널에서 32 비트 사용자 공간 지원을 찾고 있는데 CONFIG_COMPAT을 활성화하면 그렇게 할 수 있습니다.arm64 linux의 64/32 비트 사용자 공간 혼합 (CONFIG_COMPAT 사용)
누구든지 CONFIG_COMPAT을 활성화하면 64 비트 응용 프로그램을 실행할 수 있는지 여부를 결정할 수 있습니까? 나는 다음과 같은 이유로이 물어 :
- 를 문서는 모두 64/32 비트 애플리케이션 내가 FS/compat_binfmt_elf.c를 살펴했다
동일한 커널 실행 될 수 있음을 명시하지 않는
#ifdef COMPAT_SET_PERSONALITY #undef SET_PERSONALITY #define SET_PERSONALITY COMPAT_SET_PERSONALITY #endif
이
set_thread_flag(TIF_32BIT)
에 스레드 개성을 강제로 보인다 때 커널 load_elf_binary()/리눅스 3.14/fs/binfmt_elf.c가 호출되면 SET_PERSONALITY (loc-> elf_ex)를 호출합니다.
CONFIG_COMPAT이 활성화되면 모든 사용자 공간 앱이 강제로 32 비트로 표시됩니까?
감사
compat_binfmt_elf.c가 매우 끝에 binfmt_elf.c가 포함
그래서 내 대답을 수락 된 것으로 표시 할 수 있습니까? – unixsmurf