嵌入式软件一般需着重考虑三个方面:性能、安全性和开发效率(包括代码可移植性等)。 性能(运行效率)方面,汇编明显是最高的。但汇编在安全性和开发效率方面明显是最低的。所以除非是要求极端高性能的嵌入式平台(或者是系统实在是太简单而没办法支持高级语言),使用汇编语言的不多。我们一般进行初始化时会使用汇编语言。 而其它高级语言的运行效率一般比较低,源代码和目标代码也可能会比较长。这样占用的内存也会比较大。嵌入式应用在硬件上,需要较快的反映时间,占用内存的增多必然会影响性能。这样一来,C语言的优势就会凸现出来啦。
Linux和UNIX的最大的区别是,前者是开发源代码的自由软件,而后者是对源代码实行知识产权保护的传统商业软件。这应该是他们最大的不同,这种不同体现在用户对前者有很高的自主权,而对后者却只能去被动的适应;这种不同还表现在前者的开发是处在一个完全开放的环境之中,而后者的开发完全是处在一个黑箱之中,只有相关的开发人员才能够接触的产品的原型。UNIX 是商业软件,而 Linux 是开源软件,是免费、公开源代码的。 UNIX 系统大多是与硬件配套的,大多数 UNIX 系统如 AIX、HP-UX 等是无法安装在 x86 服务器和个人计算机上的,而 Linux 则可以运行在多种硬件平台上;
1、Debian Debian是完全由自由软件组成的类UNIX操作系统,其包含的多数软件使用GNU通用公共许可协议授权,并由Debian计划的参与者组成团队对其进行打包、开发与维护。Debian计划最初由伊恩·默多克于1993年发起,Debian 0.01版在1993年9月15日发布,而其第一个稳定版本则在1996年发布。该计划的具体工作在互联网上协调完成,由Debian计划领导人带领一个志愿者团队开展工作,并以三份奠基性质的文档作为工作指导:Debian社群契约、Debian宪章和Debian自由软件指导方针。操作系统版本定期进行更新,候选发布版本将在经历过一定时间的冻结之后进行发布。作为最早的Linux发行版之一,Debian在创建之初便被定位为在GNU计划的精神指导下进行公开开发并自由发布的项目。该决定吸引自由软件基金会的注意与支持,他们为该项目提供从1994年11月至1995年11月为期一年的赞助。赞助终止后,Debian计划创立非营利机构Software in the Public Interest以提供支持并令其持有Debian商标作为保护机构。Debian也接受世界多个非营利组织的资金支持。 基于Debian著名的发行版有:Ubuntu、Knoppix和Deepin 2、Slackware Slackware是一个Linux发行版,由Patrick Volkerding于1993年创建。Slackware最初基于Softlanding Linux系统,它是许多其他Linux发行版的基础,也是目前仍在维护的最古老的发行版。Slackware的目标是设计的稳定性和简单性,并成为最“像Unix一样”的Linux发行版。它尽可能少地修改上游的软件包,并试图不预测用例或排除用户决策。与大多数现代Linux发行版相比,Slackware不提供图形安装过程,也不提供软件包的自动依赖性解析。它使用纯文本文件,只有一小部分shell脚本用于配置和管理。如果不进一步修改,它将引导到命令行界面环境中。由于slackware有许多保守和简单的特性,因此通常认为它最适合高级和技术性倾向的Linux用户。Slackware可用于IA-32和x86_64体系结构,带有到ARM体系结构的端口。尽管Slackware主要是免费的开放源码软件,但它没有正式的bug跟踪设施或公共代码存储库,版本由Volkerding定期公布。开发人员没有正式的成员资格过程,Volkerding是发布的主要贡献者。 基于Slackware著名的发行版有:SUSE Linux 3、Red Hat Red Hat是美国一家以开发、贩售Linux包并提供技术服务为业务内容的企业,其著名的产品为Red Hat Enterprise Linux。1990年代末期,Linux以自由软件且开放源代码为号召,试图挑战商业且闭源的Windows在操作系统市场的霸主地位之际,Red Hat所推出的Linux系统与软件集成包Red Hat Linux适时回应了市场的需求,从而奠定了Red Hat在Linux业界的旗手地位。截至2008年,Red Hat仍是提供Linux集成服务的同类企业中规模最大的公司。
/bin 二进bai制可执行命令 /dev 设备特殊文件 /etc 系统管du理和配置文zhi件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示 /lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件 /sbin 系统管理命令,这里存放的是系统管理员使用的管理程序 /tmp 公用的临时文件存储点 /root 系统管理员的主目录(呵呵,特权阶级) /mnt 系统提供这个目录是让用户临时挂载其他的文件系统。 /lost+found 这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里 /proc 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。 /var 某些大文件的溢出区,比方说各种服务的日志文件 /usr 最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含: /usr/x11r6 存放x window的目录 /usr/bin 众多的应用程序 /usr/sbin 超级用户的一些管理程序 /usr/doc linux文档 /usr/include linux下开发和编译应用程序所需要的头文件 /usr/lib 常用的动态链接库和软件包的配置文件 /usr/man 帮助文档 /usr/src 源代码,linux内核的源代码就放在/usr/src/linux里 /usr/local/bin 本地增加的命令 /usr/local/lib 本地增加的库根文件系统