묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
5장 Armv7 동작모드와 6장 Armv8 익셉션 레벨 차이
안녕하세요,1.6 이 책의 구성, 4분대에서5장 "Armv7 동작모드"와 6장 "Armv8 익셉션 레벨"을 소개해주셨는데요.Q1) Armv7 동작모드 == Armv8 익셉션 레벨과 거의 같은 의미라고 받아들여도 되나요? 각 Armv의 용어 차이가 있는것 같아서 헷갈려 여쭤봅니다.(만약 다르다면, 나중에 Armv8에서의 동작모드도 설명해주시는건지.. 궁금하네요.)
-
미해결리눅스 커널의 구조와 원리: 워크큐 [저자 직강 1부-7]
강의 업로드 오류 확인 요청
안녕하세요, 항상 도움 받고 있습니다. Q&A는 아니고 강의 진행 간 강의 중복 업로드가 확인되어 해당 내용 전달 드립니다."42. 워크 핸들러에 전달되는 매개 인자 디버깅"의 강의가 "52. ftrace 분석: 워크큐 와치독" 강의로 잘못 업로드된 것 같으니, 확인 부탁드립니다. 감사합니다.
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
시스템 소프트웨어 직무 관련 질문드려요
컴퓨터공학과 재학중인 대학생입니다. 올려주신 유튜브나 강의 잘 보고 있습니다. 제가 현재 취업을 한다면 생각하고 있는 직무는ip/솔루션이나 soc쪽 직무이고 전공 공부 자체가 재밌어서 일단 대학원을 가는 것을 일단 생각하고 있어서 OS레벨의 시스템 소프트웨어 분야 대학원 진학을 생각하고 있습니다. 현재 전공 공부 복습과 김동현님 책들로 아키텍쳐나 리눅스 커널에 대해 공부하고 있는데,공부 이후의 방향에 대해서 기존에 보유한 라즈베리파이3에 부트로더를 올려보고 다른 참고자료들을 이용해서 os를 만들어보는 경험과 리눅스 커널 컨티리뷰트를 해보려하는데 이게 제가 생각하는 분야와 fit한지 헷갈려서 질문드립니다. 책과 강의 잘 듣고 있습니다.
-
해결됨시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
책관련 질문드려요
arm책이랑 리눅스 구조와 원리 책 모두 구매했는데강의가 아닌 리눅스 구조와 원리 리눅스 구버전 커널을 이용하여 설명하는것같은데책만으로 학습해도 충분할지 궁금해서 문의드려요
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
4.2.1. 실습을 어떻게 진행하는것인가요?
안녕하세요,수업 진행 간 원활하지 않아 도움 요청 드립니다.4.2.1 실습을 진행 중인데요실습 파일이 어디있는지를 모르겠습니다.
-
해결됨ARM Cortex-M 프로세서 프로그래밍
DMA 관련한 강의도 제작해주실 수 있으신가요 ?
안녕하세요. 강사님강의를 처음부터 보기 시작하고 있는데 해당 강의에 DMA 관련 내용은 없는 것 같은데향후에 DMA 관련도 다뤄주실 수 있으실까요 ? 혹시 FreeRTOS 강의에서도 다루시지는 않는걸까요 ?
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
3.2.1.4 실습과 관련한 질문
안녕하세요 바쁘신데 고생 많으십니다. stack frame을 보는 명령어 v.f 수행 시에 아래 사진과 같이, Stack Frame을 찍지 못하는 것 같습니다. 이와 관련하여 제가 생각한 문제점은실습 환경 구축을 위해 Trace32 프로그램에서 Arm -> Register -> Practice2 (Armv7)로 진행하였습니다. Practice 1은 Armv8 아키텍처로써 현재 강의와는 맞지 않다고 생각했습니다. 이에 따라 예제 파일을 열게 되면 아래와 같은 Warning이 발생합니다.Warning: file C:\home\mike.seo\osc_src\rpi_5_4_kernel\linux\net\core\dev.c not found 이에 따라 현재 모드 마다 SP,LR,PC Register의 값이 강의 내용과 다른 상황입니다. 관련해서 답변 주시면 감사하겠습니다.추가적으로 SoC Engineer 입장에서는 JTAG/SWD Port가 CPU에서 뽑아져 나오는 것으로 알고 있습니다. 하지만 Trace 32는 프로그램인데 실제 하드웨어 포트와 Trace32라는 프로그램을 연결해주는 것이 무엇인지 궁금합니다. 관련해서 답변 주시면 감사하겠습니다.
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
56강 bcm2835-mailbox.c 파일 질문
빌드를 해보던 도중printk("dev_id:0x%x \n", (unsigned int)action->dev_id); 해당 줄에서 언사인드 인트가 포인터 인트 형 문제라고 하는데printk("dev_id:%p\n", action->dev_id);이렇게 바꿔서 진행해도 될까요?아니면 워닝 무시하고 해보면 되나요?
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
'drivers/soc/bcm/bcm2835-power.o 에러 입니다.
실수방지 드라이버 만들기-1 10:00에서'drivers/soc/bcm/bcm2835-power.o가 찾을수 없다고 나오는데 보니까 bcm2835-power.c, raspberrypi-power.c 파일은 저폴더에 없던데 어디서 나오는건가요?
-
미해결리눅스 커널의 구조와 원리: 인터럽트 후반부 [저자 직강 1부-6]
TRACE 32만을 이용한 출력 Callstack 의 cpu 번호 파악
안녕하세요. Linux kernel 강의를 듣고 있는 수강생입니다제가 Crash utility 를 이용해서 쉽게 해당 dump 의 최종 프로세스의 cpu 번호는 알 수 있는데, 만약 현장에서 Crash Utility 설치가 불가피해서 사용을 못하고(시간상이나 알수 없는 원인으로 설치가 안될때)오직 TRACE 32 만으로 SMP(멀티코어) 시스템의 DUMP 발생 원인이 된 프로세스의 CPU 번호를 파악하고 싶을때는 어떤 방법을 이용할 수 있을지 궁금합니다. 예를들어 아래와 같이 상황에서 해당 Soft IRQ 를 발생시킨 CPU 번호를 오로지 TRACE 32 를 이용해서 찾아야 한다고 했을때 , 어떻게 해야하는지 궁금합니다사실 교수님께서 설명하셨던것 같은데, 기억이 잘 안나서요. 죄송합니다.... 감사합니다.
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
라즈베리파이5 도 상관없을까요
혹시 라즈베리파이5 로 진행해도 크게 다른점은 없을까요?? 명령어나 이런부분이 조금씩 다르다면 AI도움 받아서 진행하고 이외에 구조라던지 동일하면 5로 진행해보고 싶은데 아니면 그냥4B로 해야될까요
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
드라이버 작성 포맷
안녕하세요 선생님, 덕분에 linux kernel을 쉽게 접근하여 배우고 있습니다.debugfs 드라이버 코드 작성하는 것을 보니 어느정도 틀이 있는 것 같더라구요.(init 처리, set/get 등록)모든 드라이버 작성이 위와 비슷한 틀로 작성이 되는 것일까요??
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
Arm Architecture 관련 공부
안녕하세요임베디드 개발을 하고 있는데, Arm architecture에 대한 지식은 거의 없어서 강의를 수강하고 있습니다. Arm architecture를 공부하기 위해서 필수적으로 봐야할 문서나 사이트가 있는지 궁금합니다.감사합니다.
-
해결됨시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)
스택에 PUSH되는 PC 값
안녕하세요, 섹션15. AAPCS : TRACE32 디버깅 실습 (2024년 버전) 의 119. Armv7-A: BL 명령어 실행 후 스택 Push 및 Pop 디버깅 실습 (Practice1-Part2) 강의에 3분10초쯤에서 push {r4,r5,r11,r12,r14,pc} 명령을 실행하는데, 왜 스택에 push 되는 pc 값이 C0253990 인지를 모르겠습니다. 그러니까 스택 화면(d.v 윈도우)에서 스택 주소(CC181BFC)에 push되는 값이 pc 값이 C0253990으로 확인되는데, 해당 push 명령은 C0253988 이고, 명령 실행시 레지스터 화면(r 윈도우)에서도 pc 값이 C0253988에서 C025398C로 변경되는데 스택에 push되는 pc 값은 왜 C0253990 ... 인가요 ... ? ++++개인적으로 조사해보니...ARMv7에서 파이프라인 성능향상을 위해 2개의 명령어를 prefetch 해놓았기 때문이라고 하는 것 같은데요 ... 그럼 trace32의 레지스터 화면(r 윈도우)의 값이 잘못되고, 스택 메모리 화면(d.v 윈도우)의 값이 맞다는걸...까요?
-
미해결ARM Cortex-M 프로세서 프로그래밍
그림들도 해석 할 수 있어야 하나요?
3가지 그림을 보고 각각 어떤것을 추측할 수 있어야 되는 건가요?
-
미해결리눅스 커널의 구조와 원리: 인터럽트 [저자 직강 1부-5]
TRACE32 관련 문의 내용
안녕하세요. 이번 1부- 5강 인터럽트 강의를 듣고 있는 학생입니다. 해당 강의를 들으면서 6. bcmgenet_isr_0 인터럽트 핸들러 디버깅-TRACE32 (Part.1) 를 수강하면서 2-irq-dump 덤프 강의자료로 실습을 진행하는데 TRACE32 의 콜스택이 깨진건지 첨부한 사진과 같이 나옵니다. 처음에는 스택 관련 이슈로 인해서 깨졌다고 생각해서 Crash utility 의 bt -s 명령어 및 log -m 의 출력된 콜스택과 레지스터 셋 정보를 이용해 이전 강의에 들었던 스택 복구를 시도해보았습니다. 하지만 전부 다 콜스택 복구가 안되는것을 확인하여 이것이 어떤 문제인지 궁금해서 질문드립니다. [해당 2-irq-dump를 Load-Dump - Dump1 으로 불러오면 나오는 화면][불러올때 아래에 뜨는 에러메세지]말씀드린 것처럼 Crash utility는 정상동작하며, TRACE 32 만 위와 같이 콜스택이 전부 깨져서 나옵니다.아래는 해당 프로그램을 실행하는 작업환경입니다.Host OS : Window 11감사합니다.
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
ftrace를 사용하면서 궁금한 점.
현재까지 ftrace라는건 어떤 함수를 추적하고 그 로그를 볼 수 있구나라는것을 알았고, ftrace로 혼자 분석하고 싶다는 생각이 들었습니다.강의에서 프로세스가 종료될 때 do_exit()같은 함수가 호출된다! 라는것을 전제하고 이것을 ftrace에 등록해서 로그분석을 하고있는데,do_exit()이 호출된다는건 어떻게 알 수 있을까요??
-
미해결신입 개발자를 위한 Armv7-A Architecture Overview (저자 직강)
강의자료 문의
안녕하세요 강사님.강의자료 제공이 가능한지 문의드립니다!
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
install.txt를 실행하는 이유에 대해서.
라즈베리파이에 OS를 이미 깔아둔상태에서,커널소스 다운 -> 빌드 까지는 왜 하는지 알겠는데install.txt를 왜 해야하는건가요??기존의 라즈베리파이 OS에 다운받고 빌드한 커널을 덮어 씌우는건가요???그렇다면 왜 덮어 씌워야하나요???기존에 깔았던 OS가 라즈비안이기 때문에, 정통 linux로 교체하기 위해서 인가요???
-
미해결시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 1부 저자 직강 (2024년 버전)
유저 모드 뱅크드 레지스터 질문입니다
armv7 뱅크드 레지스터 관련 trace32 실습을 하던 중 생긴 질문입니다. 해당 툴을 사용할 때 usr 모드의 R8-R14가 뱅크드 레지스터인 것 처럼 보입니다. 이 중 실습과 ARM 공식 문서를 통해 USR 모드 또한 R13과 R 14 를 뱅크드 레지스터를 갖는 것으로 판단했는데 맞는 건가요?"The User, IRQ, Supervisor, Abort, and undefined modes each have two banked registers mapped to r13 and r14, allowing a private SP and LR for each mode."ARM 문서 내용입니다.실습의 경우 다른 동작 모드에서 USR 모드로 돌아올 때의 R13,14 값으로 뱅크드 레지스터처럼 동작하는 것을 확인했습니다.