linux 内核源码arch/ 目录的前世今生
历史的痕迹:在最新的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/ 目录的前世今生的更多相关文章
- Linux基础系列—Linux内核源码目录结构
/** ****************************************************************************** * @author 暴走的小 ...
- linux内核源码注解
轻松学习Linux操作系统内核源码的方法 针对好多Linux 爱好者对内核很有兴趣却无从下口,本文旨在介绍一种解读linux内核源码的入门方法,而不是解说linux复杂的内核机制:一.核心源程序的文件 ...
- ubuntu下linux内核源码阅读工具和调试方法总结
http://blog.chinaunix.net/uid-20940095-id-66148.html 一 linux内核源码阅读工具 windows下当然首选source insight, 但是l ...
- Linux内核源码分析--内核启动之(3)Image内核启动(C语言部分)(Linux-3.0 ARMv7)
http://blog.chinaunix.net/uid-20543672-id-3157283.html Linux内核源码分析--内核启动之(3)Image内核启动(C语言部分)(Linux-3 ...
- Linux内核源码分析之setup_arch (三)
1. 前言 在 Linux内核源码分析之setup_arch (二) 中介绍了当前启动阶段的内存分配函数memblock_alloc,该内存分配函数在本篇将要介绍paging_init中用于页表和内存 ...
- Linux内核源码分析方法
一.内核源码之我见 Linux内核代码的庞大令不少人“望而生畏”,也正因为如此,使得人们对Linux的了解仅处于泛泛的层次.如果想透析Linux,深入操作系统的本质,阅读内核源码是最有效的途径.我们都 ...
- Linux内核源码分析 day01——内存寻址
前言 Linux内核源码分析 Antz系统编写已经开始了内核部分了,在编写时同时也参考学习一点Linux内核知识. 自制Antz操作系统 一个自制的操作系统,Antz .半图形化半命令式系统,同时嵌入 ...
- Linux内核源码分析--内核启动之(6)Image内核启动(do_basic_setup函数)(Linux-3.0 ARMv7)【转】
原文地址:Linux内核源码分析--内核启动之(6)Image内核启动(do_basic_setup函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://bl ...
- Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7)【转】
原文地址:Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://blog.c ...
随机推荐
- python之路——目录
目录 python基础部分 基础部分 介绍.基本语法.流程控制 列表 元祖 字符串 字典 集合 文件操作 函数 变量 递归 迭代器,生成器,装饰器,Json和pickle 数据序列化 函数 初识函数 ...
- CAD命令标志
CAD命令标志 主标识:(常用的)ACRX_CMD_MODAL 在别的命令执行的时候该命令不会在其中执行.ACRX_CMD_TRANSPARENT 命令可以再其它命令中执行,但在该标志下ads_sss ...
- 解决IllegalBlockSizeException:last block incomplete in decryption异常
解决IllegalBlockSizeException:last block incomplete in decryption异常分类: webkit android最近做个加解密的实现,虽然实现了, ...
- maven项目在myeclipse中不出现Maven Dependencies 和maven标识的解决方法
这种情况通常出现在 我们新加载了一个 maven的项目,但是myeclipse没识别到. 或者说 我们把该项目修改成了maven项目--------也就是说该项目 有了pom.xml 但是还没有mav ...
- WINDOWS-API:取得系统语言种类-GetOEMCP
GetOEMCP VB声明 Declare Function GetOEMCP Lib "kernel32" Alias "GetOEMCP" () As Lo ...
- hibernate的注解
1.many-to-one @ManyToOne @JoinColumn(name = "user_id") 2.many-to-many /** * 双向关联关系中,有且仅有一端 ...
- activiti整合开发实例总结
参考手册:http://www.mossle.com/docs/activiti/ 一.applicationContext.xml中引入activiti相关配置的xml文件 <!-- begi ...
- React初识整理(三)--受控组件解决方法
1. 受控组件:组件处于受控制状态,不可更改输入框内的值. 2. 什么情况下会让组件变成受控组件? - 文本框设置了value属性的时候 - 单选框或多选框设置了checked属性的时候. 3. 如何 ...
- 长链剖分优化dp三例题
首先,重链剖分我们有所认识,在dsu on tree和数据结构维护链时我们都用过他的性质. 在这里,我们要介绍一种新的剖分方式,我们求出这个点到子树中的最长链长,这个链长最终从哪个儿子更新而来,那个儿 ...
- 嵌入式之:Linux下文件编译过程
本文主要三个部分:1.GNU GCC简介 2.C/C++交叉编译器arm-elf-gcc 3.make文件,用于工程管理 部分一:GNU GCC简介: 该编译器基本功能: (1)输出预处理后的文件(展 ...