发新话题
打印

Linux操作系统下使用FrameBuffer直接写屏

本主题由 mony 于 2008-1-28 18:45 移动

Linux操作系统下使用FrameBuffer直接写屏

因为Linux是工作在保护模式下,所以用户态进程是无法象Dos那样使用显卡BIOS里提供的中断调用来实现直接写屏,故Linux抽象出FrameBuffer这个设备来供用户态进程实现直接写屏。 在继续下面的之前,先说明几个背景知识:

FrameBuffer主要是根据VESA标准的实现的,所以只能实现最简单的功能。
由于涉及内核的问题,FrameBuffer是不允许在系统起来后修改显示模式等一系列操作。(好象很多人都想要这样干,这是不被允许的,当然如果你自己与驱动的话,是可以实现的)
对FrameBuffer的操作,会直接影响到本机的所有控制台的输出,包括XWIN的图形界面。
  好,现在可以让我们开始实现直接写屏:

打开一个FrameBuffer设备
通过mmap调用把显卡的物理内存空间映射到用户空间
直接写内存。
  好象很简单哦~
想做一个徘徊在牛A和牛C之间的人,却总是介乎于傻A与傻C之!!

              走自己的路,让狗去咬吧!

一直盼望有一段情天涯共明月,一直盼望有一次爱就刻骨铭心。

TOP

发新话题