第一章 导论

在这一章里(将要学习到)

为什么是Linux
嵌入式Linux现状
开源和GPL(译者:通用公共许可证)
标准和有关团体
本章总结

放弃专有操作系统正在许多传统嵌入式操作系统公司引起一阵轰动。有理由相信,Linux作为许多产品的操作系统正超越它在服务器领域的地位。这些嵌入式的例子包括移动手机,DVD播放器,电子游戏,数字摄像机,网络交换机,无线网络设备。Linux已经应用于你的家庭,汽车。

为什么是Linux?

由于经济和科技的快速发展,我们看到了嵌入式设备采用率的快速增长。这种趋势已经跨过了所有的市场和科技。Linux已经被全世界范围内的电话交换网,全球数据网络,无线移动设备以及操作这些网络的设备内部的嵌入式产品采用。Linux已经成功的应用在汽车软件,诸如游戏机,PDA之类消费产品,打印机,企业路由器和交换机以及其它一些产品。这种趋势将一直持续。

以下几方面的原因促使嵌入式Linux的快速增长:

·Linux已经逐渐成为了一款成熟,高性能,比传统专有操作系统更稳定的操作系统。

·Linux支持大量的应用程序和网络协议。

·Linux是可扩展的,从小型消费类设备到大型电信交换机和路由器。

·Linux能够没有版税的被部署在传统专属嵌入式设备中。

嵌入式现状

Linux在嵌入式领域经历了有意义的成长可能是意料之中的。除此之外,事实上,你在读这本书的时候,Linux已经触及到了你的生活。我们很难估算出市场的大小,因为许多公司简历他们自己的嵌入式Linux版本。

LinuxDevices.com , 由Rich Lehrbaum建立的流行新闻和信息的网站,进行一项一年一度的嵌入式Linux市场调查。在最新的调查中,Linux已经在每年数以千计的产品设计中成为主流操作系统。事实上,将近一半的回复中称在他们的嵌入式设计中使用Linux,与此同时,最具竞争的操作系统收到的回复中只有1/8使用他们的操作系统。曾经统治嵌入式市场的商业操作系统收到的回复中只有1/10在使用。即使你找到理由不相信这个结论,但是没有人会忽视当前的嵌入式Linux市场份额。

开源和GPL

GNU GPL第三版本中描述的有一段话说这么说的“当我们谈论免费软件,我们指的是自由,而不是免费”。大多数的开发管理者同意:你能够不付费的下载Linux,但是在任何一个操作系统上开发和部署都是有成本的。Linux在这方面没有什么不同。

GPL非常短小,很容易阅读。下面是一些非常有代表性的内容:

·许可永久有效。

·许可允许使用者自由的运行程序。

·许可允许使用者有权学习并且修改源代码。

·许可运行使用者发布原始的或者修改的代码。

·许可也是有坏处的。换句话说,它赋予相同的权利给任何人来发布GPL软件。

当软件在GPL条款之下发布,它必须永远遵守这个许可。即时代码被大量修改,这些都是被允许的,甚至是鼓励的。它鼓励你自由地使用,学习以及修改这些软件,同样鼓励那些发布他们自己的修改的代码的人。这些都被广泛的认同。

频繁听到一个关于Linux的错觉就是“免费(原文是free asin beer)”。你能够免费的获得Linux,你能够在几分钟之内下载Linux内核。然而许多开发管理者知道,某些价值是和软件的设计紧密联系的。这些包含购买的钱,集成的钱,修改的钱,维护的钱以及运营支持的钱。另外还有获得以及维护一个配置工具链,库以及应用程序的钱,还有要使得你选择的架构跟你的交叉编译器配套。你很快就会发现这是一个重要的锻炼机会对于开发所需的软件组件以及开发和部署你的基于嵌入式Linux开发环境来说。

标准和有关团体

正当Linux持续在桌面操作系统,企业和嵌入式市场获得份额的时候,新的标准和组织也帮助扩大在使用和采用Linux方面的影响力。这一章节提供了一个指导标准的资源。

Linux标准基础

可能唯一关键的标准就是Linux标准基础(LSB)。LSB的目标就是建立一套用于设计增强不同Linux发行版本之间的互操作性的标准。当然,LSB跨越了多个架构,包括IA32/64,PowerPC 32/64位,AMD64和其它的架构。这个标准被分解成一个核心组件和个人体系组件。

LSB列举了一个Linux发行版的普通特性,包括目标格式,标准库接口,最小的命令集和实用程序,以及它们的性能,文件系统设计,系统初始化等等。

Linux基金会

根据它的网站,Linux基金会是一个奉献于Linux成长的非盈利性的组织。Linux基金会发动几个事务委员会定义了标准并参与了许多重要的旨在Linux平台属性的特性的开发。下两个章节及时说明了几个举措。

电信级Linux

世界上相当数量的大型网络和远程通讯设备制造开发或者传输电信的设备都运行在Linux系统上。航空设备的许多特性包括高可靠性,高可利用性,快速可维修性。这些供应商使用冗余的热插拔体系和容错特性,集群以及实时性能。

Linux基金会电信级Linux工作组已经制作了用来定义一套电信设备要求的说明书。

移动Linux的倡议:Moblin

一些可以用在互联网的移动手机已经通过嵌入式Linux打造出来了。大量报道说明数以千万的手机已经用Linux平台。唯一肯定的就是会有更多的手机加入到Linux。

总结

