- 博客(144)
- 资源 (4)
- 收藏
- 关注
原创 Kdump
Kdump依赖双内核机制:生产内核(Primary Kernel)和捕获内核(Capture Kernel)。当系统崩溃时,捕获内核启动并保存内存快照到指定位置。确认目标内核是否启用了以下配置选项(需查看内核的。如果未启用,需重新编译内核并包含这些配置。根据提供的命令和知识库信息,出现。文件系统模块,导致无法挂载。中包含根文件系统的镜像(如。模块或配置,导致无法识别。内核可能未分配足够的内存给。,需确认其配置正确。参数可能未正确传递,或。未正确初始化根文件系统。在启动第二个内核后,通过。
2025-04-04 09:17:22
44
原创 【无标题】
这段注释描述了在 Linux 内核中,将定时器的基准(timer base)切换到一个经过功耗优化后选定的 CPU 目标的条件。如果不满足这些条件,定时器将被移动到当前 CPU,或者当定时器回调函数正在运行时,定时器会保留在之前分配的 CPU 上。这段注释说明了内核在进行定时器基准切换时的决策逻辑,其目的是在满足一定条件下将定时器迁移到功耗优化的 CPU 目标上,同时确保定时器的正常运行和系统的稳定性。
2025-04-02 17:58:25
23
原创 Linux内核调试 - Hung_task机制3 - mutex 案例分析
【代码】Linux内核调试 - Hung_task机制3 - mutex 案例分析。
2025-03-30 11:06:45
16
原创 Linux内核调试 - Hung_task机制2 - 内核配置
系统性能监控:通过Hung_task 检测,可以及时发现系统中的异常任务,避免系统性能下降。分析I/O问题:如果任务因等待I/O操作而挂起,Hung_task 可以提高堆栈信息分析。调试死锁: 当任务因竞争锁资源而进入D状态时,Hung_task 可以帮助定位死锁问题。
2025-03-28 17:45:49
122
原创 Linux内核调试 - dynamic debug
文件目录:kernel-4.14\Documentation\admin-guide\dynamic-debug-howto.rst参数作用。
2025-03-26 11:06:59
541
原创 Linux实时内核 - RCU机制x - RCU_BOOST 提高RCU线程优先级
在可抢占 RCU 环境下,内核允许在 RCU 读侧临界区内进行抢占。确实,CONFIG_RCU_BOOST 是 Linux 内核中的一个配置选项,它与可抢占 RCU (Preemptible RCU) 配合使用,旨在解决低优先级进程长期占用RCU读侧临界区的问题,进而避免由于这些临界区长时间不退出导致的内存耗尽等问题。简而言之,通过配合使用 CONFIG_RCU_BOOST 和可抢占 RCU,Linux 内核能够更好地管理 RCU 读侧临界区的生命周期,防止因低优先级任务导致的系统性能下降或资源耗尽问题。
2025-03-26 08:54:38
16
原创 内核稳定性问题 - hrtime异常1 - scheduling while atomic
4.19 逻辑由此得出结论,在实时内核下,如果未显示定义高精度定时器,则默认软中断处理。!//如果未显示配置HARD模式,则默认配置为软中断处理模式if (!#endif//软/硬类型 枚举位置。
2025-03-25 11:13:46
30
原创 实时内核稳定性问题 - timerfd问题2 - timerfd使用分析
【代码】实时内核稳定性问题 - timerfd问题2 - timerfd使用分析。
2025-03-24 15:42:55
23
原创 实时内核稳定性问题 - timerfd问题1 - 机制分析
ctx 结构体内有个表头 ctx->wqh 很重要,是和 epoll 产生联系的关键点。-1、创建并初始化了一个 timerfd_ctx 的结构体。
2025-03-24 10:36:22
24
原创 Linux实时内核 - RCU机制x - rcu性能测试
是 Linux 内核中的一个配置选项,主要用于启用 RCU(Read-Copy Update)机制的性能测试功能。当你在编译内核时选择了这个选项,它会包含一系列用于测量和评估 RCU 实现性能的测试代码。
2025-03-21 10:55:41
102
原创 实时内核稳定性问题 - EFI异常卡住分析2
如下分析:使用i2c_detect后,会默认调用pm_runtime关闭中断,所以后续使用hwclok也不会产生中断。在efi rtc使用完成i2c后,会利用pm runtime机制调用suspend函数清空中断。使用i2c_detect后,在使用hwclock 获取efi-rtc,不会产生中断。猜测i2c_detect会关掉I2C控制器中断。
2025-03-19 17:41:57
26
原创 Linux系统top下的PR 优先级计算
非实时进程(SCHED_NORMAL)PR值基于静态优先级(),计算公式为。实时进程(SCHED_FIFO 和 SCHED_RR)PR值基于实时优先级(),计算公式为。负数优先级表示该进程具有较高的实时优先级。动态调整:虽然PR值通常反映了进程的静态优先级或实时优先级,但在某些情况下(如CFS调度器中的动态调整),PR值可能会有所不同。通过理解这些概念,你可以更好地解释top输出中的PR值,并根据需要调整进程的调度策略和优先级。
2025-03-17 13:24:43
26
原创 Linux实时内核稳定性案例
https://chat.deepseek.com/a/chat/s/b4cb2432-6d1f-47b7-9596-8a922dec121c
2025-03-16 17:01:13
79
原创 Linux内核实时机制30 - 实时优化方案 - 实时与非实时争抢
设置合理的优先级:确保实时任务具有较高的优先级,以便在需要时优先获得CPU资源。绑定CPU亲和性:将实时任务绑定到特定的CPU核心上,减少与其他任务的竞争。隔离CPU核心:通过isolcpus参数将某些CPU核心专用于实时任务,避免非实时任务干扰。限制非实时任务的CPU使用:使用cgroups或其他工具限制非实时任务的CPU使用率。调整实时带宽限制:通过设置和参数控制实时任务的最大CPU使用率。监控和调试:使用系统监控工具观察任务的运行情况,及时发现并解决问题。
2025-03-16 16:12:45
50
原创 Linux内核实时机制27 - RT调度器10 - RT throttling 带宽控制下
内核通过实现的RT throttling机制,控制了period周期内,实时任务占用CPU调度的时间,在周期period内,CPU必定留出一定的时间给普通任务,从而避免了rt任务出现死循环等不可控的问题时,普通任务无法得到执行的现象。(1)调度器初始化时,初始化RT throttling的period和runtime为系统默认值,并且定义一个定时器rt_period_timer及其超时处理方法;(2)在有rt任务加入到rt_rq就绪队列时,设置超时时间为period并且启动定时器;
2025-03-16 15:56:30
48
原创 Linux内核实时机制24 - RT调度器7 - 实时任务 pull_rt_task
Linux内核实时机制24 - RT调度器7 - 实时任务 pull_rt_task。
2025-03-16 11:08:33
16
原创 Linux内核实时机制21 - RT调度器4 - 实时就绪队列维护
1、enqueue_task->enqueue_rt_entity:实时进程在enqueue_rt_entity中把调度实体rt_se->run_list 挂载到运行队列active上:rt_prio_array *array = &rt_rq->active的队列头,每个cpu对应一个实时进程的运行队列,而且该调度实体是待唤醒进程的调度实体。注意此处enqueue_rt_entity在挂载优先级队列之前,
2025-03-14 17:59:56
130
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人