zoukankan      html  css  js  c++  java
  • 2019-2020-1 20175227张雪莹《信息安全系统设计基础》 实验四 《外设驱动程序设计》

    2019-2020-1 20175227张雪莹《信息安全系统设计基础》

    实验四 《外设驱动程序设计》

    实验报告封面

    • 课程:信息安全系统设计基础 班级:1752班 姓名:张雪莹 学号:20175227
    • 指导教师:娄嘉鹏 实验日期:2019年11月25日
    • 实验时间:--- 实验序号:四
    • 实验题目:外设驱动程序设计

    实验步骤

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

    • 任务二
      • 要求:
        • 在Ubuntu完成资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章的test试验
        • 提交编译,加载模块,卸载模块,测试运行的截图(要多张,全屏,体现学号信息)
      • 实现:
        • 将该章中关于字符设备的代码test_drv.ctest.cMakefiletest_drv_loadtest_drv_unload敲入
        • test_drv.c
        • test.c
        • test_drv_load
        • test_drv_unload
        • 编译并加载驱动模块
          • 编译:make clean;make
          • 加权限加载脚本或以管理员身份加载脚本:chmod +x ./test_drv_load,sudo ./test_drv_load
        • 编译运行程序
          • 编译:gcc -o test test.c
          • 加权限或以管理员身份运行:chmod +x ./testsudo ./test
        • 卸载驱动程序
          • 加权限加载脚本或以管理员身份加载脚本:chmod +x ./test_drv_unloadsudo ./test_drv_unload
        • 运行示例:

    • 任务三
      • 要求:
        • 在实验箱中通过交叉编译完成test实验
        • 提交编译,加载模块,卸载模块,测试运行的截图(要多张,全屏,体现学号信息)
      • 实现:
        • 按照实验一的环境配置将PC连接到实验箱,要求是两个虚拟机和实验箱能互相ping通。

    遇到的问题及解决方法

    • 问题1:makefile时出现遗漏分隔符错误提示。
    • 问题1解决方法:makefile文件中任何命令之前都必须有一个Tab缩进。
    • 问题2:运行load脚本出现错误insmod: error inserting './test_drv.ko': -1 File exists
    • 问题2解决方法:输入sudo rmmod -f 文件名强力删除该文件后重启虚拟机。
  • 相关阅读:
    设计模式(六)Prototype Pattern 原型模式
    设计模式(五)Builder Pattern建造者模式
    Linux安装软件
    日志技术及JUL入门
    IDEA推出新字体,极度舒适
    HDFS的API操作
    Apollo的灰度发布
    Apollo整合SpringBoot开发
    Apollo配置发布原理
    Apollo应用配置
  • 原文地址:https://www.cnblogs.com/zxy20175227/p/11965324.html
Copyright © 2011-2022 走看看