그래픽 프레임 버퍼 /dev/fb0(Ubuntu 12.04)에 직접 쓰려고 하면 그래픽 화면이 변경되지 않습니다.
Ubuntu 12.04는 /dev/fb0의 사용을 무효화합니까, 아니면 어떻게든 활성화해야 합니까?
답변1
프레임버퍼를 두 번째로 활성화해야 ioctl()
작동합니다.
/* Refresh buffer manually */
vi.activate |= FB_ACTIVATE_NOW | FB_ACTIVATE_FORCE;
if(0 > ioctl(fd, FBIOPUT_VSCREENINFO, &vi)) {
printf("Failed to refresh\n");
return -1;
}