您现在的位置是: 首页 > U盘系统 U盘系统

安卓驱动和linux驱动的区别_安卓驱动和linux驱动的区别是什么

ysladmin 2024-05-24 人已围观

简介安卓驱动和linux驱动的区别_安卓驱动和linux驱动的区别是什么       大家好,今天我想和大家详细讲解一下关于“安卓驱动和linux驱动的区别”的知识。为了让大家更好地理解这个问题,我将相关资料进行了分类,现在就让我们一起来学习吧。1.关于

安卓驱动和linux驱动的区别_安卓驱动和linux驱动的区别是什么

       大家好,今天我想和大家详细讲解一下关于“安卓驱动和linux驱动的区别”的知识。为了让大家更好地理解这个问题,我将相关资料进行了分类,现在就让我们一起来学习吧。

1.关于安卓跟LINUX的关系~

2.linux系统 和安卓有什么区别

3.android kernel和标准linux kernel的区别

4.安卓系统和平时的linux系统有什么不同?

5.安卓系统和LINUX系统有何区别

安卓驱动和linux驱动的区别_安卓驱动和linux驱动的区别是什么

关于安卓跟LINUX的关系~

       Android 和 MOTO V8 的系统完全是两个概念。

       现在各个手机网站的编辑大脑都是严重萎缩的,根本就不能理解 Linux 是什么。

       Linux 仅仅是内核,根本就不是一个完整的操作系统。

       一个完整的操作系统,包括内核,功能库,用户界面三个主要部分。一个应用程序,主要运行的并不是依靠内核来运行,它主要是借助功能库提供程序功能函数支持,用户界面层提供显示和交互的功能函数支持,内核只是一个硬件驱动交互,任务分配,内存管理,IO 处理的最底层的支持。

       也就是说,一个程序能不能运行,主要是看函数库和用户界面的支持情况。

       但很明显的,Android 和 MOTO V8 完全是两种实现方法,根本就不能拿来做比较。

       Android 是基于叫做 Dalvik 的 java 虚拟机而运行的一个上层系统,所有的 Android 程序其实都是 java 程序,直接运行在这个 java 虚拟机里面,Android 的程序根本就不是一个真实的二进制程序。

       MOTO V8 我要没记错,是基于QT 嵌入式开发的一个系统,叫做 EZX Linux 。QT 提供了一个完整的函数库和用户界面支持库。他的程序理论上都是手机上面可以运行的本地二进制程序(记得是 ARMv5 的)。但实际上,MOTO 不允许二进制程序的开发和安装,只能用 java 程序,也就是 j2me 的程序。

       虽然两个都是虚拟机,但这两个虚拟机本质完全不同。

       Dalvik 的虚拟机是针对 Android 手机的基本要求,也就是要有一个触摸屏,4个物理按键,内存和 CPU 性能都要求很高的硬件进行设计的。j2me 是针对的手机就没有这个要求。不同的 j2me 手机和程序,都有不同的功能和性能。

       可以说,Andorid 系统和 MOTO V8 的 EZX ,就算都用 Linux 内核,Linux 内核提供的硬件支持,功能支持等等的东西,在手机这种针对性极强的硬件上,也会出现不同的兼容问题。

       他们两个除了都是基于 Linux 内核这个称呼以外,其余的他们根本就完全不同。

       Linux 从来就没有说过“二进制兼容”,Linux 遵循 POSIX 标准,Linux 之间还有一个 LSB 兼容标准,但这个不是强制标准,而且在手机上根本就没办法执行的。

linux系统 和安卓有什么区别

       安卓(Android)是一种基于Linux的自由及开放源代码的操作系统。两者是并存关系。

       Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。

       Android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,Android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。

       2010年2月,Linux内核开发者Greg Kroah-Hartman将Android的驱动程序从Linux内核“状态树”(“staging tree”)上除去,从此,Android与Linux开发主流将分道扬镳。更多Linux知识可查看《Linux就该这么学》。

android kernel和标准linux kernel的区别

       一、主体不同

       1、linux系统:是一套免费使用和自由传播的类UNIX操作系统。

       2、安卓:是一种基于Linux的自由及开放源代码的操作系统。

       二、架构不同

       1、linux系统:主要受到Minix和Unix思想的启发,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。能运行主要的Unix工具软件、应用程序和网络协议。

       2、安卓:Android的系统架构和其操作系统一样,采用了分层的架构。Android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。

       三、特点不同

       1、linux系统:继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux。

       2、安卓:会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。

       百度百科-Android

       百度百科- linux

