미결2010. 11. 16. 15:32

그림은 따라....올리다 다시 여기 못 들어오겠다.
그림은 꼭 올려라 !!!
* 모든 Device와 Driver는 Bus 소속이어야 한다.
Device : resource(I/O base, IRQ, Private)
Driver : 제어코드
Source 참조

1) Udev (A Userspace Implementation of devfs)
 * 실제로 존재하는 device에 대한 file node 생성을  user space자동화 하도록 수서
 * 보통 /dev/ 디렉토리에 장치 노드 파일들을 만들거나 제거한다. /dev/ 디렉토리는 udev 설정에서 변경 할 수 있다.
 * 유저 공간(Userspace)에서 동작하며, 이는 hotplug + sysfs를 이용하여 가능하다.
 * Udev는 hotplug 서브시스템의 일부로서, 만일 장치가 시스템에 추가 되거나 제거되면 hotplug에 의해 udev가 호출된다.
   udev는 hotplug 이벤트를 받아 sysfs에서 필요한 정보를 얻어 /dev/ 장치 파일을 생성한다.
  
2) Device Node 생성 메커니즘
 * 실제 디바이스가 detect 되면 
 * sysfs에 등록이 되고 , user space에서는 /sys에 등록
 * udev daemon으로 netlink sokcket을 이용하여 새로운 디바이스 생성 되었다는 메시지 전송
 * udev daemon은 /sys의 디바이스 내용을 이용 /dev에 device node 생성
 * sysfs에 등록이 되어야만 device node생성 가능*
==>Android의 init은 udev와 관련된 device node 생성 메커니즘도 포함하고 있으며, init.rc와 init.%hardware%.rc를 로딩하
    여  처리 (ex : 에뮬 => init.goldfish.rc) 

Posted by 마대렐라

댓글을 달아 주세요