历史的痕迹:在最新的linux-2.6.31/arch/arm/文件夹下,仍然保留Linux最初向ARM处理器移植的痕迹,最初的移植由黑客完成,在老的移植的代码文件的头部保留着黑客的名字;最初的ARM也不像现在这样的先进,都是StrongARM、ARM7之类,具体文件夹如mach-sa1100、mach-shark、mach-rpc等。现在就ARM来说已不是StrongARM、ARM7的时代,但勿忘历史,让我们记住那些把Linux移植到ARM的大牛们,记住哪个开拓的年代。
 
   夫妻的利益:当NOKIA的手机在世界流行时,和那句名言”成功的男人背后有一个女人,或者是成功的女人背后有一个男人“一样,NOKIA的背后站着TI,可以认为NOKIA 2009年前的手机80%都是都使用了TI的OMAP处理器,换句话说OMAP处理器就是NOKIA和TI结婚证书,看一看mach-omap2下文件的开头有TI的地方大多就有NOKIA,也许你就能理解其中的深意。但古话又说的好”夫妻本是同林鸟、大难来时各只飞“,在这个危机的年头,NOKIA和TI的关系也偶现危机,它们的未来还真说不好。
 
   成功的失败:有部电影叫《真实的谎言》,套用一下就是“成功的失败”,INTEL是成功者,这样说肯定很少人回提出疑义,但成功者也有失败,INTEL在X86上风光无限,在XSCALE上却体味到少有的失败,从StrongARM到XSCALE,INTEL好象没有体味到多少成功,XSCALE在网络处理器上的应用--IXP系列,到现在已经没有刚推出IXP4xx/IXP24xx时的意气风发,IXP4xx还有亮点, IXP24xx则完全是个残废;XSCALE在存储处理器--IOP系列上有点成功,多少能为INTEL换来些美金;最失败就是XSCALE在消费电子处理器上的应用-PXA系列,现在Marvell已经成为其主人。linux-2.6.31/arch/arm/文件夹下的辛酸也许只有INTEL才体味的到。感兴趣可以到mach-pxa等文件夹下浏览一翻。
 
   亲生的儿子:MOTOROLA是个伟大的公司,对它影象最深的广告是“一头骡子拉着一部摩托车”,现在MOTOROLA并不如意,处理器业务已转给儿子Freescale,手机业务陷入泥潭,特别是手机业务,当QT软件被NOKIA收购的时候,MOTOROLA体会的痛苦只有自己知道,如果MOTOROLA收购了QT软件,也许...,可惜历史很难改变,当MOTOROLA病入膏肓的时候,儿子是会痛苦的,本来Freescale可以凭借MOTOROLA的手机业务把mx2/mx3处理器做大,现在就如一场噩梦。真是人算不如天算。
 
   喜人的收获:喜欢到linux-2.6.31/arch/arm/下浏览一翻的公司肯定有Samsung,s3c24xx系列借中国的东风(IT制造业)赚取了大把的人民币;s3c64xx系列依赖APPLE的IPHONE效应开始大把大把的赚取美金,可谓风光无限。看看mach-s3c2410、mach-s3c2412、mach-s3c2440、mach-s3c2442、mach-s3c2443、mach-s3c6400到mach-s3c6410的里程就知道Samsung的一路风光。看深一点,Samsung此处的成功说是技术的成功不如说是共赢理念的成功,看看以上文件夹下文件的版权所有并不是Samsung而是Simtec Electronics,也许就能理解我这么说的意思。
 
   朋友的敌人:看到mach-msm文件夹下文件里出现Google和高通在一起的时候,我并不惊讶,有时”敌人的敌人是朋友“这个逻辑非常通俗易懂,当高通进入ARM手机平台开发的时候没找到强大的朋友,还好有强大的专利大棒,能够做到收入90亿美元,利润80亿美元。不过当专利被视为对国家利益威胁的时候,高通再牛也得做自我改变了。正好Google推出了Android手机操作系统平台,需要有ARM硬件平台的支持,可谓两者一拍即合。只是这种结合并不牢靠,Google和TI、Samsung在的ARM硬件平台上也有合作。所以有时”敌人的敌人是朋友“这个逻辑又让人困惑。

