- 博客(14)
- 资源 (28)
- 收藏
- 关注
转载 ftrace 简介
刘 明 (ovis_poly@sina.com), 软件工程师, 上海交通大学电子与通信工程系刘明,从事嵌入式软件开发,热爱开源软件。喜欢学习和使用 linux,目前致力于数据库方面的工作和研究简介: Trace 对于软件的维护和性能分析至关重要,ftrace 是当前 Linux 内核中一种新的 trace 工具。本文介绍 ftrace 的使用和实现原理,并将 ftrace 和 systemTap,LTTng 等软件进行对比,希望读者能够对 ftrace 有一个全面的了解
2011-05-31 10:33:00 828
转载 开源Liecense介绍
<br />开源在今天的软件业已经很普遍,但开源是否意味着使用者可以对开源后的代码为所欲为呢?答案是否定的。开源运动同样有自己的游戏规则和道德准则。不遵行这些规则不但损害开源运动的健康发展,也会对违规者造成名誉和市场上的损失,更可能陷入法律纠纷和赔偿。<br />现今存在的开源协议很多,而经过Open Source Initiative组织通过批准的开源协议目前有58种。我们在常见的开源协议如BSD, GPL, LGPL,MIT等都是OSI批准的协议。如果要开源自己的代码,最好也是选择这些被批准的开源协议。
2011-05-28 11:03:00 790
原创 softirq 使用
在上一篇 “一个简单的并口驱动”的基础上,我增加了softirq的使用。具体描述:Softirq:1. Add an entry in file 'include/linux/interrupt.h'.enum{ HI_SOFTIRQ=0, TIMER_SOFTIRQ, NET_TX_SOFTIRQ, NET_RX_SOFTIRQ, BLOCK_SOFTIRQ, TASKLET_SOFTIRQ, SCHED_SO
2011-05-27 23:23:00 1084
原创 一个简单的并口驱动
// parport.c/*Function: It implement parport read and write method.-------------------------------------------------------- How to use: * # echo "" > /var/log/messages //clear file * # insmod pipe.ko * # cat /var/log/messages you can
2011-05-25 10:47:00 1666
原创 kthread helpers --- a good choice to replace complex completion interfaces
<br />/*The kthread interface provides you free access to a built-in exit synchronization mechanism implemented using the completion interface.You may directly call kthread_stop() to ask the corresponding task to exit. And make a neat call to kthr
2011-05-21 10:51:00 947
原创 synchronizing using completion function
<br />essential linux device dirver:<br /> <br />In the following example, 'my_release' is called when module is removed.<br />But before the module's unloaded, you have to make sure that 'my_thread' <br />has finished some very important task which will
2011-05-20 11:13:00 712
原创 Notifier Chains
<br /> <br />Essential linux device driver:<br /> <br />Notifier chains are used to send status change messges to code regions that request them.<br />There are Die notification, Net device notification, CPU frequency notification, and Internet address no
2011-05-19 21:31:00 1441
原创 工作队列 例子
<br />接着 上一篇 “工作队列 的变化”<br />写了个例子,代码如下:<br /> <br />#include <linux/workqueue.h>#include <linux/module.h> // kmalloc ... #include <linux/sysctl.h>int submit_work(void (*func)(struct work_struct *work), void* data);struct workqueue_struct* wq = NU
2011-05-19 17:10:00 1112
转载 工作队列 的变化
<br /><br />原文<br />Linux自从2.6.20之后,工作队列发生了一些变化,目前从网络上搜索的资料一般都是介绍老版本的工作队列,很少见到对新版本的介绍。本文对新老版本都做了简要概述,并分别提供了简单的实作案例。<br />工作队列(work queue)是Linux kernel中将工作推后执行的一种机制。这种机制和BH或Tasklets不同之处在于工作队列是把推后的工作交由一个内核线程去执行,因此工作队列的优势就在于它允许重新调度甚至睡眠。<br />工作队列是2.6内核开始引入的机制
2011-05-19 16:27:00 1015
原创 link list and wait queue
<br />- test2.c (/usr/src/linux-2.6.23/joseph)<br />|- struct <br />|| _mydrv_wq <br />|| _mydrv_work <br />| <br />|- variable <br />|| mydr
2011-05-13 11:22:00 997
原创 kernel thread, wait queue, /proc/sys/kernel entry, call usermode handler in kernel mode
author: Joseph(Honggang Yang)@dslabdate: 05-10-2011Key words: kernel thread, wait queue, /proc/sys/kernel entry, call usermode handler in kernel mode====================================================In this section I sill show you how to create two kerne
2011-05-10 22:45:00 1704
原创 /proc/sys/kernel/ 入口项的创建
<br />/proc/sys/kernel/* entry creationYou have to modify the Linux source code. Here we use 2.6.23.1. Add an entry to the kern_table array in kernel/sysctl.c as following ... { .ctl_name = KERN_MYEVENT_HANDLER,//Define in
2011-05-10 21:30:00 2139
原创 call_usermodehelper() ---让内核空间的驱动程序启用用户空间的若干应用程序
背景知识:call_usermodehelper()用来让内核空间的驱动程序启用用户空间的若干应用程序,如:/sbin/hotplug、/bin/gliethttp_hello等,它的函数原型如下:static inline int call_usermodehelper(char *path, char **argv, char **envp, enumumh_wait wait);path --- 用户空间所要启用的应用程序路径,如:"/sbin/hotplug",那么hotplug应用程序就会被内核加
2011-05-08 11:02:00 3333 2
原创 kernel thread 应用
<br />author: joseph<br />email: ganggexiongqi@gmail.com<br />==============================<br /> <br />本节介绍下kernel thread简单使用的例子实验.<br /> <br />我的系统:<br /> <br />joseph:/usr/src/linux-2.6.23/joseph# uname -a<br />Linux joseph 2.6.23 #1 SMP PREEMPT Fri Ma
2011-05-07 11:43:00 1313
ZFS On-Disk Specification Draft
2015-08-29
经典汇编教程
2012-04-12
Real-Time Concepts for Embedded Systems
2010-10-09
Distributed_Systems_Principles_and_paradigms e2
2010-09-12
Distributed_Systems_Principles_and_paradigms e1_2
2010-09-12
Distributed_Systems_Principles_and_paradigms e1
2010-09-12
Building Embeded Linux System
2010-08-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人