当前位置: 技术问答>linux和unix
X-window如何获取Framebuffer分辨率?
来源: 互联网 发布时间:2016-07-13
本文导语: 各位达人, 目前,我们的X-Window起来以后,查看显示分辨率是我们的LCD屏的分辨率1024 X 600,但是屏幕没有名字,显示为unkown。我想知道X-org是从Framebuffer驱动的哪里获取屏幕类型和分辨率信息的?如果我想加...
各位达人,
目前,我们的X-Window起来以后,查看显示分辨率是我们的LCD屏的分辨率1024 X 600,但是屏幕没有名字,显示为unkown。我想知道X-org是从Framebuffer驱动的哪里获取屏幕类型和分辨率信息的?如果我想加入多个分辨率应该怎么办?
目前,我们的X-Window起来以后,查看显示分辨率是我们的LCD屏的分辨率1024 X 600,但是屏幕没有名字,显示为unkown。我想知道X-org是从Framebuffer驱动的哪里获取屏幕类型和分辨率信息的?如果我想加入多个分辨率应该怎么办?
|
这个比较复杂的说。。。
|
up
|
首先要看你XORG下上的是哪个显卡驱动, 如果上的是FBDEV驱动才跟framebuffer有关吧, 如果是上其他的驱动比如是上AMD的GEODE, 那么对应的分辨率的设定(如有哪些分辨率)那都是在GEODE的源码中完成的, 最后由XORG.CONF来决定上哪个分辨率.
|
#include
#include
#include
#include
#include
int main () {
int fbfd = 0;
struct fb_var_screeninfo vinfo;
struct fb_fix_screeninfo finfo;
long int screensize = 0;
char *fbp = 0;
int x = 0, y = 0,i;
long int location = 0;
/* Open the file for reading and writing */
fbfd = open("/dev/fb0", O_RDWR);
if (fbfd
#include
#include
#include
#include
int main () {
int fbfd = 0;
struct fb_var_screeninfo vinfo;
struct fb_fix_screeninfo finfo;
long int screensize = 0;
char *fbp = 0;
int x = 0, y = 0,i;
long int location = 0;
/* Open the file for reading and writing */
fbfd = open("/dev/fb0", O_RDWR);
if (fbfd