i.mx287学习笔记10-带参内核模块、程序

2023-11-08

上面是我的微信和QQ群,欢迎新朋友的加入。

1.带参程序

这里传递的是字符串,argc表示有几个参数要被传递,其中可执行文件本身也会当做一个参数

#include "stdio.h"

int main(int argc, char **argv)
{
	int i = 0;

	for(i = 0; i < argc; i++)
	printf("argv[%d] = %s\n", i, argv[i]);
	return 0;
}

2.带变量的内核模块

这里是传递一个变量给到程序

基本类型有:
bool   :布尔类型
invbool:颠倒了值的bool类型;
charp  :字符指针类型,内存为用户提供的字符串分配;(char *)
int    :整型
long   :长整型
short  :短整型
uint   :无符号整型(unsigned int)
ulong  :无符号长整型(unsigned long)
ushort :无符号短整型(unsigned short)

指针类只能char*,对应名字 charp .

#include <linux/module.h>
#include <linux/init.h>

static int num = 5;

module_param(num, int, S_IRUGO);

static int __init sum_init(void)
{
	printk("num:%d\n",num);
	return 0;
}
static void __exit sum_exit(void)
{
	printk("I'll be leaving, bye!\n");
}

module_init(sum_init);
module_exit(sum_exit);
MODULE_LICENSE("GPL");

3.带数组的内核模块

#include <linux/module.h>
#include <linux/init.h>

static int para[8] = {1,2,3,4};
static int n_para = 3;

module_param_array(para , int , &n_para , S_IRUGO);

static int __init sum_init(void)
{
	int i;

	for (i = 0; i < 8; i++)
		printk(KERN_ALERT "para[%d] : %d \n", i, para[i]);

	for(i = 0; i < n_para; i++)
		printk(KERN_ALERT "para[%d] : %d \n", i, para[i]);

	return 0;
}
static void __exit sum_exit(void)
{
	printk("I'll be leaving, bye!\n");
}

module_init(sum_init);
module_exit(sum_exit);
MODULE_LICENSE("GPL");

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

