묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
TRACE32 debugging
안녕하세요, TRACE32 Arm aapcs v7 practice 1 에서, PC 값을 push 하는 동작이 있는데요, 분명 0xc0253988 이었는데 어째서 stack 에 들어갈때는 0x0253990 으로 들어가나요? 감사합니다
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
interrupt service
안녕하세요, ARM architecture 와 동떨어질 수 도 있는 질문입니다..interrupt service routine 나 exception handler 는 user 가 직접 구현해야 하는 데요, 만약 리눅스를 설치한다고 했을 때, 리눅스에서 어디까지 제공해 주는 것인가요? 언급해주신 카메라 센서나, 터치 센서 같은 경우..ESR 에서 EC 가 어떻게 들어오는지는 모르겠지만, 유저가 직접 EC 를 보고 해석하는 코드를 짤 것 같지는 않아서요.arm architecture 의 exception handler 분기 후 리눅스와 유저가 어떻게 처리하는지 궁금해져서 질문드립니다감사합니다
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
vbar register
안녕하세요,vbar_el1 이 random 하게 부팅 때마다 정해진다고 하셨는데,Armv8 만의 특징인가요?Armv7 은 0xFFFF0000 이런 주소였던 것 같아요보안 이슈 때문에 매번 다르게 하는 건가요?
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
vbar register
안녕하세요,vbar_el1 이 random 하게 부팅 때마다 정해진다고 하셨는데,Armv8 만의 특징인가요? Armv7 은 0xFFFF0000 이런 주소였던 것 같아요보안 이슈 때문에 매번 다르게 하는 건가요?
-
미해결ARM Cortex-M 프로세서 프로그래밍
학습 진행 시, 사용하는 Board에 대한 문의 드립니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 선생님! 이번에 ARM Cortex-M 강의를 수강하고자 합니다.수업에 들어가기에 앞서 한가지 궁금한 점이 있어 문의 드립니다.제가 현재 가지고 있는 STM32 보드는, STM32F769I - Discovery Board 인데,선생님께서 강의해서 사용하시는 보드는 STM32F429I-DISCOVERY Board와 종류가 다른데,혹시 수업 진도를 따라가는데 큰 제약이 있을까 해서 여쭤봅니다.제가 가지고 있는 769I Board로 그대로 진행해도 괜찮을까요?
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
System call register
system call register 로 쓰인다는 x8 의 경우는 arm architecture 호출 규약에 나와 있는 것인가요 아니면리눅스 커널에서 임의로 그렇게 정한 것인가요?
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
GIC programmer model
안녕하세요,memory mapped i/o 라는 것이msr 명령어를 통해 core 에서 특정 주소 값을 변경하면해당 gic 나 interface register 값을 변경할 수 있다는 뜻인가요?그리고 memory mapped 라는 것은 hardware 적으로 메모리 스토어만 하면 알아서 주변 gic 나 cpu interface 의 레지스터가 자동으로 바뀌게 되는 회로(메모리와 연결되는)가 있는 것인가요? (그리고 바뀌는 타이밍은 즉시 바뀌나요?)감사합니다.
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
exception handler code
안녕하세요0xffffff8008082580: d53201f nop...이런 식의 exception handler 코드는 어디서 볼 수 있나요? 코딩-> 컴파일을 해서 나온 결과 인가요 아니면 저렇게 일일이 주소: 명령어 다 넣게 된 것인가요?
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
arm mode
안녕하세요ARM 에서 sys mode 나 undef 모드나 이런 것들은virtual memory 를 사용하지 못할 것 같은데, (kernel 이 virtual memory를 지원할 것 같아서요)그러면 다른 모드는 physical memory 기반 assembly code 로 작성이 되나요?감사합니다
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
exception vector table
exception vector table 에서 명시된 주소 값은실제 physical memory 주소 인가요?그런데 physical memory 주소면 커널이 그 메모리에 들어간 함수를 어떻게 구현하게 되나요..?
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
exception 문제
같은 exception level 이나, exception 종류가 계속 연속해서 들어오게 되면 어떻게 처리가 되나요? spsr_mode 가 계속 덮어 씌워질 것 같아요
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
리눅스 커널 동작 모드별 스택 포인터 초기화
동작 모드를 변경하는 어셈블리 명령어 부분에서sp를 모드 별로 초기화 해 주는 데요, 이게 부트 로딩 과정에서 모드 별로 실제 physical memory를 모드별 스택으로 나누는 과정인가요?그리고 모드별로 아예 physical memory를 따로 쓰게 되는 것인가요? 그리고 모드별로 #0 #12 .. 이렇게 작게 스택을 지정하는 것 같은데.. 너무 작지 않나 하는 생각이 듭니다. 뭔가 잘못 이해하고 있는 것 같습니다. 정정 부탁드립니다
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
exception handler 구현
exception handler 는 소프트웨어 적으로 어떻게 구현이 이루어 지나요? exception vector 에 써진 주소값에 handler 를 넣어 주어야 할 것 같은데, 주소를 직접 넣어서 프로그래밍 할 수 있는 것인가요?
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
라즈베리파이 메모리 사이즈 큰거 사도 될까요?
안녕하세요.당근에 중고로 사려는데 저희동네엔 4기가 하나있어서 그런데 라즈베리파이 메모리만 큰거 사려는데 CPU는 두기종 동일한것 같던데 괜찮을까요?
-
미해결Arm 아키텍처: 트러스트존(TrustZone) [저자직강 3부-1]
실제 활용 예시 코드 요청 합니다
안드로이드 어플리케이션 수준에서 직접 시큐어 모니터를 활욜한 apk을 작성하여 직접 디버깅하고, 유저 권한에서 어디까지 커널에 대한 활용이나 모니터 사용, 보호수준에 대해서 활용을 확인해 보고 싶습니다. 사용가능한 코드나 링크를 제공해주시면 학습에 더 큰 도움이 될거 같은데 자료가 있으면 제공해 주시면 감사하겠습니다.
-
미해결한국에서 제일 쉬운 리눅스 커널 강의
set_ftrace 질문
안녕하세요. 커널 강의 잘 듣고있습니다. set_ftrace.sh 스크립트 실행하다가 오류가 발생했는데21 번째 줄 ttw_do_wakeup 이 available_filter_functions에 없는 것으로 판단 됩니다. do_wakeup 대신 do_activate로 바뀐 거 같은데 맞는 걸까요? 커널 버전은 6.6 입니다!
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
강의자료
안녕하세요.이 강의 수강신청 전 강의자료 문의 올렸었는데 답변 달아주신 거 보았습니다.^^물론 실습 위주고, 머릿속에 다 넣는 것이 가장 중요하지만추후에 어떤 형태라도 강의 자료 올려주신다면 더 도움이 될 것 같아 조심스럽게 요청드려봅니다.!최선 다해 들어보겠습니다.감사합니다.
-
미해결ARM Cortex-M 프로세서 프로그래밍
push pop 질문
안녕하세요 강사님 강의 듣다가 궁금한 점이 있습니다.push {lr}bl F11POP {pc} 이렇게 동작할 때, lr값을 스택에 저장을 하고 나면 sp가 하나 증가하지 않나요? pop {pc}를 하면 스택메모리에서 현재 스택포인터가 가리키고 있는 아무것도 없는 쪽을 읽어서 pc에 저장해야되는게 아닌가요?
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
재 빌드시 변경파일만 반영하지 않고 처음부터 빌드 됩니다.
실수 방지 드라이버 만들기에서 debugfs 파일을 추가하고 Makefile 수정 후 build.sh 스크립트로 재빌드 하였는데, 처음부터 다시 빌드가 되어서 시간이 너무 오래걸리는 것 같아 질문 드립니다. 강의 영상에서는 변경 부분만 빌드 되는것으로 보입니다. 빌드 환경 점검 방법이 있을까요?감사합니다.
-
미해결리눅스 커널의 구조와 원리: 인터럽트 [저자 직강 1부-5]
preemption 체크 관련 질문
커널 코드 실행 중 인터럽트가 발생한 경우에는 thread_info 구조체의 preemption_count 값을 통해 preemptive schedule 가능 여부를 판단하고, 유저 코드 실행 중에 발생한 경우에는 flags 값을 통해 preemptive schedule 가능 여부를 판단하는 것을 이해했는데, 둘이 왜 확인 방법이 다른지 궁금합니다