1. Linux 一方面好改(驱动就是比 BSD 多),另一方面允许狂改(GPL v2),还比较耐艹。不用 Linux 用别的有时候还真难,更别说 Linux 不要钱了。
2. Linux 只是个平台,理论上说和别的系统没什么两样,只不过和 Windows 比少了反斜杠路径又多了 UNIX 的美味,和 OS X 比少了各种签名的痛苦又多了几个会叫你 Google 一下就知道了的程序员……(题主要的是优点我就只说优点吧)C 的话的确是 UNIX 和类 UNIX 世界的传统主力,不过什么 Java C# nodejs PHP Python 也都有人用在 Linux 上用得很爽啊……(因为 Linux 某些方面好开发,新语言也很多都是 Linux 优先支持的。类似地,一些内核支持让某些程序/语言在 Linux 上有特殊优势。)
3. 你要给 Linux 写东西,看内核是不够或者没用的(源代码什么的还总是要特别去看的话某些平台的程序员早就…)你需要摸清自己需要什么,然后去找对应的库,接下来学会拼起来(看你妹的源码,有库文档看还是看文档啊)……你要修改 Linux,在内核的编译选项菜单里面那一堆基本够用,并且外围软件你更可以自己裁剪啊……当然要是题主是内核裁减巨巨那当我没说。
// GNU 狂魔模式
Linux 只是个内核,一个特性多到处用的内核,而它上面的程序和程序需要的库,又要从别的代码编译。这些代码里面有个来源是大头,它就是 GNU,类 UNIX 世界自由的灯塔……
GNU 的信徒(啊呸)们让 GNU 和不少其他人智慧的代码(包括我们的 Linux)一同工作,好让这些代码显示出他们各自的名字:Redhat, Bug List
shell编程属于脚本编程,脚本文件就是指令的集合,GCC是GNU编译系统驱动程序。
Linux中的库分两种:静态库和共享库。静态库以.a结尾,也叫归档文件(archive),类似于windows中的.lib文件,他的缺点是同时运行的多个程序使用同个函数库函数时,内存中会有多个该函数及该程序文件的副本,浪费了内存。共享库以.so结尾,类似于windows中的.Dll文件。
shell是对linux内核的一种封装,提供了一些函数的接口,shell程序设计就是利用这些函数接口进行编程。
完全是两个方向的应用。总的来说,不具备可比性。但实际要看应用环境。相对来说,shell 的程序还是以简单的功能为主。大型的应用程序还是 C 语言更合适。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)