iamroot12CD / linux

linux kernel 4.1.6 for raspberrypi2
http://www.iamroot.org/
Other
6 stars 27 forks source link

38주차 2016년 1월 9일 스터디 #24

Open minidump opened 8 years ago

minidump commented 8 years ago

새해 복 많이 받으세요. 38주차 스터디 시작합니다. 장소는 토즈 강남점 3F 8번방(파고다 뒷 건물)

minidump commented 8 years ago

두 번째 restart부터 시작. call_cache_fn으로 호출할 당시 r3에 16(오프셋)을 집어넣어서 proc_types의 cache flush를 참조함. 과거 분석할 당시의 첫번째 restart에서는 cache on을 위해 8을 사용했었음.

 * Table for cache operations.  This is basically:
 *   - CPU ID match
 *   - CPU ID mask
 *   - 'cache on' method instruction
 *   - 'cache off' method instruction
 *   - 'cache flush' method instruction
SehongKwon commented 8 years ago

.align 의 directive는 align을 맞추기 위하여 해당영역이 code영역일시nop를 채우고 그외의 영역일시 0을 채운다고 합니다. (아래 링크) http://stackoverflow.com/questions/14544617/what-does-the-align-directive-do

minidump commented 8 years ago
.align n

n은 2의 n승을 말하고, 바로 다음 인스트럭션의 주소 체계에만 반영되는것으로 확인되었습니다. (이하 인스트럭션이 모두 해당되는것이 아님) (만약 주소가 2의 n승으로 딱 정렬되지 않는다면 그 전까지는 메모리상에서 0x0으로 채워지는걸 확인)

minidump commented 8 years ago

분석중에 나온 W()는 /arch/arm/include/asm/unified.h 에서 정의되어 있습니다.

#define ARM(x...)
#define THUMB(x...) x
#ifdef __ASSEMBLY__
#define W(instr)    instr.w
#define BSYM(sym)   sym + 1
#else
#define WASM(instr) #instr ".w"
#endif
fehead commented 8 years ago

ARM align 시뮬 결과 arm_align

SehongKwon commented 8 years ago

mmfr

minidump commented 8 years ago

오랜만에 컴구관련 용어가 나와서 아래 참고 http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/3738.html 하버드 아키텍처는 데이터와 명령어 버스가 구분되어 있는 구조, 폰노이만 아키텍처는 데이터와 명령어를 땡겨오는 버스를 하나만 가지고 있는 구조

rilts commented 8 years ago

DMB, DSB http://forum.falinux.com/zbxe/index.php?document_srl=534002&mid=Kernel_API

slashdeva commented 8 years ago

clidr http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0464d/BABHCIHB.html

SehongKwon commented 8 years ago

ARM asm CLZ 명령어 설명 http://forum.falinux.com/zbxe/index.php?document_srl=574399&mid=lecture_tip

SehongKwon commented 8 years ago

clidr의 ctype의미 ctype

winds02 commented 8 years ago

10차 스터디팀에서 분석된 내용을 참조.

http://www.iamroot.org/xe/Kernel_10_ARM/180153

SehongKwon commented 8 years ago

라즈베리파이2 arm reference 매뉴얼 위치 https://www.raspberrypi.org/documentation/hardware/raspberrypi/bcm2836/ 다운로드 위치: http://infocenter.arm.com/help/topic/com.arm.doc.ddi0464f/DDI0464F_cortex_a7_mpcore_r0p5_trm.pdf

SehongKwon commented 8 years ago

ID_MMFR1, Memory Model Feature Register 1, PMSA l1 harvard ? hierarchy? harvardcache

winds02 commented 8 years ago

결론적으로,

Harvard 구조와 Hierarchical은 관계가 없다.

http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0464f/index.html Cortex-A7 MPCore Technical Reference Manual 1.1. About the Cortex-A7 MPCore processor Figure 1.1. Example multiprocessor configuration 그림 참조!