原创 讀者寫者問題 自旋鎖

#include <linux/init.h>   #include <linux/module.h>   #include <linux/kern

原创 spin_lock()--自旋鎖

#include   #include #include    自旋鎖線程不能睡眠 MODULE_LICENSE("GPL");  static int __init spin_lock_init_init(void); 

原创 Linux內核同步機制之信號量與鎖

http://www.cnblogs.com/bulllbat/archive/2012/03/23/2414205.html

原创 驅動模塊的介紹 參數 導出符號

//本驅動包含模塊的介紹 參數 導出符號 #include <linux/init.h> #include <linux/module.h> static int num = 2; static char *name = "hello_

原创 由spi開始談platform

以下內容只能作爲我添加SPi平臺設備的一點總結。 1、首先在平臺設備文件中添加如下內容: #if defined (CONFIG_MTK_SPI) static struct resource mt_spi_resources[] = {

原创 壓縮命令

範例一:將整個 /etc 目錄下的文件全部打包成爲 /tmp/etc.tar [root@linux ~]# tar -cvf /tmp/etc.tar /etc <==僅打包,不壓縮! [root@li

原创 mtk串口打印設置

custom\star89_s188\preloader\inc\Cust_bldr.h 

原创 網絡設備驅動

http://blog.csdn.net/chenjin_zhong/article/details/6324334

原创 塊設備驅動

http://bbs.chinaunix.net/thread-2017377-1-1.html 一下代碼是<< 深入linux設備驅動程序內核機制>>中有關塊設備的 http://blog.csdn.net/feixiaoxing/a

原创 c語言一些概念

1、引用和指針的區別 指針是指向內存空間,他的內容是所指內容的地址,引用是某塊內存的別名 程序要爲指針分配內存空間,引用不需要分配內存空間 2、static 的用法: 限定變量或者函數的作用域。 static 全局變量,static局部變

原创 linux設備驅動模型框架

linux設備分爲三大類:字符設備,塊設備和網絡設備。 字符設備: module_init 設備初始化,實現 初始化設備對象,分配設備號,將設備註冊進系統。

原创 信號量semaphore

相對於自旋鎖,信號量的最大特點是允許調用它的線程可以進入休眠,這意味着試圖獲得某一信號量的進程會導致處理器擁有權的喪失,也即出現進程的切換。 驅動程序中定義了一個信號量,不是直接對其賦值,而是應該使用 sema_init(struct s

原创 如何調整Linux內核啓動中的驅動初始化順序

http://bbs.chinaunix.net/thread-1950216-1-1.html

原创 #if #endif

#include<stdio.h> #define  ASDL int main(void) {         #if defined(ASDL)                 printf("define ASDL\n");  

原创 數據結構算法

1 shell排序 #include <stdio.h> #include <stdlib.h> #define ARRAY_LENGTH 9 void shellsort(int v[], int n) { int gap,