블록 디바이스 등록(모듈 초기화 함수에서 수행)
- blk_init_queue() => register_blkdev() => alloc_disk() => add_disk()
queue = blk_init_queue (static void request_fn,spin_lock_t*lock);
register_blkdev(unsigned int major, const char*name);
- major 번호는 문자드라이버와 중독될 수 있음
alloc_disk()
-gendisk 구조체 할당
-파티션 검출
블록 디바이스 제거(모듈 제거 함수에서 수행)
-del_gendisk()->put_disk()->unregister_blkdev()->blk_cleanup_queue();
blk_cleanup_queue(struct request_queue *queue);
int unregister_blkdev(unsigned int major,const char *name);
'3학년2학기 > 임베디드시스템' 카테고리의 다른 글
Block device operations 구조체 (0) | 2019.10.16 |
---|---|
Request 함수 (0) | 2019.10.16 |
블록 디바이스 드라이버 (0) | 2019.10.16 |
임베디드와 윈도우의 차이점 (0) | 2019.10.16 |
ch6 아두이노 실습 목차 (0) | 2019.10.16 |
댓글