博客

内核的同步和互斥实例学习

#kernel

#include <linux/module.h> #include <linux/init.h> #include <linux/kernel.h> #include <linux/mutex.h> #include <linux/semaphore.h> #include <linux/sched.h> static DEFINE_MUTEX(mut1); struct semaphore sem1,sem2; int test1(void *p) { down(&sem2); mutex_lock(&mut1); printk("get out test1\n"); mutex_unlock(&mut1); up(&sem1); return 0; } int test2(void *p) { down(&sem1); mutex_lock(&mut1); printk("get out test2\n"); mutex_unlock(&mut1); up(&sem2); return 0; } static int __init mutex_init_test() { init_MUTEX(&sem1); init_MUTEX_LOCKED(&sem2); printk("get out \n"); kernel_thread(test1, test1, CLONE_KERNEL); kernel_thread(test2, test2, CLONE_KERNEL); return 0; } static void __exit mutex_exit_test() { printk("get

阅读更多

April 21, 2009

我的摄影作品之“春意”

#生活

无名小草 园角一支 看完本文有收获?请分享给更多人 关注「黑光技术」,关注大数据+微服务

阅读更多

April 10, 2009

为佛家的“色即是空,空即是色”正意

#生活

“色即是空,空即是色”这句佛经名言,包含着很深的哲学思想,一般人包括文人 们喜欢以此开玩笑,认为色就是指女人,空就是虚无或乌有.说和尚看破红尘,把女人 看做是虚无或乌有,便出家做和尚了.其实色并非女色,空也非虚无乌有.要认识此言 的真正含义,还得从佛教的基本教义说起. 佛教的教义,主要是所谓的"四谛",即 苦、集、灭、道。苦、集二谛阐明人生的本质及形成原因;灭、道二谛指明人生解 脱的归宿和解脱之路。

阅读更多

April 7, 2009

使用proc来写GPIO驱动

#linux#开源#kernel

这是写的一个gpio的驱动,测试完,提好的。

阅读更多

March 31, 2009

截获Linux系统调用

#kernel

#include <linux/kernel.h> #include <linux/module.h> #include <linux/moduleparam.h> #include <linux/unistd.h> #include <linux/init.h> #include <asm/ptrace.h> #define NRB 2 typedef asmlinkage int (*__routine)(struct pt_regs); __routine old, new; unsigned long *sys_call_table = 0; static int counts = 0; unsigned long* find_sys_call_table(void) { struct { unsigned short limit; unsigned int base; } __attribute__ ( ( packed ) ) idtr; struct { unsigned short offset_low; unsigned short segment_select; unsigned char reserved, flags; unsigned short offset_high; } __attribute__

阅读更多

March 31, 2009

我的毕设定题

#life

不知不觉之间研究生生活已经过去了一大半了,也到该准备研究生毕业设计的时候了。年前回家之前给陈老师说我想做嵌入式设备的远程监控,陈老师也没有说什么,其实我是知道了,老师一直想我在内核上有所发展。

阅读更多

March 13, 2009

使用valgrind检测内存泄露

#valgrind#tools#linux

Valgrind是x86架构Linux上的多重用途代码剖析和内存调试工具。但它的主要功能还是对内存的调试,默认工具也是启动 memcheck。用户可以在它的环境中运行程序来监视内存的使用情况,比如C语言中的malloc和free或者C++中的new和delete。

阅读更多

February 27, 2009

Xnotebook文本资料管理软件

#linux#开源#tools

Xnotebook是一款用gtk+开发的文本资料管理软件,它主要用于个人文本资料的分类管理。

阅读更多

February 26, 2009

Http协议分析

#linux#开源#http

最简单的例子,就是你的浏览器与网页服务器之间使用的应用层协议。虽然官方文档说HTTP协议可以建立在任何可靠传输的协议之上,但是就我们所见到的,HTTP还是建立在TCP之上的。

阅读更多

February 17, 2009

我的二十年感言

#life

【回忆1989年以前】 那个时候,我在看西瓜,我在跟着小姑姑放羊,跟着小叔叔放牛,在屋后的小河里捞小鱼。。。据我妈说我小时候那是坏的不得了,而且嘴馋。人家刚种的萝卜我会给他拔出来。还隐约记得有个老太太住在一见黑乎乎的屋子里,她可喜欢我了,老是带我去她的黑屋子,然后给我方块糖吃。

阅读更多

January 15, 2009

ddddddd