V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
ixiaohei
V2EX  ›  Linux

一直有个疑惑,为什么安卓是基于的linux可以运行在arm构架的手机上?为什么别的linux不能?有什么技术难点么,linux不是支持精简指令计算机么?

  •  
  •   ixiaohei ·
    ixiaohei · 2013-12-10 20:56:58 +08:00 · 13211 次点击
    这是一个创建于 3992 天前的主题,其中的信息可能已经有所发展或是发生改变。
    51 条回复    1970-01-01 08:00:00 +08:00
    allenforrest
        1
    allenforrest  
       2013-12-10 21:01:29 +08:00 via iPhone
    没太明白你的意思,android基于的linux没什么特别之处,就是一个arm平台上针对手机硬件定制和优化过的的内核版本
    wang2191195
        2
    wang2191195  
       2013-12-10 21:02:00 +08:00 via iPhone
    有别的Linux可以运行在arm平台 比如树莓pi能用的raspbian pidora
    所以问题不成立
    lqs
        3
    lqs  
       2013-12-10 21:02:57 +08:00
    有手机版的 Ubuntu 啊 (http://www.ubuntu.com/phone)

    你可能想问的是为什么普通的桌面环境不能在手机上运行,是因为那些不适合在小尺寸屏幕上以触摸方式来交互,所以就没必要移植上来了。
    manhere
        4
    manhere  
       2013-12-10 21:03:28 +08:00   ❤️ 1
    armlinux很多啊 pogoplug popobox dockstar mbl什么的
    Keyes
        5
    Keyes  
       2013-12-10 21:05:30 +08:00
    诶。。这个。。可能你忽略了各个linux发行版下面标注的支持平台,想mips啊arm啊powerpc啊都有的
    meta
        6
    meta  
       2013-12-10 21:12:41 +08:00
    什么是别的linux?难道还有几个linux。
    LazyZhu
        7
    LazyZhu  
       2013-12-10 21:26:07 +08:00
    与Linux发行版对架构的支持有关,可以试试Debian,他支持的架构种类较多。
    likuku
        8
    likuku  
       2013-12-10 21:31:03 +08:00
    netbsd 不是 linux,但也能在很多不同cpu上运行。
    guoker
        9
    guoker  
       2013-12-10 21:35:06 +08:00
    Ub
    feikaras
        10
    feikaras  
       2013-12-10 21:36:12 +08:00
    Linux几乎支持所有架构吧。
    likuku
        11
    likuku  
       2013-12-10 21:43:48 +08:00
    @feikaras 修正,netbsd 几乎支持所有架构
    jasontse
        12
    jasontse  
       2013-12-10 21:43:49 +08:00 via iPad
    Linux 只是一个内核,它支持多种处理器架构 x86 amd64 PowerPC ARM MIPS。但是你可以安装什么系统由发行版决定,只给你内核是什么也做不了的。

    希望这篇解答 GNU 和 Linux 关系的文章可以部分解释清楚你的问题。
    http://www.gnu.org/gnu/linux-and-gnu.html
    likuku
        13
    likuku  
       2013-12-10 21:45:13 +08:00
    netbsd 是完整的包含内核和一堆应用软件的系统。
    saharabear
        14
    saharabear  
       2013-12-10 21:47:24 +08:00
    补充,netbsd几乎没有不能运行的架构。
    saharabear
        15
    saharabear  
       2013-12-10 21:48:47 +08:00
    @likuku 对了,你用netbsd的时候玩它的桌面吗?
    deyu260
        16
    deyu260  
       2013-12-10 21:49:48 +08:00
    @manhere 你都玩了 太牛了
    ixiaohei
        17
    ixiaohei  
    OP
       2013-12-10 21:55:18 +08:00
    @lqs 对啊,就是这个问题,别的是真的不移植?还是一直不了?总感觉手机性能总比那些卡片电脑性能强悍吧,用久了弄个小型服务器挥着别的也好啊
    ixiaohei
        18
    ixiaohei  
    OP
       2013-12-10 21:56:16 +08:00   ❤️ 1
    @LazyZhu 还没有玩过Debian 想把我的手机利用起来,感觉丢了可惜
    ixiaohei
        19
    ixiaohei  
    OP
       2013-12-10 21:57:12 +08:00
    @jasontse 3Q 我先看看
    ixiaohei
        20
    ixiaohei  
    OP
       2013-12-10 21:58:30 +08:00
    @manhere 有能装在我的htc one上的么?这个需要自己去编译么?
    est
        21
    est  
       2013-12-10 22:00:05 +08:00
    linux可以跑。但是触摸屏、相机、wifi、蓝牙、usb 驱动都没有。怎么破?
    likuku
        22
    likuku  
       2013-12-10 22:00:25 +08:00
    @saharabear 只玩过 freebsd,上学时 freebsd 6 作为主力桌面用过2年多。工作后用过的 freebsd 主要拿来跑 服务器和存储,没桌面。上班桌面主力先是 ubuntu,接着是 macosx,现在又回归 xubuntu。

    去年用过一次 pc-bsd,其实作的蛮好了。硬件支持良好,桌面系统开箱即用。

    netbsd 作为 freebsd 的嫡系,只是看过资料,没用过。
    likuku
        23
    likuku  
       2013-12-10 22:02:12 +08:00
    @ixiaohei 现在手机很贵好吧(红米也不便宜),也没有线网卡,无线来搞服务器…不行啊。
    LazyZhu
        24
    LazyZhu  
       2013-12-10 22:02:43 +08:00
    @est
    死皮赖脸向设备商索要kernel source, 成功过几次。
    manhere
        25
    manhere  
       2013-12-10 22:06:05 +08:00
    ixiaohei
        26
    ixiaohei  
    OP
       2013-12-10 22:19:49 +08:00   ❤️ 1
    @est 吓我 好多驱动
    ixiaohei
        27
    ixiaohei  
    OP
       2013-12-10 22:21:15 +08:00
    @LazyZhu 貌似htc提供了kernal source
    ixiaohei
        28
    ixiaohei  
    OP
       2013-12-10 22:27:26 +08:00
    @feikaras 貌似是的
    @likuku 没有玩过
    @likuku 感觉总比那些x86便宜吧
    @jasontse 3Q 我研究研究
    dorentus
        29
    dorentus  
       2013-12-10 22:34:46 +08:00
    est
        30
    est  
       2013-12-10 22:38:24 +08:00
    @LazyZhu 这么屌。设备厂给你个2.6的怎么办?
    manhere
        31
    manhere  
       2013-12-10 22:40:39 +08:00
    @est 哈哈哈哈哈,戳中痛点了不 @LazyZhu
    LazyZhu
        32
    LazyZhu  
       2013-12-10 22:54:56 +08:00
    @est
    只有设备运行的那个kernel版本, 要2.6它还真没有。
    ixiaohei
        33
    ixiaohei  
    OP
       2013-12-10 23:02:47 +08:00
    @LazyZhu 我拿到kernal source怎么编译?要虚拟机搞起么?
    LazyZhu
        34
    LazyZhu  
       2013-12-10 23:10:37 +08:00
    @ixiaohei 没装Linux的话虚拟机,可以交叉编译
    具体网上搜教程
    so898
        35
    so898  
       2013-12-11 02:08:25 +08:00
    依旧建议从可以安装Android系统的ARM开发板开始做起
    现在手机硬件固件基本上都是不开源的,哪怕是Nexus 系列,开源资料也是……只能说CM贡献了很多吧……
    ARM开发板就是完全不同的一个世界了,基本上所有代码和硬件针脚信息都是可以拿到的
    先从这边起步,然后一步步走比较好
    话说我觉得手机安装其他Linux最大的问题在于Recovery和boot部分,其他的都好说……
    raptor
        36
    raptor  
       2013-12-11 08:50:14 +08:00
    谁说ARM上用不了linux?
    我去年就在Moto Atrix4G手机上装了Ubuntu 9.04 ARM版
    hiddenman
        37
    hiddenman  
       2013-12-11 09:01:33 +08:00
    壮哉我大树莓派。。
    sqbing
        38
    sqbing  
       2013-12-11 09:05:37 +08:00
    驱动和易用的UI套件问题
    bombless
        39
    bombless  
       2013-12-11 10:28:54 +08:00   ❤️ 1
    其实楼主的问题也不算全错……
    这样改可能好一点:“为什么安卓以外的发行版不能用作手机操作系统”
    这个楼上各位也答了:驱动问题。
    PC有PC的驱动,手机有与PC不同的设备当然需要不同的驱动。
    至于说x86和arm的区别,这个从来就不成问题。楼主是属于那种不知道哪听来个词就拿来用了。
    问问题最忌自己觉得自己都懂……
    oska874
        40
    oska874  
       2013-12-11 11:31:47 +08:00
    只要你提供对应的驱动,啥系统都能跑起来。
    ixiaohei
        41
    ixiaohei  
    OP
       2013-12-11 12:48:19 +08:00
    @oska874 刚才看了下,我的nexue 7谷歌都提供了2进制文件,准备先看看移植的知识,在搞起
    loveminds
        42
    loveminds  
       2013-12-11 19:33:46 +08:00
    @ixiaohei 卡片的X86和A15都有了
    Fotix
        43
    Fotix  
       2013-12-16 02:18:52 +08:00
    技术层面的我也没什么说的.简单列举我了解的ARM上面的例子.
    前面说了ARM11的树莓派上面各种.
    Nokia MID系列的N880用的OS2008基于dedian.后来这个系列发扬光大成了Maemo系列,但又式微
    Nokia N900上Cortex-A8有Maemo5系统,基于Debian,并且可以跑NEMO(内核来自MeeGo1.2,Debian改版)
    Nokia N9 MeeGo Harmattan基于Debian,新的Sailfish也是在MER的基础上的
    Palm公司的webOS基于linux内核,包括被HP收购后出来的Veer和TouchPad.后开源成为Openwebos,已经可以刷到nexus
    Ubuntu有对应的 Ubuntu touch 已经可以刷入Nexus系列,touchpad也能刷入
    德州仪器有个神器叫Pandaboard.也是ARM,也能跑诸多Linux发行版
    早年moto有机器直接就是上的Linux.
    Kindle用的系统基于linux,nook完全就是安卓
    更不用说各种chroot里面跑的了.
    tywtyw2002
        44
    tywtyw2002  
       2013-12-16 09:29:51 +08:00
    其实有纯linux的手机 诺基亚n900,app全部是c和qt。
    界面是x11,基于LXDE的。

    其实这手机是个大坑。。真的大坑。。。。

    不过玩起来倒是很爽,用script直接可以做anythings,比如群发短信。
    电话用asterisk坐下答录机。
    tywtyw2002
        45
    tywtyw2002  
       2013-12-16 09:32:42 +08:00
    @Fotix 不过纯linux的手机的问题就是app开发难度高,至少我在市面上没看见关于Maemo开发的书。
    而且没啥好工具,在加上用户群体少,更少人去开发app,就导致了,没app没人用。。。。。。


    不过纯linux内核系统倒是方便了开源软件的移植。
    ixiaohei
        46
    ixiaohei  
    OP
       2013-12-16 12:54:04 +08:00
    @Fotix 3Q 我去看了下android for linux项目,玩下了,发现手机没有以太网卡,只有无线网卡,vnc链接不了,家里有个刚买的nexus7,先玩会儿,以后在刷ubuntu
    @tywtyw2002 那安卓不是逆天了
    Fotix
        47
    Fotix  
       2013-12-16 15:21:14 +08:00
    @tywtyw2002
    我觉得吧,虽然开发难度没有降低,但是开发选择更多了.
    比如之前国内有个Maemo开发者,清一水的Python.书籍少毕竟因为受众不广.但是官方文档各个都说清楚了,还是方便不少.关键就是开发出来也没人用,不能指望糊口,顶多业余做着玩,质量自然难以保证.
    之后的Qt也大大方便了Maemo系统系列的开发.软件移植要给32个赞.
    Fotix
        48
    Fotix  
       2013-12-16 15:27:25 +08:00
    @ixiaohei 无线照样VNC啊
    N900就能够安装相关应用实现VNC,只不过不常用.我倒是常常用RDesktop控制电脑,开个PS啥的吓吓人.
    而N9自带VNC,妥妥好用.经常VNC连接上去测软件,还是很方便的.
    手上还有个touchpad 也算一个小神器了.Ubuntu什么的,各种系统一个不落.
    tywtyw2002
        49
    tywtyw2002  
       2013-12-17 01:55:04 +08:00 via iPhone
    @Fotix 看你这个名字 那个拼音输入法是你开发的吧?
    n900用了一段时间就发现app太少尤其是微信之类的,浏览器也卡死,直接还android了。。

    可玩性很高,但是app短缺很要命。
    asterisk再牛逼也不能代替微信。。因为大家都用。哎这就是悲哀呀
    ixiaohei
        50
    ixiaohei  
    OP
       2013-12-17 09:31:09 +08:00
    @Fotix 怎么无线网卡搞VNC,我用linux for andorid那个一起懂就用我的et0,但是我没有这个,所以启动就显示no device
    Fotix
        51
    Fotix  
       2013-12-17 15:34:12 +08:00
    @tywtyw2002 不不不,误会了 Fcitm是由eveing开发的,从fcitx移植.我只不过恰好名字很像而已.对于相关的闭源产品,缺乏足够应用也是不可避免的.浏览器MicroB完全是一款桌面浏览器.强大之余,普适性不足,流量哗啦啦.
    @ixiaohei
    VNC无非要架VNC服务器 然后和SSH登录一样的道理
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2621 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 15:55 · PVG 23:55 · LAX 07:55 · JFK 10:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.