安卓系统和平时的linux系统有什么不同?

       android kernel和标准linux kernel的区别

        android kernel和标准linux kernel的区别

        总的区别可以归纳如下:

        ARCH -- 这是Android修改了arch/arm下面的一些档案:

        arch/arm:

        Chg: arch/arm/kernel/entry-armv.S

        Chg: arch/arm/kernel/module.c

        Chg: arch/arm/kernel/process.c

        Chg: arch/arm/kernel/ptrace.c

        Chg: arch/arm/kernel/setup.c

        Chg: arch/arm/kernel/signal.c

        Chg: arch/arm/kernel/traps.c

        Chg: arch/arm/mm/cache-v6.S

        Chg: arch/arm/vfp/entry.S

        Chg: arch/arm/vfp/vfp.h

        Chg: arch/arm/vfp/vfphw.S

        Chg: arch/arm/vfp/vfpmodule.c

        Goldfish -- 这是Android为了模拟器所开发的一个虚拟硬体平台。Goldfish执行arm926T指令(在2.6.29中,goldfish也支援ATMv7指令),但是在实际的装置中,该虚拟平台的档案不会被编译。

        arch/arm/mach-goldfish:

        New: arch/arm/mach-goldfish/audio.c

        New: arch/arm/mach-goldfish/board-goldfish.c

        New: arch/arm/mach-goldfish/pdev_bus.c

        New: arch/arm/mach-goldfish/pm.c

        New: arch/arm/mach-goldfish/switch.c

        New: arch/arm/mach-goldfish/timer.c

        YAFFS2 -- 和PC把档案储存在硬碟上不一样, 移动装置一般把Flash作为储存装置。尤其是NAND flash应用非常广泛(绝大多数手机用的都是NAND flash,三星的一些手机使用的是OneNAND)。NAND flash具有低成本和高密度的优点。

        YAFFS2 是“Yet Another Flash File System, 2nd edition" 的简称。 它提供在Linux核心和NAND flash装置 之前高效率的介面。 YAFFS2并没有包含在标准的Linux核心中, Google把它新增到了Android的kernel

        fs/yaffs2:

        New: fs/yaffs2/devextras.h

        New: fs/yaffs2/Kconfig

        New: fs/yaffs2/Makefile

        New: fs/yaffs2/moduleconfig.h

        New: fs/yaffs2/yaffs_checkptrw.c

        New: fs/yaffs2/yaffs_checkptrw.h

        New: fs/yaffs2/yaffs_e.c

        New: fs/yaffs2/yaffs_e.h

        New: fs/yaffs2/yaffs_fs.c

        New: fs/yaffs2/yaffs_getblockinfo.h

        New: fs/yaffs2/yaffs_guts.c

        New: fs/yaffs2/yaffs_guts.h

        New: fs/yaffs2/yaffsinterface.h

        New: fs/yaffs2/yaffs_mtdif1.c

        New: fs/yaffs2/yaffs_mtdif1.h

        New: fs/yaffs2/yaffs_mtdif2.c

        New: fs/yaffs2/yaffs_mtdif2.h

        New: fs/yaffs2/yaffs_mtdif.c

        New: fs/yaffs2/yaffs_mtdif.h

        New: fs/yaffs2/yaffs_nand.c

        New: fs/yaffs2/yaffs_nandemul2k.h

        New: fs/yaffs2/yaffs_nand.h

        New: fs/yaffs2/yaffs_packedtags1.c

        New: fs/yaffs2/yaffs_packedtags1.h

        New: fs/yaffs2/yaffs_packedtags2.c

        New: fs/yaffs2/yaffs_packedtags2.h

        New: fs/yaffs2/yaffs_qsort.c

        New: fs/yaffs2/yaffs_qsort.h

        New: fs/yaffs2/yaffs_tagspat.c

        New: fs/yaffs2/yaffs_tagspat.h

        New: fs/yaffs2/yaffs_tagsvalidity.c

        New: fs/yaffs2/yaffs_tagsvalidity.h

        New: fs/yaffs2/yportenv.h

        Bluetooth -- Google为Bluetooth打上了patch,fix了一些Bluetooth的bug

        drivers/bluetooth:

        Chg: drivers/bluetooth/bfu *** .c

        Chg: drivers/bluetooth/bt3c_cs.c

        Chg: drivers/bluetooth/btu *** .c

        Chg: drivers/bluetooth/hci_h4.c

        Chg: drivers/bluetooth/hci_ll.c

        Scheduler -- 对于Scheduler的改变非常小,我对它并没有去研究。

        Chg: kernel/sched.c

