Linux kernel
文章平均质量分 90
或许对了
我曾七次鄙视自己的灵魂
展开
-
内核编译的背后
内核编译的背后YunYanan 收录于 Linux2020-03-15 约 1920 字 预计阅读 10 分钟 次阅读Hey, 会编译内核了之后还想知道内核编译背后的 Kbuild 吗 ????前言最近了解 Kbuild 的时候, 在网上搜索相关的内容发现讲这方面内容的文章比起教你怎 么编译内核的文章数量上要少很多。 我觉得这也反应出 Kbuild 系统确实是容易被忽 视的一隅, 也说明了会编译内核的人不再少数,但是去研究过 Kbuild 系统的, 对 Kbuild 感兴趣的人则要少很大一部分转载 2021-04-16 17:31:31 · 392 阅读 · 0 评论 -
Linux系统中的信号量(semphore)与互斥体(mutex)
Linux系统中的信号量(semphore)与互斥体(mutex)http://www.embexperts.com/viewthread.php?tid=31两者最大区别:信号量可以允许多个线程进入临界区,而互斥体只允许一个线程进入临界区。本贴将描述信号量与互斥体之间的细微区别以及在实际的代码设计中如何使用它们。信号量在2.6.26中的定义如下:struct semaphore { spinlock_t lock; unsign...转载 2021-03-08 14:43:31 · 553 阅读 · 0 评论 -
linux 如何查看系统信息及硬件信息
linux 如何查看系统信息及硬件信息Linux——查看系统硬件信息linux查看硬件信息及详解一、linux CPU大小# cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep "physical id"model name : Intel(R) Core(TM) i5-4460 CPU @ 3.20GHzphysical id : 0123说明:Linux下可以在/proc/cpuinfo中看到转载 2020-10-28 17:20:15 · 366 阅读 · 0 评论 -
Linux控制台重定向方法及原理
Linux控制台重定向方法本文介绍一种通过文件描述符重定向终端输入/输出的方法。一、背景一些嵌入式设备,一般都会留有调试串口,经由RS232/485标准与PC的COM口相连,将打印输出在PC上显示,并可以接收PC端的输入,如下图所示:设备出厂部署后,不方便接调试串口,查看设备输出就变得比较困难,不利于问题定位。如果设备具有联网能力,我们可以通过telnet或者ssh登录到设备上,进行远程调试。这时候就面临一个问题:如何把设备的打印信息显示出来?常见做法有以下几种...转载 2020-10-28 17:04:54 · 1813 阅读 · 0 评论 -
Linux时间、定时器、时间中断超时处理
内核时间管理Linux内核计时、延时函数与内核定时器内核通过定时器(timer)中断来跟踪时间流硬件定时器以周期性的间隔产生时间中断,这个间隔(即频率)由内核根据HZ来确定,HZ是一个与体系结构无关的常数。这个时间间隔通常取1ms到10ms.jiffies计算器2.1每次当定时器中断发生时,内核内部通过一个64位的变量jiffies_64做加一计数。2.2驱动程序开发者通常访问的是jiffies变量,它是jiffes_64的低32位。定时器与时间管理:1、节拍率——HZ:在alpha体系结构原创 2020-06-24 20:56:09 · 2400 阅读 · 1 评论 -
Linux内核时间管理子系统——时钟源
转自在Linux内核中有两种不同的clock设备,一种是clock source设备,另一种是clock event设备。Clock source设备一般是一个根据固定频率不停增加的计数器,内核利用该设备可以计算出从系统启动到当前所经过的时间,再加上RTC所提供的初始时间就能得到当前时间(墙上时间)。Clock event设备则用来提供中断,Clock event设备可以配置为按固定周期发生中断(periodic)或者产生一个特定时间间隔后的中断(onshot)Clock Source设备内核将Clo转载 2020-06-24 20:33:19 · 1172 阅读 · 0 评论 -
Linux时间子系统:高精度定时器(HRTIMER)的原理和实现
原文连接 Linux时间子系统之六:高精度定时器(HRTIMER)的原理和实现上一篇文章,我介绍了传统的低分辨率定时器的实现原理。而随着内核的不断演进,大牛们已经对这种低分辨率定时器的精度不再满足,而且,硬件也在不断地发展,系统中的定时器硬件的精度也越来越高,这也给高分辨率定时器的出现创造了条件。内核从2.6.16开始加入了高精度定时器架构。在实现方式上,内核的高分辨率定时器的实现代码几乎没有借用低分辨率定时器的数据结构和代码,内核文档给出的解释主要有以下几点:低分辨率定时器的代码和jiffies的关系转载 2020-06-24 19:29:03 · 1328 阅读 · 0 评论 -
Linux内核中断系列之多处理器系统中的中断处理
处理器间中断(IPI)原作者有个Linux中断专栏系列一、处理器间中断(核间中断)1、在多处理器系统中,操作系统需要在多个处理器间协调操作,通常是通过处理期间中断(IPI)实现的。2、IPI是一种特殊的硬件中断,由处理器发出,被其他处理器接收,以便于处理器间通信或同步。3、通常并不明确区分IPI和设备中断,当一个处理器接收到一个中断时,如果发现另一个处理器处理该终端更加合理,则可以通过IPI机制将该终端传递到其他的处理器,实现处理器的负载平衡。4、当一个CPU相对另一个CPU发送中断信号时,就在转载 2020-06-24 17:44:55 · 1016 阅读 · 0 评论 -
硬件中断与软件中断的区别
中断中断指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。硬件中断硬件中断是一个异步信号, 表明需要注意, 或需要改变在执行一个同步事件.硬件中断是由与系统相连的外设(比如网卡 硬盘 键盘等)自动产生的. 每个设备或设备集都有他自己的IRQ(中断请求), 基于IRQ, CPU可以将相应的请求分发到相应的硬件驱动上(注: 硬件驱动通常是内核中的转载 2020-06-24 17:29:10 · 678 阅读 · 3 评论 -
Linux IPI核间中断及亲和性
IPI核间中断概念及亲和性IPI 全称为Inter-Processor Interrupt,即处理中间的中断,需要可编程中断控制器PIC or APIC的支持!XLR 732 多核多线程处理器的中断由 PIC(Programmable Interrupt Controller)统一控制。PIC 允许一个硬件线程中断其他的硬件线程,这种方式被称为核间中断(Inter-Processor Interrupts,IPI)。使用 IPI 进行核间通信的关键在于要利用中断服务例程 ISR 去读取一个事先约好的共转载 2020-06-24 17:24:27 · 3384 阅读 · 0 评论