- 博客(448)
- 资源 (13)
- 收藏
- 关注
原创 Ubuntu 下 r8168 网卡问题排查与解决
lspci 显示网卡型号是 RTL8111/8168/8411,而 Ubuntu 自动安装的驱动是 r8169,问题在这。
2024-12-11 02:55:31
348
原创 EXPORT_SYMBOL 底层原理
编译器会将这些信息放在模块的 .o 文件的 __ksymtab 和 __ksymtab_strings 段中。当内核加载这个模块时,它会处理 __ksymtab 和 __ksymtab_strings 段,将符号注册到全局符号表中。
2024-10-28 22:15:00
1059
原创 /dev/log 文件详解
/dev/log 是一个 Unix 域套接字,专门用于系统日志的传递。syslog() 函数将错误消息发送到 /dev/log,然后系统日志守护进程接收并处理该消息。
2024-09-23 08:45:00
787
原创 /dev/kmsg, /proc/kmsg 和 dmesg
rsyslogd 可以替代 syslogd 和 klogd,提供统一的日志处理功能。
2024-09-05 08:30:00
1953
原创 使用 journalctl 管理系统日志
在现代 Linux 系统中,journalctl 是管理和查看系统日志的强大工具。它是 systemd 日志系统的一部分,提供了一种统一的方式来查看所有系统日志,包括**内核日志**、**服务日志**和**用户空间应用程序日志**。
2024-09-02 09:00:00
1412
原创 生成式人工智能内容(AIGC):革命性的内容创作工具
生成式人工智能内容(AIGC)是指利用人工智能技术自动生成各种形式的内容,包括文本、图像、音频和视频等。
2024-08-19 08:45:00
633
原创 ChatGPT如何工作:创作一首诗的过程
怎样理解 Chat GPT 的工作原理?比如我让他作一首诗,他是如何创作的呢?每一行诗,每一个字都是怎么来的?随机拼凑的还是从哪里借鉴的?
2024-08-12 23:37:27
1002
1
原创 dd 命令:数据管理的瑞士军刀
dd 是一个灵活而强大的工具,广泛应用于数据备份、恢复、克隆和销毁等操作。通过掌握 dd 的基本用法和高级选项,用户可以在各种场景下高效地管理数据。尽管功能强大,但使用 dd 时需特别小心,以避免意外的数据丢失。
2024-08-01 01:22:10
1162
原创 使用 gzexe 压缩和执行 shell 脚本
gzexe 是一个可以压缩 shell 脚本的工具。它通过使用 gzip 将脚本压缩成一个更小的文件,同时保留脚本的可执行性。压缩后的脚本在执行时,会自动解压缩并运行原始脚本内容。
2024-07-23 23:23:35
1002
原创 pstore 存储内核崩溃日志
pstore(Persistent Storage)是 Linux 内核提供的一种机制,最初是用于系统发生oops 或 panic 时,自动保存内核 log buffer 中的日志。不过在当前内核版本中,其已经支持了更多的功能,如保存 console 日志、ftrace 消息和用户空间日志。同时,它还支持将这些消息保存在不同的存储设备中,如内存、块设备或 mtd 设备。
2024-07-11 08:45:00
914
原创 使用 /proc/sysrq-trigger 进行系统调试和故障排除
/proc/sysrq-trigger 是 Linux 内核提供的一个接口,它允许用户通过写入特定命令来触发系统请求(SysRq)功能。
2024-07-03 22:41:56
1535
原创 /proc/config.gz
有时候,我们想知道一个运行着的内核都打开了哪些编译选项,当然,查看编译环境的 .config 文件是一个不错的选择,除此之外,还有没有别的办法呢?当然有,那就是 /proc/config.gz。
2024-07-01 23:04:59
533
原创 CUDA
CUDA 允许开发人员利用 NVIDIA GPU 的并行计算能力来加速应用程序的执行。CUDA 使开发人员能够使用类似 C 语言的编程语言来写代码,并通过 CUDA 编译器将其编译成可以在 GPU 上运行的代码。
2024-06-27 08:15:00
682
原创 您的计算机时间有误
SSL 证书具有一定的有效期限,一旦证书过期,它就不再被认为是可信的。所以,如果计算机的时间和服务器的时间不同步,可能会导致认为证书已过期,从而拒绝提供服务。
2024-06-11 21:45:00
440
原创 netplan
netplan 是 ubuntu 17.10 版本中引入的一种全新的命令行网络配置程序,用于在ubuntu系统中轻松管理和配置网络设置。
2024-05-27 01:02:28
1182
原创 ASAN
ASAN 是 Address Sanitizer 的简称,是 GCC 自带的内存问题检查工具,比较轻量级,非常适合单元测试时检查内存问题。使用也比较简单,只需要在编译时加上 `-fsanitize=address` 选项即可。
2024-04-25 22:15:00
1049
原创 性能优化——避免使用除法
ARM 硬件上不支持除法指令。编译器是通过调用 C 库函数来实现除法运算的,要花费 20~100 个周期。如果不能避免除法运算,那么就尽量使除数和被除数是无符号的整数。
2024-03-31 19:54:15
635
原创 字符设备驱动编写
每一个主设备号(major) 对应 /proc/devices 下的一个设备,使用 register_chrdev() 创建。每一个次设备号(minor) 对应 /dev/ 下的一个设备文件,使用 mknod 或 device_create() 创建。
2024-03-15 21:45:00
1095
原创 内核打印应用程序出错信息,DEBUG_USER
当用户程序由于异常而崩溃时,内核可以打印一条简短的消息来说明问题所在。这有时对调试很有帮助,但对生产系统没有任何作用。大多数人应该在这里说 N。此外,你需要在内核命令行上传递 user_debug=N 来启用此特性。
2024-02-29 22:32:54
942
自己动手写一个操作系统-MBR(5)
2023-01-27
linux_cmd_test.exe
2021-01-10
MDIO之STM32源码
2020-05-08
Linux device driver中文版.pdf
2020-04-04
FX_serial_asst.rar
2020-01-10
OPCUA服务端客户端QT源码
2019-06-17
Android TCP_Client
2018-09-01
ioremap() 的逆函数是什么?
2023-08-01
无源晶振的振荡原理是什么?
2023-05-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人