2016-10-14 13 views
1

Linux 프레임 버퍼 드라이버로 구현 된 가상 원격 프레임 버퍼 프로토콜을 가정하십시오.Linux 프레임 버퍼 드라이버가 내용의 모든 변경 사항에 대한 알림을받을 수 있습니까?

프레임 버퍼의 메모리가 mmap 매핑 또는 유사하게 사용자 공간에서 직접 기록 될 때 이러한 드라이버가 알림을받을 수 있습니까?

http://lxr.free-electrons.com/source/drivers/video/fbdev/skeletonfb.c?v=4.4#L653은 정보 작성자가 구현할 수있는 모든 기능을 보여 주지만, 언뜻보기에는 가능한 후보가 될 xxxfb_mmap 또는 xxxfb_write 구현을 볼 수 없습니다.


업데이트 : 메모리를 통해 쓸 때 난 그냥 http://lxr.free-electrons.com/source/drivers/video/fbdev/core/fbmem.c?v=4.4#L812

에서 fb_write을 본 적이

이이 프레임 버퍼는 또한 파일 기술자를 통해 기록 또는 경우에만 호출됩니다 mmapping?

메모리 내 프레임 버퍼의 내용이 변경된 경우 변경 내용을 검색하는 대신 계속 검색하는 방법을 찾고 있습니다.

답변

1

당신은 이연 IO를 사용할 수 단계는 here 설명 :

static void hecubafb_dpy_deferred_io(struct fb_info *info, 
            struct list_head *pagelist) 
{ 
} 

static struct fb_deferred_io hecubafb_defio = { 
    .delay  = HZ, 
    .deferred_io = hecubafb_dpy_deferred_io, 
}; 

// init 
info->fbdefio = &hecubafb_defio; 
fb_deferred_io_init(info); 

// cleanup 
fb_deferred_io_cleanup(info);