为了技术,我不会停下学习的脚步,我相信我还能走二十年。
发布时间:2013-02-26 10:37:01
这是自己在参加凌阳嵌入式培训时,学习完关于构造IOCTL命令时写的一篇学习心得,和大家分享一下,希望大家一起进步。......【阅读全文】
发布时间:2013-02-19 11:01:46
一、什么是下半部中断是一个很霸道的东西,处理器一旦接收到中断,就会打断正在执行的代码,调用中断处理函数。如果在中断处理函数中没有禁止中断,该中断处理函数执行过程中仍有可能被其他中断打断。出于这样的原因,大家都希望中断处理函数执行得越快越好。另外,中断上下文中不能阻塞,这也限制了中断上下.........【阅读全文】
发布时间:2013-02-19 11:01:17
1、kmalloc()/kfree()static __always_inline void *kmalloc(size_t size, gfp_t flags)内核空间申请指定大小的内存区域,返回内核空间虚拟地址。在函数实现中,如果申请的内存空间较大的话,会从buddy系统申请若干内存页面,如果申请的内存空间大小较小的话,会从slab系统中申请内存空间。有关buddy和slab,请参.........【阅读全文】
发布时间:2013-02-13 11:51:07
简介: 本文主要介绍 Linux 2.6 中的页面回收机制是如何工作的,反向映射是如何设计并实现的,以及 Linux 操作系统如何利用反向映射机制进行页面地回收。 Linux 2.6 中关于反向映射和页面回收的代码在不断地更新,不同版本的内核在这部分的代码上会有很大差异,本文将基于 2.6.18.1 版本的内核来探讨 Linux 中的反向映射和页面回收。为什么要进行页面回收操作系统管理内存中的物理页面,同时也担任着内存分配的职责。应用程序可以通过内存分配函数向操作系统申请物理页面;在使用完这些物理页面之后,应用程序可以通过相应的内存释放函数释放这些物理页面。但是,对于内存中的某些物理页面来说,......【阅读全文】