原创 【轉】 LINUX內核中等待隊列應用之深度剖析

【轉】:http://blog.chinaunix.net/uid-21736802-id-1817632.html 1. 等待隊列數據結構等待隊列由雙向鏈表實現,其元素包括指向進程描述符的指針。每個等待隊列都有一個等待隊列頭(wai

原创 信號量與自旋鎖

【轉】:http://www.cppblog.com/huangjianfu/archive/2009/06/02/86530.html 內核同步措施     爲了避免併發,防止競爭。內核提供了一組同步方法來提供對共享數據的保護。 我們

原创 國嵌深入班-PCI

只有PCI橋才能生成PCI總線 每個PCI橋連接兩個PCI總線,前端是PCI總線1,後端是PCI總線2,依次類推 根據lspci命令呈現出來的內容可以畫出其PCI架構 接下來是具體的PCI驅動程序分析.自己看代碼

原创 contanier_of offsetof list_for_each list_for_each_entry

list_for_each與list_for_each_entry詳解   一、list_for_each 1.list_for_each原型 #define list_for_each(pos, head) \     for (pos

原创 【轉】進程調度函數schedule()分析

【轉】:http://liu1227787871.blog.163.com/blog/static/20536319720128262124475/ 1、功能簡述: 最主要作用就是從就緒進程中選擇一個優先級最高的進程來代替當前進程運行

原创 國嵌深入班-塊設備驅動程序設計

塊設備是需要分扇區的 (req->sector + req->current_nr_sectors) <<9:每個扇區是512個字節所以需要左移9位算出扇區的大小 RAMDISK,取內存中的一塊出來模擬塊設備的卡的讀寫操

原创 國嵌深入班-串口(未完成)

用戶空間操作的是/dev/ttyS0 tty_io.c是tty_core n_tty.c是線路規程,處理完後再交由core(tty_io.c),再交給tty驅動 我改名了 2014-07-08 17:03:48 n_tty.c是線路

原创 嵌入式C編程經驗 之 全局變量

【轉】:http://blog.chinaunix.net/uid-20620288-id-3399952.html 參考:http://www.cnblogs.com/flysnail/archive/2012/07/11/2586

原创 回調函數_用簡單的例子解釋

【轉自】:http://wenku.baidu.com/link?url=1yADfdWCfdVptmoYU0LFfKpNR6TjhVJcOtd8D-yMko-YWUoJmNkQJ8psAhzxN5qTkFQ00d5jC6dc8xXvLa

原创 工作隊列 工作線程 工作(work_struct)

工作隊列(work queue)是Linux kernel中將工作推後執行的一種機制。這種機制和BH或Tasklets不同之處在於工作隊列是把推後的工作交由一個內核線程去執行,因此工作隊列的優勢就在於它允許重新調度甚至睡眠。 workq

原创 struct--resource

【轉載】:http://hi.baidu.com/zengzhaonong/item/4411b4de183c39ef3cc2cb5c linux對掛接在4G總線空間上的設備實體的管理方式 -- struct resource /usr

原创 【轉】中斷服務下半部之工作隊列詳解

【轉】http://www.cnblogs.com/armlinux/archive/2010/11/19/2396892.html 摘要】本文詳解了中斷服務下半部之工作隊列實現機制。介紹了工作隊列的特點、其與tasklet和soft

原创 Linux poll機制分析

【轉載】:http://www.blogjava.net/ThinkingTalking/archive/2010/07/08/325523.html 所有的系統調用,基於都可以在它的名字前加上“sys_”前綴,這就是它在內核中對應的函

原创 國嵌深入班-塊設備簡介

mapping主要是磁盤文件系統,把對文件的訪問映射成磁盤的硬件訪問 塊設備驅動驅動程序設計到兩個層次:Generic Block Layer和I/O schedule layer

原创 【轉】C/C++函數的系統調用的幾種方式

【轉自】:http://blog.csdn.net/sunshinewave/article/details/7981034#comments 我們知道,調用函數時,計算機常用棧來存放函數執行需要的參數,由於棧的空間大小是有限的,在w