- 求职 : 机器学习
- 论坛徽章:
- 79
|
(1)Linux现在在服务器、桌面以及嵌入式系统方面发展怎么样,各有什么代表性的系统?这些系统的特色是什么?
Linux在服务器领域毫无疑问处于主流地位,由于其开源以及稳定的特性可以给企业节省大量的成本。在桌面环境下,坦率的说还是WINDOWS移植独秀,MAC也有一定的份额,相比较而言Linux的使用对于用户的确实是需要一定的要求,因而并不像其他系统那样易用,而且桌面环境的应用的开发也基本上都是针对WINDOWS的,在这样的情况下,Linux桌面版本占有的份额显然不可能太高,甚至来讲是小众系统。在嵌入式领域Linux 系统应用的非常广泛,只要不是要求“硬实时”(此时多半采用的是VxWorks,QNX等),可能大部分都采用嵌入式Linux 系统,甚至从某种角度来讲,Linux将会成为未来嵌入式领域的标准。
(2)在各种新兴语言层出不穷的时代,学习Linux C的价值在何处?
C语言作为一种较为低级的语言(和C++、JAVA)等相比,事实上学习的难度并不比“高级语言”要低,虽然C语言没有高级语言那些面向对象,集成,多态,泛型等语言机制,但是C语言的运用要求使用者对于程序的编译链接、数据结构与算法、操作系统等方面有着深刻的理解,可以说能写好C语言就算是掌握了计算机领域比较扎实的基本功。
Linux 系统本身就是一个博大精深的系统,今天的某些程序员张口框架,闭口架构,其实这些东西听起来,高大上,实际上,如果仔细考虑一下,LINUX系统就是一个非常好的框架,可以说Linux系统的开发是由分布在世界各地的顶尖程序员完成的,而且Linux操作系统就是C语言开发的(当然也有少量的汇编语言)
总之,学习Linux C 可以提升程序员的“内在修养”。
(3)Linux C主要有几大应用方向,各个方向的开发难点在哪里?
嵌入式领域,应用开发倒还好,内核开发、驱动开发难度较大,对程序员的要求非常高,但是需求比较少,而且就国内来看,基本上是做驱动移植类的(即使是移植,难度也非常高)。
其他对于速度要求非常高的场所。比如nginx这个著名的服务器,就是用C语言开发的,运行速度特别快,消耗的资源特别的少,这种轻量级、高性能的程序,恐怕不是用“动辄框架”这样的语言所能够写的出来的。
(4)在现在的开源硬件平台树莓派和BeagleBone,嵌入式领域纯Linux C语言的开发为什么在减少?
这个问题,是有一部分人可能选择较简洁的方式来开发,转向了别的开发工具,但是不要忘了这些工具的底层很有可能就是用C语言来开发的。抽象出来的一层,节省了重复造轮子的成本,但是一旦不能满足性能,需要修改的时候,从根本上解决问题的还得是C语言。
(5)同样基于Linux内核的Android,Java开放从企业级,强势跨入移动开发领域,基于C语言的移动开发前景将如何?
客观的说,移动应用的开发未来将会是JAVA和IOS及HTML5这些语言,C语言主要还是用在这些领域的驱动层。
|
评分
-
查看全部评分
|