LinuxFB + DirectFB同时?
我有一个嵌入式plarform,它有2个图形层(/ dev / fb0和/ dev / fb1)。
我想使用2个独立的进程:
一个直接使用/ dev / fb0(原始模式,没有视频库)。
另一个使用/ dev / fb1到directfb。
我可以启动第一个并运行良好(我正在使用linux open函数打开/ dev / fb0并直接写入)。
当我尝试启动第二个时,它会陷入directfb初始化。
如果我正在尝试使用/ dev / fb1,我无法理解为什么directFb会锁定/ dev / fb0。
根据@shodanex的请求,这是第二个进程的strace输出:
[pid 1483] open("/etc/directfbrc", O_RDONLY) = 7
[pid 1483] fstat64(7, {st_mode=S_IFREG|0755, st_size=472, ...}) = 0
[pid 1483] old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2f375000
[pid 1483] read(7, "system=fbdevn#no-vtn#no-vt-switc"..., 4096) = 472
[pid 1483] write(2, "(!) DirectFB/Config 'depth': OK!"..., 39(!) DirectFB/Config 'depth': OK!!!! 32
) = 39
[pid 1483] read(7, "", 4096) = 0
[pid 1483] close(7) = 0
[pid 1483] munmap(0x2f375000, 4096) = 0
[pid 1483] open("/root/.directfbrc", O_RDONLY) = -1 ENOENT (No such file or directory)
[pid 1483] write(2, "n =======================| "..., 270
=======================| DirectFB 1.0.1 |=======================
(c) 2001-2007 The DirectFB Organization (directfb.org)
(c) 2000-2004 Convergence (integrated media) GmbH
------------------------------------------------------------
) = 270
[pid 1483] gettid() = 1483
[pid 1483] rt_sigaction(SIGHUP, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {SIG_DFL}, 8) = 0
[pid 1483] rt_sigaction(SIGINT, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {SIG_DFL}, 8) = 0
[pid 1483] rt_sigaction(SIGTERM, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {SIG_DFL}, 8) = 0
[pid 1483] rt_sigaction(SIGABRT, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {SIG_DFL}, 8) = 0
[pid 1483] rt_sigaction(SIGFPE, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {0x29d6f860, [], 0}, 8) = 0
[pid 1483] rt_sigaction(SIGILL, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {0x29d6f860, [], 0}, 8) = 0
[pid 1483] rt_sigaction(SIGQUIT, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {SIG_DFL}, 8) = 0
[pid 1483] rt_sigaction(SIGSEGV, {0x2a323fc0, [], SA_SIGINFO}, {0x29d6f860, [], 0}, 8) = 0
[pid 1483] rt_sigaction(SIGTRAP, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {SIG_DFL}, 8) = 0
[pid 1483] rt_sigaction(SIGBUS, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {0x29d6f860, [], 0}, 8) = 0
[pid 1483] rt_sigaction(SIGXCPU, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {SIG_DFL}, 8) = 0
[pid 1483] rt_sigaction(SIGXFSZ, {0x2a323fc0, [], SA_NOMASK|SA_SIGINFO}, {SIG_DFL}, 8) = 0
[pid 1483] write(2, "(*) DirectFB/Core: Single Applic"..., 64(*) DirectFB/Core: Single Application Core. (2010-03-25 20:40)
) = 64
[pid 1483] open("/usr/lib/libdirectfb-1.0.so.1", O_RDONLY) = -1 ENOENT (No such file or directory)
[pid 1483] open("/usr/lib/directfb-1.0-0/systems", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 7
[pid 1483] fstat64(7, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
[pid 1483] fcntl64(7, F_SETFD, FD_CLOEXEC) = 0
[pid 1483] getdents(7, /* 10 entries */, 4096) = 288
[pid 1483] open("/usr/lib/directfb-1.0-0/systems/libdirectfb_fbdev.so", O_RDONLY) = 8
[pid 1483] read(8, "177ELF111 3 * 1 200&