嵌入式安卓项目笔记

前言:时间2021年7月电子科大人文交流月课程《嵌入式安卓系统开发》的大作业

项目描述

  • 基于VM虚拟机Ubuntu 18.04。参考老师所给的suspendmonitor例程,实现USB插拔监控驱动+APP用户应用程序。具体表现为:
  • 编写一个kernel module,注册usb callback,用于监控USB设备的插拔情况,提供/proc/usb_monitor设备节点,提供读取接口,功能开关接口。
  • 编写APP用户应用程序,读取/proc/usb_monitor设备节点数据,以RingBuffer形式存储插拔数据(最多512条),数据格式自定义,但必须包括:USB设备名称+插入时间+拔离时间。

问题1:如何将Windows上的suspendmonitor压缩文件下载到Linux上去?
解决:基于securecrt软件,用zmodem协议进行传输。
问题2:Windows下的压缩文件是.rar格式的,而书上一般教的是怎么解压tar格式的,rar的如何解压?
解决:https://blog.csdn.net/qq_33475105/article/details/105680952
问题3:编译老师所给的.cpp源程序的时候,一直报错出现很多“未定义的引用”
解决:应该用g++编译,而不是用gcc
问题4:运行老师所给的suspend程序后,不知道怎么退出程序了
解决:ctrl+c
问题5:在安装好Samba服务以后,成功映射为类似U盘的共享文件夹,在Windows中在该共享文件夹中新建文件时,显示权限不足:
在这里插入图片描述
解决:原因是因为该共享文件夹的权限不足,键入:chmod 777 /home/zwg/MyShare1,给予该文件夹全部权限,然后重启Samba服务。

问题6:在SourceInsight中查看老师给的.c文件时,有一些函数或变量是灰色的,找不到,具体位置,导致看程序不完整。

解决:下载Linux对应内核的源码,找到.c文件最前面包含的那些头文件,将其加入到SourceInsight的工程中。

问题7:所要求写的这个驱动程序,应该为用户程序(app)提供哪些能力(机制)?

问题8:有关RingBuffer(环形缓冲区)的C++实现,看不懂老师给的代码。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值