简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
linux inotify:inotify 接口 -----监视文件系统事件, 可以用来监视单个文件或者一个目录(该目录本身或者目录中的文件 )所发生的事件,相比于select 或 poll 等系统调用接口,事件可以更加细粒度的来进行监视。 相关的API接口:int inotify_init(void); /* Create an initialized inotify
我们可以通过 cat /proc/cmdline来获取内核的命令行参数,但是每个参数是怎么在代码解析的, 以slub为例,在源码中有如下代码:__setup("slub_min_order=", setup_slub_min_order);__setup("slub_max_order=", setup_slub_max_order);__setup("slub_min_obj
pm runtime核心只提供机制(功能), 什么的时候上电/掉电等策略应由driver去实现。 driver里实现的pm runtime的call back函数被runtime 核心封装了起来,会暴露一些API接口来间接的调用这么Call back函数。pm runtime利用了一个工作队列pm_wq来负责具体的电源事务,上电和下电有同步和异步之分:设备状态在PM runtime中的表示
hard lockup的发生是由于禁止了CPU的所有中断超过一定时间(几秒)这种情况下,外部设备发生的中断无法处理,内核认为此时发生了所谓的hard lockup. 由于NMI( Non Mask Interrup)中断是不可屏蔽的中断,因此可以用来检测是否发生了hard lockup, NMI中断是周期性发生的,在相应的中断处理函数中检测一个全局变量的值(这个全局变量的值是由CPU本地定时器
转载:http://www.cppblog.com/luckycat/archive/2010/03/01/108694.html1>使用lseek系统调用更改文件指针 lseek(fd, offset, SEEK_SET);2> 使用write系统调用向当前文件的偏移量写入一个任意值, write(fd, "aa", strlen("aa")); 这将导致原来SEEK_CUR和当前偏移
书上写的工作队列的实现是创建一个单独的线程来执行相应的work. 但是最新的内核实现却不是这样的,原先的工作队列的接口都快要废弃了, New API:alloc_workqueue(name, flags, max_active)alloc_ordered_workqueue(const char *name, unsigned int flags){