精华内容
下载资源
问答
  • linux系统和Android系统的区别

    千次阅读 2019-05-27 13:36:57
    众所周知Google的Android系统Linux系统有着千丝万缕的关系,可究竟有什么关系呢?有人说Android是Android,Linux是Linux,两个只是kernel一样调度机制一样,其他没一毛钱关系,有人说Android说到底就是个Linux系统...

    众所周知Google的Android系统跟Linux系统有着千丝万缕的关系,可究竟有什么关系呢?有人说Android是Android,Linux是Linux,两个只是kernel一样调度机制一样,其他没一毛钱关系,有人说Android说到底就是个Linux系统,可如果是这样,那么为什么Android系统能这么火,其他的Linux发行版(Ubuntu/Fedora/centos等)为什么在移动端火不起来呢?下面的图或许可以解开这些迷惑。


    上面两幅图应该很直观的展示了Android系统和Linux发行版系统(Ubuntu/Fedora/centos)之间的区别和联系。可以这么说Android本质上还是一个Linux系统,只不过Google对它进行了裁剪和定制,这跟我们定制Linux到自己的嵌入式设备上的做法大同小异,只不过Google做的更多罢了,那么Google主要做了哪些事情呢?上图中也可以看出来,很多人说Android系统的程序只能用Java开发,这么说的说明对Android系统的架构了解的还不是很深入,其实从图上看到,Google自己写了一个叫Dalvik的程序运行在Linux的系统上面,这个程序就是Android的Java虚拟机(JVM),由于效率等问题Android4.4以后改为Android Run Time(ART),但不管是Dalvik还是ART,都是用c/c++开发的,而用Java开发出来的APP其实是运行在Dalvik/ART上面的,皮之不存毛将焉附,没有Dalvik/ART,那些Java开发的APP是根本没法运行的,所以说那些说Android系统不能用c/c++开发的说法是站不住脚的,只要用AOSP(安卓开放源码项目)里面的交叉编译器编译出来的二进制文件在Android上面照样也是可以运行的,而且跟Dalvik/ART属于同一层次的东西,即(都是init进程的子进程),但是一般的Android系统上init进程只有一个子进程即Dalvik/ART,如果非要说Dalvik/ART才算Android的话,那么Android确实不能用c/c++开发,因为Java程序编译出来的是字节码,只能在Dalvik/ART上运行,c/c++编译出来的是二进制机器码直接在CPU中运行,应该说c/c++开发(这里不是说的JNI方式)Android程序无法调用Android的Java类库这样才是正确的。

    说了这么多Android的,再看看Linux发行版的做法,Linux发行版一般是在Linux的基础上开发了一套桌面管理系统,比如基于GTK框架的gnome,比如基于Qt框架的LXQT(听说Ubuntu准备抛弃gnome投向Qt怀抱了?Qt的死忠粉表示干得好!)。跟Windows一样,经典的一个桌面系统+N个软件的模式,用c/c++开发出来程序编译成二进制的机器码直接运行在Linux系统上,这些软件全部都是跟Dalvik/ART一个层次的东西,而Linux发行版的程序能不能用Java开发呢?这个问题就跟问Windows上能不能用Java开发一样没水准。毕竟Dalvik/ART本身也是运行在Linux系统上的,你只要把Dalvik/ART移植到Linux发行版甚至Windows上,你手机里的那些APP就可以运行了(当然是不依赖硬件的,如果要打电话肯定是不行了),不然你以为Android模拟器是怎么弄的。

    总结起来,Android系统和Linux发行版的系统根本区别是Android上面只跑了一个Dalvik/ART,而Linux发行版上面跑了很多“Dalvik/ART”而已。如果你把gnome或者LXQT部署到Android上,或者把Dalvik/ART部署到Linux发行版上的话,那么二者的区别可能并没你想象的那么大。

    其实,在Linux上面跑一个软件(虚拟机、解释器),然后再基于这个软件做二次开发的的做法Google的Android并不是第一个这么干的。工控行业的小伙伴对控制器应该很熟悉吧?什么,你不知道控制器?或者说PLC更亲切吧,PLC(可编程控制器)只是一种通用的控制器而已,PLC分为两种,一种是编译型的PLC,我们在学校里学习的什么欧姆龙,三菱,西门子S300都是这种PLC,这种PLC的软件架构很简单,就是一个单片机,然后我们画的梯形图跟我们编译单片机程序一样直接被编译成了机器码,然后烧写到单片机里面执行,这种PLC是没有办法监控运行的,不过我要说的是另外一种PLC,曾经机缘巧合接触过一段时间,那就是软PLC,最常用的软PLC就是codesys,codesys可不止是一个简单的PLC编译工具!它是一个软PLC核!为什么说他跟Android的做法十分相似呢?看看它的架构就知道了,codesys通常被部署在Linux系统上面,开机即运行,然后我们的梯形图程序被codesys编译工具转成梯形图指令保存到内存中,然后codesys内核逐句解析梯形图指令,边解析边执行,而不是像传统的编译型的PLC一样先把所有程序编译成机器码再烧写到flash中,运行的时候再搬到内存里面运行,这跟JVM执行字节码如出一辙,这种PLC可以很方便的实现监控运行,怎么样,是不是跟Android的做法很相似呢?

    codesys软PLC软件架构如下图所示:

    展开全文
  • 众所周知Google的Android系统Linux系统有着千丝万缕的关系,可究竟有什么关系呢?有人说Android是Android,Linux是Linux,两个只是kernel一样调度机制一样,其他没一毛钱关系,有人说Android说到底就是个Linux系统...

    看到好的文章,转载一下

    众所周知Google的Android系统跟Linux系统有着千丝万缕的关系,可究竟有什么关系呢?有人说Android是Android,Linux是Linux,两个只是kernel一样调度机制一样,其他没一毛钱关系,有人说Android说到底就是个Linux系统,可如果是这样,那么为什么Android系统能这么火,其他的Linux发行版(Ubuntu/Fedora/centos等)为什么在移动端火不起来呢?下面的图或许可以解开这些迷惑。
     

     

     

    上面两幅图应该很直观的展示了Android系统和Linux发行版系统(Ubuntu/Fedora/centos)之间的区别和联系。可以这么说Android本质上还是一个Linux系统,只不过Google对它进行了裁剪和定制,这跟我们定制Linux到自己的嵌入式设备上的做法大同小异,只不过Google做的更多罢了,那么Google主要做了哪些事情呢?上图中也可以看出来,很多人说Android系统的程序只能用Java开发,这么说的说明对Android系统的架构了解的还不是很深入,其实从图上看到,Google自己写了一个叫Dalvik的程序运行在Linux的系统上面,这个程序就是Android的Java虚拟机(JVM),由于效率等问题Android4.4以后改为Android Run Time(ART),但不管是Dalvik还是ART,都是用c/c++开发的,而用Java开发出来的APP其实是运行在Dalvik/ART上面的,皮之不存毛将焉附,没有Dalvik/ART,那些Java开发的APP是根本没法运行的,所以说那些说Android系统不能用c/c++开发的说法是站不住脚的,只要用AOSP(安卓开放源码项目)里面的交叉编译器编译出来的二进制文件在Android上面照样也是可以运行的,而且跟Dalvik/ART属于同一层次的东西,即(都是init进程的子进程),但是一般的Android系统上init进程只有一个子进程即Dalvik/ART,如果非要说Dalvik/ART才算Android的话,那么Android确实不能用c/c++开发,因为Java程序编译出来的是字节码,只能在Dalvik/ART上运行,c/c++编译出来的是二进制机器码直接在CPU中运行,应该说c/c++开发(这里不是说的JNI方式)Android程序无法调用Android的Java类库这样才是正确的。

    说了这么多Android的,再看看Linux发行版的做法,Linux发行版一般是在Linux的基础上开发了一套桌面管理系统,比如基于GTK框架的gnome,比如基于Qt框架的LXQT(听说Ubuntu准备抛弃gnome投向Qt怀抱了?Qt的死忠粉表示干得好!)。跟Windows一样,经典的一个桌面系统+N个软件的模式,用c/c++开发出来程序编译成二进制的机器码直接运行在Linux系统上,这些软件全部都是跟Dalvik/ART一个层次的东西,而Linux发行版的程序能不能用Java开发呢?这个问题就跟问Windows上能不能用Java开发一样没水准。毕竟Dalvik/ART本身也是运行在Linux系统上的,你只要把Dalvik/ART移植到Linux发行版甚至Windows上,你手机里的那些APP就可以运行了(当然是不依赖硬件的,如果要打电话肯定是不行了),不然你以为Android模拟器是怎么弄的。

     

    总结起来,Android系统和Linux发行版的系统根本区别是Android上面只跑了一个Dalvik/ART,而Linux发行版上面跑了很多“Dalvik/ART”而已。如果你把gnome或者LXQT部署到Android上,或者把Dalvik/ART部署到Linux发行版上的话,那么二者的区别可能并没你想象的那么大。

    其实,在Linux上面跑一个软件(虚拟机、解释器),然后再基于这个软件做二次开发的的做法Google的Android并不是第一个这么干的。工控行业的小伙伴对控制器应该很熟悉吧?什么,你不知道控制器?或者说PLC更亲切吧,PLC(可编程控制器)只是一种通用的控制器而已,PLC分为两种,一种是编译型的PLC,我们在学校里学习的什么欧姆龙,三菱,西门子S300都是这种PLC,这种PLC的软件架构很简单,就是一个单片机,然后我们画的梯形图跟我们编译单片机程序一样直接被编译成了机器码,然后烧写到单片机里面执行,这种PLC是没有办法监控运行的,不过我要说的是另外一种PLC,曾经机缘巧合接触过一段时间,那就是软PLC,最常用的软PLC就是codesys,codesys可不止是一个简单的PLC编译工具!它是一个软PLC核!为什么说他跟Android的做法十分相似呢?看看它的架构就知道了,codesys通常被部署在Linux系统上面,开机即运行,然后我们的梯形图程序被codesys编译工具转成梯形图指令保存到内存中,然后codesys内核逐句解析梯形图指令,边解析边执行,而不是像传统的编译型的PLC一样先把所有程序编译成机器码再烧写到flash中,运行的时候再搬到内存里面运行,这跟JVM执行字节码如出一辙,这种PLC可以很方便的实现监控运行,怎么样,是不是跟Android的做法很相似呢?
     

    codesys软PLC软件架构如下图所示

    展开全文
  • Linux Deploy在安卓手机安装LINUX系统

    万次阅读 多人点赞 2018-01-31 16:49:56
    Linux deploy https://github.com/meefik/linuxdeploy/releases Linux系统支撑软件 Busy Box https://github.com/meefik/busybox/releases Linux deploy支撑软件 ConnectBox https://github.com/c...

    准备工作

    下载下列软件安装在手机上:

    Linux deploy https://github.com/meefik/linuxdeploy/releases Linux系统支撑软件

    Busy Box https://github.com/meefik/busybox/releases Linux deploy支撑软件

    ConnectBox https://github.com/connectbot/connectbot/releases 手机端SSH连接软件

    手机系统需要root(之前写文章的时候遗漏了,抱歉)

    BusyBox

    安装完毕后,运行Busy Box,看到如下界面:

    点击安装,等待程序自行运行,在界面中输出## END后退出程序。未安装前是不会有Busy Box的版本信息的,无须在意到时候界面中少了内容。

    P.S. Busy Box默认界面语言是英文,可以改成中文,点击右上角部分,在弹出的菜单中选择Settings,接着进入设置界面,找到Language项,点击后选择简体中文,退出设置界面后界面语言就改为中文了。

    在设置界面中还可以设置其他参数,看个人喜好,但注意不要修改安装路径,如非要修改,则需要记住修改后的路径,后续步骤需要使用。

    Linux deploy

    运行完毕Busy Box的部分后,运行Linux deploy

    点击左图左上角部分,选择设置

    在设置界面中找到PATH变量,赋予其值 /system/xbin

    注意这是Busy Box的安装路径,如果前面在Busy Box有修改默认安装路径的话,就要填写修改后的路径。

    设置界面其余部分看个人喜好设置,建议开启锁定Wifi功能。

    接着退回主界面,点击左图右下角部分。

    点击后看到如上界面,对Linux系统安装信息进行配置。

    • 发行版看个人喜好选择,但需要注意发行版与手机之间可能会有兼容问题,本机中选择的是Ubuntu发行版。
    • 架构需要根据手机硬件选择,一般会默认选择好匹配的选项,所以建议默认选项。
    • 源地址是指Linux系统文件下载源的网络地址,默认是发行版的国外官方源,网速堪忧,建议换上国内源,这里选择的是中科大的国内源,地址如图。注意选择国内源的时候查看是否支持对应架构的Linux版本。判断技巧:默认源地址中会有一些关键词如Ubuntu的默认源地址会有ports关键词,然后查看国内源中Ubuntu的路径有无ports,如上图中地址那样,则说明支持架构版本。

    • 安装路径是Linux系统的安装路径,如要安装在手机自带的存储空间中,则在路径开头加上${ENV_DIR},这代表的是存储空间根目录。如要安装在sdcard中,则加上${EXTERNAL_STORAGE}
    • 文件系统推荐ext4,但保留默认也可以。
    • 用户名和密码自定义,本地、远程连接该系统用。
    • DNS如需自定义就自行输入,否则保留默认

    • 本地化即设置系统语言,简体中文选择zh_CN.UTF-8
    • 挂载功能可让Linux系统访问手机上的文件
    • 挂载列表中添加访问手机内容的目录,/sdcard:sdcard为手机自带存储空间根目录,/storage/sdcard1sd卡根目录。

    • 按需开启SSH和图形界面功能

    退出系统设置界面,点击主界面右上角,选择安装。

    等待程序自行安装Linux系统,时间不定,看到<<<deploy则安装完毕。如果中间没有报错则安装成功。

    注意:安装完毕后要先点击停止按钮,再按启动按钮

    ConnectBot

    启动后运行ConnectBot,点击主界面下的加号

    输入用户名,主机输入localhost,其余部分看个人喜好

    点击右上角+号保存信息,主界面会多出来你添加的选项,点击进行SSH连接

    输入密码后连接成功。

    展开全文
  • 目录区别与联系嵌入式系统在...嵌入式android源码架构:uboot+linux kernel+android(包含文件系统,虚拟机,UI) 嵌入式linux:这是大部分人认识的linux uboot+linux kernel+文件系统+QT(UI) 当然两者的linux 内核因

    区别与联系

    这个问题很多人问,尤其是初入嵌入式的菜鸟。其实大家都认为android是java,已经不是linux,殊不知android就是靠着linux 才发展起来的,现在来说说有啥区别吧。

    嵌入式android源码架构:uboot+linux kernel+android(包含文件系统,虚拟机,UI)
    嵌入式linux:这是大部分人认识的linux uboot+linux kernel+文件系统+QT(UI)

    当然两者的linux 内核因为上层UI的不同会稍有差别,不过还是非常接近的,做过linux的人可以无缝切换到android底层开发,所以大家说的学习android系统,其实最重要的就是学习linux驱动,再加一下android下的专门的HAL,JNI,java等等,不过大公司android相关部分也是专门的人做的了。甚至连QT都不用了,因为linux很多设备都是没有UI的,所以要来干啥?直接无界面,照样是嵌入式linux。

    现在大家说的什么嵌入式debian,ubuntu,其实也是站在linux巨人的肩膀上,其实都不算是linux的分支,只算是linux的延伸,小变化而已。看到这里大家知道嵌入式linux的强大了吧,反正是比wince 强大N倍啊。
    所以啊,学习嵌入式android,其实底下就是学习uboot,linux内核啊,不会搞这些就像搞应用一样,所以大家以为android就是java,是非常片面的。

    嵌入式系统在物联网行业中的应用

    自从物联网概念在美国诞生起,物联网就成为新一代信息技术的重要组成部分,是互联网与嵌入式系统发展到高级阶段的融合。作为物联网重要技术组成的嵌入式系统,嵌入式系统的视角有助于深刻地、全面地理解物联网的本质。

    这有两层意思:

    第一,物联网的核心仍然是互联网,是在互联网基础上的延伸和扩展的网络;

    第二,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信,必须具备嵌入式系统构建的智能终端。

    因此,物联网系统是通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物品与互联网相连接,进行信息交换和通信的系统架构。

    物联网不仅仅提供了传感器的连接,其本身也具有智能处理的能力,能够对物体实施智能控制,这就是我们今天所说的嵌入式系统所能做到的。诚然,物联网将传感器和智能处理相结合,利用云计算、模式识别等各种智能技术,扩充其应用领域。从传感器获得的海量信息中分析、加工和处理出有意义的数据,以适应不同用户的不同需求,发现新的应用领域和应用模式。

    物联网嵌入式系统的特征

    1、要有数据传输通路;
    2、要有一定的存储功能;
    3、要有CPU;
    4、要有操作系统;
    5、要有专门的应用程序;
    6、遵循物联网的通信协议;
    7、在世界网络中有可被识别的唯一编号。

     
    这些鲜明的特征说明嵌入式系统已经成为物联网行业关键技术。嵌入式系统技术是综合了计算机软硬件、传感器技术、集成电路技术、电子应用技术为一体的复杂技术。经过几十年的演变,以嵌入式系统为特征的智能终端产品随处可见;小到人们身边的MP3,大到航天航空的卫星系统。嵌入式系统正在改变着人们的生活,推动着工业生产以及国防工业的发展。如果把物联网用人体做一个简单比喻,传感器相当于人的眼睛、鼻子、皮肤等感官,网络就是神经系统用来传递信息,嵌入式系统则是人的大脑,在接收到信息后要进行分类处理。这个例子形象的描述了嵌入式系统在物联网行业应用中的位置与作用。

    展开全文
  • 主要介绍了CentOS Linux系统搭建Android开发环境详细介绍的相关资料,需要的朋友可以参考下
  • 安卓手机安装Linux系统

    万次阅读 多人点赞 2018-02-01 13:48:33
    安卓手机安装Linux系统安卓机顶盒安装Linux系统) 前言: 这里介绍的方法是Linux Deploy ,是需要root安卓设备的,因为需要到很多的权限,是在主系统上运行的,是运行一个Linux 的img 镜像,所以不会破坏主...
  • Linux系统安装android sdk

    万次阅读 2018-08-24 17:48:32
    1、上传安装包到目标地址,用xftp上传 android-sdk下载地址:...2、解压安装包:tar -zxvf android-sdk_r24.4.1-linux.tgz 3、配置环境变量:vi /etc/profile 配置/etc/profile export ANDROID_HO...
  •  1、Linux系统和Android系统的uboot、kernel镜像相同而文件系统(rootfs)不同;  2、Linux系统和Android系统的uboot镜像相同而kernel镜像和文件系统(roofts)不同。  这两种情况都可以实现对双系统的启动和切换...
  • 基于Linux和Android手机终端设计了一种WiFi视频监控系统。本系统采用以S3C6410处理器为核心的控制板,由USB摄像头采集数据,经过MFC编码后,通过WiFi接入到互联网,进行数据传输;Android手机客户端通过WiFi连接到...
  • 理解android和linux内核的关系 参考链接:https://blog.csdn.net/keepdoingit/article/details/68958288?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.control&depth_...
  • 我用过多款linux系统,电脑上装的是Ubuntudeepin,服务器端用的是centos,还用过优麒麟等。黑苹果也用了一段时间。现在linux系统已经发展的比较完善,内核及其图形界面也很稳定,当要说真的可以当做个人操作系统来...
  • 本文档旨在说明在一台Linux系统中搭建Android NDK编译环境的过程。 平台 平台系统:Ubuntu 16 x64 NDK版本:android-ndk-r14b JDK版本:jdk1.8.0_144 安装 开始之前,必须先有一个稳定的Linux系统,这里使用了...
  • 基于安卓平台的远程监控linux系统设备设计.pdf
  • 主要介绍了Linux系统下安装android sdk的方法步骤,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友可以们下面来一起看看吧。
  • 浅谈AndroidLinux系统的差异

    万次阅读 多人点赞 2018-12-15 12:10:27
    AndroidLinux作为现行主流的操作系统,无论在消费类产品还是在工控领域,都有广泛的应用。都说Android系统是脱胎于Linux系统,那么是不是Android是不是属于Linux的一种。现在就来谈谈Android和Linux系统的异同点。
  • 菜鸟系列之一:在UBUNTU LINUX 下搭建ANDROID开发平台。 本文档系统的整理了在ubuntu系统下如何搭建android开发平台,对android感兴趣的同学可以借鉴学习下。
  • AidLearning-FrameWork Aid Learning FrameWork is a Linux system running on Android phone for AI programming. It means that when it is installed, y...
  • 自己整理的一份在安卓手机上跑Kali Linux系统,希望对各位有帮助
  • Linux系统下的Android开发环境搭建
  • android-linux系统调用原理之整体系统框架实现原理之OPEN实现.docx 【 相关源码版本: LINUX内核源码版本:linux-3.0.86 UBOOT版本:uboot-2010.12. Android系统源码版本:Android-5.0.2】   对于安桌系统来...
  • linux下调试修改安卓android系统

    千次阅读 2019-04-23 14:47:28
    查看内存情况dumpsys meminfo logcat 查看D logcat*:D, 查看E ,logcat *:E ...预制系统APP cp -rf mnt/xxx/name/xxx.apk system/app/ pm install system/app/xxx reboot 获取系统属性 getprop...
  • 安卓通过Linux Deploy安装linux系统

    万次阅读 2017-02-22 22:29:40
    原文地址http://www.linuxdiyf.com/linux/25730.html 1,root手机,安装Busyubox
  • Linux系统和Windows系统哪个更好?

    千次阅读 2019-04-23 16:36:01
    Windows操作系统是目前世界上使用最广泛的操作系,但是在企业级服务应用上则是Linux系统更为专业与出名,也许听到Linux操作系统会觉得陌生,Android 操作系统(安卓)就是基于Linux平台的开源手机操作系统,在个人电脑...
  • Win10 Linux子系统编译Android系统源码

    千次阅读 2019-11-21 23:09:22
    一、前言 听说win10合入了Linux作为一个子系统,起初只以为是类似虚拟机的...但仍然担心这个子系统并不如我所期望的那样完美,所以尝试着编译一下Android这个系统吧,如果能够编译Android成功,那么基本上也可以作...
  • Linux系统和Windows系统的区别

    千次阅读 2018-12-31 16:59:51
    一.Linux系统 Linux操作系统是UNIX操作系统的一种克隆系统,它诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用...
  • Android手机上远程登录Linux系统

    万次阅读 2018-09-04 22:56:52
    今天介绍一款在Android手机上远程登录Linux系统的软件JuiceSSH。下面我们先看效果  你可以在应用商城下载该软件。 安装后打开软件如下图,点击“连接”。 点击“+”新建连接 新建一个认证,如下图 ...
  • 这个问题很多人问,尤其是初入嵌入式的菜鸟。其实大家都认为android是java,已经不是linux,殊不知android就是靠着linux 才发展...嵌入式android源码架构:uboot+linux kernel+android(包含文件系统,虚拟机,UI
  • S5P6818开发板刷Linux和Android系统

    千次阅读 2018-07-04 14:38:19
    一、Andriod系统和Linux系统 Android手机 emmc{bootloader uImage ramdisk [system][data][cache][storage]} bootloader----&gt;uImage----&gt;ramdisk(内存) /system 系统软件 /data 用户自己安装...
  • android和linux操作系统的区别

    万次阅读 2017-03-23 13:39:02
    Android是由Google为移动设备开发的开源操作系统Android软件的原始开发商Android公司是由Google,Inc.于2005年购买的。它是基于Linux 2.6内核开发的。Linux操作系统于1991年由Linus Torvalds作为台式计算机的开源...
  • Android210 默认调试的...现在已经调试好 linux系统android210的用户可以登陆 http://www.urbetter.com/main.asp,联系相关工作人员获取更新资料。 一下是linux系统相关资料: 1. Android210 接口说明 2. And

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 207,959
精华内容 83,183
关键字:

linux系统和安卓系统

linux 订阅