본문 바로가기

Table

MBR 혹은 partition table dump 명령어, device node 로 부터 ufs, emmc dump dd if=/dev/block/vold/disk:8,0 of=/data/local/tmp/mbr-dump bs=512 count=1 dd if=/dev/block/vold/disk:179,64 of=/data/local/tmp/mbr-dump bs=512 count=1 dd if=/dev/block/vold/disk:179,0 of=/data/local/tmp/dump bs=512 count=1 - usb storage low image 위치 /dev/block/vold/disk:8,0 혹은 /dev/block/sda => dump 뜨면 MBR 부터 떠짐 /dev/block/sda1 => dump 뜨면 partition 부터 떠짐 /data/local/tmp/mbr-dump dd if=/dev/block.. 더보기
virtual address to physical address (64bit linux) linux 64bit 에서 page address 변환에 대해서 한눈에 보기 쉽게 그려보았습니다. 사용할때는 꼭 출처를 명시해 주기 바랍니다. pde64_table = (pde64_t *)__va(BASE_TO_PAGE_ADDR(pdpe64_table->pd_base_addr) + (PDE64_INDEX(fault_addr)*sizeof(pde64_t))); if(!pde64_table->present) { uintptr_t tmp_pte64_table; tmp_pte64_table = (uintptr_t)petmem_smart_alloc_pages(map, (uintptr_t)NULL, (pte64_t *)NULL); memset((void *)__va(tmp_pte64_table), 0, PAGE_S.. 더보기
Device Driver - memory mapping 원문 : http://vincenthanna.springnote.com/pages/2267520?print=1 Device Driver - memory mapping 가상 주소와 MMU 간단한 시스템은 물리 주소만으로도 동작할 수 있다. 그러나 다중프로세스를 지원하고 각 프로세스에 대해 메모리 공간을 보호해야 하는 운영체제는 물리 주소만으로 구현하기는 어렵다. MMU는 프로세서에 전달되는 주소를 다른 주소로 변환한다. 그래서 프로세서가 메모리에 접근하는 주소가 메모리에 직접 전달되는 것이 아니라 먼저 MMU에 전달되고, MMU는 변환 테이블을 참고해 이 주소를 실제 물리 주소로 변환해 전달한다. 이때 프로세서가 MMU에 가상 주소를 전달하면, MMU가 이 가상 주소를 해석하여 나온 물리 주소를 실제 메모.. 더보기