디바이스 드라이버 공부시 커널에 대한 질문
글쓴이: zmfflr018 / 작성시간: 토, 2020/05/09 - 10:17오후
안녕하세요. 리눅스에 대해 공부하고 있는 직장인입니다.
오늘 가입하자마자 글을 쓰게 되었네요
다름이 아니라 라즈베리파이를 이용해서 디바이스 드라이버를 공부하고 있습니다.
커널 : 4.19.97-v7+
참고 도서 : IT EXPERT 리눅스 디바이스 드라이버
이 책에서 나오는 커널 및 예제는 2.4와 2.6이 있는데, 2.6버전을 참고 하고 있고요.
그런데 커널이 달라서 그런건지 제가 못하는건지 안되는게 있네요...
현재는 메모리 풀 예제에서 에러가 납니다.
이곳에서 공부하셨던 분들께서는
이런 경우 2.6커널을 쓰셨는지 아니면 현재 쓰는 커널에서 소스를 찾아보면서 바꾸고 계신지 궁금합니다.
답변 주시면 감사하겠습니다.
주말 잘 보내시길 바랍니다.
Forums:
지금 님에게 중요한건 빨리 개발 환경을 구축하고 책
지금 님에게 중요한건 빨리 개발 환경을 구축하고 책 예제를 시험해서 이해를 하는것이지 책 내용을 4.19에서도 테스트해보는게 중요한게 아니에요.
후자는 커널에 대한 이해가 있고 입맛대로 수정 가능할때나 해야할 일이지 지금 하시면 시간낭비밖에 안되요.
---------------
Happy Hacking!
그렇다면 어떤 커널이든 일단 코드를 작성해서 실행부터
그렇다면 어떤 커널이든 일단 코드를 작성해서 실행부터 시켜야겠군요.
감사합니다
아 깜빡하고 말씀을 드리지 않았는데, 컴파일할수 있는
아 깜빡하고 말씀을 드리지 않았는데, 컴파일할수 있는 환경은 구축해 놓은 상태입니다.
그러다가 컴파일 에러가 계속 뜨니 결과값을 볼 수가 없어
이걸 2.6버전으로 다시 환경 구축을 해서 해야하나 고민인 내용입니다.
제대로 된 문의를 올리지 않아 오해 없으셨길 바랍니다.
다시 한 번 답변 감사합니다.
리눅스 컴파일 예제의 경우 커널 버전이 다르면 안되는
리눅스 컴파일 예제의 경우 커널 버전이 다르면 안되는 경우가 허다합니다.
10년 전에 나온 책이면 10년 전의 리눅스 배포판을 해보시는 게 제일 좋습니다.
답변주셔서 감사합니다.
답변주셔서 감사합니다.
아무래도 라즈베리에서 그냥 쓰고싶다보니... 무작정 써버렸네요..
...
음... 근데 위키피디아에 따르면 2.6 *마지막* 버전이 2011년에 나왔다는데, 2.6을 사용하는 책을 지금 보면 나중에 써먹을 때 문제가 되지 않나요..?
그것도 그거지만 아예 컴파일이 안되니까 그게 더
그것도 그거지만 아예 컴파일이 안되니까 그게 더 고민이었습죠... 헤헤....
리눅스 커널 2.6 버전은 10년 버전이라 참고하기 어렵습니다.
커널 2.6 버전에서 지원하는 API는 10년 버전이라 4.19 버전에서 그대로 사용하기 어렵습니다.
커널 2.6버전의 코드를 분석하는 것보다 차라리 4.19 버전의 커널 소스 트리에서 보이는 샘플 코드를 활용하는게
더 빠를 것 같습니다.
(개인블로그)
http://rousalome.egloos.com
답변 감사합니다.좋은 하루 되시길 발바니다 ^^
답변 감사합니다.
좋은 하루 되시길 바랍니다 ^^
...
다른 책을 찾으세요. 오래 전 배포판은 일단 bare metal 위에 설치는 장치들이 요즘 것이라면 어려울 수 있습니다. 장치 드라이버가 그렇게 오래 전 커널에는 안 붙을 가능성도 있고요. 설령 장치 인식시켜서 커널을 설치해도 소프트웨어 저장소 관리가 안 되고 있어서 오직 CD에 있는 것만 설치 가능할 수도 있습니다. 가상 머신이라고 해도 커널 입장에서 보면 virtualized된 장치라는 점에선 비슷할 수 있는데, 요즘 VMWare, VirtualBox 같은 걸 쓰면 오래 된 커널과 가상화된 장치가 안 붙을 가능성도 작지 않을 듯 하구요.
이런 문제들을 떠나서도 10년 사이에 아마 커널 디자인과 구현이 상당 부분 변했을 텐데, 굳이 옛날 책으로 공부할 이유가 있는지 모르겠네요.
사실 책을 하도 찾다보니 없어서 내려가고 내려가다
사실 책을 하도 찾다보니 없어서 내려가고 내려가다 찾으거죠 뭐 하하 ^^;
커널 4.19 버전이라면 이 책을 보시는 건 어떨까요?
커널 4.19 버전이라면 이 책을 보시는 건 어떨까요?
이 책에서 소개하는 실습 코드도 라즈베리 파이에서 돌린 거거든요.
디버깅을 통해 배우는 리눅스 커널의 구조와 원리
http://www.yes24.com/Product/Goods/90085976
디바이스 드라이버 책은 아닌데 드라이버를 작성하다가 참고하시면 좋을 것 같아서요.
(개인블로그)
http://rousalome.egloos.com
앗 도서 추천 감사합니다 라즈베리 기준이라니...
앗 도서 추천 감사합니다
라즈베리 기준이라니...
댓글 달기