20155308 2017-2018-1 《信息安全系统设计基础》实验四外设驱动程序设计

20155308 2017-2018-1 《信息安全系统设计基础》实验四外设驱动程序设计

外设驱动程序设计-1

实验要求

学习资源中全课中的“hqyj.嵌入式Linux应用程序开

发标准教程.pdf”中的第十一章

提交康奈尔笔记的照片(可以多张)

外设驱动程序设计-2

实验要求

在Ubuntu完成资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章的test试验

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

实验过程

首先我在VirtualBox环境下进行实验,然后总是出现权限不够的提示,总是提示找不到命令。通过加权限等方法也不可以。

然后通过同学的提示,说我们的VirtualBox环境比较新,无法支持这个实验,所以实验环境换到VMware Workstation软件下进行实验。

但是也会出现权限不够的提示:

然后我们上网寻找了一个修改权限的方法:

  1. 命令格式:
    chmod [-cfvR] [--help] [--version] mode file
  2. 命令功能:
    用于改变文件或目录的访问权限,用它控制文件或目录的访问权限。
  3. 命令参数:
    必要参数:

-c 当发生改变时,报告处理信息

-f 错误信息不输出

-R 处理指定目录以及其子目录下的所有文件

-v 运行时显示详细处理信息
选择参数:

--reference=<目录或者文件> 设置成具有指定目录或者文件具有相同的权限

--version 显示版本信息

<权限范围>+<权限设置> 使权限范围内的目录或者文件具有指定的权限

<权限范围>-<权限设置> 删除权限范围的目录或者文件的指定权限

<权限范围>=<权限设置> 设置权限范围内的目录或者文件的权限为指定的值

权限范围:

u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组
权限代号:
r :读权限,用数字4表示
w :写权限,用数字2表示
x :执行权限,用数字1表示

  • :删除权限,用数字0表示
    s :特殊权限

在每次运行文件之前,输入

chmod +x .....

再运行程序,就可以成功了

实验过程如下:

  1. 清除并执行makefile文件make clean;make
  2. 给脚本加可执行权限chmod +x test_drv_load
  3. 给脚本加可执行权限chmod +x test_drv_unload
  4. 给脚本加可执行权限chmod +x test_drv.ko
  5. 得到root权限su
  6. 加载模块./test_drv_load
  7. 编译gcc test.c -o test
  8. 运行./test
  9. 卸载模块./test_drv_unload

外设驱动程序设计-3

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

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

本次实验电脑和实验箱没有办法ping通,就没有办法实现。

体悟和感想

本次实验是先学习老师给的资料,然后再进行的实验。笔记是通过康奈尔笔记的方法进行记录,然后实验的总体步骤还是比较简单的,但是在实验过程中还是会出现很多问题,然后不断解决。感觉学习到了很多东西。

posted @ 2017-12-01 10:26  郝文菲20155308  阅读(253)  评论(0编辑  收藏  举报