当前位置:首页 > 每日看点 > 正文内容

Linux 为何不把图形用户界面写入内核?

卡卷网8个月前 (12-06)每日看点152

早先是没能力,之后是没必要,现在是不应该。

先插一句,现代Windows的图形也不在内核里,只是还保留一组兼容。

90年代时的计算机都是两套图形系统:一套是普通软件窗口API,Windows上不论是MFC还是ATL背后都是gdi32.dll,Linux无论GTK还是QT背后都是X,后者用CPU渲染出一张图片,然后送入显存,显示适配器把显存转成VGA信号输出;另一套是游戏,他们会调用DirectX/OpenGL,后者用GPU渲染出3D图像,然后直接进显存输出。当时玩游戏进入退出时屏幕都会黑一下,这就是两套图形系统都要分别设置显卡参数,显卡在切换状态。同时还有个全屏模式,游戏会独占屏幕,其它应用和桌面都不显示。

显然图形一这种软件渲染模式效率低下,进内核就是好选择。在微软里,盖茨一声令下这事就妥了。但Linux做不到,因为他直管内核,图形是另一个叫XFree86的组织实现的,让两个互不隶属的国际组织相互协调做复杂架构升级是不可能的。所以Windows的图形能力很长时间里都是碾压的。

然后就到了Windows Vista,盖茨给出了放到今天仍然先进的架构,其中图形系统也做了大改。应用改为调用GDI+,后者调用Direct2D,背后就是DirectX。也就是说整个Windows桌面就是一个大游戏,所有渲染都是GPU完成的,进出游戏也不会黑屏了,游戏也能窗口玩了。全GPU硬件渲染的效率远高于CPU软件渲染,这时图形就没必要进内核了。

Linux这边也没闲着,虽然还是保留了X的架构,但增加了扩展接口,比如著名的AIGLX。新接口让应用先找OpenGL渲染,然后通知X去找GPU要结果,相当于旧架构融入了新技术。应用只要用新版GTK/QT重新编译就能享受提升。这时Linux的图形能力在理论上是不亚于Windows的,做不好那是显卡驱动的锅,所以Fuck Nvidia。

到了今天,Windows架构改动不大,Vista打下的基础太好了,只有一些小改动。一个是原先进了内核的旧图形系统win32k.sys,微软出于向后兼容还继续保留,但总出bug,所以一气之下用Rust重写了。另一个是DirectX升级到10,彻底释放了CPU,进一步提升GPU利用率。

Linux这些年倒是大改革,新的Wayland机制废掉了X,相当于以新技术为基础兼容老架构。走到这其实三大OS的图形系统已经非常接近了,都是应用直接找GPU渲染,然后再由窗口管理器整合显示,无非是渲染接口不同。此时再说图形进内核就是不应该了。

但三家所用的DirectX/Vulkan/Mentle虽然长相不同,但内在机理都一样,所以可以互转。能在Linux上完Windows 3A大作就是系统背后把DX指令翻译成了Vulkan,效率还不低。

总之,图形进内核是个历史的插曲,今天不必在意了。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/3222.html

分享给朋友:

相关文章

为什么程序员不自己开发微信小程序这类似的东西赚钱?

为什么程序员不自己开发微信小程序这类似的东西赚钱?

你如果有好的想法是可以挣钱的首先大家说的个人资质限制确实多,也不建议直接拿个人资质去用小程序盈利,因为很麻烦我说一下我的大体操作:1.首先去申请个体户,这个可以用住宅来注册申请,而且速度很快就几天就下来了,经营类目主要是互联网销售这些,不过...

B 站上有哪些很好的学习资源?

B 站上有哪些很好的学习资源?

前!方!高!能!精选了多位学习Up主,不乏百万粉丝的大V,还有超多珍贵的学习资源推荐。进了小破站,完全不用担心学完了该怎么办?因为根本学不完啊!!!B站的学习干货实在太多了!语言学习葉子先生酱https://space.bilibili.c...

有哪些好用不火的软件?

有哪些好用不火的软件?

20个无敌冷门的小众APP,好用到内存爆了都不想卸载,个个是宝藏!特别是第4、13、19个,大多数人都没玩过~喜欢可以双击屏幕取走哦~1、【毒汤日历 】 – 你的每日快乐源泉[iPhone/Android]好用指数:⭐⭐⭐⭐⭐下载地址:各...

想要在双 11 换一台全面无短板的新手机,有没有「闭眼买」的机型推荐?

想要在双 11 换一台全面无短板的新手机,有没有「闭眼买」的机型推荐?

最近一个月各大手机厂商的旗舰机扎堆发布,不知道大家看爽了没?这一代的性能续航大提升,最低 3599 元就能买到,同时老款也有不小的降幅,今年双 11 算是相当适合换手机的节点了!这次,小黑就给大家推荐双 11 期间值得购买的手机...150...

打印速度慢,是不是打印机cpu不行?

打印速度慢,是不是打印机cpu不行?

打印机是机械设备,cpu内存硬盘它也有但这只是它的电控部分,打印机类似于汽车属于机电一体化设备和电脑不是一个类型的产品。很多人总是认为打印机和电脑是一类产品,实际上这是一个误区,电脑是it(Information Technology)信息...

为什么大家都说手机性能永远超不过PC?

最新的天玑9400牛逼吧,堪称PC级CPU,测试成绩16W功耗能跑9500分,1.8W能跑3000分,GPU也差不多是这个情况。手机电池一般是4000-5000毫安时,电压3.7V。也就是说,手机正常满载5W功耗下,这个电池能支持运行4个小...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。