[Arm프로세서] GIC: 인터럽트 콘트롤러가 필요한 이유
By Guillermo Austin Kim | 2022년 8월 3일 |
인터럽트 콘트롤러가 필요한 이유는 무엇일까요? 컴퓨터는 다음과 같이 구성돼 있기 때문입니다. ● CPU ● 메모리 ● I/O 장치 마이크로 프로세서는 CPU와 메모리를 깊이 있게 다룹니다. 그런데 실제 고객이 사용하는 제품은 키보드나 마우스와 같은 외부 I/O 장치가 필요합니다. 외부 I/O 장치를 CPU가 다양한 방식으로 제어하는데, 이 중 가장 효율적인 방법이 인터럽트입니다. 예를 들어 휴대폰에서 터치 화면을 만지면 터치 인터럽트가 유발돼 CPU 코어에게 터치가 눌렸다는 사실을 알립니다. 또한 노트북에서 마우스나 키보드를 움직이면 인터럽트를 통해 CPU와 통신합니다. 외부 I/O 장치가 인터럽트를 올려주면 이를 통해(Consolidation)해서 CPU에
애플 2020년 9월 Time Flies 이벤트
By eggry.lab | 2020년 9월 16일 |
미국 시간으로 9월 15일에 애플 이벤트가 있었습니다. WWDC처럼 코로나19 대응으로 완전 온라인. 기대의 아이폰은 아무래도 이런저런 어른의 사정이 있어서 9월 말이나 10월은 되야 가능할 듯 하고, 이번엔 아이폰 외의 자잘한 제품들 업데이트 명목이었습니다. 아이패드(8세대) 교육용 포지션으로 등장했던 아무런 수식어도 없는 '그냥 아이패드'가 8세대를 맞이했습니다. 10.2인치 스크린은 그대로, 프로세서가 A12 바이오닉으로 업그레이드 됐습니다. 이 라인업은 소소하게 내부 업그레이드만 하는 포지션이니 뭐... 충전기는 20W USB-C가 제공된다고 하며, 고속충전이 됩니다. 그 외에는 새로운 게 하나도 없네요. 가격은 44만 9천원부터 시작합니다. 아이패드 에어
[Arm프로세서] Armv8: 시스템 레지스터에 접근할 수 있는 명령어
By Guillermo Austin Kim | 2022년 5월 7일 |
이전 포스트에서 Armv8 아키텍처에서 정의된 레지스터에 대해 알아봤습니다. 레지스터마다 각자 주어진 기능이 있지만 결국 Arm 코어가 사용하는 변수라는 점은 같습니다. 레지스터의 용법을 파악하면 다음과 같은 의문이 생길 수 있습니다. "레지스터의 값을 어떻게 읽거나 쓸 수 있을까?" 레지스터의 값을 읽거나 쓰려면 명령어를 실행해야 합니다. 그런데 레지스터의 종류에 따라 사용할 수 있는 명령어가 다음과 같이 제한돼 있습니다. * 범용 레지스터: 모든 명령어 * 시스템 레지스터: MSR, MRS 명령어 Armv8에서 정의된 범용 레지스터는 Armv8에서 정의된 모든 명령어에서 볼 수 있습니다. 데이터를 산술 연산하거나 메모리에 위치한 데이터를 읽을 때 사용됩니다. 시스템 레지스터의 값
[CPU] 연초부터 악재랄까?
By 돛대도 아니 달고 삿대도 없이 | 2018년 1월 4일 |
안녕하세요? 연초부터 CPU 회사들은 진땀 빼고 있겠군요? 현재 사용되는 CPU들에서 두 가지 보안적 큰 결함이 발견됐다 하는데... - 하나는 멜트다운 이라 하여, 일종의 커널 영역으로 접근이 가능한 치명적 결함이고, - 다른 하나는 스펙터라 하여 다른 유저의 영역으로의 접근이 가능해지는 전자보다 위험 수위는 조금 낮을지라도 역시 만만찮은 결함이지요... 그리고... 전자의 경우, 현재까지 Intel의 2세대, 혹은 3세대(이게 아직도 명확하지 않네요.) 이후 모든 세대의 i 시리즈, XEON, ARM의 A시리즈 정도가 해당되는 것으로 알려졌고, 일단 시스템의 성능이 상당히 저하되더라도 OS 차원에서 대응이 가능하며, 일부 OS에서는 이미 패치가 진행되는 등 대응