New Android Functionality -- 除了fix一些bug以及其他一些小的更改,Android增加了一些新的功能,介绍如下:

        IPC Binder -- The IPC Binder is an Inter-Process Communication (IPC) mechani *** . It allows processes to provide services to other processes via a set of higher-level APIs than are available in standard Linux. An Inter search indicated that the Binder concept originated at Be, Inc., and then made its way into Palm's sofare, before Google wrote a new Binder for Android.

        New: drivers/staging/android/binder.c

        Low Memory Killer -- Android adds a low-memory killer that, each time it's called, scans the list of running Linux processes, and kills one. It was not clear in our cursory examination why Android adds a low-memory killer on of the already existing one in the standard Linux kernel.

        New: drivers/staging/android/lowmemorykiller.c

        Ashmem -- Ashmem is an Anonymous SHared MEMory system that adds interfaces so processes can share named blocks of memory. As an example, the system could use Ashmem to store icons, which multiple processes could then aess when drawing their UI. The advantage of Ashmem over traditional Linux shared memory is that it provides a means for the kernel to reclaim these shared memory blocks if they are not currently in use. If a process then tries to aess a shared memory block the kernel has freed, it will receive an error, and will then need to reallocate the block and reload the data.

        New: mm/ashmem.c

        RAM Console and Log Device -- To aid in debugging, Android adds the ability to store kernel log messages to a RAM buffer. Additionally, Android adds a separate logging module so that user processes can read and write user log messages.

        New: drivers/staging/android/ram_console.c

        Android Debug Bridge -- Debugging embedded devices can best be described as challenging. To make debugging easier, Google created the Android Debug Bridge (ADB), which is a protocol that runs over a USB link beeen a hardware device running Android and a developer writing applications on a desk PC.

        drivers/u *** /gadget:

        New: drivers/u *** /gadget/android.c

        Chg: drivers/u *** /gadget/posite.c

        Chg: drivers/u *** /gadget/f_acm.c

        New: drivers/u *** /gadget/f_acm.h

        New: drivers/u *** /gadget/f_adb.c

        New: drivers/u *** /gadget/f_adb.h

        New: drivers/u *** /gadget/f_mass_storage.c

        New: drivers/u *** /gadget/f_mass_storage.h

        Android also adds a new real-time clock, switch support, and timed GPIO support. We list the impacted files for these new modules at the end of this document.

        Power Management -- Power management is one of the most difficult pieces to get right in mobile devices, so we split it out into a group separate from the other pieces. It's interesting to note that Google added a new power management system to Linux, rather than reuse what already existed. We list the impacted files at the end of this document.

        kernel/power:

        New: kernel/power/consoleearlysuspend.c

        New: kernel/power/earlysuspend.c

        New: kernel/power/fbearlysuspend.c

        Chg: kernel/power/main.c

        Chg: kernel/power/power.h

        Chg: kernel/power/process.c

        New: kernel/power/userwakelock.c

        New: kernel/power/wakelock.c

        Miscellaneous Changes -- In addition to the above, we found a number of changes that could best be described as, 'Miscellaneous.' Among other things, these changes include additional debugging support, keypad light controls, and management of TCP neorking.

        (freedom_asic)

        Android kernel是从linux kernel 修改过来的,大部分的核心没什么变化。Android厂商会定制原始码修改驱动 或者增加新的特性等。

       

安卓系统和LINUX系统有何区别

       1、从底层来讲,linux一般是要安装在pc,pc-server,及部分小型机上的。 那大体来说呢,架构属于X86-64或者安腾。

       而android 一般是安装在手机跟平板电脑上的。 现在市面上,其CPU型号千变万化,一个厂家一个架构。 而且手机跟PC的硬件也不同。 必然导致其内核的不同

       也就是说,从底层来讲,linux与android的内核支持架构有很大区别。 即便同样是android系统本身,由于不同型号的手机,使用的硬件也不同,

       所以使用的内核也就不同,这也是为什么普遍的, 没一款手机几乎都有自己的底包,不能像PC那样互通。 关键是由于现在的手机CPU,硬件架构没有一个同一的标准。

       2、架构上内核之上的则是lib了,也就是模块。这个两者没有太大的差别。 linux的lib也是可以随便定制的。android也一样。 但是lib是要依赖底包的。

       3、应用的区别,lib之上是各种应用。 这个可以理解为软件。 这一个层面就没啥不同之处可讲了。 就是一个开发问题了。

       总体来说呢,android采用了linux系统的开发思想跟工作原理。? lib这个中间层很多都是照搬linux核心lib重新定制开发的。? 所以,说android是一种嵌入式定制的linux系统也是可以的。

       Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。

       第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。

       安卓,是一个系统,用于移动终端,智能手机、平板之类,如今也可以用于桌面工作站或电视机顶盒、智能电视等。它的内核基于linux内核,但不同于其他linux发行版,有部分源码闭源。

       linux,是一个内核,不是完整的一个系统,所有以linux为内核工作的系统统称linux发行版,多用于服务器,也有专门用于桌面工作站的发行版。它的源码完全开源,由世界各地的爱好者、开发人员共同完善并增加新特性。

       总的来说,安卓和linux有一定联系,但性质完全不同。

       好了,今天关于“安卓驱动和linux驱动的区别”的话题就到这里了。希望大家通过我的介绍对“安卓驱动和linux驱动的区别”有更全面、深入的认识,并且能够在今后的学习中更好地运用所学知识。