zoukankan      html  css  js  c++  java
  • 第十章 心得体会

    通过第十章的学习,了解了在嵌入式Linux驱动开发中的调试技术已经调试工具。

    学到的知识:

    一、打印内核调试信息:printk

    printk函数的原型如下:

    asmlinkage int printk(const char * fmt, ... )

    printk文件是一个简单的有4个数字组成的文本文件,该文件的默认值如下:6 4 1 7

    6:将消息输出到控制台的级别。

    4:默认的消息日志级别。

    1:控制台日志级别可被设置的最小值

    7:控制台日志级别的默认值.

    二、防止printk函数降低Linux驱动性能

    1.可变参数的宏

    2.do{...}while(O)

    三、通过虚拟文件系统进行数据交互  

    proc_mkdir

    name: 虚拟目录名称。

    parent: 虚拟目录父目录的 proc_dir_entry结构体指针。

    create_proc_enttry

    name: 虚拟文件名称。

    mode: 虚拟文件的访问权限

    parent: 虚拟文件父目录的 proc_dir_entry 结构体指针。

    create_proc_read_entty

    name:虚拟文件名称。

    mode:虚拟文件的访问权限

    base:虚拟文件父目录的proc_dir_entry结构体指针。

    read_proc:处理读动作的函数指针。

    data:用于虚拟文件系统的数据。

    remove_proc_entry

    name:要删除的虚拟文件的名称。

    parent:虚拟文件父目录的proc_dir_entry结构体指针。

    四、调试工具

    1.gdb调试用户空间程序

    2.gdbserver远程调试用户空间程序

    3.kgdb远程调试内核程序

  • 相关阅读:
    golang获取URL
    Golang读取HTML中Table数据到二维数组
    Golang的GUI开发包fyne基本教程
    C#搭建安川机器人上位机
    程序计数器
    SpringBoot定时任务详解
    mysql 5.7安装
    springboot 配置多数据源
    mysql 查询某一天数据
    java如何获取当前日期和时间
  • 原文地址:https://www.cnblogs.com/chen-yang/p/5638388.html
Copyright © 2011-2022 走看看