zoukankan      html  css  js  c++  java
  • ok6410 android driver(10)

      From this essay, we go to a new discussion "Android Hardware Abstraction Layer".

      

      In this essay, we fisrt talk about the architecture of linux and android.

      1、linux 

      If you have got some brief reading about  《Linux Kernel Development》 or 《Linux Device Driver》, you would know the Linux Kernel working to change device to files and managering them in schedules.

      In this picture, you can see how linux kernel contribute to the operating system.

      2、Android

      TIPS : more ditals check the following website

    http://elinux.org/Android_Architecture

      This picture shows how the android working.

      In an original linux operating system, C is the basic language to the kernel space and user space.

      But it's different in android, android is working on the dalvik vitural machine and JAVA framework.

      Here is another picture to show android's architeture :

      TIPS : more ditals check the following website 

    https://source.android.com/devices/index.html

      We can get more messanges about how android communicate with linux kernel from this picture.

      Acturely, the "Linux Kernel" in the picture means "Linux Device driver".

      In this architeture, linux device drivers do not working like what they do in a linux operating system.

      Because google want to hide the platform and device codes from kernel space againsting "GPL".

      So they provide the business-related codes in "Hardware Abstraction layer (HAL)" to replace kernel device driver, and the remaining device drivers just use data offer by HAL to communicate with I/O memory.

      It seems good that android works in this architeture, but it hurts the principle in linux "GPL" and that's why android trees were delete from linux kernel codes.

  • 相关阅读:
    求取32位无符号整数中最低位位值为1的位置 && 求取32位无符号整数中最高位位值为1的位置
    交换寄存器中的相应字段
    NDK与JNI
    plt_0
    32位无符号整数平方根
    提取 主 设备号
    爱江山更爱美人
    mysql oracle sqlserver 数据库分页
    详解JDBC驱动的四种类型
    oracle sqlplus 中的清屏命令
  • 原文地址:https://www.cnblogs.com/plinx/p/3236034.html
Copyright © 2011-2022 走看看