卡卷网
当前位置:卡卷网 / 每日看点 / 正文

30多年过去了,Windows还没有被Linux完全取代的原因是什么?

作者:卡卷网发布时间:2025-01-08 18:36浏览数量:79次评论数量:0次

呵呵。我就说一个点吧。Linux音频。

Linux音频较复杂,各层间有很多交叉,可能是最无序的子,并且它有两套音频驱动框架:OSS(OpenSoundSystem)和ALSA(AdvancedLinuxSoundArchitechte),所以底层驱动有OSS和ALSA两套API。ALSA经过多年的发展,基本一了Linux声卡硬件驱动层的接口,OSS渐退出,但是在ALSA之上的各个应用层,方案和软件繁多复杂,ESD,PulseAudio,JACK,GStreamer,这些组件各个为战,实现了不同的功能。

因为:

linux音频架构问题由来已久……远远你想像的复杂。如果你想理清从读取音频文件到最终从你的扬声器中播放出来这一过程中所用到的技术之间的关系的话,纸上的结构图足以像炸酱面一样混乱,而你根本找不到任何头绪。这是因为,音频本身就架构更加复杂。OSI模型每一层都有自己的作用域和功能,每一层几乎不会有任何交集,所以你绝对不会碰到任何混乱情况。但是,在linux音频上,却上演着这样的事情:没有明确的底层,各种音频技术各自为政。linux的音频架构有点像地壳构造,偶尔就地震一下,要不就火山爆发一下,上层结构则要使劲遮掩发生的一切。在上层结构中,存在很多应用层方案,包括ESD,PulseAudio,JACK,GStreamer,Xine,Phonon。这些应用层方案繁多复杂,各个为战,实现了不同的功能。

即使是内核中的ALSA方案。

ALSA是一个完全开放源码的音频驱动程序集,是由志愿者的开源项目,而OSS则是由公司提供的商业产品。ALSA包括<>驱动包alsa-driver(集成在内核源码),开发包alsa-lis,开发包插件alsaliplugins,设置工具包alsa-utils,声音相关处理小程序包alsa-tools,特殊音频固件支持包alsa-firmware,OSS接口兼容模拟层工具alsa-oss共7个子项目,其中只有alsa-driver是必须的。

也就是说,Linux音频太复杂了,我们只能通过开发包alsa-lis使用Linux音频。而不能像应用程序一样,打开设备灌入PCM。

这个东西首先要支持杜音效,环绕立体声,各种MIX,AUX。还有气人的混音功能。就是播放的音乐可以和你麦克风进行混音,之后从喇叭中播放。。俗称卡拉OK。

而且Linux音频一开始是OSS方案的。后来换成了ALSA方案。而ALSA方案还需要兼容OSS方案。甚至还要兼容AC97协议。是的,1997年的东西到现在还在用。

就这破玩意,你还想替换Windows。洗洗睡吧!!!

END

免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。

卡卷网

卡卷网 主页 联系他吧

请记住:卡卷网 Www.Kajuan.Net

欢迎 发表评论:

请填写验证码