嵌入式Linux已经成功了。除此之外,你可能在你的车里或者家里使用了嵌入式Linux的设备了。本章介绍了开发的前景:

·采用嵌入式Linux的开发者和制造商继续增加。

·嵌入式设备中的Linux使用率继续以喜人的速度增长。

·许多代理商正推进嵌入式市场的Linux增长。

·许多标准和有重要作用的租住正影响着嵌入式Linux。

Embedded Linux Primer----嵌入式Linux基础教程--导论的更多相关文章

  1. Linux下配置Squid基础教程

    Linux下配置Squid基础教程 本视频高清下载地址:http://down.51cto.com/data/437529 本文出自 "李晨光原创技术博客" 博客,请务必保留此出处 ...

  2. [转][linux][centos]嵌入式 Linux下编译并使用curl静态库

    #x86 ./configure --disable-shared --enable-static --disable-ftp --disable-ipv6 --disable-rtsp --disa ...

  3. 嵌入式Linux学习(一)

    嵌入式系统 嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分.通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板.事实上,所有带有数字接口的设备,如手表.微波炉.录像机.汽车等, ...

  4. Embedded Linux Primer----嵌入式Linux基础教程--2.4节--嵌入式Linux发行版

    嵌入式Linux发行版 究竟什么是Linux发行版?在Linux内核引导之后,它期望找到并挂载根文件系统.当一个匹配的根文件系统已经挂载上,启动脚本开始运行大量程序和系统要求的工具.这些程序经常调用其 ...

  5. 嵌入式LINUX基础教程 第2版

    嵌入式LINUX基础教程  第2版 目录 第1章 入门 11.1 为什么选择Linux 11.2 嵌入式Linux现状 21.3 开源和GPL 21.4 标准及相关组织 31.4.1 Linux标准基 ...

  6. Embedded Linux Primer----嵌入式Linux基础教程--章节介绍

    章节介绍 第一章,“导引”,简要介绍了Linux被迅速应用在嵌入式环境的驱动因素,介绍了与嵌入式Linux相关的几个重要的标准和组织. 第二章,“第一个嵌入式经历”,介绍了与后几章所构建的嵌入式Lin ...

  7. 《嵌入式Linux基础教程学习笔记一》

    常用书目下载地址:http://www.cnblogs.com/pengdonglin137/p/3688029.html 第二章 1.进程上下文和中断上下文(Page20) 当应用程序执行系统调用, ...

  8. 《嵌入式Linux基础教程》补充阅读建议电子数目下载

    第二章 <Linux内核设计与实现(原书第三版)> <深入理解Linux内核(第三版)> <深入理解Linux虚拟内存管理> 其他与Linux相关的电子书下载地址: ...

  9. Embedded Linux Primer----嵌入式Linux基础教程--前言

    APractical,Real-WorldApproach ChristopherHallinan 计算机无处不在. 事实上,当然了,对于那些大约在过去25年期间没有生活在洞穴中的人来说没有什么惊奇的 ...

随机推荐

  1. 安卓MonkeyRunner源码分析之工作原理架构图及系列集合

    花了点时间整理了下MonkeyRunner的工作原理图,请配合本人博客里面MonkeyRunner其他源码分析文章进行阅读.下面整理成相应系列列表方便大家阅读: MonkeyRunner源码分析之-谁 ...

  2. Java堆栈(转)

     Java栈与堆 ----对这两个概念的不明好久,最终找到一篇好文,拿来共享 1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Java自己主动管理栈和堆, ...

  3. Javascript实战开发:教你使用raphael.js绘制中国地图

    最近的数据统计项目中要用到中国地图,也就是在地图上动态的显示某个时间段某个省份地区的统计数据,我们不需要flash,仅仅依靠raphael.js以及SVG图像就可以完成地图的交互操作.在本文中,我给大 ...

  4. Android学习小Demo(21)ListView的联动选择

    在日常的App开发中,尤其是在开发生活服务的应用上,非常多时候,我们会须要联动地展现省市区的数据等,需求大概例如以下: 1)展现全部省份 2)当点击某省份的时候,在二级菜单上展现此省份以下所属的城市列 ...

  5. SQL点滴5—产生时间demention,主要是时间转换

    原文:SQL点滴5-产生时间demention,主要是时间转换 数据仓库中有时间表,存储时间信息,这个存储过程接收开始时间结束时间,写入时间具体信息.有高手用excel函数功能很快能产生INSERT语 ...

  6. APUE学习笔记(1):APUE运行环境

    APUE全称<Advanced Programming in the UNIX Environment>(UNIX环境高级编程) 书中例子大都使用作者自己写的头文件,所以需要解决一下,还好 ...

  7. Floodlight 启动过程分析

      1. 在Main中先是载入模块,启动REST服务,而后构建一个实现了IFloodlightProviderService接口的实例(即Controller)并执行: 2. 接下来进入Control ...

  8. 开源文档管理系统LogicalDOC测试报告---安装篇

    开源文档管理系统LogicalDOC测试报告---安装篇 分类: Linux2011-06-22 15:40 7436人阅读 评论(3) 收藏 举报 文档管理测试mysql数据库installerja ...

  9. 【分享】Python学习资源大合集

    地址:http://www.hejizhan.com/html/xueke/520/x520_03.html Python安装软件合集(Windows)(78) Python教程——游戏编程(13) ...

  10. Hadoop 使用FileSystem API 读取数据

    代码: package com.hadoop; import java.io.IOException; import java.io.InputStream; import java.net.URI; ...