반응형

ARM64 Linux Kernel 8

record_mmu_state

record_mmu_state 프로시저는 Exception Level에 따라 적절한 SCTLR 레지스터를 읽고, EE(Endianness) 비트를 검사해 현재 CPU Endianness가 기대하는 값과 일치하는지 확인한다.Endian이 일치하면, SCTLR의 C(Cache) 비트를 보고, 캐시 사용 여부를 검사하고, 캐시가 꺼져있으면 MMU가 꺼져있다고 판단, 켜져있으면 M bit로 MMU가 켜져있는지를 판단한다.Endian이 일치하지 않는 경우, Endian을 일치시키고, MMU 비트를 클리어하고, 레지스터를 업데이트하고, MMU를 꺼진상태로 판단한다.코드를 통해 자세히 알아보자.SYM_CODE_START_LOCAL(record_mmu_state) mrs x19, CurrentEL cmp x19, #C..

Yocto custom linux 환경 설정

이 항목은 Yocto에서 바닐라 커널을 외부에서 받고 해당 소스를 바탕으로 빌드하여 qemu로 실행하는 과정이다. 먼저 git clone을 사용해 poky와 linux-kernel 소스를 받는다.# poky 다운mkdir -p YoctoTestgit clone --depth=1 git://git.yoctoproject.org/poky# 바닐라 리눅스 커널 v6.12 LTS 다운로드mkdir -p source cd sourcegit clone --branch v6.12 --depth 1 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git생성된 poky 버전을 확인한다.ukjin@Ukjin:~/YoctoTest/poky$ cat meta-p..

ARM64 Linux Kernel 2025.04.26
반응형