根据我对linux程序开发的感觉和这两年的观察, 总结了一些问题:
1. 开发人员分散, 开发方向散乱, 重复开发太多.
2. 兼容性差, 对闭源程序不够友好, 往往不同的发行版需要单独编译才可运行, 导致发布困难.
3. 图形接口不成熟不统一, 图形界面软件开发代价高昂, 因此缺少商业软件支持.
4. GNU过于理想化, 脱离正常的商业模式, 不利于滚动发展.
5. 用户过于理想化, 拒绝接受闭源商业软件, 导致开发商没有积极性.
6. 开源导致赢利模式相对狭窄, 捐助不解决根本问题.
7. 没有统一的现代的模块化设计.
未来有希望改善的是第2,3,5,7几条, 其他则基本改不了, 都是根本问题. 兼容性方面随着发展一定会越来越好, 说不定能够实现大统一. 但图形接口统一则不可能短时间内做到. QT和GTK是两个不同方向的东西, 很难看到统一的前景. X系统短期内也看不到消亡的迹象, 再提升也不可能有windows的界面响应速度, 内核图形界面还是遥遥无期. 这部分比现在的内核大很多, linus当然不会考虑, 如果加进去几乎一定会摧垮现有核心的稳定性, 谁愿意冒这个风险? linus在有生之年估计都不会冒险把GUI加到内核里, 他已经功成名就了, 没必要去冒险.
Unix系统天然的设计就不是给普通大众用的, 不是从用户的角度来设计, 而是从计算机角度来设计的, 所以80年代会败给DOS, 90年代败给win95,98, DOS从unix上吸取了很多东西, 但却不是完全照抄, 可以说是取精华去糟粕才实现了成功. 而linux却几乎完全是仿unix, 没有太大的创新和突破, 没有linux大家或许就用bsd了, 其实没什么区别, freebsd也是很稳定的,结构也大体相同, 跑桌面也没问题.
所以, 要我说的话, linux其实是没有自己个性的一个unix复制品. 没有个性不是个好事, 服务器,freebsd够好了, 桌面,linux还不够强. 不加强桌面部分的开发, linux很难走进大众.
估计5年后, linux的桌面占有率会在3~4%左右, 超过5%的可能性不大. 作为领跑桌面的ubuntu来说, 能否保持到那个时候还是个未知数. 桌面不大可能给他们带来赢利, 而且这两年的distrowatch显示, 他们的点击数据也在下滑状态, 情况并不太乐观.