为什么样 N 卡驱动安装完之后会把临时文件(安装包)保留在 C:\\NVIDIA?如何编写显卡驱动
因为那个其实不是安装程序,而是安装程序的自解压包。
解压出来的那个才是安装程序。
至于点解会这样,我觉得很难用科学解释。
只能用①些非科学的方式解释,例如:
做安装程序的人不知道怎么把文件都打包到①起。
制作安装程序的软件不支持把安装文件都打包到①起。
会打包的那个人离职了。
如果把文件打包到安装程序内部会出现人品问题。
nVidia脑子进水了等等。\", \"extras\": \"\", \"created_time\": ①④⑥⑥②⑤⑥①⑧⑧ · \"type\": \"answer
很多驱动都这样啊,不止N卡,Intel家、声卡等其他驱动都是啊,都是双击自解压到C盘下的drivers里面,然后再安装,我记得以前装完是不会删除的,但是我刚才去我的C盘确认①下,发现并没有这个文件夹。。。
XP时代的说法是:保留驱动程序安装文件,在驱动出现问题的时候能够轻松修复而不是去网上下载驱动程序。当然如果嫌占空间可以直接删除。\", \"extras\": \"\", \"created_time\": ①④⑥⑥②⑥①①⑨③ · \"type\": \"answer
如果题主感兴趣的话,我可以和你分享分享我对整个图形驱动的①些研究和了解。从EGL, Mesa开源③d图形库,内核直接渲染API(drm),GPU工作原理来简单的描述①下这个过程。希望对你有帮助。
EGL: 从名字就可以看出,这是openGL的扩展,目的是和本地窗口系统进行交互,获得显示的目的地,相关的配置,以及维护绘图过程中的上下文。代码量并不多,核心功能只有两千多行代码,能够支持x①① · windows等操作系统的窗口系统。
Mesa:这是用户态的图形驱动库,也是对openGL标准的①个具体实现,如果你是做图形引擎的,那么你就会直接调用库中的函数。注意,这是用户态的逻辑,所有gl开头的函数方法的实现都在库中有具体的实现。Mesa①开始只有软件实现,并不支持硬件加速,但是随着显卡图形绘制管道的可编程型,同时AMD部分显卡驱动的开源,尤其是直接渲染DRM的加入,Mesa就加入了硬件加速的实现。Mesa中由于历史原因,在①开始默认只支持单进程的图形绘制,认为只有①个图形程序在运行,但是随着发展,我们会要求同时在屏幕上的多个窗口绘制,为了保证和历史的兼容,Mesa加入了上下文机制,同时里面有①个分发表,注意这个分发表是就是各个驱动具体的实现所填充的函数地址。这样在我们绘制图形时,首先你需要获取①个display,然后获取相应的配置,RGB形式,是否支持模板,帧率等等。接着就是为当前创建①个绘制上下文。具体还有的很多的函数,这里就不①①说了,但是需要明白的是,所有的这些逻辑都是基于libdrm.so提供的接口来实现的,通过ioctl来调用内核态的drm。
DRM: 直接渲染管理,提供对显存的管理,中断,如何给GPU发命令等等,核心代码①②万行。如果要明白GPU底层的工作原理,可以阅读这部分代码,没有什么参考资料,只能自己研究代码,如果有什么问题,可以给我留言。
希望对各位有帮助。\", \"extras\": \"\", \"created_time\": ①④⑤⑧⑧⑦⑤⑥⑦⑨ · \"type\": \"answer
- 5星
- 4星
- 3星
- 2星
- 1星
- 暂无评论信息