存储--IT打桩测试方法

存储–IT打桩测试方法一


近期项目基本功能完成,开始IT,现对IT打桩做一个总结

  • 创建一个模块参数 int stub_location,有必要的话可以单独创建一个内核模块test_err_stub

1.内核态流程测试

  • 内核态代码可以直接使用stub_location。

2.用户态流程测试

  • 用户态代码必须通过一个function从/sys/module/test_err_stub/stub_location中读取

修改stub_location的值

echo x > /sys/module/test_err_stub/stub_location
x是修改的值

用户态获取stub_location方法
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int get_stub_location(void)
{
    int loc = -1;
    FILE *fp = NULL;
    char buff[10];
    memset(buff, 0, sizeof(char)*10);

    if((fp = fopen("/sys/module/test_err_stub/stub_location","r"))==NULL)
    {
        printf("Failed to get stub_location,for open file /sys/module/test_err_stub/stub_location!\n");
        goto abort;
    }
    fread(buff,sizeof(char)*10,1,fp);
    fclose(fp);
    loc = atoi(buff);
abort:
    return loc; 
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值