2022年5月28日

kernel_fgets 内核态按行读取文件

摘要: kernel_fgets 1、kernel_fgets 说明 (等效于用户态fgets,若不太明白,可参考fgets函数) 函数说明:内核态从fp文件描述符里,读取最大max_size-1字节的一行字符串,并存储于buf中。 返回值:正确情况下返回buf指针,error情况下返回NULL 参数说明: 阅读全文

posted @ 2022-05-28 15:38 红旗kernel 阅读(568) 评论(0) 推荐(0) 编辑

2022年5月24日

linux大小端

摘要: 1、大小端的原理 字节序:又称尾序、端序 大端(big endian):将数据的低位字节存放在内存的高位地址,高位字节存放在低位地址。简称高低 小端(little endian):将数据的低位放在较小的地址处,高位放在较大的地址处。简称高高 笔者假设存储数据为0x89ABCDEF 32位数据 大端存 阅读全文

posted @ 2022-05-24 07:55 红旗kernel 阅读(925) 评论(0) 推荐(0) 编辑

2022年5月16日

gcc 常见编译选项

摘要: gcc常见编译选项 -O优化编译选项: gcc详解链接:https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html 注意:GDB调试时最好关闭优化选项。 编译选项目的:在不改变语义的情况下,改变程序结构,满足程序大小或运行速度目的 编译选项 选项 阅读全文

posted @ 2022-05-16 20:31 红旗kernel 阅读(89) 评论(0) 推荐(0) 编辑

2022年4月26日

获取 cpu 时钟周期数(cpu cycle)

摘要: 1、x86下获取cpu 时钟周期数 get_cpu_cycle:函数获取自cpu启动以来所记录的cpu时钟周期数。 1.1 实验代码 #include <stdio.h> #include <unistd.h> int main() { unsigned long long number = 100 阅读全文

posted @ 2022-04-26 19:28 红旗kernel 阅读(4130) 评论(0) 推荐(0) 编辑

2022年4月24日

常用脚本

摘要: 1、fix_irq.sh 脚本作用:把所有硬件中断指定到0核上。读者若需修改指定核,可修改01参数为指定核的cpumask echo 01 > /proc/irq/${irq_number}/smp_affinity cat /proc/interrupts | awk '{print $1}' > 阅读全文

posted @ 2022-04-24 15:21 红旗kernel 阅读(35) 评论(0) 推荐(0) 编辑

2022年2月20日

购房

摘要: 信息来源: 成都购房通小程序 房小团小程序 阅读全文

posted @ 2022-02-20 20:57 红旗kernel 阅读(8) 评论(0) 推荐(0) 编辑

2022年2月8日

gdb 常见调试问题

摘要: 1、gdb 无符号表信息 [root@localhost asan_test]# gdb a.out GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-120.el7 Copyright (C) 2013 Free Software Foundation, I 阅读全文

posted @ 2022-02-08 09:54 红旗kernel 阅读(569) 评论(0) 推荐(0) 编辑

2022年1月6日

系统root用户登录失败

摘要: 在centos自动登录root用户时出现如下错误: Authentication service cannot retrieve authentication info CentOS Linux 8 (Core)Kernel 4.14 on an aarch64 login: root (autom 阅读全文

posted @ 2022-01-06 10:28 红旗kernel 阅读(1504) 评论(0) 推荐(0) 编辑

2021年9月23日

热插拔机制:hotplug

摘要: 热插拔(hotplug) 热插拔:在不重启系统的情况下,增减硬件设备。 本文主要介绍linux下的热插拔 热插拔:实现了驱动向用户态通知设备插拔 (1)外设插入,硬件中断响应 (2)总线发现新的设备,驱动probe 再调用device_add(设备驱动??) (3)device_add调用kobje 阅读全文

posted @ 2021-09-23 23:54 红旗kernel 阅读(2882) 评论(0) 推荐(0) 编辑

2021年9月20日

USB抓包usbmon

摘要: 1、挂载debugfs文件系统 mount -t /sys/debugfs none /sys/kernel/debug 2、确定可以使用usbmon 有usbmon命令 3、使用usbmon抓包 查看USB总线情况 ls -la /sys/kernel/debug/usb/usbmon 0s 0u 阅读全文

posted @ 2021-09-20 17:52 红旗kernel 阅读(1118) 评论(2) 推荐(0) 编辑

导航