i.mx287学习笔记10-带参内核模块、程序 的相关文章

  • 编译开源软件vtr-verilog-to-routing遇到的一点问题

    vtr verilog to routing介绍 Verilog to Routing VTR 项目是一个全球性的合作项目 旨在提供一个开源框架 用于进行FPGA架构和CAD研究和开发 VTR设计流程以数字电路的Verilog描述和目标FP
  • SpringBoot连接RabbitMQ时一直显示Socket Closed或者An unexpected connection driver error occured,但是能正常访问web管理台

    问题 在使用SpringBoot去连接虚拟机或者远程主机的RabbitMQ时 出现了一直报错超时 报错 Socket Closed 或者 An unexpected connection driver error occured 解决方案
  • “程序员转型管理:从擅长代码到掌控团队的踩坑总结”

    作为程序员 很多人会在职业生涯中考虑转型管理岗位 然而 这个转换并不容易 除了需要掌握管理方面的知识和技能外 还需要处理人际关系并带领团队一起前进 在这个过程中 很多人可能会踩到一些坑 以下是我总结的一些经验教训 一 控制欲 由于程序员需要
  • jquery ajax 防止注入,javascript-jQuery在ajax全局事件中注入数据

    我正在尝试在ajax请求中注入数据 但是它失败了 我也不知道为什么 我试图查看jQuery源代码 但仍然找不到为什么它不起作用 感谢任何帮助 这是代码 someElement ajaxSend function e req options
  • python项目加密(模型加密,文件加密),涵盖了多种方法以及代码实现

    Python作为动态语言一般是以源码方式进行部署的 这就意味着他人在部署机器上可以直接获取项目代码 可能给作者带来不必要的损失和风险 这就需要对代码进行加密或混淆 常规的几类加密 混淆 方式如下 编译为pyc文件 将项目代码打包成pytho
  • 我的Substance Designer 学习笔记02-PBR材质学习理解

    首先定义PBR Physics based rendering 基于物理的渲染 由来 2012年迪士尼公司在技术论坛发布的文章 讲述自己作品的制作流程 2014年被某大佬提出简化版本的制作流程 优化后只用5中材质通道 BSDF 双向散射率分
  • C++实验02(02)华氏温度转换为摄氏温度

    题目描述 编写一个函数convert 把华氏温度转换为摄氏温度 转换公式为 C F 32 5 9 要求用内联函数实现 在main 中调用该函数 说明 F为double型 输入描述 华氏温度 输出描述 摄氏温度 输入样例 100 输出样例 华
  • 单线双线多线服务器有哪些区别

    单线双线多线服务器有哪些区别 服务器托管是我们现在当下比较常用的一种方式 越来越多的企业及站长 他们都会选择服务器托管 这不仅可以减少企业的维护时间成本 也可以让网站或者平台能够得到更多的专业技术支持 那么 在服务器托管中 我们经常会遇到单
  • jenkins+fastlane+git+cocoapods实现iOS持续集成踩坑记录

    前提 本项目在配置jenkins前已配置安装fastlane并自动上传蒲公英 关于fastlane的使用不在本文讨论范围之内 安装Jenkins jenkins有几种方式安装 一种是去官网下载dmg安装包 还可以下载 war文件 通过执行命
  • 整理一下react的知识点之redux-devtools-extension基本使用(持续更新)

    1 下载相关包 npm i redux react redux redux thunk redux devtools extension 2 安装react开发工具 chrome浏览器插件 3 安装redux的开发工具 chrome浏览器插
  • 【华为OD统一考试B卷

    华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一修改为OD统一考试 A卷 和OD统一考试 B卷 你收到的链接上面会标注A卷还是B卷 请注意 根据反馈 目前大部分收到的都是
  • 如何用ChatGPT辅助写论文

    ChatGPT先进功能创造了巨大的需求 该AI工具在推出后的两个月内就积累了超过1亿用户 最突出的功能之一是它能够在几秒钟内编写各种文本 包括歌曲 诗歌 睡前故事和散文 但是ChatGPT可以做的不仅仅是写一篇文章 更有用的是它如何帮助指导
  • 什么是IOC和DI?DI是如何实现的?

    什么是IOC和DI DI是如何实现的 IOC Inversion of Control 叫控制反转 DI Dependency Injection 叫依赖注入 是对IOC更简单的诠释 IOC 控制反转是把传统上由程序代码直接操控的对象的调用
  • IDEA上传代码到Gitee

    提示 这里可以使IDEA上传代码到Gitee 需要自己手动操作 目录 前言 一 打开Gitee官网 进行注册登录 1 登录进去找到右上角添加仓库 进行所示图操作 二 启动IDEA 1 IDEA关联Gitee 2 找到git下载好git程序

