Time of Update: 2018-12-03
/Documentation/x86/x86_64/mm.txt<previous description obsolete, deleted>Virtual memory map with 4 level page tables:0000000000000000 - 00007fffffffffff (=47 bits) user space, different per mmhole caused by [48:63] sign extensionffff800000000000
Time of Update: 2018-12-03
fork在英文中是叉子,分叉的意思,在函數fork中,取後面的意思。很形象的表示程式從這裡分叉,fork函數建立了子進程,子進程和父進程同時(其實是cpu分時處理)開始運行分叉之後的程式。如果fork成功,子進程中fork的傳回值是0,父進程中fork的傳回值是子進程的進程號,getpid()返回的才是各自真是的進程號。 先看這段範例代碼:#include <unistd.h>; #include <sys/types.h>; main () { pid_t pi
Time of Update: 2018-12-03
更新linux gcc版本到gcc 4.4.2首先需要準備需要材料:gcc4.4.2版需要安裝gmp4.2.0+和mpfr2.3.0+,到GMP的網站(http://gmplib.org/)上下載gmp-4.3.1.tar.gz 和mprf的網站(http://www.mpfr.org/)上下載mpfr-2.4.2.tar.gz1. 安裝gmp# wget ftp://ftp.gmplib.org/pub/gmp-5.0.0/gmp-5.0.0.tar.bz2# tar -zxvf gmp-4.
Time of Update: 2018-12-03
============================================================博文原創,轉載請聲明出處電子咖啡(原id藍岩)============================================================from:http://programming-in-linux.blogspot.com/2008/03/multithreading-example-in-cc-using.html在網上找到了一個linux多
Time of Update: 2018-12-03
from:http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html最近,我在學習Linux,下面是一些筆記。使用電腦的時候,經常需要尋找檔案。在Linux中,有很多方法可以做到這一點。國外網站LinuxHaxor總結了五條命令,你可以看看自己知道幾條。大多數程式員,可能經常使用其中的2到3條,對這5條命令都很熟悉的人應該是不多的。1.
Time of Update: 2018-12-03
skbuff(socket buffer)是網路通訊協定棧用以儲存和傳遞資料的緩衝區。協議棧各個層的頭部資訊,使用者資料的資訊和其它輔助資訊都儲存在該結構中。一個完整的skbuff由4部分組成:1)struct sk_buff{}--用於維護socket buffer狀態和描述資訊2)header data--獨立於sk_buff{}結構體的資料緩衝區,用來存放報文分組,使各層協議的header儲存在連續的空間中,以方便協議棧對其操作3)struct
Time of Update: 2018-12-03
本章主要介紹使用者空間程式與核心通訊或讀取核心資訊的幾種機制。1)procfs(/proc )procfs和sysctl都可以匯出核心內部資訊,但procfs用於匯出唯讀資料,而sysctl匯出的資料是可讀寫的。大多數網路功能初始化時都會在/proc中註冊一個或多個檔案。當使用者讀取這個檔案時,核心會調用一組核心功能來輸出相應的資料。這組核心功能是在建立檔案時初始化的檔案操作函數控制代碼定義的;static struct file_operation xx_fops={
Time of Update: 2018-12-03
本章內容是對上一章的補充,主要在講核心是如何將驅動與裝置關聯起來的 PCI layer常用的資料結構struct pci_device_id{ //裝置標識符 用於唯一標識一個裝置 unsigned int vendor,device, subvendor,subdevice, class,class_mark; unsigned long
Time of Update: 2018-12-03
宏標記 linux核心中絕大多數初始化函數和變數都使用了各種各樣的宏標記,形如;static int __init pci_porc_init(void){...} static char version[] __devinitdata=drv_name".."module_init(...)其中__init,module_init,__devinitdata就是宏標記宏標記有什麼作用?
Time of Update: 2018-12-03
看完第8章以後再回頭看看第4 5 6 7的一些知識點就非常清楚了本章主要講裝置的註冊 登出 啟用 禁止 註冊裝置什麼時候註冊 1)載入驅動程式時(靜態編譯進核心的在啟動時註冊,動態模組載入的在載入時註冊) 2)插入熱插拔裝置時(插入時核心通知其裝置驅動註冊該裝置)裝置的註冊實際上是由pci_driver->probe函數執行來完成的(probe何時調用參考前幾章)
Time of Update: 2018-12-03
無論是在Linux還是在Unix環境中,make都是一個非常重要的編譯命令。不管是自己進行項目開發還是安裝應用軟體,我們都經常要用到make或make
Time of Update: 2018-12-03
http://hi.baidu.com/xiehongpen/blog/item/113d3f520e2eeb501038c2a9.html Sppence Murray 是 Linux 開發高手之一,同時間長度期以來他一直是 UNIX 的堅定支援者。本文介紹的是 Murray 和他在 CodemonksConsulting 的同事在日常的 Linux 開發以及應用服務工作中用到的基本技術: shell 指令碼,相信 Linux的開發人員都會受益於這項有用而且通用的技術。
Time of Update: 2018-12-03
linux下ip協議(V4)的實現(一)首先來看校正相關的一些結構: 1 net_device結構: 包含一個features的域,這個表示裝置的一些特性(比如控制校正),下面的幾個flag就是用來控制校正: 每個flags的介紹,注釋裡面都寫得很清楚,這裡就不一一解釋了。這裡要注意的是NETIF_F_HW_CSUM,他其實表示在硬體上為所有協議校正。 2 sk_buff:
Time of Update: 2018-12-03
請教各位老大,小弟剛開始接觸核心,現在正在看Linux下VLAN的實現。1、哪裡可以找到VLAN實現的資料我這裡有的資料都是介紹Bridge的,對VLAN瞭解很少,有資料的兄弟能否共用,謝謝:)2、VLAN與Bridge實現的關係我理解應該先運行vlan_skb_recv()再送到橋或者IP層處理,但是2.6.16.20核心中,[size=10.5pt]netif_receive_skb()[/size]先運行了handle_bridge(),那麼VLAN是在什麼時候檢查的?3、跨VLAN的實
Time of Update: 2018-12-03
這次主要介紹一些ip層管理以及統計相關的東西. 首先來看 long-living ip peer information. 我們知道ip協議是無狀態的協議.這裡核心為了提升效能.為每個目的ip地址(換句話說,也就是和本機進行通訊過的主機)儲存了一些資訊. peer子系統一般是被tcp,或者routing子系統所使用. 這個資訊的資料結構是inet_peer,它是一棵avl樹,每個節點的key就是一個ip地址.由於是avl樹,因此每次搜尋都是O(lg n): Java代碼 struct inet_
Time of Update: 2018-12-03
original link http://www.ibm.com/developerworks/cn/linux/l-cn-ipv6env/ 在 Linux 平台及 IPv4 環境中構建 IPv6 測試環境 蔣 瑩瀅, 軟體工程師, EMC蔣瑩瀅,IBM 公司軟體工程師,從事 UXSPI 相關軟體的研發和測試殷 一鳴 (yinym@cn.ibm.com), 軟體工程師, EMC殷一鳴,IBM 公司軟體工程師,從事 UXSPI 相關軟體的研發和測試簡介: 隨著互連網技術的不斷髮展,傳統的 IPv4
Time of Update: 2018-12-03
網路裝置初始化 如果要使一個網路裝置可用,它就必須能被核心正確識別並且與正確的裝置驅動關聯起來。首先,裝置驅動既可以做為核心模組動態載入,也可以是核心的一個靜態組件。其次,裝置可以在啟動時識別,也可以在運行時載入識別(熱插拔裝置 USB PCI
Time of Update: 2018-12-03
original link http://www.banping.com/2010/01/12/linux_gssftp/ RedHat和CentOS都內建了一個gssftp服務,使用方式如下:[root@linux local]# cd /etc/xinetd.d[root@linux xinetd.d]# lschargen cups-lpd daytime-udp echo-udp gssftp krb5-telnet rsync
Time of Update: 2018-12-03
http://hi.baidu.com/denglish/blog/item/5d7eaa2a800251f3e6cd4012.html 在linux平台下Asterisk環境搭建的過程 1.首先,在搭建asterisk環境前要檢查linux中試否存在以下asterisk安裝的信賴包: gcc--libpri, zaptel,
Time of Update: 2018-12-03
轉自:http://www.sudu.cn/info/index.php?op=article&id=278877(03年的,不過很詳細)教您如何安裝使用Mplayer 測試環境為:Red Hat Linux AS3在Linux環境中,您或許還在為沒有找到一款優秀的媒體播放軟體而苦惱,或許您曾經使用過Helix Player、RealPlayer或