VEDA 복습/리눅스, 리눅스 프로그래밍
VEDA 48일차 - 리눅스 드라이버
잡학다식을꿈꾼다
2025. 5. 27. 01:33
반응형
기본 : 유저 모드와 커널 모드로 분리되어 있다. > 커널 모드는 하드웨어 자원에 대한 권한이 있다.
어플리케이션(유저 모드)은 시스템 자원이 필요할 때 커널에 요청한다.
라즈베리 파이 SoC
ripi 1 BCM835
ripi 2 BCM836
ripi 3 BCM837
ripi 4 BCM711 <= 현재 사용 중
ripi 5 BCM712
리눅스 커널의 특징 : 모놀리틱 커널
1. micro architecture kernel :
구조적(well defined), 체계적, 관리에 용이
2. monolitic architecture kernel :
비구조적, 성능을 위한 최적화로 코드가 이상해짐(보기 어려워짐, 시대적 한계), 모듈(module)의 등장(비구조적인 시스템을 보
완 in kernel), 모듈 형태로 드라이버를 제작한다.
드라이버도 종류 별로 있다. => 드라이버는 각 장치에 접근한다.(실행 환경에 대한 부분 중요***)
드라이버 제작시 고려할 점
1) 드라이버는 커널에서 동작한다 > 잘못 메모리에 접근하면 큰일난다.
2) 콜백 함수를 제공해야 한다 => file operation, interrupt service routine
3) 커널 기능을 이용해야 한다. => 메모리 할당, 인터럽트, 동기화
4) 제작 형태를 결정해야 한다.(커널 형태, 모듈 형태)
치과 때문에 조퇴(다음 날 보충해서 내용 작성)
반응형