- 博客(37)
- 资源 (4)
- 收藏
- 关注
原创 centos7编译buildroot报错/usr/include/xlocale.h:27:16: error: redefinition of ‘struct __locale_struct‘
centos7编译buildroot报错/usr/include/xlocale.h:27:16: error: redefinition of 'struct __locale_struct'
2023-09-05 10:10:13
552
原创 Centos8 制作qcow2及使用
CentOS-8.2.2004 使用ios镜像制作qcow2;yum 无法使用问题解决;安装内核 kernel-devel-4.18.0-193.el8.x86_64等
2023-01-14 21:28:43
2238
原创 yum install 报错:One of the configured repositories failed (Unknown),
yum install 报错 One of the configured repositories failed (Unknown)
2022-12-26 15:09:54
3270
转载 Centos 7启动报错:xfs(sdm1):Internal error XFS_WANT_CORRUPTED_GOTO 处理
解决方案参考:Centos 7启动报错:xfs(sdm1):Internal error XFS_WANT_CORRUPTED_GOTO 处理 - 爱上不一样的风采 - 博客园No controller foundxfs(sdm1):Internal error XFS_WANT_CORRUPTED_GOTO at line 1635 of file xf/xfs/libxfs/xfs_alloc.c. Caller xfs_free_extent+0xfc/0x130[xfs]XFS(sd.
2022-05-05 17:48:09
4785
1
转载 libc.so.6 is needed by XXX”解决方法
rpm 包安装过程中依赖问题“libc.so.6 is needed by XXX”错误提示:libc.so.6 is needed by compat-libstdc++-33-3.2.3-47.3.i386libc.so.6(GLIBC_2.0) is needed by compat-libstdc++-33-3.2.3-47.3.i386libc.so.6(GLIBC_2.1) is needed by compat-libstdc++-33-3.2.3-47.3.i386libc.
2022-04-01 10:56:10
5656
转载 LINUX中哈希表的原理与应用
1. 哈希表的定义linux-5.11.6\include/linux/types.h //linux中关于哈希表结构体的定义可以从struct hlist_head { struct hlist_node *first;};struct hlist_node { struct hlist_node *next, **pprev;};整个哈希表结构如下图所示,其中ppre是个二级指针,它指向前一个节点的第一个指针变量,例如node1的ppre指向mylist的first指针,
2022-03-05 16:23:51
669
转载 将 VirtualBox 硬盘镜像 vdi 转换为 KVM 的 qcow2
KVM (Kernel-based Virtual Machine)目前发展的如火如荼,Kernel 也加入了支持还有硬件虚拟,蛮有前途的家伙。其实我们可以使用很简单的几个步骤,就能将原来 VirtualBox 的虚拟机转换到 KVM 平台下边。主要也就是将原始硬盘镜像 (VirtualBox 使用 “vdi”)转换为 KVM 所兼容的格式(qcow2)。然后你就可以使用命令行或者 virt-manager 来启动 qcow2 的镜像的 KVM 虚拟机了。虽然说步骤很简单,但是转换中需要占用大量硬盘空间
2022-01-08 12:48:32
4111
转载 给kvm虚拟机扩容 & Centos 中编译 linux-5.15.2
给kvm虚拟机扩容_Mr.肖某某的博客-程序员信息网_kvm虚拟机扩容https://www.i4k.xyz/article/qq_28046487/105435061错误处理:https://blog.youkuaiyun.com/cbuy888/article/details/80809988[root@mypc ~]# growpart /dev/vda 1错误:unexpected output in sfdisk --version [sfdisk,来自 util-linux 2.23.2]
2022-01-05 14:43:37
443
原创 linux 内核barrier() 使用举例
barrier() 编译屏障是为了防止编译器对代码优化时,改变代码的先后顺序;内存屏障( rmb() / wmb() )是让CPU对代码顺序执行。下面举例barrier()在linux内核中的使用1. 确保先获取omap->buf_len 的值,然后在omap_i2c_write_reg 中使用omap->buf_len,顺序不能变 omap->buf_len = msg->len; /* make sure writes to omap->buf_le
2021-12-21 15:26:50
1714
原创 Ubuntu-5.11到Ubuntu-5.15 内核升级
ubuntu 内核升级:更新Ubuntu内核到最新版本设置默认的驱动内核:Ubuntu 设置内核版本的GRUB默认启动
2021-12-15 18:40:54
5206
原创 fw_setenv的配置及使用
fw_setenv即常说的fw_printenv.1.1 fw_setenv编译进入uboot/tools/env目录下,确保有env相关的文件,如下图所示:root@ubuntu:/uboot/tools/env# lscrc32.c embedded.c env_flags.c fw_env.config fw_env_main.c linux_string.c READMEctype.c env_attr.c fw_env.c fw_env.h .
2021-11-17 18:08:47
6094
原创 linux 内核 watchdog 驱动框架
watchdog驱动分为以下三层:统一driver层 watchdog_dev.c;核心层 watchdog_core.c;具体的设备层。 eg: s3c2410_wdt.c从上层到下层依次为:给应用层提供open等接口drivers\watchdog\watchdog_dev.c static const struct file_operations watchdog_fops = { .unlocked...
2021-11-13 21:05:23
1561
转载 ubuntu系统没有/var/log/messages日志文件解决方法
高版本ubuntu系统默认没有 /var/log/messages,因为在 /etc/rsyslog.d/50-default.conf 文件中,将其注释掉了。如下图所以需修改该配置文件,将注释放开。然后重启rsyslog服务即可。systemctl restart rsyslog.service进入 /var/log/ 目录下就可以看到 messages 文件作者:TASK_RUNNING链接:https://www.jianshu.com/p/75d8da03
2021-11-13 17:29:48
4973
2
原创 could not insert module agile_nic.ko: Invalid module format
一般分为2中情况:一、依赖文件没有被加载,modinfo agile_nic.ko 查看需要的依赖module,先加载依赖model,再加载驱动 agile_nic.ko二、驱动的 vermagic 和系统当前的 vermagic 不匹配。查看驱动的 vermagic:$ modinfo agile_nic.ko filename: /root/agile_net/agile_nic.koversion: 0.0.1description: Agile
2021-11-01 20:38:55
896
转载 centos 重启网卡
1、centos6的网卡重启方法:service network restart centos7的网卡重启方法:systemctl restart network2、DNS配置文件:cat /etc/resolv.conf设置主机和IP绑定信息:cat /etc/hosts设置主机名:cat /etc/hostname3、可以使用nmtui文本框方式修改IP4、关闭防火墙并设置开机不启动查看防火墙状态:systemctl status firewalld.service关闭.
2021-11-01 17:52:05
10571
原创 Ubuntu 中安装DPDK
一、先安装DPDK的依赖库1.1、安装 meson参考:ubuntu上安装meson & 如何使用meson编译C代码安装其他依赖库:build-essentialpython3.5 or laterninja (建议使用pip3安装最新版本,eg: pip3 install ninja)pyelftools(0.22+, apt install python3-pyelftools)libnuma-dev如果安装完之后,提示找不到工具,则创建软连接到 /usr/
2021-10-30 16:29:36
2480
原创 windows 下删除不了 aux.c文件,但此文件存在
在命令行指令del指令可以删除,例如:del \\?\D:\inic-dash-lts\include\soc\arc\aux.h删除 D:\inic-dash-lts\include\soc\arc\aux.h 下的aux.h文件。然后就可以删除目录 inic-dash-lts 了
2021-10-28 20:24:46
447
转载 深入理解 Linux 配置/构建系统
参考:深入理解 Linux 配置/构建系统是如何工作的https://linux.cn/article-11227-1.html
2021-10-21 19:58:34
137
原创 dts详解及举例
一.ranges 当需要描述的设备不是本地设备时,就需要描述一个"从设备地址空间到CPU地址空间的映射关系",就需要用到ranges属性。ranges = <local地址, parent地址,size> 表示将local地址向parent地址的转换eg1:#address-cells = <1>;#size-cells = <1>;...external-bus { #address-cells = <2> //可以理解为r...
2021-10-16 12:20:09
2995
原创 Centos 升级linux内核版本
1. 从官网下载我们需要升级的内核文件并解压下载内核5.11的源码并解压,源码路径Index of /pub/linux/kernel/v5.x/,解压:tar -zxvflinux-5.11.tar.gz解压到磁盘空间较大的分区中,对于v5.11版本的内核编译,建议至少要有10G以上的剩余磁盘空间,否则编译到一半发现磁盘空间不够。。。2. 复制红帽官方的kernel编译配置文件并更改名字进入解压后的目录,参考下列命令执行:cp /boot/config-3.10.0-1127..
2021-09-14 08:51:00
16289
1
原创 virtio_net.c 驱动中数据收发流程
1. 从板卡接收数据流程:数据接收流程: napi_gro_receive(&rq->napi, skb); netif_receive_skb __netif_receive_skb // 传输skb给网络层 /\ ||驱动 virtio_net.c 中poll方法 napi_poll(n, &repoll); 即virtio_net.c 中 virtnet_poll
2021-08-07 19:25:49
805
原创 strace ifconfig p4p1 up 跟踪到驱动
参考 蜂窝科技:http://www.wowotech.net/linux_kenrel/464.htmlstrace ifconfig p4p1 up ioctl(4, SIOCGIFFLAGS, {ifr_name="p4p1", ifr_flags=IFF_BROADCAST|IFF_MULTICAST}) = 0ioctl(4, SIOCSIFFLAGS, {ifr_name="p4p1", ifr_flags=IFF_UP|IFF_BROADCAST|IFF_RU
2021-07-20 21:33:34
173
原创 linux driver和 /proc 文件的交互
static int agile_proc_read(struct seq_file *m, void *v){ char user_str[20] = "user string"; seq_printf(m, "%s\n", user_str); return 0;}static int agile_proc_open(struct inode *inode, struct file *file){ // malloc seq_operations 并初始化; 参3:传递priv...
2021-07-15 11:56:52
820
原创 linux内核printk %p 地址打印问题
printk 使用 %p 打印的地址和你预想的不一样???在linux内核中,直接使用%p打印出的地址时经过哈希运算的,为了防止直接暴露内核地址为攻击者提供了有关内核布局的敏感信息。要打印内核的虚拟地址,可以使用 %pK。详细讲解请参考:linux printk https://lishiwen4.github.io/linux-kernel/printk...
2021-06-01 14:36:07
7808
原创 linux uart 驱动中 open、read、write调用层次
//Linux kernel release 2.6.xx//linux uart 驱动中接收和发送函数的调用层次,记录如下:module_init(s3c24xx_serial_modinit); //drivers/serial/samsung.cuart_register_driver(&s3c24xx_uart_drv); tty_register_driver(normal); //drivers/serial/serial_core.c cdev_init(&
2020-09-16 21:44:15
1123
原创 Linux i2c_driver probe被调用的流程分析(linux4.1.15)
**/*linux4.1.15 i2c_driver probe被调用的流程分析*/**i2c_add_driver(&ap3216c_driver); //ap3216c.c i2c_register_driver(THIS_MODULE, driver) //drivers\i2c\i2c-core.c driver_register(&driver->driver); //drivers\base\driver.c bus_add_driver(
2020-09-16 15:04:18
3611
转载 Linux内核应用及分析
内容简介本书由架构师亲力打造,分享了他十多年后端开发经验,特别是围绕 Linux 系统进行的服务开发经验。本书共8章,主要内容包括:第1章介绍 Linux 对进程和线程的实现原理,并分析了 Memcached 和 Nginx 工作进程池模型的实现;第2章介绍并发的概念以及 Linux 中的并发相关工具,然后分析常见开源软件的并发问题;第3章介绍 Linux 是如何进行内存管理的,分析了 ...
2019-07-14 20:20:23
714
转载 uboot基础与常用命令
uboot基础与常用命令转发自 https://blog.youkuaiyun.com/Setul/article/details/791589322018年01月25日 10:48:38 隋边边 阅读数:412 标签: 嵌入式 更多个人分类: uboot与内核移植版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.youkuaiyun.com/Setul/article/detai...
2019-07-01 17:36:59
211
Linux驱动开发(北风网)_181123.pdf
2019-06-29
USB WIFI网卡在X210(linux)上的移植和使用笔记
2019-06-28
Linux驱动开发笔记V1.0_20190623.pdf
2019-06-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人