LXR | KVM | PM | Time | Interrupt | Systems Performance | Bootup Optimization

随笔分类 -  Linux中断子系统

Linux中断管理 (3)workqueue工作队列
摘要:目录: 《Linux中断管理》 《Linux中断管理 (1)Linux中断管理机制》 《Linux中断管理 (2)软中断和tasklet》 《Linux中断管理 (3)workqueue工作队列》 关键词: 工作队列的原理是把work(需要推迟执行的函数)交由一个内核线程来执行,它总是在进程上下文中 阅读全文

posted @ 2018-05-29 23:50 ArnoldLu 阅读(15521) 评论(1) 推荐(2) 编辑

Linux中断管理 (2)软中断和tasklet
摘要:目录: 《Linux中断管理》 《Linux中断管理 (1)Linux中断管理机制》 《Linux中断管理 (2)软中断和tasklet》 《Linux中断管理 (3)workqueue工作队列》 关键词:TASKLET_SOFTIRQ、HI_SOFTIRQ、softirq_action、ksoft 阅读全文

posted @ 2018-05-14 00:41 ArnoldLu 阅读(6751) 评论(0) 推荐(1) 编辑

Linux中断管理 (1)Linux中断管理机制
摘要:目录: 《Linux中断管理》 《Linux中断管理 (1)Linux中断管理机制》 《Linux中断管理 (2)软中断和tasklet》 《Linux中断管理 (3)workqueue工作队列》 关键词:GIC、IAR、EOI、SGI/PPI/SPI、中断映射、中断异常向量、中断上下文、内核中断线 阅读全文

posted @ 2018-05-06 23:00 ArnoldLu 阅读(31250) 评论(1) 推荐(2) 编辑

Linux中断管理
摘要:CPU和外设之间的交互,或CPU通过轮询机制查询,或外设通过中断机制主动上报。 对大部分外设中断比轮询效率高,但比如网卡驱动采取轮询比中断效率高。 这里重点关注ARM+Linux组合下中断管理,从底层硬件GIC+CPU,到Linux内核通用部分处理,再到GIC驱动以及中断注册,最后是中断下半部软终端 阅读全文

posted @ 2018-05-06 22:00 ArnoldLu 阅读(5957) 评论(1) 推荐(1) 编辑

Linux kernel的中断子系统之(九):tasklet
摘要:返回目录:《ARM-Linux中断系统》。 总结: 二介绍了tasklet存在的意义。 三介绍了通过tasklet_struct来抽想一个tasklet,每个CPU维护一个tasklet链表tasklet_vec/tasklet_hi_vec,然后介绍了如何定一个一个tasklet(静态/动态),以 阅读全文

posted @ 2017-09-26 23:33 ArnoldLu 阅读(2300) 评论(0) 推荐(0) 编辑

Linux kernel的中断子系统之(八):softirq
摘要:返回目录:《ARM-Linux中断系统》。 总结:中断分为上半部和下半部,上半部关中断;下半部开中断,处理可以延迟的事情。下半部有workqueue/softirq/tasklet三种方式。 二介绍了为何要分top half和bottom half?workqueue/softirq/tasklet 阅读全文

posted @ 2017-09-26 23:32 ArnoldLu 阅读(5272) 评论(1) 推荐(0) 编辑

Linux kernel的中断子系统之(七):GIC代码分析
摘要:返回目录:《ARM-Linux中断系统》。 总结: 原文地址:《linux kernel的中断子系统之(七):GIC代码分析》 参考代码:http://elixir.free-electrons.com/linux/v3.17-rc3/source 一、前言 GIC(Generic Interrup 阅读全文

posted @ 2017-09-26 23:32 ArnoldLu 阅读(5283) 评论(0) 推荐(1) 编辑

Linux kernel的中断子系统之(六):ARM中断处理过程
摘要:返回目录:《ARM-Linux中断系统》。 总结:二中断处理经过两种模式:IRQ模式和SVC模式,这两种模式都有自己的stack,同时涉及到异常向量表中的中断向量。 三ARM处理器在感知到中断之后,切换CPSR寄存器模式到IRQ;保存CPSR和PC;mask irq;PC指向irq vector。 阅读全文

posted @ 2017-09-26 23:31 ArnoldLu 阅读(3231) 评论(0) 推荐(0) 编辑

Linux kernel的中断子系统之(五):驱动申请中断API
摘要:返回目录:《ARM-Linux中断系统》。 总结:二重点区分了抢占式内核和非抢占式内核的区别:抢占式内核可以在内核空间进行抢占,通过对中断处理进行线程化可以提高Linux内核实时性。 三介绍了Linux中断注册函数request_threaded_irq,其实request_irq也是对reques 阅读全文

posted @ 2017-09-26 23:29 ArnoldLu 阅读(2149) 评论(0) 推荐(0) 编辑

Linux kernel的中断子系统之(四):High level irq event handler
摘要:返回目录:《ARM-Linux中断系统》。 总结:从架构相关的汇编处理跳转到Machine/控制器相关的handle_arch_irq,generic_handle_irq作为High level irq event handler入口。 一介绍了进入High level irq event han 阅读全文

posted @ 2017-09-26 23:28 ArnoldLu 阅读(2800) 评论(0) 推荐(0) 编辑

Linux kernel的中断子系统之(三):IRQ number和中断描述符
摘要:返回目录:《ARM-Linux中断系统》。 总结: 二描述了中断处理示意图,以及关中断、开中断,和IRQ number重要概念。 三介绍了三个重要的结构体,irq_desc、irq_data、irq_chip及其之间关系。 四介绍了irq_desc这个全局变量的初始化,五是操作中断描述符相关结构体的 阅读全文

posted @ 2017-09-26 23:26 ArnoldLu 阅读(2894) 评论(1) 推荐(0) 编辑

Linux kernel的中断子系统之(二):IRQ Domain介绍
摘要:返回目录:《ARM-Linux中断系统》。 总结:一、二概述了软硬件不同角度的IRQ Number和HW Interrupt ID,这就需要他们之间架个桥梁。 三介绍了架设这种桥梁的几种方式:Linear、Radix Tree和no map。 四介绍了两种基础数据结构描述中断域的irq_domain 阅读全文

posted @ 2017-09-26 23:25 ArnoldLu 阅读(3913) 评论(0) 推荐(1) 编辑

Linux kernel的中断子系统之(一):综述
摘要:返回目录:《ARM-Linux中断系统》。 总结: 一从作为一名驱动工程师角度看,用好中断需要正确认识request_threaded_irq/request_irq关系、中断临界区保护、中断上下半部使用。 二介绍了参与终端三种器件:外设->中断控制器->CPU,以及中断控制器和CPU之间拓扑关系: 阅读全文

posted @ 2017-09-26 23:24 ArnoldLu 阅读(4657) 评论(0) 推荐(0) 编辑

ARM-Linux中断系统
摘要:1.前言 了解Linux中断子系统,同时也需要了解ARM体系结构中断处理流程;在熟悉整个软硬件架构和流程基础上,才能对流程进行细化,然后找出问题的瓶颈。《2. 梳理中断处理子系统》 但是所有的优化都离不开一个量化的过程,有个可靠、高效、可读性强的度量必不可少。《3. 一种测量中断性能手段》 最后基于 阅读全文

posted @ 2017-09-13 08:41 ArnoldLu 阅读(4612) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示