第一章 导论

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

为什么是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. PS抠出树叶树枝

    1.打开PS 2.加载树叶树枝图片 3.双击该图层,来解锁树叶树枝图层 4.通道面板,只留下蓝色 5.顶部菜单 -> 图像 -> 计算 -> 混合为正片叠底,得到一个新Alpha图层 ...

  2. .NET的DTO映射工具AutoMapper

    .NET的DTO映射工具AutoMapper 原文:https://github.com/AutoMapper/AutoMapper/wiki/Getting-started 参考:http://ww ...

  3. JavaScript的基准测试

    JavaScript的基准测试 原文:Bulletproof JavaScript benchmarks 做JavaScript的基准测试并没有想的那么简单.即使不考虑浏览器差异所带来的影响,也有很多 ...

  4. NodeJS热部署工具 — supervisor

    NodeJS热部署工具 — supervisor 大家都在开发nodejs应用时遇到过这样的情况,修改nodejs应用中的程序文件后必须重启nodejs才能重新加载应用代码.这是因为nodejs加载过 ...

  5. Memcached安装配置最大使用内存

    Memcached安装配置最大使用内存 项目做了很多,虽然用memcached的项目也有很多.但是没有太关注安装memcached细节问题 最近做了一个项目,把很多东西都放到memcached缓存中, ...

  6. Apache指南:CGI动态页面

    概要 相关模块 相关指令 mod_alias mod_cgi AddHandler Options ScriptAlias CGI(公共网关接口[Common Gateway Interface])定 ...

  7. D8

    =-=昨天被老师拉去吃点心了就没有发题解...忧伤..昨天的T2貌似都没有调完嗯 今天脑洞是大啊.. T1模拟写挂..呵呵我一面 T2数学题..刚开始只会求素数表的那种方法暴力..不过后面他们都知道一 ...

  8. Mason 简单笔记

    Mason的对象 ------------------------------- Request对象 Mason有两个全局预处理对象叫做:$r和$m $r是mod_perl的请求对象,它提供了Perl ...

  9. Paint与Canvas的简单用法

    参考:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=278237 自定义View 重写onDraw方法 package com. ...

  10. vm_write

    #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types. ...