linux 内核源码arch/ 目录的前世今生的更多相关文章

  1. Linux基础系列—Linux内核源码目录结构

    /** ****************************************************************************** * @author    暴走的小 ...

  2. linux内核源码注解

    轻松学习Linux操作系统内核源码的方法 针对好多Linux 爱好者对内核很有兴趣却无从下口,本文旨在介绍一种解读linux内核源码的入门方法,而不是解说linux复杂的内核机制:一.核心源程序的文件 ...

  3. ubuntu下linux内核源码阅读工具和调试方法总结

    http://blog.chinaunix.net/uid-20940095-id-66148.html 一 linux内核源码阅读工具 windows下当然首选source insight, 但是l ...

  4. Linux内核源码分析--内核启动之(3)Image内核启动(C语言部分)(Linux-3.0 ARMv7)

    http://blog.chinaunix.net/uid-20543672-id-3157283.html Linux内核源码分析--内核启动之(3)Image内核启动(C语言部分)(Linux-3 ...

  5. Linux内核源码分析之setup_arch (三)

    1. 前言 在 Linux内核源码分析之setup_arch (二) 中介绍了当前启动阶段的内存分配函数memblock_alloc,该内存分配函数在本篇将要介绍paging_init中用于页表和内存 ...

  6. Linux内核源码分析方法

    一.内核源码之我见 Linux内核代码的庞大令不少人“望而生畏”,也正因为如此,使得人们对Linux的了解仅处于泛泛的层次.如果想透析Linux,深入操作系统的本质,阅读内核源码是最有效的途径.我们都 ...

  7. Linux内核源码分析 day01——内存寻址

    前言 Linux内核源码分析 Antz系统编写已经开始了内核部分了,在编写时同时也参考学习一点Linux内核知识. 自制Antz操作系统 一个自制的操作系统,Antz .半图形化半命令式系统,同时嵌入 ...

  8. Linux内核源码分析--内核启动之(6)Image内核启动(do_basic_setup函数)(Linux-3.0 ARMv7)【转】

    原文地址:Linux内核源码分析--内核启动之(6)Image内核启动(do_basic_setup函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://bl ...

  9. Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7)【转】

    原文地址:Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://blog.c ...

随机推荐

  1. python之路——目录

    目录 python基础部分 基础部分 介绍.基本语法.流程控制 列表 元祖 字符串 字典 集合 文件操作 函数 变量 递归 迭代器,生成器,装饰器,Json和pickle 数据序列化 函数 初识函数 ...

  2. CAD命令标志

    CAD命令标志 主标识:(常用的)ACRX_CMD_MODAL 在别的命令执行的时候该命令不会在其中执行.ACRX_CMD_TRANSPARENT 命令可以再其它命令中执行,但在该标志下ads_sss ...

  3. 解决IllegalBlockSizeException:last block incomplete in decryption异常

    解决IllegalBlockSizeException:last block incomplete in decryption异常分类: webkit android最近做个加解密的实现,虽然实现了, ...

  4. maven项目在myeclipse中不出现Maven Dependencies 和maven标识的解决方法

    这种情况通常出现在 我们新加载了一个 maven的项目,但是myeclipse没识别到. 或者说 我们把该项目修改成了maven项目--------也就是说该项目 有了pom.xml 但是还没有mav ...

  5. WINDOWS-API:取得系统语言种类-GetOEMCP

    GetOEMCP VB声明 Declare Function GetOEMCP Lib "kernel32" Alias "GetOEMCP" () As Lo ...

  6. hibernate的注解

    1.many-to-one @ManyToOne @JoinColumn(name = "user_id") 2.many-to-many /** * 双向关联关系中,有且仅有一端 ...

  7. activiti整合开发实例总结

    参考手册:http://www.mossle.com/docs/activiti/ 一.applicationContext.xml中引入activiti相关配置的xml文件 <!-- begi ...

  8. React初识整理(三)--受控组件解决方法

    1. 受控组件:组件处于受控制状态,不可更改输入框内的值. 2. 什么情况下会让组件变成受控组件? - 文本框设置了value属性的时候 - 单选框或多选框设置了checked属性的时候. 3. 如何 ...

  9. 长链剖分优化dp三例题

    首先,重链剖分我们有所认识,在dsu on tree和数据结构维护链时我们都用过他的性质. 在这里,我们要介绍一种新的剖分方式,我们求出这个点到子树中的最长链长,这个链长最终从哪个儿子更新而来,那个儿 ...

  10. 嵌入式之:Linux下文件编译过程

    本文主要三个部分:1.GNU GCC简介 2.C/C++交叉编译器arm-elf-gcc 3.make文件,用于工程管理 部分一:GNU GCC简介: 该编译器基本功能: (1)输出预处理后的文件(展 ...