随笔分类 - Linux/Unix OS
linux/Unix operating systems . 基础知识 . 软件安装 . 系统维护
摘要:readelf 是 Linux 下一个强有力的工具,专门用于分析 ELF(Executable and Linkable Format)格式的文件,如可执行程序、目标文件(.o)和共享库(.so)。它独立于 BFD 库,因此能提供比 objdump 更具体的信息。 1. 核心常用命令 (必会) 假设
阅读全文
摘要:1. gdb调试配置 这是一份标准化的GDB调试环境配置指南,包含了Debuginfod(第三方调试符号自动下载)和GDB历史记录持久化设置。 1.1 配置第三方调试符号下载 (Debuginfod) 为使所有用户都能自动下载调试符号,建议在系统配置文件中设置。 操作步骤:编辑 /etc/profi
阅读全文
摘要:在 Ubuntu 24.04 中,出于安全考虑,默认是禁用 root 用户登录的,且 root 用户没有设置密码。要使用 root 用户登录,您需要先设置 root 密码,然后启用相关服务。 以下是实现 root 登录的步骤: 1. 设置 Root 密码 首先在当前普通用户下,通过终端设置 root
阅读全文
摘要:1.无法登录桌面问题起因 使用usermod给新用户huaxia添加了home目录,命令如下: usermod -d /home/新用户名 -m 新用户名 重启后,结果杯具了。输入密码后跳回登录界面,无法进入。寻找错误原因,发现没有任何报错。在登录界面换了一个界面,再次登录报错: 那么,使用ctrl
阅读全文
摘要:当系统更新提示有安全更新时,自动更新了,更新了几个版本后,发现原有的一些软件不可用了。那么,咱就回滚内核吧。 1. 检查当前内核版本 在开始降级内核之前,首先需要确认当前系统中安装的内核版本。以下是在Ubuntu系统中查看当前内核版本的命令: uname -r 这将显示当前运行的内核版本号。 2.
阅读全文
摘要:在系统级编程(Rust/C++/Go)中,缓存行(Cache Line) 是决定程序性能的物理底线。如果说算法决定了指令的数量,那么缓存行就决定了这些指令获取数据的时间。说真的,可以说大部分程序猿只会用,而不知道底层逻辑和细节。这在偏底层编程中,性能问题和内存泄漏问题越发常见。给自己挖坑,同时也潜在
阅读全文
摘要:1.git没有add文件,但git pull时发生了合并,(可能产生代码冲突,也可能只产生了合并)如何解决? 你没有 git add 文件但 git pull 时发生合并,是因为本地工作区有未提交的修改(修改了文件,但没暂存也没提交),而远程仓库的更改与你的本地修改在同一个文件的同一部分产生了冲突,
阅读全文
摘要:网卡绑定(NIC Bonding 或 Link Aggregation)是将服务器上的多张物理网卡组合成一个逻辑接口的技术。其主要目的是提供网络冗余(高可用性)和/或负载均衡(增加带宽和吞吐量)。 Linux 系统通常支持七种主要的绑定模式(mode 0 到 mode 6),每种模式都有不同的实现原
阅读全文
摘要:struct iovec 是一种用于分散/聚集 I/O 操作的数据结构,它允许在一次系统调用中从多个非连续内存缓冲区读取或写入多个非连续内存缓冲区。 该结构通常与 readv 和 writev 等函数一起使用。 #include <sys/uio.h> #include <fcntl.h> #inc
阅读全文
摘要:__rdtsc指令用于读取处理器的时间戳计数器,该计数器计算自上次复位以来的时钟周期数。这对性能监控和基准测试非常有用。 以下示例为linux环境上Demo #include <stdio.h> #include <x86intrin.h> #include <stdint.h> #pragma i
阅读全文
摘要:套接字选项: SO_RCVTIMEO:用来设置socket接收数据的超时时间; SO_SNDTIMEO: 用来设置socket发送数据的超时时间; 一般地,调用accept/connect/send/recv, 进程会阻塞,但是如果对端异常,进行可能无法正常退出等待。如何让这些调用自动定时退出? 可
阅读全文
摘要:电子中英文对照 中文 英文 举例说明 符号还原 demangling 如c++filt 时间戳计数器 TSC(Time-Stamp Counter) 多协议标签交换 MPLS(Multiprotocol Label Switching) EoMPLS(Ethernet over MPLS) 高级状态
阅读全文
摘要:unique_lock的特点: unique_lock提供了更多的控制锁的行为,比如锁超时、不锁定、条件变量等。 它是可移动的,可以拷贝、赋值、移动。 unique_lock比lock_guard更重,因为它有更多的功能,更多的开销。 支持手动解锁,而lock_guard不支持。 lock_guar
阅读全文
摘要:GNU extensions to the C language family __extension__关键字: gcc对标准C语言进行了扩展,但用到这些扩展功能时,编译器会提出警告,使用__extension__关键字会告诉gcc不要提出警告。
阅读全文
摘要:asm volatile("dmb osh" : : : "memory")是什么? arm架构有三种内存屏障,分别是: Data Memory Barrier, Data Synchronization Barrier, and Instruction Synchronization Barrie
阅读全文
摘要:C11 中的 atomic_thread_fence 函数是一种同步原语,用于在线程间强制执行内存排序约束。它为非原子操作和松弛原子操作建立内存同步顺序,而不执行实际的原子操作。这在多线程环境中尤其有用,可确保内存变化在不同线程间的适当可见性。 函数原型 void atomic_thread_fen
阅读全文
摘要:Perf全名是Performance Event,是在Linux 2.6.31 以后内建的系统效能分析工具,它随着核心一并释出。藉由perf,应用程式可以利用PMU (Performance Monitoring Unit), tracepoint 和核心内部的特殊计数器(counter) 来进行统
阅读全文
摘要:1. 安装 ./configure --prefix=/usr/local --with-default-snmp-version="2" --with-logfile="/var/log/snmpd.log" --enable-debugging 也可以直接 ./configure 注意事项: 1
阅读全文
浙公网安备 33010602011771号