[Arm프로세서] 트러스트존(TrustZone): 시큐어 모드와 모니터 모드
By Guillermo Austin Kim | 2021년 12월 29일 |
대부분 트러스트존을 설명할 때 논 시큐어 월드와 시큐어 월드의 개념과 smc 명령어까지만 다루는 경우가 많습니다. 하지만 세세한 구현 방식을 파악하려면 모니터 모드와 시큐어 모드는 물론 익셉션 벡터 테이블에 대해 파악해야 합니다. 또한 익셉션의 동작 원리도 알아야 합니다. 논 시큐어 월드에서 시큐어 월드로 진입하거나 반대로 시큐어 월드에서 논 시큐어 월드로 진입할 때 익셉션이 유발되기 때문입니다. 먼저 아래와 같이 각 모드 별로 정의된 익셉션 벡터 테이블을 보면서 이 내용을 배워 봅시다. 표 11.1 arm 동작 모드 별로 정의된 익셉션 벡터 테이블 보다시피 각 arm의 모드 별로 익셉션 벡터 테이블의 세부 내용이 표기돼 있습니다. 먼저 표의 가장 오른쪽에 있는 논 시큐어 모드의 익셉션 벡터 테이블을
[Arm프로세서] 캐시의 성능 지표
By Guillermo Austin Kim | 2022년 6월 6일 |
이번 포스트에서 다룬 캐시의 동작을 다시 요약하면 다음과 같습니다. “속도가 빠른 캐시를 CPU 근처에 두고 CPU가 자주 사용하는 데이터를 캐시라는 임시 저장 공간에 두면 성능을 키울 수 있다.” 실제 Arm 프로세서의 메모리 아키텍처 다이어그램을 분석하면 멀티 레벨로 캐시가 구성됐다는 사실을 알 수 있습니다. 캐시를 레벨로 구성하는 이유를 알려면 먼저 캐시의 성능을 측정하는 지표를 알 필요가 있습니다. 대부분 캐시의 성능 지표로 캐시 미스나 캐시 히트만 떠 올립니다. 캐시의 성능을 측정하는 정량적인 지표는 다음과 같습니다. 평균 접근 시간 = 히트 레이턴시(hit latency) + 미스 비율(where) 미스 비율 = 캐시 미스/(캐시 미스 + 캐시 히트) x 미스 패널티
엑스박스 시리즈 X 도착
By eggry.lab | 2020년 11월 11일 |
어제 밤에 도착했는데 오늘에야 뜯어봤네요. 예약판매분은 아예 배송 패키지에도 경고문을 특제로 붙여놨습니다. 예약판매 기념품. 스티커, 핀뱃지, 그리고 마스크(!)가 있습니다. 마스크 1개 뿐인데 이거 쓰긴 할려나. 스티커는 붙일 데가 없지만 핀뱃지는 가방에라도 달아야겠네요. 패키지. 개성적인 상부 통풍구 확대샷을 넣었습니다. 내부에 녹색 플라스틱도 있어서 각도에 따라서 저렇게 보입니다. 불 들어오는 건 아님. 뒷면엔 헤일로 인피니트 이미집니다만 런칭에서 발매연기 되어버려서... 초기 반응도 소문도 별로 안 좋아서 금방 나올진 모르겠습니다. 기술 자랑 해놓은 측면. 패키지 개방이 특이합니다. 얇은 스티로폼 같은 재질에 싸인 본체가 드
[ARM] ARMv7: ARM 동작 모드란
By Guillermo Austin Kim | 2020년 9월 26일 |
ARM 아키텍처 문서를 보면 가장 먼저 보이는 용어가 ARM 동작 모드입니다. ARM 아키텍처를 이해하기 위해 꼭 알아야 하는 개념이니 자주 보면서 익혔으면 합니다. ARM 동작 모드를 잘 배워야 시스템을 디자인하거나 디버깅을 할 때 유용하게 활용할 수 있습니다. User 모드를 시작으로 각각 동작 모드에 대해 소개하겠습니다. User 모드 휴대폰에서 사용하는 브라우저, 카카오톡와 같은 애플리케이션이 구동되는 모드입니다. 라즈베리 파이에서 다음과 같은 유저 애플리케이션 코드를 빌드해 애플리케이션을 동작하는 모드입니다. #include <stdio.h> int main() { printf("hello, world\n"); return 0;} 유저 모드에서 실행되는 코드는 메