Time of Update: 2018-12-03
使用回呼函數實際上就是在調用某個函數(通常是API函數)時,將自己的一個函數(這個函數為回呼函數)的地址作為參數傳遞給那個函數。而那個函數在需要的時候,利用傳遞的地址調用回呼函數,這時你可以利用這個機會在回呼函數中處理訊息或完成一定的操作。至於如何定義回呼函數,跟具體使用的API函數有關,一般在協助中有說明回呼函數的參數和傳回值等。C++中一般要求在回呼函數前加CALLBACK(相當於FAR PASCAL),這主要是說明該函數的調用方式。
Time of Update: 2018-12-03
============================================================博文原創,轉載請聲明出處電子咖啡(原id藍岩)============================================================xcode運行到真機報錯 While reading /Users/yangeric/mIOS/MeiTu/MeiTu/Image/BackgroundHomeScreen_5.png pngcrush
Time of Update: 2018-12-03
實現組播IGMPRFC 22361.組播查詢Group-specific query -停止轉寄資料之前,路由器發送組查詢資訊確認子網內部,是否已經沒有任何群組成員了2.離開組資訊Leave group message -如果主機是最後的成員,它將發送離開資訊(相對於V1而言,減少離開延遲)IGMPv2--離開組1.H2發送1個離開資訊2.路由器發送組查詢3.剩餘的成員主機發送報告,組保持活動。IGMPv3加入群組成員立即發送IGMPv3報告,使用224.0.0.22地址。路由器發送周期性查詢
Time of Update: 2018-12-03
網路互連裝置可以將網路劃分為不同的衝突域、廣播域。但是,由於不同的網路互連裝置可能工作在OSI模型的不同層次上。因此,它們劃分衝突域、廣播域的效果也就各不相同。如中繼器工作在物理層,橋接器和交換器工作在資料連結層,路由器工作在網路層,而網關工作在OSI模型的上三層。而每一層的網路互連裝置要根據不同層次的特點完成各自不同的任務。 下面我們討論常見的網路互連裝置的工作原理以及它們在劃分衝突域、廣播域時各自的特點。 1、傳統乙太網路操作
Time of Update: 2018-12-03
1. 乙太網路最初基於同軸電纜.1972年發明,1979年Xeroxinter和DEC提出DIX版.2. 1983年,IEEE802.3標準提出.3. CSMA/CD 通訊過程,傳輸—監聽—幹擾—隨機等待—傳輸。4. 傳統乙太網路用橋接器來分割主機,用路由器串連網段。5. 交換式乙太網路,平時主機都不連通,當需要通訊時,通過交換裝置串連對端主機,完成後斷開。交換裝置包括,交換式集線器和交換器。6. 交換式乙太網路物理邏輯均為星型。分割衝突域,將網路衝突限制到最小範圍。7.
Time of Update: 2018-12-03
二層交換機概述 一、交換器的工作原理 1.交換器根據收到資料幀中的源MAC地址建立該地址同交換器連接埠的映射,並將其寫入MAC地址表中。 2.交換器將資料幀中的目的MAC地址同已建立的MAC地址表進行比較,以決定由哪個連接埠進行轉寄。 3.如資料幀中的目的MAC地址不在MAC地址表中,則向所有連接埠轉寄。這一過程稱為泛洪(flood)。 4.廣播幀和組播幀向所有的連接埠轉寄。 二、交換器的三個主要功能
Time of Update: 2018-12-03
ARP(AddressResolutionProtocol)位址解析通訊協定用於將電腦的網路地址(IP地址32位)轉化為物理地址(MAC地址 48位)[RFC826]。ARP協議是屬於鏈路層的協議,在乙太網路中的資料幀從一個主機到達網內的另一台主機是根據48位的乙太網路地址(硬體地址)來確定介面的,而不是根據32位的IP地址。核心(如驅動)必須知道目的端的硬體地址才能發送資料。當然,點對點的串連是不需要ARP協議的。 ARP協議的資料結構:
Time of Update: 2018-12-03
STP(產生樹協議)作用:保證交換器的可靠性,防止廣播風暴。原理:產生樹協議運行產生樹演算法(STA),把一個環形的結構改變成一個樹形的結構。產生樹演算法過程具體可歸納為一下3個步驟:1)選擇根橋接器;2)選擇根連接埠;3)選擇指定連接埠;(1)選擇根橋接器:依據橋接器ID(由2位元組橋接器優先順序和6位元組橋接器MAC地址組成),取值範圍0---65535,預設為32768。值越小優先順序越高。(2)選擇根連接埠:選擇順序:到根橋接器最低的根路徑成本;直連的橋接器ID最小;連接埠ID最小。(3
Time of Update: 2018-12-03
PPPOE的使用者空間實現一 終端終端介紹終端是一種字元型裝置,他有多種類型,通常使用tty來簡稱各種類型的終端裝置。看下面一副圖展示了電腦系統和終端之間得聯絡。 終端驅動程式的主要功能是在程式和相關裝置之間進行資料傳遞。在一個LINUX核心自身的內部,終端基本上包括兩個主要的軟體部分:裝置驅動程式和行規則(見)。 裝置驅動程式是個寫到具體硬體上面的低級軟體,該硬體允許電腦和終端進行互動。行規則是執行一系列輸入輸出資料的邏輯處理,把一系列字元對應表到其他的上面。
Time of Update: 2018-12-03
skb 的分配細節 1. 關於 SKB 的分配細節.LINUX 中 SKB 的分配最終是由函數 : struct sk_buff *__alloc_skb(unsigned int size, gfp_t gfp_mask,int fclone) 來完成.SKB 可以分為 SKB 描述符與 SKB 資料區兩個部分,其中描述符必須從 CACHE 中來分配 : 或者從skbuff_fclone_cache 中分配,或者從 skbuff_head_cache
Time of Update: 2018-12-03
xinling1011(stranger)08-04-18 15:49 核心PPPOE問題請教 核心PPPOE問題請教 在PPPOE的discover階段: 當驅動收到的包送到上層時,會根據type來判斷,如果是ETH_P_PPP_DISC,會交給pppoe_disc_rcv()函數處理,但這個函數只處理PADT包啊!如果是PADO包怎麼辦? 有的書上說這個包(PADO)是交給pppoe_rcv()函數處理的,但在代碼中: static struct packet_type pppoes_
Time of Update: 2018-12-03
NetXen是美國的一個10G網卡生產商,在linux核心源碼樹中包含了他們的網路卡驅動程式,本文分析了該驅動程式的資料結構以及DMA過程,希望能為利用該網卡實現抓包零拷貝提供協助。 1.資料結構 2.環形緩衝區 發送環形緩衝區:adapter->cmd_buf_arr;多個netxen_cmd_buffer結構組成了一個發送環形緩衝區,資料包由上層下來之後,會賦給一個netxen_cmd_buffer結構的skb成員,然後進行DMA映射,啟動DMA傳輸至fw。 傳輸環形緩衝區中緩衝區單元
Time of Update: 2018-12-03
本文檔的Copyleft歸yfydz所有,使用GPL發布,可以自由拷貝,轉載,轉載時請保持文檔的完整性,嚴禁用於任何商業用途。msn: yfydz_no1@hotmail.com來源:http://yfydz.cublog.cn1. 5個掛接點以下核心代碼版本2.6.17.11。1.1 PREROTING/* net/ipv4/ip_input.c */int ip_rcv(struct sk_buff *skb, struct net_device *dev, struct
Time of Update: 2018-12-03
============================================================博文原創,轉載請聲明出處電子咖啡(原id藍岩)============================================================建立分支svn cp svn://10.27.0.9/trunk/xx/ svn://10.27.0.9/branches/IOS/xx -m "modify xxx"checkout到本地:svn
Time of Update: 2018-12-03
yeju56(newbie)01-04-05 17:09 one question? 我見到這麼個 定義: #define offsetof(t,m) (size_t)(&(((t *)0)0->m)) 這是作什麼用的????????????? letree(stranger )01-04-05 21:49 Re: one question? 用來計算某一成員在某一結構中的位移量。 比如有一結構: struct aaa { ...... int b; ...... }
Time of Update: 2018-12-03
============================================================博文原創,轉載請聲明出處電子咖啡(原id藍岩)============================================================在cocos2d1.x中,我們設定director的方向用:[[Director sharedDirector] setDeviceOrientation
Time of Update: 2018-12-03
============================================================博文原創,轉載請聲明出處電子咖啡(原id藍岩)============================================================記錄一下app store審核拒絕時候的說明,以便以後遇到類似問題有個分析We found that your app exhibited one or more bugs, when reviewed on
Time of Update: 2018-12-03
============================================================博文原創,轉載請聲明出處電子咖啡(原id藍岩)============================================================最近調試遇到棘手問題,不能運行到真機和模擬器上,進行archive時候,顯示是mac程式,而不是ios程式,重啟xocde,模擬器,clean均不行。遇到的錯誤大概有一下幾種:1、XCode:4.6 Lion:10
Time of Update: 2018-12-03
在Makefile中可以使用函數來處理變數,從而讓我們的命令或是規則更為的靈活和具有智能。make所支援的函數也不算很多,不過已經足夠我們的操作了。函數調用後,函數的傳回值可以當做變數來使用。一、函數的調用文法函數調用,很像變數的使用,也是以“$”來標識的,其文法如下:$( )或是${
Time of Update: 2018-12-03
============================================================博文原創,轉載請聲明出處電子咖啡(原id藍岩)============================================================翻譯自:http://stackoverflow.com/questions/6883032/do-i-need-to-use-delete-after-pthread-mutex-destroy問:假設我有以下代