wangw
驱动牛犊
驱动牛犊
  • 注册日期2002-12-18
  • 最后登录2003-01-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:3468回复:11

请教如何学习开发显卡驱动程序

楼主#
更多 发布于:2002-12-18 03:40
我现在正在学习开发显卡驱动程序,已经学习了<inside windows 2000>, <windows driver model>, 并看了ddk文档。由于以前没有接触过这一领域,不知下一步应怎样学习?重点应放在什么地方?
另:不知在专业显卡开发公司内的员工日常主要开发哪一部分?

十分感谢各位的建议及信息!!!

最新喜欢:

snowwintersnowwi...
leerom
驱动小牛
驱动小牛
  • 注册日期2001-06-08
  • 最后登录2010-08-31
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望22点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-12-18 09:40
个人认为你现在的重点应该放在了解一些图形学、GDI、OpenGL和DirectX方面的知识。这样对你的编写驱动程序会有很大的帮助,机械工业出版社的《Windows图形编程》是很好的参考,建议每个想写显卡驱动的兄弟买一本放在手边。
NVIDIA平均6-9个月开发一款新的显示芯片,对于下游的板卡生产商来说没等你看完芯片的资料新的东东又来了,所以现在大家都用芯片生产商的公版布线图和公版的驱动程序。真正的驱动开发应该是芯片的生产商,其他人只是拿来公版驱动来修改修改。

[编辑 -  12/18/02 by  leerom]
leerom
wangw
驱动牛犊
驱动牛犊
  • 注册日期2002-12-18
  • 最后登录2003-01-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-12-18 11:32
十分感谢!!!
我现在打算申请ATI的编写驱动程序的职位,不知重点应放在什么地方?此外在网上哪里可以得到相关的资料?(因为身在国外,买书不方便)
再次感谢leerom的帮助!
leerom
驱动小牛
驱动小牛
  • 注册日期2001-06-08
  • 最后登录2010-08-31
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望22点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-12-18 12:27
本书的英文版为《Windows Graphics Programming: Win32 GDI and DirectDraw》,到amazon上查查。对于ATI这种大公司来说进门后应该会有完善的培训。假如是我招人的话,有些显示驱动经验的当然是最好的。如果没用写显示驱动的经验的话那么我优先录取那些对图形学原理、GDI、OpenGL和DirectX(应用层)非常熟悉的人。最后选择熟悉系统驱动的人。这只是个人看法,因为显示驱动和普通的系统驱动有很大的区别,但是和GDI、OpenGL、DirectX的API函数却一些对应的关系。
祝申请成功!
leerom
cardic
驱动牛犊
驱动牛犊
  • 注册日期2002-11-15
  • 最后登录2006-06-11
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-01-08 20:30
羡慕啊!
想和你一起开发驱动E_MAIL:CARDIC@163.COM
BSOD
驱动牛犊
驱动牛犊
  • 注册日期2001-09-28
  • 最后登录2004-09-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-01-11 12:14
WangW

Video driver is a lot of code. There are video Miniport, 2d, 3d drivers, DirectX, OpenGL, fireGL, WDM steaming(video capture)... Which one do you want to learn?

I\'m currently working for ATI in Toronto as a driver developer. I\'m not interested at video driver at all, instead but as you know currently we don\'t have many choices, eh?



[编辑 -  1/22/03 by  BSOD]
COOL NDIS
cid.xu
驱动牛犊
驱动牛犊
  • 注册日期2002-11-11
  • 最后登录2004-12-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-01-27 11:56
to BSOD:

我想在linux下通过Call BIOS来实现 设置显示器显示模式的功能,怎样可以实现哪?

通过这个方式应该在各种显卡上可以通用吧?

能否指点一下,谢谢先!!

lifeng
驱动牛犊
驱动牛犊
  • 注册日期2001-05-01
  • 最后登录2010-07-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-02-18 13:59
显示卡分为vga卡和svga卡,svga卡兼容vga卡
vga卡有工业标准,可以通过寄存器一级的编程来控制,也可以通过BIOS中断控制,但显示模式,分辨率较低.
svga卡无工业标准,无通用寄存器结构,一般遵守vesa规范,可通过BIOS中断控制.
若想通过寄存器对svga卡进行控制,必须找到各厂家各自的寄存器结构,网上有一些相关资料可搜索到
cid.xu
驱动牛犊
驱动牛犊
  • 注册日期2002-11-11
  • 最后登录2004-12-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-02-18 14:33
我这里是在linux svgalib下编写驱动,但是使用原厂的reg无法实现高分辨率的设置(1024*768及以上),所以需要call bios。
我试过dos下通过int10设置vesa bios,可以设置,但是在linux用户模式下好像不能用中断,起码我不知道怎么用?
有人知道如何在linux用户模式下设置显示模式吗?
或者在linux用户模式下对中断进行操作!

谢谢了!!
resou
驱动牛犊
驱动牛犊
  • 注册日期2002-06-20
  • 最后登录2008-11-10
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望3点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-02-21 10:54
你应该学习接口技术
lifeng
驱动牛犊
驱动牛犊
  • 注册日期2001-05-01
  • 最后登录2010-07-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-02-21 12:00
vesa BIOS使用的工作模式是8086实模式或v86模式,linux却是工作在保护模式下,在linux下无法使用实模式的vesa BIOS代码,除非自己写系统代码,将机器切换到V86模式.
cid.xu
驱动牛犊
驱动牛犊
  • 注册日期2002-11-11
  • 最后登录2004-12-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-03-03 15:52
for lifeng

非常感谢你的指点,只是我在网上没有找到相关资料,不知你有没有什么好的网站或书推荐?

另外请教大家,我如何把分给解答我问题的人?谢谢!
游客

返回顶部