博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

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

实验内容

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

  • 学习资源中全课中的“hqyj.嵌入式Linux应用程序开发标准教程.pdf”中的第十一章

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

  • 20155217

  • 20155236

实验四外设驱动程序设计-2

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

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

  • 20155217

  • 20155236

实验中遇到的问题以及解决过程

  • 问题一:

    实验使用的内核版本和我所使用的虚拟机内核版本不同

  • 解决方案:

    尝试安装内核解决insmod: error inserting 'hello.ko': -1 Invalid module format失败,选择使用老师在实验一中给出的虚拟机。

  • 问题二:

    Makefile失败

  • 解决方案:

    失败可能有以下原因:1、未按Makefile标准格式书写文件,比如tab键分隔符2、内核编译路径未找准,通过cd /usr/srcls //可以看到内核路径

实验体会和感受

  • 设备驱动程序是内核的一部分。OS通过各种驱动程序来操作硬件设备,设备驱动程序是内核的一部分,硬件驱动程序是OS最基本的组成部分。Linux将最基本的核心代码编译在内核当中,其他代码编译到内核或者内核的模块文件,需要时再加载。常见的内核模块驱动程序比如声卡和网卡,linux基础驱动包括CPU,PCI总线,TCP/IP协议,APM(高级电源管理)等。lsmod列出当前系统中加载的模块。
  • 这次实验做了嵌入式linux开发的相关实验,增强了我们的动手能力、实践能力,加深了对于相关知识的理解。