[ARM프로세서] 소프트웨어 관점에서 익셉션(Exception)이란
By Guillermo Austin Kim | 2020년 11월 2일 |
소프트웨어 입장에서 익셉션이란 무엇일까요? 소프트웨어 입장에서는 익셉션의 종류에 따라 익셉션을 2가지 관점으로 볼 수 있습니다. ❑ 치명적인 오류: 메모리 어보트 타입 익셉션(Prefetch Abort, Data Abort, Undefined Instruction) ❑ 운영체제 커널에서 지원하는 기능: IRQ(인터럽트 서비스 루틴), SW 인터럽트(시스템 콜) 메모리 어보트 타입 익셉션이란 첫 번째, 메모리 어보트 타입 익셉션을 소프트웨어 관점으로 보면, 소프트웨어적으로 치명적인 오류가 발생했다고 볼 수 있습니다. 여기서 말하는 치명적인 오류가 발생하면 시스템이 리셋되는데, 이를 “크래시가 발생했다”라고 말합니다. 프로젝트를 개발하는 도중에 이런 치명적인 오류를 만나
[ARM프로세서] ARMv7: 익셉션의 종류별 ARM 동작 모드 정리
By Guillermo Austin Kim | 2020년 12월 9일 |
이전 절에서 배운 바와 같이, ARM 코어는 익셉션을 유발할 때 익셉션의 종류에 따라 ARM의 동작 모드를 변경합니다. 익셉션을 다른 관점으로 보면, 익셉션은 "ARM 동작 모드를 변경하는 유발 인자"라고 볼 수 있는데, 다음 표에서 익셉션의 종류 별로 변경되는 ARM 동작 모드를 확인할 수 있습니다. 표 8.2 익셉션의 종류와 변경되는 ARM 동작 모드 표 8.2의 가장 왼쪽 부분은 익셉션의 종류, 가운데 부분은 해당 익셉션이 발생할 때 변경되는 ARM의 동작 모드를 나타냅니다. 가장 왼쪽 부분은 ARM 동작 모드를 담고 있는 CPSR 레지스터의 [4:0] 비트 정보입니다. ARM의 동작 모드를 변경하려면 CPSR 레지스터의 [4:0] 비트를 변경하면 됩니다. Written by <디버깅을 통해
[Arm프로세서] 트러스트존(TrustZone)의 유래
By Guillermo Austin Kim | 2021년 12월 27일 |
트러스트존의 유래를 소개하려면 먼저 시스템의 공격을 방지하기 위한 시스템의 설계 과정에 대해 언급할 필요가 있습니다. 2000년 초부터 다양한 소프트웨어 기술들이 소개되고 발전되는데, 이에 비례해 해킹 기술이 업그레이드됩니다. 해커들이 다양한 소프트웨어 기법을 활용해 시스템을 공격하면서 해킹의 공격 루트가 다양해집니다. 애플리케이션에서 디바이스 드라이버 그리고 네트워트 패킷이나 서버를 통해 시스템을 침입하는 경로가 늘어난 것입니다. 많은 IT 업체들이 해킹으로 피해를 보면서 보안 수준이 높은 시스템 아키텍처의 필요성을 절감합니다. 그래서 IT업체들은 중요한 데이터를 암호화해서 저장하거나 해커의 공격으로 보호 받을 수 있게 시스템을 설계하게 됩니다. 고육지책으로 보안과 관련된 기능(Feature)를
[정보] 모든 맥 CPU 아키텍처의 간략한 역사
By Jini 가 만들어가는 세상 | 2020년 11월 11일 |
지난 36 년 동안, 애플 매킨토시는 세 가지 CPU 아키텍처를 가지고 발전해 왔으며 이번 ARM을 통해 잠재적으로 네 번째로 마이그레이션 할 태세입니다. ARM 으로의 전환에 대한 소문으로 시작되어 어제 발표된 M1 Based Mac에서 필두로 지난 CPU 아키텍처의 역사를 간략하게 살펴보겠습니다. 1. 모토로라 64K(1984~1995) 1984년에 처음 매킨토시 컴퓨터를 발표할 당시 모토로라 68000 CPU를 탑재 하였으며 초기 맥 프로토 타입 개발시 8/16비트 모토로라 68098 CPU를 사용하다 애플 디자이너가 68000 기반의 애플 리사에 탑재된 그래픽 루틴을 본 후 더 비싼 16/32 비트 68000을 사용하게 되었다고 합니다. 애플 리사는 5MHz 68000만 사용했지만