[ARM프로세서] 'csel' 명령어
By Guillermo Austin Kim | 2020년 10월 16일 |
이번에는 ARMv8 아키텍처에서 제공하는 명령어 중에 C 언어의 3항 연산자가 연상되는 csel를 알아봅시다. 다음은 분석하려는 코드입니다. 115| printk(!error ? "okay\n" : "failed\n"); MX:FFFFFF8009BB2404|F0FFE748 adrp x8,0xFFFFFF800989D000 MX:FFFFFF8009BB2408|F0FFE289 adrp x9,0xFFFFFF8009805000 MX:FFFFFF8009BB240C|91026108
[Arm프로세서] Armv8: VBAR_ELx 기준으로 익셉션 벡터 테이블 분석 정리
By Guillermo Austin Kim | 2021년 2월 8일 |
이전 포스트까지 EL1에 존재하는 VBAR_EL1와 EL1에 있는 VBAR_EL2 기준으로 익셉션 벡터 테이블에 대해 알아봤습니다. 이제 원점으로 돌아가서 이번 절의 앞 부분에 소개한, Armv8 스팩 문서에 있는 익셉션 벡터 테이블을 보면서 배운 내용을 정리해봅시다. VBAR_EL1 기준으로 바라본 익셉션 벡터 테이블 먼저 VBAR_EL1 기준으로 익셉션 벡터 테이블을 분석해봅시다. 표 9.18 Armv8 아키텍처의 익셉센 벡터 테이블(출처: DDI0487Fc_armv8_arm.pdf) 표의 왼쪽 행의 2번째 열에 보이는 'Current Exception level'은 운영체제의 커널이 구동하는 EL1을 의미하며, EL1에서 익셉션이 유발되면 익셉션 벡터 베이스 주소에 아래와 같은 오프셋을 더한
ThinkPad X1 Yoga의 Modern Standby(구 Instant Go, Connected Standby) 테스트 - 절전모드 음악 재생
By 파미의 여러가지 이야기 | 2018년 4월 29일 |
하드웨어와 드라이버가 지원될경우 Windows 8 이후 운영체제는 ARM기기와 유사한 절전 모드를 제공합니다. 이를 마이크로소프트가Windows 8에서는 Connected StandbyWindows 8.1에서는 Instant GoWindows 10에서는 Modern Standby라 칭합니다. 이 모드에서는 보통의 스마트폰처럼빠른 절전 모드 진입 및 복귀절전 모드에서도 네트워크에 연결된 상태로 업데이트나 업로드/다운로드가 제공되며,백그라운드 음악 재생시에는 재생도 유지됩니다. 다만 이는 Modern App(구 Metro App)에서만 허용합니다. 위 영상은 Modern Standby를 지원하는 ThinkPad X1 Yoga에서 음악을 재생한 후, 절전 모드 진입/복귀를 테스트 하는 영상입니
[Docker] M1 맥북에어로 라즈베리파이(ARM)용 docker image 만들어 보기
By 지훈현서 | 2021년 4월 22일 |
지난번에 간단 M1 애플실리콘의 맥북에어를 살펴보았습니다.애플이 과감히 인텔의 X86 CPU를 버리고 자체 ARM 기반 CPU를 만들었다는 아주 큰 사건이었죠. 30년도 더 전에 8086, 8088과 같은 CISC 머신 대비,68000, HP-UX 머신 등과 같은 RISC 기계를 다루어 본 적이 있는데,이번 인텔과 ARM의 가장 큰 차이 역시 이 CISC냐 RISC냐의 차이 인 것 같습니다. CPU 입장에서는 OP코드가 있어서 어떤 어떤 일을 수행하도록 되어 있고,이를 CPU 차원에서의 마이크로코드라 했던 것 같네요. 암튼 CISC인 경우 이 OP 코드가 알알이 꼼꼼이 무지 많고(시간이 지날 수록 더 많아지지요), 반대로 RISC 머신은아주 적은 세트의 OP 코드만 존재하지만, 동일한 기능을상단의 소프