안녕하세요, virtualization hypervisor 도 보통 context switching 기능을 탑재하고 있나요? 자동차 쪽에서 많이 사용된다고 하는데, 어떻게 전환이 되는지 잘 연상이 안 되네요 계기판, 네비게이션 예시를 드셨는데, 계기판 같은 경우 RTOS 구현이 되게 되면 Virtualization context switching 기능이 있으면 위험성이 있을 것 같습니다. 또 계기판 기능을 돌다가 네비게이션이 작동하면 계기판이 안돌아서 위험할 것 같은데요..
exception handler 는 어느 공간에서 실행될까? 를 듣고 hypervisor, trusted zone 을 듣고 나니 일단 process 가 EL0 에서 실행되고 있었을 때 에는 프로세스 공간에서 스택에 쌓아 나간다는 사실(이게 프로세스 스택인가요, 커널 스택인가요?)을 알았는데요, 이 때 과연 hypervisor , trusted zone 의 level EL2, EL3 에서는 어떻게 처리가 되는지? 궁금해졌습니다. EL0 -> EL1 의 흐름에서는 유저 프로세스 스택에서 다 담을 수 있다고 해도, EL1 이나 EL2, EL3 가 관여하게 되면 프로세스라는 개념이 사실 커널(EL1) 단에서 에러 처리한다는 개념하고는 조금 달라져야 할 것 같아서요,
3가지 EL2 로 가는 instruction 이 있다고 했는데요, 이 세 가지는 굳이 왜 나누었고, (찾아보니 이 질문은 동 강의 "트랩 명령어 질문" 에 나와 있네요) 또 WFE, WFI 에 저전력 기능이 왜 같이 포함되어 있는지 궁금합니다. 추가로 저전력모드가 hypervisor 모드 관련해서만 있는 것 같은데 하드웨어적으로 무슨 연관이 있는 건지.. 궁금합니다 감사합니다.
안녕하세요, 가상화에 대해서 질문이 있습니다. 가상화를 하드웨어 단에서 지원을 해준다는 것은, 여러가지 지원을 해준 다는 의미인 것 같습니다. hypervisor 에서 os 를 바꿀 때 각 os 별로 메모리 공간을 관리해주어야 하는 데, 각 os 는 다른 os 의 존재를 모를 테니 마치 context switching 하는 것 처럼 모든 os 의 정보를 백업하고 스위칭 해야 할 것 같은데요.. 이것을 hypervisor 에서 구현하고 있는지 궁금합니다.
시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
안녕하세요, ldm 명령어가 수업 중 몇번 등장하는데요, 본론은, ldm r13, {r4, r5, r11, r13, pc} 에서 r13위치 기준으로 쭉 읽어오는 것 같은데요, (맞겠죠?) 이 명령어도 stack 의 pointer 를 바꾸는 것 같은데요 , 그럼 사실상 POP 과 같은 명령어라고 보면 되는 건가요?
시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
안녕하세요, ARM architecture 와 동떨어질 수 도 있는 질문입니다.. interrupt service routine 나 exception handler 는 user 가 직접 구현해야 하는 데요, 만약 리눅스를 설치한다고 했을 때, 리눅스에서 어디까지 제공해 주는 것인가요? 언급해주신 카메라 센서나, 터치 센서 같은 경우.. ESR 에서 EC 가 어떻게 들어오는지는 모르겠지만, 유저가 직접 EC 를 보고 해석하는 코드를 짤 것 같지는 않아서요. arm architecture 의 exception handler 분기 후 리눅스와 유저가 어떻게 처리하는지 궁금해져서 질문드립니다 감사합니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 선생님! 이번에 ARM Cortex-M 강의를 수강하고자 합니다. 수업에 들어가기에 앞서 한가지 궁금한 점이 있어 문의 드립니다. 제가 현재 가지고 있는 STM32 보드는, STM32F769I - Discovery Board 인데, 선생님께서 강의해서 사용하시는 보드는 STM32F429I-DISCOVERY Board와 종류가 다른데, 혹시 수업 진도를 따라가는데 큰 제약이 있을까 해서 여쭤봅니다. 제가 가지고 있는 769I Board로 그대로 진행해도 괜찮을까요?
시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
안녕하세요, memory mapped i/o 라는 것이 msr 명령어를 통해 core 에서 특정 주소 값을 변경하면 해당 gic 나 interface register 값을 변경할 수 있다는 뜻인가요? 그리고 memory mapped 라는 것은 hardware 적으로 메모리 스토어만 하면 알아서 주변 gic 나 cpu interface 의 레지스터가 자동으로 바뀌게 되는 회로(메모리와 연결되는)가 있는 것인가요? (그리고 바뀌는 타이밍은 즉시 바뀌나요?) 감사합니다.
시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
안녕하세요 ARM 에서 sys mode 나 undef 모드나 이런 것들은 virtual memory 를 사용하지 못할 것 같은데, (kernel 이 virtual memory를 지원할 것 같아서요) 그러면 다른 모드는 physical memory 기반 assembly code 로 작성이 되나요? 감사합니다
시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
동작 모드를 변경하는 어셈블리 명령어 부분에서 sp를 모드 별로 초기화 해 주는 데요, 이게 부트 로딩 과정에서 모드 별로 실제 physical memory 를 모드별 스택으로 나누는 과정인가요? 그리고 모드별로 아예 physical memory를 따로 쓰게 되는 것인가요? 그리고 모드별로 #0 #12 .. 이렇게 작게 스택을 지정하는 것 같은데.. 너무 작지 않나 하는 생각이 듭니다. 뭔가 잘못 이해하고 있는 것 같습니다. 정정 부탁드립니다