zoukankan      html  css  js  c++  java
  • 2017-2018-1 20155213 实验四 外设驱动程序设计

    2017-2018-1 20155213 实验四 外设驱动程序设计

    实验目的

    1、学习资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章
    2、在Ubuntu完成资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章的test试验
    3、提交编译,加载模块,卸载模块,测试运行的截图

    实验任务

    任务一

    • 学习资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章
    • 提交康奈尔笔记的照片(可以多张)

    **笔记照片** ![](https://images2018.cnblogs.com/blog/1071611/201712/1071611-20171203181303507-1870778680.jpg)


    任务二

    • 在Ubuntu完成资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章的test试验
    • 提交编译,加载模块,卸载模块,测试运行的截图(要多张,全屏,体现学号信息)

    **要点** * 本部分就是敲代码,理解最基础的kernel编程。 * 代码不必要自己敲,因为pdf首页写着,有赠送光盘贴有代码,所以买了本书,也就解决了敲代码问题。

    **截图如下** ![](https://images2018.cnblogs.com/blog/1071611/201712/1071611-20171203181336491-1241910071.png) ![](https://images2018.cnblogs.com/blog/1071611/201712/1071611-20171203181345022-181087564.jpg)

    任务三

    • 在实验箱中通过交叉编译完成test实验

    • 提交编译,加载模块,卸载模块,测试运行的截图(要多张,全屏,体现学号信息)

    • 未完成(老师叫停)

    出现的问题及解决

    PS:需要注意,一定在实验一的虚拟机上做,因为那里面的环境已经搭好了,不然很难成功。

    • 问题一,insmod:error inserting './test_drv.ko':-1 Operation not permitted

    • 问题一解决:上面的意思是操作没有被允许,即是权限问题,加上一个sudo就好了。

    • 问题二,chgrp:无效的组:"david"

    • 问题二解决:上面的意思很明显,就是david是无效组,将test_drv_load里面的组改为自己linux所在组就好了。

    • 问题三:ERROR:Removing 'test_drv':Device or resource busy

    • 问题三解决:百度了很久没能找到好的解决方法,就只能从原理上解决了,但可以使用unload里面的指令直接强制删除test_dev文件,然后重启虚拟机就可以了,因为其中rmmod的test_drv是存在proc里面的,而proc是只存在与内存中的,使所以重启后,自然没了,从而解决问题。

    百度的帮助网站

  • 相关阅读:
    代码中一些常见的小片段
    Surface Pro 3 扩展坞体验
    Microsoft SQL Server 存储过程举例
    Google Guava学习笔记——基础工具类针对Object类的使用
    Google Guava学习笔记——基础工具类Preconditions类的使用
    Google Guava学习笔记——基础工具类String处理类的使用
    Google Guava学习笔记——基础工具类Splitter的使用
    Google Guava学习笔记——基础工具类Joiner的使用
    Google Guava学习笔记——简介
    好书推荐——《Soft Skill》
  • 原文地址:https://www.cnblogs.com/elevator/p/7966727.html
Copyright © 2011-2022 走看看