驱动编译

makefile

obj-m += word_count.o
​
all:make -C /root/goldfish/ M=$(PWD) modules  # -C 到 linux kernel源码目录。生成word_count.ko文件
​
clean:make -C /root/goldfish/ M=$(PWD) clean

push到模拟器中

adb push word_count.ko /data/local/

驱动测试程序编译

配置编译环境

cd /share/aosp/
source build/envsetup.sh
lunch sdk_phone_x86_64

Android.md

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
​
LOCAL_SRC_FILES:=test_word_count.c
​
LOCAL_MODULE := test_word_count
​
include $(BUILD_EXECUTABLE)

编译测试程序

cd /share/aosp/development/
ln -s /root/test_driver/word_count/test/ ./word_count_test
export TATGET_BUILD_VARIANT=user
mmm development/word_count_test #相当于交叉编译。
#生成的可执行程序在/share/aosp/out/target/product/generic_x86_64/system/bin/test_word_count

adb push到android模拟器中

adb push /share/aosp/out/target/product/generic_x86_64/system/bin/test_word_count /data/local/  # 注意在sdcard目录是无法修改为执行权限的,只能是读写,在/data/local中可以拥有执行权限。

adb shell 进入终端,执行测试程序

cd /data/local/
insmod word_count.ko # 加载驱动程序。
# dmesh 可以看到内核有打印,说明驱动加载成功
# 另外在/dev/wordcount也已经发现了该设备
chmod -R 777 test_word_count # 添加执行权限。
./data/local/test_word_count 'a b c d e'   #输出结果为5,设备驱动能正常工作

04.在android模拟器中运行linux驱动相关推荐

  1. android 模拟器应用未安装,当我在Android Studio中运行它时,Android应用程序未安装在模拟器或设备上...

    我正在开发Android应用程序.在我的应用程序中,我正在测试在设备和模拟器上运行的应用程序.这是我的第三个Android应用程序开发.当我开发其他应用程序时,应用程序会自动安装在设备上或模拟器上的启 ...

  2. 安卓linux shell,如何在Android SHELL中运行C应用程序

    我想运行在C上编写的hello世界,并使用 Android toolchain 9进行编译,但是我遇到了问题:默认情况下,我没有权限启动它,我无法使用chmod来更改权限. 我使用Android 2. ...

  3. android模拟器bo,在 Android 模拟器中安装 busybox

    在Android模拟器中安装busybox [背景]: Android 模拟器的 shell 真是难用啊,很多命令都不支持,如 find . grep . send 等等,最近正好有时间,想捣鼓捣鼓, ...

  4. 【Android 逆向】Frida 框架 ( Frida 2 种运行模式 | Frida 12.7.5 版本相关工具下载地址 | 在 Android 模拟器上运行 Frida 远程服务程序 )

    文章目录 一.Frida 2 种运行模式 二.Frida 12.7.5 版本相关工具下载地址 三.在 Android 模拟器上运行 Frida 远程服务程序 1.启动雷电模拟器 2.上传 frida- ...

  5. Android应用程序访问linux驱动第三步:实现并向系统注册Service

    在学习Android应用程序访问linux驱动时,原博主在第一.二步写得具体详细,但我学到第三步实现并向系统注册Service时,发觉内迷惑和发现几处错误,这里我将我的理解和修改记录下来和大家分享.希 ...

  6. 如何在Android模拟器中安装APK文件?

    我终于设法混淆了我的Android应用程序,现在我想通过安装APK文件并在模拟器上运行来测试它. 如何在Android模拟器上安装APK文件? #1楼 从浏览器下载apk文件,然后点击它(通知区域). ...

  7. android模拟器无法拍照,为什么dafault相机无法在android模拟器中工作?

    当我试图打开摄像头应用程序在模拟器defaultly给出,它意外停止和logcat的显示为什么dafault相机无法在android模拟器中工作? 02-08 11:18:35.005: INFO/A ...

  8. 如何在android模拟器中模拟sd卡,如何在Android模拟器中模拟SD卡

    如何在Android模拟器中模拟SD卡 简介 Android允许开发者创建一个SD卡镜像并在启动模拟器加载它, 用于模拟物理设备中的SD卡. 下面将介绍: 1. 如何创建一个SD卡镜像? 2. 如何拷 ...

  9. android ftp service 自动启动失败,从Android模拟器中的本地FTP服务器下载时出现错误“ 227进入被动模式” /“连接被拒绝”...

    我正在尝试使用FTPSClientAndroid模拟器中运行的Java从本地FileZilla服务器下载文件. 我已经编写了此帮助程序代码来下载一个文件: public boolean downloa ...

最新文章

  1. 使用Python创建MySQL数据库实现字段动态增加以及动态的插入数据
  2. C++类的使用(四)—— 继承
  3. 线程的同步与互斥,死锁
  4. sv_labs学习笔记——sv_lab4(System Verilog)
  5. Window 消息大全使用详解
  6. wps word与office word相比的优缺点
  7. 关于总时差和自由时差的作用及理由
  8. 操作系统:信号量机制之生产者与消费者实验
  9. dialog在关闭的时候会刷新页面,并且地址后面多加了一个问号,导致数据查询不出来的解决方法
  10. AirServer 7win/mac手机投屏到电脑工具
  11. PC端微信网页打不开
  12. php调用谷歌翻译,PHP调用谷歌翻译实现翻译功能
  13. com.sec.android.ofvi,恶意软件分析 URL链接扫描 免费在线病毒分析平台 | 魔盾安全分析...
  14. 阿里云centos下载地址
  15. 辉芒微FT61F022A
  16. E. Exits in Excess
  17. 移动拨号上网开热点(不是360开热点,而是使用电脑自带的热点功能)详解
  18. Vivado 2017.4版本下载
  19. centos7.2安装五笔输入法的方法
  20. java 国家法定节假日和双休日判断工具类

热门文章

  1. LDA模型简介及应用
  2. 两台PC机之间就一定要用交叉线吗?
  3. 建筑八大员培训湖北标准员培训施工现场质量标准化的建设措施
  4. Ubuntu内存清理经验整理
  5. VC10如何在Release模式下调试代码
  6. Unity NGUI实现角色名追随角色移动
  7. matlab2015崩溃,ubuntu16.04上安装matlab 2015b,2016a的故障排除
  8. 网页滚动特效—WOW.JS快速使用教程
  9. Netgear推出Nighthawk X6S三频无线路由器:速率4Gbps
  10. 弘辽科技:天猫店铺装修在哪里?装修有何技巧?