随机推荐

  • SPI协议的verilog实现:利用spi协议配置寄存器

    状态机状态跳转图 因常常需要对寄存器进行配置 因而学习了V3学院的视频课 利用spi协议对寄存器进行配置 在此做个记录 以便日后回顾 上图为状态机状态转移图 需要先将需要配置的寄存器的信息存放在ROM中 然后将数据读出来 通过SPI协议发送
  • Vue3快速入门教程

    学某个新技能时 大多数人倾向于 一开始就从头到尾完整学一遍 甚至有人翻来覆去重复学很多遍也达不到熟记于心 我个人认为 这不是最好的办法 我的建议的是 面向需求 or 面向问题来学习 最开始你可能不了解你要实现的效果会涉及哪些技术知识点 那么
  • 六十七.深度优先遍历C语言实现(有向图)

    include
  • ApplicationContext类继承设计

    先上类图 BeanFactory是Spring IoC的核心接口 BeanFactory相关的类设计可以看做是Spring的核心骨骼 为整个框架设计了一个基本的核心架构 但只有骨骼 没有血肉 也是不完整的 这样一个核心的骨架难以在实际开发中
  • 【知识蒸馏】Knowledge Review

    GiantPandaCV引言 知识回顾 KR 发现学生网络深层可以通过利用教师网络浅层特征进行学习 基于此提出了回顾机制 包括ABF和HCL两个模块 可以在很多分类任务上得到一致性的提升 摘要 知识蒸馏通过将知识从教师网络传递到学生网络 但
  • 【无关技术·朋友圈朝花朝拾】月相

    月相 月相是以日月黄经差度数 以下的度数就是日月黄经差值 来算的 农历每一天的月相都有自己的专门名字 详情请看https baike baidu com item 月相是日月黄经差度数 以下的度数就是日月黄经差值 来算的 共划分八种 新月
  • Java集合之LinedList

    LinedList类实现了List接口 他提供了 双向的 链表数据结构 在该链表中的每一个元素除了存储本身的内容之外还存储指向前一个元素的指针和指向后一个元素的指针 下图展示了一个包含三个元素的双向链表 每个链表都有一个头部 头部指向第一个
  • Jdk8 foreach语法需要break怎么办?

    forEach里的return只相当于continue 没有break语法 在这里我总结了3种解决方案供你选择 exception filter anyMatch forEach里的return只相当于continue 没有break语法
  • 【Unity】让动画系统支持相对坐标

    假如你有一个很简单的动画 并且需要应用到许多物体上 但如果你挂载同一个动画到两个物体上 就会这样 解决方案 仅测试过 legacy 动画 挂载此脚本到物体上 using System Collections using System Col
  • 新手小白学影视剪辑50天日入500,她的方法秘籍全在这里了!【覃小龙课堂】

    hi 我是您的老朋友 覃小龙 您可以称呼我为覃总 今天给您带来的主题干货是一位女学员的总结 新手小白学影视剪辑50天日入500 她的方法秘籍全在这里了 做视频剪辑无论新手老手 无非就是这几点 1 怎么样才能不侵权 过审核发布 2 怎么样才能
  • upload-labs靶场学习笔记1-21关

    目录 Pass 01 前端验证 Pass 02 MIME验证 Pass 03 黑名单验证 特殊后缀 Pass 04 黑名单验证 htaccess重写解析绕过上传 Pass 05 黑名单验证 user ini 点空格点 Pass 06 黑名单
  • TD联合Modelsim进行功能仿真

    TD联合Modelsim进行功能仿真 1 引言 2 基本配置流程 2 1 TD软件设置操作 2 2 Modelsim软件方面设置 1 引言 最近在接触使用国产安路科技公司的FPGA进行相关的开发 TD Tang Dynasty 作为一款安路
  • 项目研发心得总结

    前言 近期因学校实验室项目需求 组建6人小团队研发一个网站 框架采用 NET MVC EF 数据库为SQL Server 简单总结一二 一 数据库设计方面 网站的根基 数据库 最开始源自于和甲方进行需求沟通 由于甲方节奏较缓慢 在未完全确定
  • 用certutil 注册根证书到nss/firefox

    环境 Centos 6 5 certutil 参数 所有命令可参见系统自带帮助 通俗易懂 certutil 选项 参数 root localhost lftshell certutil H A Add a certificate to th
  • e5服务器系列天梯图,至强e5系列cpu天梯图_2020年5月至强e5天梯图排行

    CPU的种类多种多样 性能也不尽相同 有很多朋友都非常关注cpu市场的情况 因为一款CPU性能的好坏 决定了我们电脑的运算能力高低 今天我们主要关注的是英特尔e5系列cpu 为了直观对比e5系列cpu的性能情况 我们可以参考至强e5系列cp
  • int *p = NULL 和*p = NULL 有什么区别

    int p NULL 和p NULL 有什么区别 int p NULL 这时候我们可以通过编译器查看p 的值为0x00000000 这句代码的意思是 定义一个指针变量p 其指向的内存里面保存的是int 类型的数据 在定义变量p 的同时把p
  • springboot整合mybatis-plus,代码自动生成

    Mybatis Plus 简称MP 是一个 Mybatis 的增强工具 在 Mybatis 的基础上只做增强不做改变 为简化开发 提高效率而生 特性 无侵入 Mybatis Plus 在 Mybatis 的基础上进行扩展 只做增强不做改变
  • win11绕过硬件限制的方法

    升级win11有硬件配置要求 所以这让很多硬件设施不合格 又懒的换硬件 还想体验win11新系统的用户很头疼 其中就有Windows11当前不支持该处理器的问题 但这不能说明配置低的电脑就完全失去机会了 绕开微软限制的要求 安装上win11
  • [转]信息安全相关理论题(四)

    26 表示邮件服务器返回代码为临时性失败 xx代表任意数 A 2xx B 3xx C 4xx D 5xx 您的答案 标准答案 C 27 买家称购买商品异常后的正确操作是立即咨询官方客服 A 正确 B 错误 您的答案 标准答案 A 28 网上
  • i.mx287学习笔记10-带参内核模块、程序

    上面是我的微信和QQ群 欢迎新朋友的加入 1 带参程序 这里传递的是字符串 argc表示有几个参数要被传递 其中可执行文件本身也会当做一个参数 include stdio h int main int argc char argv int